Program: 121294
Project: 121294
Buggy source:
private void addListener(){
  createAccountButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      boolean success=false;
      String email=emailText.getText().trim();
      String password=passwordText.getText().trim();
      String pseudonym=userNameText.getText().trim();
      try {
        success=RegisterManagement.getInstance().createUser(email,pseudonym,password,"String_Node_Str","String_Node_Str",countryCombo.getText(),isProxyEnable,proxyHost,proxyPort,proxyUser,proxyPassword);
        if (success) {
          IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
          String connectionEmail=null;
          if (project.getAuthor() != null) {
            connectionEmail=project.getAuthor().getLogin();
          }
 else {
            connectionEmail="String_Node_Str";
          }
          prefStore.setValue(connectionEmail,email + "String_Node_Str" + pseudonym+ "String_Node_Str"+ password);
        }
      }
 catch (      BusinessException e1) {
        ExceptionHandler.process(e1);
      }
 finally {
        if (success) {
          MessageDialog.openInformation(getShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"));
          okPressed();
        }
      }
    }
  }
);
  proxySettingButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      NetworkSettingDialog netSettingDialog=new NetworkSettingDialog(getParentShell());
      if (netSettingDialog.open() == Dialog.OK) {
        String[] proxyString=netSettingDialog.getProxyString();
        proxyHost=proxyString[0];
        proxyPort=proxyString[1];
        proxyUser=proxyString[2];
        proxyPassword=proxyString[3];
        if (proxyHost != null && !"String_Node_Str".equals(proxyHost)) {
          isProxyEnable=true;
        }
      }
 else {
        proxyHost=null;
        proxyPort=null;
        proxyUser=null;
        proxyPassword=null;
        isProxyEnable=false;
      }
    }
  }
);
  proxySettingButtonForConnect.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      NetworkSettingDialog netSettingDialog=new NetworkSettingDialog(getParentShell());
      if (netSettingDialog.open() == Dialog.OK) {
        String[] proxyString=netSettingDialog.getProxyString();
        proxyHost=proxyString[0];
        proxyPort=proxyString[1];
        proxyUser=proxyString[2];
        proxyPassword=proxyString[3];
        if (proxyHost != null && !"String_Node_Str".equals(proxyHost)) {
          isProxyEnable=true;
        }
      }
 else {
        proxyHost=null;
        proxyPort=null;
        proxyUser=null;
        proxyPassword=null;
        isProxyEnable=false;
      }
    }
  }
);
  skipButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
      int count=prefStore.getInt(LOGINCOUNT);
      count++;
      prefStore.setValue(LOGINCOUNT,count);
      okPressed();
    }
  }
);
  skipButtonForConnect.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
      int count=prefStore.getInt(LOGINCOUNT);
      count++;
      prefStore.setValue(LOGINCOUNT,count);
      okPressed();
    }
  }
);
  userNameText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2) && pseudonym != null && !"String_Node_Str".equals(pseudonym) && isEmailValid() && agreeButton.getSelection()) {
        createAccountButton.setEnabled(true);
      }
 else {
        createAccountButton.setEnabled(false);
      }
    }
  }
);
  passwordText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2)) {
        password2ValidateLabel.setText("String_Node_Str");
        if (pseudonym != null && !"String_Node_Str".equals(pseudonym)) {
          if (agreeButton.getSelection() && isEmailValid()) {
            createAccountButton.setEnabled(true);
          }
        }
 else {
          createAccountButton.setEnabled(false);
        }
      }
 else {
        createAccountButton.setEnabled(false);
        password2ValidateLabel.setText(notValidateStr);
      }
    }
  }
);
  passwordAgainText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2)) {
        password2ValidateLabel.setText("String_Node_Str");
        if (pseudonym != null && !"String_Node_Str".equals(pseudonym)) {
          if (agreeButton.getSelection() && isEmailValid()) {
            createAccountButton.setEnabled(true);
          }
        }
 else {
          createAccountButton.setEnabled(false);
        }
      }
 else {
        createAccountButton.setEnabled(false);
        password2ValidateLabel.setText(notValidateStr);
      }
    }
  }
);
  emailText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2) && pseudonym != null && !"String_Node_Str".equals(pseudonym) && isEmailValid() && agreeButton.getSelection()) {
        createAccountButton.setEnabled(true);
      }
 else {
        createAccountButton.setEnabled(false);
      }
    }
  }
);
  agreeButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (agreeButton.getSelection()) {
        String password=passwordText.getText();
        String password2=passwordAgainText.getText();
        String pseudonym=userNameText.getText();
        if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2) && pseudonym != null && !"String_Node_Str".equals(pseudonym) && isEmailValid()) {
          createAccountButton.setEnabled(true);
        }
 else {
          createAccountButton.setEnabled(false);
        }
      }
 else {
        createAccountButton.setEnabled(false);
      }
    }
  }
);
  link.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      stackLayout.topControl=connectAccount;
      downComposite.layout();
    }
  }
);
  linkToCreate.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      stackLayout.topControl=createAccount;
      downComposite.layout();
    }
  }
);
  usernameTextForConnect.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String email=usernameTextForConnect.getText();
      String password=passwordTextForconnect.getText();
      if (email != null && !email.trim().equals("String_Node_Str") && password != null && !password.trim().equals("String_Node_Str")) {
        connectButton.setEnabled(true);
      }
 else {
        connectButton.setEnabled(false);
      }
    }
  }
);
  passwordTextForconnect.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String email=usernameTextForConnect.getText();
      String password=passwordTextForconnect.getText();
      if (email != null && !email.trim().equals("String_Node_Str") && password != null && !password.trim().equals("String_Node_Str")) {
        connectButton.setEnabled(true);
      }
 else {
        connectButton.setEnabled(false);
      }
    }
  }
);
  connectButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      String username=usernameTextForConnect.getText().trim();
      String password=passwordTextForconnect.getText().trim();
      boolean success=false;
      try {
        success=RegisterManagement.getInstance().createUser(username,password,"String_Node_Str","String_Node_Str","String_Node_Str",isProxyEnable,proxyHost,proxyPort,proxyUser,proxyPassword);
      }
 catch (      BusinessException e1) {
        ExceptionHandler.process(e1);
      }
      if (success) {
        boolean isUserPassRight=true;
        if (PluginChecker.isExchangeSystemLoaded()) {
          IExchangeService service=(IExchangeService)GlobalServiceRegister.getDefault().getService(IExchangeService.class);
          String checkUserAndPass=service.checkUserAndPass(username,password);
          if (checkUserAndPass != null) {
            isUserPassRight=false;
            MessageDialog.openInformation(getShell(),Messages.getString("String_Node_Str"),checkUserAndPass);
          }
        }
        if (isUserPassRight) {
          IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
          String connectionEmail=null;
          if (project.getAuthor() != null) {
            connectionEmail=project.getAuthor().getLogin();
          }
 else {
            connectionEmail="String_Node_Str";
          }
          prefStore.setValue(connectionEmail,"String_Node_Str" + "String_Node_Str" + username + "String_Node_Str"+ password);
          okPressed();
        }
      }
    }
  }
);
}

