Program: 122687
Project: 122687
Buggy source:
private void addProjectListeners(){
  ModifyListener listener=new ModifyListener(){
    public void modifyText(    ModifyEvent e){
      if (e.widget == urlText.getTextControl()) {
        enableSandboxProject=false;
      }
      checkFields();
    }
  }
;
  urlText.addModifyListener(listener);
  projectLabelText.addModifyListener(listener);
  checkBtn.addSelectionListener(new SelectionAdapter(){
    public void widgetSelected(    SelectionEvent e){
      if (urlText.getText().trim().length() > 0) {
        Context ctx=CorePlugin.getContext();
        RepositoryContext oldContext=(RepositoryContext)ctx.getProperty(Context.REPOSITORY_CONTEXT_KEY);
        try {
          ProxyRepositoryFactory factory=ProxyRepositoryFactory.getInstance();
          factory.setRepositoryFactoryFromProvider(RepositoryFactoryProvider.getRepositoriyById(RepositoryConstants.REPOSITORY_REMOTE_ID));
          if (factory.isLocalConnectionProvider()) {
            MessageDialog.openError(getShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"));
          }
 else {
            RepositoryContext repositoryContext=new RepositoryContext();
            repositoryContext.setFields(new HashMap<String,String>());
            repositoryContext.getFields().put(RepositoryConstants.REPOSITORY_URL,urlText.getText());
            ctx.putProperty(Context.REPOSITORY_CONTEXT_KEY,repositoryContext);
            enableSandboxProject=factory.enableSandboxProject();
            if (!enableSandboxProject) {
              MessageDialog.openError(getShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"));
            }
          }
        }
 catch (        PersistenceException e1) {
          ExceptionHandler.process(e1);
          MessageDialog.openError(getShell(),Messages.getString("String_Node_Str"),e1.getMessage());
        }
 finally {
          if (oldContext != null) {
            ctx.putProperty(Context.REPOSITORY_CONTEXT_KEY,oldContext);
          }
        }
      }
      checkFields();
    }
  }
);
}

Fixed version (ground truth):
private void addProjectListeners(){
  ModifyListener listener=new ModifyListener(){
    public void modifyText(    ModifyEvent e){
      if (e.widget == urlText.getTextControl()) {
        enableSandboxProject=false;
      }
      checkFields();
    }
  }
;
  urlText.addModifyListener(listener);
  projectLabelText.addModifyListener(listener);
  checkBtn.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (urlText.getText().trim().length() > 0) {
        Context ctx=CorePlugin.getContext();
        RepositoryContext oldContext=(RepositoryContext)ctx.getProperty(Context.REPOSITORY_CONTEXT_KEY);
        try {
          ProxyRepositoryFactory factory=ProxyRepositoryFactory.getInstance();
          factory.setRepositoryFactoryFromProvider(RepositoryFactoryProvider.getRepositoriyById(RepositoryConstants.REPOSITORY_REMOTE_ID));
          if (factory.isLocalConnectionProvider()) {
            MessageDialog.openError(getShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"));
          }
 else {
            RepositoryContext repositoryContext=new RepositoryContext();
            repositoryContext.setFields(new HashMap<String,String>());
            repositoryContext.getFields().put(RepositoryConstants.REPOSITORY_URL,urlText.getText());
            ctx.putProperty(Context.REPOSITORY_CONTEXT_KEY,repositoryContext);
            enableSandboxProject=factory.enableSandboxProject();
            if (!enableSandboxProject) {
              MessageDialog.openError(getShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"));
            }
          }
        }
 catch (        PersistenceException e1) {
          ExceptionHandler.process(e1);
          MessageDialog.openError(getShell(),Messages.getString("String_Node_Str"),e1.getMessage());
        }
 finally {
          if (oldContext != null) {
            ctx.putProperty(Context.REPOSITORY_CONTEXT_KEY,oldContext);
          }
        }
      }
      checkFields();
    }
  }
);
}