rem: var um = 
add: var um = 
context:   get startPage() {    if (window.arguments) {      var arg0 = window.arguments[0];      if (arg0 instanceof Components.interfaces.nsIUpdate) {        // If the first argument is a nsIUpdate object, we are notifying the        // user that the background checking found an update that requires        // their permission to install, and it's ready for download.        this.setUpdate(arg0);        var p = this.update.selectedPatch;        if (p) {          var state = p.state;          if (state == STATE_DOWNLOADING) {            var patchFailed = false;            try {              patchFailed = this.update.getProperty("patchingFailed");            }            catch (e) {            }            if (patchFailed == "partial") {              // If the system failed to apply the partial patch, show the               // screen which best describes this condition, which is triggered              // by the |STATE_FAILED| state.              state = STATE_FAILED;             }            else if (patchFailed == "complete") {              // Otherwise, if the complete patch failed, which is far less               // likely, show the error text held by the update object in the              // generic errors page, triggered by the |STATE_DOWNLOAD_FAILED|              // state.              state = STATE_DOWNLOAD_FAILED;            }          }                    // Now select the best page to start with, given the current state of          // the Update.          switch (state) {          case STATE_PENDING:            this.sourceEvent = SRCEVT_BACKGROUND;            return document.getElementById("finishedBackground");          case STATE_SUCCEEDED:            return document.getElementById("installed");          case STATE_DOWNLOADING:            return document.getElementById("downloading");          case STATE_FAILED:            window.getAttention();                        return document.getElementById("errorpatching");          case STATE_DOWNLOAD_FAILED:          case STATE_APPLYING:            return document.getElementById("errors");          }        }        return document.getElementById("updatesfound");      }    }    else {      var um =           Components.classes["@mozilla.org/updates/update-manager;1"].          getService(Components.interfaces.nsIUpdateManager);      if (um.activeUpdate) {        this.setUpdate(um.activeUpdate);        return document.getElementById("downloading");      }    }    return document.getElementById("checking");  },
meta: 8395	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/8395/dd0789ea577a496e2622a164a469a9cb1bcf058d/updates.js/clean/toolkit/mozapps/update/content/updates.js