Program: 135615
Project: 135615
Buggy source:
public void updateIssue(TurboIssue orignalIssue,TurboIssue editedIssue){
  Issue original=orignalIssue.toGhIssue();
  Issue edited=editedIssue.toGhIssue();
  try {
    Issue latest=issueService.getIssue(repoId,editedIssue.getId());
    String originalTitle=original.getTitle();
    String editedTitle=edited.getTitle();
    if (!editedTitle.equals(originalTitle)) {
      latest.setTitle(editedTitle);
    }
    String originalBody=original.getBody();
    String editedBody=edited.getBody();
    if (!editedBody.equals(originalBody)) {
      latest.setBody(editedBody);
    }
    User originalAssignee=original.getAssignee();
    User editedAssignee=edited.getAssignee();
    String originalALogin=(originalAssignee != null) ? originalAssignee.getLogin() : "String_Node_Str";
    String editedALogin=(editedAssignee != null) ? editedAssignee.getLogin() : "String_Node_Str";
    if (!editedALogin.equals(originalALogin)) {
      if (editedAssignee == null) {
        latest.setAssignee(new User());
      }
 else {
        latest.setAssignee(editedAssignee);
      }
    }
    String originalState=original.getState();
    String editedState=edited.getState();
    if (!editedState.equals(originalState)) {
      latest.setState(editedState);
    }
    Milestone originalMilestone=original.getMilestone();
    Milestone editedMilestone=edited.getMilestone();
    int originalMNumber=(originalMilestone != null) ? originalMilestone.getNumber() : 0;
    int editedMNumber=(editedMilestone != null) ? editedMilestone.getNumber() : 0;
    if (editedMNumber != originalMNumber) {
      if (editedMilestone == null) {
        latest.setMilestone(new Milestone());
      }
 else {
        latest.setMilestone(editedMilestone);
      }
    }
    List<Label> originalLabels=original.getLabels();
    List<Label> editedLabels=edited.getLabels();
    boolean isSameLabels=true;
    for (    Label editedLabel : editedLabels) {
      if (!originalLabels.contains(editedLabel)) {
        isSameLabels=false;
        break;
      }
    }
    if (!isSameLabels) {
      latest.setLabels(editedLabels);
    }
    issueService.editIssue(repoId,latest);
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
}

Fixed version (ground truth):
public void updateIssue(TurboIssue orignalIssue,TurboIssue editedIssue){
  Issue original=orignalIssue.toGhIssue();
  Issue edited=editedIssue.toGhIssue();
  try {
    Issue latest=issueService.getIssue(repoId,editedIssue.getId());
    String originalTitle=original.getTitle();
    String editedTitle=edited.getTitle();
    if (!editedTitle.equals(originalTitle)) {
      latest.setTitle(editedTitle);
    }
    String originalBody=original.getBody();
    String editedBody=edited.getBody();
    if (!editedBody.equals(originalBody)) {
      latest.setBody(editedBody);
    }
    User originalAssignee=original.getAssignee();
    User editedAssignee=edited.getAssignee();
    String originalALogin=(originalAssignee != null) ? originalAssignee.getLogin() : "String_Node_Str";
    String editedALogin=(editedAssignee != null) ? editedAssignee.getLogin() : "String_Node_Str";
    if (!editedALogin.equals(originalALogin)) {
      if (editedAssignee == null) {
        latest.setAssignee(new User());
      }
 else {
        latest.setAssignee(editedAssignee);
      }
    }
    String originalState=original.getState();
    String editedState=edited.getState();
    if (!editedState.equals(originalState)) {
      latest.setState(editedState);
    }
    Milestone originalMilestone=original.getMilestone();
    Milestone editedMilestone=edited.getMilestone();
    int originalMNumber=(originalMilestone != null) ? originalMilestone.getNumber() : 0;
    int editedMNumber=(editedMilestone != null) ? editedMilestone.getNumber() : 0;
    if (editedMNumber != originalMNumber) {
      if (editedMilestone == null) {
        latest.setMilestone(new Milestone());
      }
 else {
        latest.setMilestone(editedMilestone);
      }
    }
    List<Label> originalLabels=original.getLabels();
    List<Label> editedLabels=edited.getLabels();
    boolean isSameLabels=true;
    if (originalLabels.size() != editedLabels.size()) {
      isSameLabels=false;
    }
 else {
      for (      Label originalLabel : originalLabels) {
        if (!editedLabels.contains(originalLabel)) {
          isSameLabels=false;
          break;
        }
      }
    }
    if (!isSameLabels) {
      latest.setLabels(editedLabels);
    }
    issueService.editIssue(repoId,latest);
  }
 catch (  IOException e) {
    e.printStackTrace();
  }
}