rem: return; 
add: return null; 
context: function cmdSaveTab (e){    var source2View = console.views.source2;    if (source2View.tabs && e.index == null)    {        e.index = source2View.tabs.selectedIndex;        if (!(e.index in source2View.sourceTabList))            return;    }    else if (!source2View.tabs || e.index < 0 ||             e.index > source2View.sourceTabList.length - 1)    {        display (MSN_ERR_INVALID_PARAM, ["index", e.index], MT_ERROR);        return null;    }        var sourceText = source2View.sourceTabList[e.index].sourceText;    var fileString;        if (!e.targetFile || e.targetFile == "?")    {        var fileName = sourceText.url;        //dd ("fileName is " + fileName);        if (fileName.search(/^\w+:/) != -1)        {            var shortName = getFileFromPath(fileName);            if (fileName != shortName)                fileName = shortName;            else                fileName = "";        }        else            fileName = "";        var rv = pickSaveAs(MSG_SAVE_SOURCE, "*.js $xml $text $all", fileName);        if (rv.reason == PICK_CANCEL)            return null;        e.targetFile = rv.file;        fileString = rv.file.leafName;    }    else    {        fileString = e.targetFile;    }    var file = fopen (e.targetFile, MODE_WRONLY | MODE_CREATE | MODE_TRUNCATE);    if (fileString.search (/xml$/i) == -1)    {        for (var i = 0; i < sourceText.lines.length; ++i)            file.write(sourceText.lines[i] + "\n");    }    else    {        if ("markup" in sourceText)            file.write (sourceText.markup);        else            display (MSG_ERR_FORMAT_NOT_AVAILABLE, MT_ERROR);    }        file.close();    return file.localFile.path;}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/6d3605984754042ac2ea071be474d6b8ed01f0eb/venkman-views.js/buggy/extensions/venkman/resources/content/venkman-views.js