Program: 39307
Project: 39307
Buggy source:
@Override protected void initializeContent(final JSONObject json) throws JSONException {
  JSONObject headerDataObject=json.getJSONObject("String_Node_Str");
  ZoomLevel zoomLevel=ZoomLevel.valueOf(headerDataObject.getString("String_Node_Str"));
  String dateFromString=headerDataObject.getString("String_Node_Str");
  String dateToString=headerDataObject.getString("String_Node_Str");
  DateTime now=new DateTime().withHourOfDay(0).withMinuteOfHour(0).withSecondOfMinute(0);
  Date dateFrom=now.plusDays(defaultStartDay).toDate();
  Date dateTo=now.plusDays(defaultEndDay).toDate();
  if (dateFromString == null || "String_Node_Str".equals(dateFromString)) {
    dateFromErrorMessage=translate("String_Node_Str");
  }
 else {
    ValueAndError dateFromVaE=dateType.toObject(null,dateFromString);
    if (dateFromVaE.getMessage() == null) {
      dateFrom=(Date)dateFromVaE.getValue();
    }
 else {
      dateFromErrorMessage=translate("String_Node_Str");
    }
  }
  if (dateToString == null || "String_Node_Str".equals(dateToString)) {
    dateToErrorMessage=translate("String_Node_Str");
  }
 else {
    ValueAndError dateToVaE=dateType.toObject(null,dateToString);
    if (dateToVaE.getMessage() == null) {
      dateTo=(Date)dateToVaE.getValue();
    }
 else {
      dateToErrorMessage=translate("String_Node_Str");
    }
  }
  scale=new GanttChartScaleImpl(this,zoomLevel,dateFrom,dateTo);
  if (dateFromErrorMessage == null && globalErrorMessage == null) {
    if (scale.isFromLargerThanTo()) {
      globalErrorMessage=translate("String_Node_Str");
    }
 else     if (scale.isTooLargeRange()) {
      globalErrorMessage=translate("String_Node_Str","String_Node_Str" + scale.getMaxRangeInMonths());
    }
  }
  if (json.has("String_Node_Str")) {
    selectedEntityId=json.getLong("String_Node_Str");
  }
}

Fixed version (ground truth):
@Override protected void initializeContent(final JSONObject json) throws JSONException {
  JSONObject headerDataObject=json.getJSONObject("String_Node_Str");
  ZoomLevel zoomLevel=ZoomLevel.valueOf(headerDataObject.getString("String_Node_Str"));
  String dateFromString=headerDataObject.getString("String_Node_Str");
  String dateToString=headerDataObject.getString("String_Node_Str");
  DateTime now=new DateTime().withHourOfDay(0).withMinuteOfHour(0).withSecondOfMinute(0);
  Date dateFrom=now.plusDays(defaultStartDay).toDate();
  Date dateTo=now.plusDays(defaultEndDay).toDate();
  if (dateFromString == null || "String_Node_Str".equals(dateFromString)) {
    dateFromErrorMessage=translate("String_Node_Str");
  }
 else {
    ValueAndError dateFromVaE=DATETYPE.toObject(null,dateFromString);
    if (dateFromVaE.getMessage() == null) {
      dateFrom=(Date)dateFromVaE.getValue();
    }
 else {
      dateFromErrorMessage=translate("String_Node_Str");
    }
  }
  if (dateToString == null || "String_Node_Str".equals(dateToString)) {
    dateToErrorMessage=translate("String_Node_Str");
  }
 else {
    ValueAndError dateToVaE=DATETYPE.toObject(null,dateToString);
    if (dateToVaE.getMessage() == null) {
      dateTo=(Date)dateToVaE.getValue();
    }
 else {
      dateToErrorMessage=translate("String_Node_Str");
    }
  }
  scale=new GanttChartScaleImpl(this,zoomLevel,dateFrom,dateTo);
  if (dateFromErrorMessage == null && globalErrorMessage == null) {
    if (scale.isFromLargerThanTo()) {
      globalErrorMessage=translate("String_Node_Str");
    }
 else     if (scale.isTooLargeRange()) {
      globalErrorMessage=translate("String_Node_Str","String_Node_Str" + scale.getMaxRangeInMonths());
    }
  }
  if (json.has("String_Node_Str")) {
    selectedEntityId=json.getLong("String_Node_Str");
  }
}