rem:  this.processAlwaysAskState();    this.mLauncher.setWebProgressListener( null );  if ( this.dialogElement( "openUsing" ).selected ) {  if (this.chosenApp) this.mLauncher.launchWithApplication( this.chosenApp, false ); else this.mLauncher.launchWithApplication( null, false ); } else this.mLauncher.saveToDisk( null, false ); 
add:  if ( this.dialogElement( "openUsing" ).selected ) { var helperApp = this.helperAppChoice(); if ( !helperApp || !helperApp.exists() ) {  var msg = this.replaceInsert( this.getString( "badApp" ), 1, this.dialogElement( "appPath" ).value ); var svc = Components.classes[ "@mozilla.org/embedcomp/prompt-service;1" ] .getService( Components.interfaces.nsIPromptService ); svc.alert( this.mDialog, this.getString( "badApp.title" ), msg );  this.mDialog.document.documentElement.getButton( "accept" ).disabled = true;  var path = this.dialogElement( "appPath" ); if ( !path.disabled ) { path.select(); path.focus(); }  this.chosenApp = null;  return false; } } 
context:     onOK: function() {      this.processAlwaysAskState();       // Remove our web progress listener (a progress dialog will be      // taking over).      this.mLauncher.setWebProgressListener( null );      if ( this.dialogElement( "openUsing" ).selected )       {         // If no app "chosen" then convert input string to file.         if (this.chosenApp)           this.mLauncher.launchWithApplication( this.chosenApp, false );          else            this.mLauncher.launchWithApplication( null, false );      }      else        this.mLauncher.saveToDisk( null, false );              // Unhook dialog from this object.      this.mDialog.dialog = null;      // Close up dialog by returning true.      return true;     //this.mDialog.close();    },
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/5f9095c9ce0b22166307d1eb8d981b8b51b0fcbb/nsHelperAppDlg.js/buggy/embedding/components/ui/helperAppDlg/nsHelperAppDlg.js