Program: 95970
Project: 95970
Buggy source:
/** 
 * {@inheritDoc}
 */
protected void startTasks() throws ExceptionInInitializerError, InvocationTargetException, NoSuchMethodException {
  String edtNameRegEx=EnvironmentUtils.getProcessEnvironment().getProperty(EDT_NAME_REGEX_KEY);
  if (edtNameRegEx == null) {
    edtNameRegEx=System.getProperty(EDT_NAME_REGEX_KEY);
  }
  if (edtNameRegEx != null) {
    try {
      Pattern.compile(edtNameRegEx);
    }
 catch (    PatternSyntaxException pse) {
      throw new InvocationTargetException(pse,"String_Node_Str" + EDT_NAME_REGEX_KEY + "String_Node_Str");
    }
    final String accessibleEdtNameRegEx=edtNameRegEx;
    Thread addListenersThread=new Thread("String_Node_Str"){
      public void run(){
        boolean isThreadFound=false;
        ThreadGroup rootThreadGroup=Thread.currentThread().getThreadGroup();
        while (rootThreadGroup.getParent() != null) {
          rootThreadGroup=rootThreadGroup.getParent();
        }
        while (!isThreadFound) {
          Thread[] activeThreads=getActiveThreads();
          for (int i=0; i < activeThreads.length; i++) {
            if (activeThreads[i].getName().matches(accessibleEdtNameRegEx)) {
              isThreadFound=true;
              break;
            }
          }
          try {
            Thread.sleep(1000);
          }
 catch (          InterruptedException e) {
          }
        }
        addToolKitEventListenerToAUT();
      }
    }
;
    addListenersThread.setDaemon(true);
    addListenersThread.start();
  }
 else {
    startToolkitThread();
    addToolKitEventListenerToAUT();
  }
  AUTServer.getInstance().invokeAUT();
  GUIAdapterFactoryRegistry.getInstance().registerFactory(new SwingAdapterFactory());
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
protected void startTasks() throws ExceptionInInitializerError, InvocationTargetException, NoSuchMethodException {
  String edtNameRegEx=EnvironmentUtils.getProcessEnvironment().getProperty(EDT_NAME_REGEX_KEY);
  if (edtNameRegEx == null) {
    edtNameRegEx=System.getProperty(EDT_NAME_REGEX_KEY);
  }
  if (edtNameRegEx != null) {
    try {
      Pattern.compile(edtNameRegEx);
    }
 catch (    PatternSyntaxException pse) {
      throw new InvocationTargetException(pse,"String_Node_Str" + EDT_NAME_REGEX_KEY + "String_Node_Str");
    }
    final String accessibleEdtNameRegEx=edtNameRegEx;
    Thread addListenersThread=new Thread("String_Node_Str"){
      public void run(){
        boolean isThreadFound=false;
        ThreadGroup rootThreadGroup=Thread.currentThread().getThreadGroup();
        while (rootThreadGroup.getParent() != null) {
          rootThreadGroup=rootThreadGroup.getParent();
        }
        while (!isThreadFound) {
          Thread[] activeThreads=getActiveThreads();
          for (int i=0; i < activeThreads.length; i++) {
            if (activeThreads[i].getName().matches(accessibleEdtNameRegEx)) {
              isThreadFound=true;
              break;
            }
          }
          try {
            Thread.sleep(1000);
          }
 catch (          InterruptedException e) {
          }
        }
        addToolKitEventListenerToAUT();
      }
    }
;
    addListenersThread.setDaemon(true);
    addListenersThread.start();
  }
 else {
    startToolkitThread();
    addToolKitEventListenerToAUT();
  }
  GUIAdapterFactoryRegistry.getInstance().registerFactory(new SwingAdapterFactory());
  AUTServer.getInstance().invokeAUT();
}