Fixed version (ground truth):
private void addListener(){
  createAccountButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      boolean success=false;
      String email=emailText.getText().trim();
      String password=passwordText.getText().trim();
      String pseudonym=userNameText.getText().trim();
      try {
        success=RegisterManagement.getInstance().createUser(email,pseudonym,password,"String_Node_Str","String_Node_Str",countryCombo.getText(),isProxyEnable,proxyHost,proxyPort,proxyUser,proxyPassword);
        if (success) {
          IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
          String connectionEmail=null;
          if (project.getAuthor() != null) {
            connectionEmail=project.getAuthor().getLogin();
          }
 else {
            connectionEmail="String_Node_Str";
          }
          prefStore.setValue(connectionEmail,email + "String_Node_Str" + pseudonym+ "String_Node_Str"+ SHA1Util.hex_sha1(password));
        }
      }
 catch (      BusinessException e1) {
        ExceptionHandler.process(e1);
      }
 finally {
        if (success) {
          MessageDialog.openInformation(getShell(),Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"));
          okPressed();
        }
      }
    }
  }
);
  proxySettingButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      NetworkSettingDialog netSettingDialog=new NetworkSettingDialog(getParentShell());
      if (netSettingDialog.open() == Dialog.OK) {
        String[] proxyString=netSettingDialog.getProxyString();
        proxyHost=proxyString[0];
        proxyPort=proxyString[1];
        proxyUser=proxyString[2];
        proxyPassword=proxyString[3];
        if (proxyHost != null && !"String_Node_Str".equals(proxyHost)) {
          isProxyEnable=true;
        }
      }
 else {
        proxyHost=null;
        proxyPort=null;
        proxyUser=null;
        proxyPassword=null;
        isProxyEnable=false;
      }
    }
  }
);
  proxySettingButtonForConnect.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      NetworkSettingDialog netSettingDialog=new NetworkSettingDialog(getParentShell());
      if (netSettingDialog.open() == Dialog.OK) {
        String[] proxyString=netSettingDialog.getProxyString();
        proxyHost=proxyString[0];
        proxyPort=proxyString[1];
        proxyUser=proxyString[2];
        proxyPassword=proxyString[3];
        if (proxyHost != null && !"String_Node_Str".equals(proxyHost)) {
          isProxyEnable=true;
        }
      }
 else {
        proxyHost=null;
        proxyPort=null;
        proxyUser=null;
        proxyPassword=null;
        isProxyEnable=false;
      }
    }
  }
);
  skipButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
      int count=prefStore.getInt(LOGINCOUNT);
      count++;
      prefStore.setValue(LOGINCOUNT,count);
      okPressed();
    }
  }
);
  skipButtonForConnect.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
      int count=prefStore.getInt(LOGINCOUNT);
      count++;
      prefStore.setValue(LOGINCOUNT,count);
      okPressed();
    }
  }
);
  userNameText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2) && pseudonym != null && !"String_Node_Str".equals(pseudonym) && isEmailValid() && agreeButton.getSelection()) {
        createAccountButton.setEnabled(true);
      }
 else {
        createAccountButton.setEnabled(false);
      }
    }
  }
);
  passwordText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2)) {
        password2ValidateLabel.setText("String_Node_Str");
        if (pseudonym != null && !"String_Node_Str".equals(pseudonym)) {
          if (agreeButton.getSelection() && isEmailValid()) {
            createAccountButton.setEnabled(true);
          }
        }
 else {
          createAccountButton.setEnabled(false);
        }
      }
 else {
        createAccountButton.setEnabled(false);
        password2ValidateLabel.setText(notValidateStr);
      }
    }
  }
);
  passwordAgainText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2)) {
        password2ValidateLabel.setText("String_Node_Str");
        if (pseudonym != null && !"String_Node_Str".equals(pseudonym)) {
          if (agreeButton.getSelection() && isEmailValid()) {
            createAccountButton.setEnabled(true);
          }
        }
 else {
          createAccountButton.setEnabled(false);
        }
      }
 else {
        createAccountButton.setEnabled(false);
        password2ValidateLabel.setText(notValidateStr);
      }
    }
  }
);
  emailText.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String password=passwordText.getText();
      String password2=passwordAgainText.getText();
      String pseudonym=userNameText.getText();
      if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2) && pseudonym != null && !"String_Node_Str".equals(pseudonym) && isEmailValid() && agreeButton.getSelection()) {
        createAccountButton.setEnabled(true);
      }
 else {
        createAccountButton.setEnabled(false);
      }
    }
  }
);
  agreeButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (agreeButton.getSelection()) {
        String password=passwordText.getText();
        String password2=passwordAgainText.getText();
        String pseudonym=userNameText.getText();
        if (password != null && !"String_Node_Str".equals(password) && password2 != null && !"String_Node_Str".equals(password2) && password.equals(password2) && pseudonym != null && !"String_Node_Str".equals(pseudonym) && isEmailValid()) {
          createAccountButton.setEnabled(true);
        }
 else {
          createAccountButton.setEnabled(false);
        }
      }
 else {
        createAccountButton.setEnabled(false);
      }
    }
  }
);
  link.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      stackLayout.topControl=connectAccount;
      downComposite.layout();
    }
  }
);
  linkToCreate.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      stackLayout.topControl=createAccount;
      downComposite.layout();
    }
  }
);
  usernameTextForConnect.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String email=usernameTextForConnect.getText();
      String password=passwordTextForconnect.getText();
      if (email != null && !email.trim().equals("String_Node_Str") && password != null && !password.trim().equals("String_Node_Str")) {
        connectButton.setEnabled(true);
      }
 else {
        connectButton.setEnabled(false);
      }
    }
  }
);
  passwordTextForconnect.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      String email=usernameTextForConnect.getText();
      String password=passwordTextForconnect.getText();
      if (email != null && !email.trim().equals("String_Node_Str") && password != null && !password.trim().equals("String_Node_Str")) {
        connectButton.setEnabled(true);
      }
 else {
        connectButton.setEnabled(false);
      }
    }
  }
);
  connectButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      String username=usernameTextForConnect.getText().trim();
      String password=passwordTextForconnect.getText().trim();
      boolean success=false;
      try {
        success=RegisterManagement.getInstance().createUser(username,password,"String_Node_Str","String_Node_Str","String_Node_Str",isProxyEnable,proxyHost,proxyPort,proxyUser,proxyPassword);
      }
 catch (      BusinessException e1) {
        ExceptionHandler.process(e1);
      }
      if (success) {
        boolean isUserPassRight=true;
        if (PluginChecker.isExchangeSystemLoaded()) {
          IExchangeService service=(IExchangeService)GlobalServiceRegister.getDefault().getService(IExchangeService.class);
          String checkUserAndPass=service.checkUserAndPass(username,SHA1Util.hex_sha1(password));
          if (checkUserAndPass != null) {
            isUserPassRight=false;
            MessageDialog.openInformation(getShell(),Messages.getString("String_Node_Str"),checkUserAndPass);
          }
        }
        if (isUserPassRight) {
          IPreferenceStore prefStore=PlatformUI.getPreferenceStore();
          String connectionEmail=null;
          if (project.getAuthor() != null) {
            connectionEmail=project.getAuthor().getLogin();
          }
 else {
            connectionEmail="String_Node_Str";
          }
          prefStore.setValue(connectionEmail,"String_Node_Str" + "String_Node_Str" + username + "String_Node_Str"+ SHA1Util.hex_sha1(password));
          okPressed();
        }
      }
    }
  }
);
}