Program: 10284
Project: 10284
Buggy source:
@WebMethod public void startThread(int id,int componentID,String[] options) throws ClientNotKnownException {
  final ClientState state=getState(id);
  final Component component=state.getComponent(componentID);
  String method=options[0];
  Thread thread=null;
  if (method.equals("String_Node_Str")) {
    final String label=options[1];
    final int limit=Integer.parseInt(options[2]);
    thread=new Thread(){
      @Override public void run(){
        ((SparqlEndpoint)component).setSubjectThread(this);
        ((SparqlEndpoint)component).setSubjectThreadRunning(true);
        ((SparqlEndpoint)component).calculateSubjects(label,limit);
        ((SparqlEndpoint)component).setSubjectThreadRunning(false);
      }
    }
;
  }
 else   if (method.equals("String_Node_Str")) {
    final String subject=options[1];
    thread=new Thread(){
      @Override public void run(){
        ((SparqlEndpoint)component).setTriplesThread(this);
        ((SparqlEndpoint)component).setTriplesThreadRunning(true);
        ((SparqlEndpoint)component).calculateTriples(subject);
        ((SparqlEndpoint)component).setTriplesThreadRunning(false);
      }
    }
;
  }
 else   if (method.equals("String_Node_Str")) {
    final String concept=options[1];
    thread=new Thread(){
      @Override public void run(){
        ((SparqlEndpoint)component).setConceptThread(this);
        ((SparqlEndpoint)component).setConceptThreadRunning(true);
        ((SparqlEndpoint)component).calculateConceptSubjects(concept);
        ((SparqlEndpoint)component).setConceptThreadRunning(false);
      }
    }
;
  }
  thread.start();
}

Fixed version (ground truth):
@WebMethod public void startThread(int id,int componentID,String[] options) throws ClientNotKnownException {
  final ClientState state=getState(id);
  final Component component=state.getComponent(componentID);
  String method=options[0];
  Thread thread=null;
  if (method.equals("String_Node_Str")) {
    final String label=options[1];
    final int limit=Integer.parseInt(options[2]);
    thread=new Thread(){
      @Override public void run(){
        ((SparqlKnowledgeSource)component).setSubjectThread(this);
        ((SparqlKnowledgeSource)component).setSubjectThreadRunning(true);
        ((SparqlKnowledgeSource)component).calculateSubjects(label,limit);
        ((SparqlKnowledgeSource)component).setSubjectThreadRunning(false);
      }
    }
;
  }
 else   if (method.equals("String_Node_Str")) {
    final String subject=options[1];
    thread=new Thread(){
      @Override public void run(){
        ((SparqlKnowledgeSource)component).setTriplesThread(this);
        ((SparqlKnowledgeSource)component).setTriplesThreadRunning(true);
        ((SparqlKnowledgeSource)component).calculateTriples(subject);
        ((SparqlKnowledgeSource)component).setTriplesThreadRunning(false);
      }
    }
;
  }
 else   if (method.equals("String_Node_Str")) {
    final String concept=options[1];
    thread=new Thread(){
      @Override public void run(){
        ((SparqlKnowledgeSource)component).setConceptThread(this);
        ((SparqlKnowledgeSource)component).setConceptThreadRunning(true);
        ((SparqlKnowledgeSource)component).calculateConceptSubjects(concept);
        ((SparqlKnowledgeSource)component).setConceptThreadRunning(false);
      }
    }
;
  }
  thread.start();
}