Program: 11452
Project: 11452
Buggy source:
/** 
 * Retrieve required data from Abstracted Metadata
 * @throws Exception if metadata not found
 */
private void getMetadata() throws Exception {
  final MetadataElement absRoot=AbstractMetadata.getAbstractedMetadata(sourceProduct);
  srgrFlag=AbstractMetadata.getAttributeBoolean(absRoot,AbstractMetadata.srgr_flag);
  wavelength=SARUtils.getRadarFrequency(absRoot);
  rangeSpacing=AbstractMetadata.getAttributeDouble(absRoot,AbstractMetadata.range_spacing);
  azimuthSpacing=AbstractMetadata.getAttributeDouble(absRoot,AbstractMetadata.azimuth_spacing);
  firstLineUTC=AbstractMetadata.parseUTC(absRoot.getAttributeString(AbstractMetadata.first_line_time)).getMJD();
  lastLineUTC=AbstractMetadata.parseUTC(absRoot.getAttributeString(AbstractMetadata.last_line_time)).getMJD();
  lineTimeInterval=absRoot.getAttributeDouble(AbstractMetadata.line_time_interval) / Constants.secondsInDay;
  orbitStateVectors=AbstractMetadata.getOrbitStateVectors(absRoot);
  if (srgrFlag) {
    srgrConvParams=AbstractMetadata.getSRGRCoefficients(absRoot);
  }
 else {
    nearEdgeSlantRange=AbstractMetadata.getAttributeDouble(absRoot,AbstractMetadata.slant_range_to_first_pixel);
  }
  final String mission=RangeDopplerGeocodingOp.getMissionType(absRoot);
  final String pass=absRoot.getAttributeString("String_Node_Str");
  if (mission.equals("String_Node_Str") && pass.contains("String_Node_Str")) {
    nearRangeOnLeft=false;
  }
  if (mission.contains("String_Node_Str") || mission.contains("String_Node_Str") || mission.equals("String_Node_Str")|| mission.contains("String_Node_Str")) {
    skipBistaticCorrection=true;
  }
  final String prodType=absRoot.getAttributeString(AbstractMetadata.PRODUCT_TYPE);
  if (!prodType.contains("String_Node_Str")) {
    isGRD=true;
  }
}

Fixed version (ground truth):
/** 
 * Retrieve required data from Abstracted Metadata
 * @throws Exception if metadata not found
 */
private void getMetadata() throws Exception {
  final MetadataElement absRoot=AbstractMetadata.getAbstractedMetadata(sourceProduct);
  srgrFlag=AbstractMetadata.getAttributeBoolean(absRoot,AbstractMetadata.srgr_flag);
  wavelength=SARUtils.getRadarFrequency(absRoot);
  rangeSpacing=AbstractMetadata.getAttributeDouble(absRoot,AbstractMetadata.range_spacing);
  azimuthSpacing=AbstractMetadata.getAttributeDouble(absRoot,AbstractMetadata.azimuth_spacing);
  firstLineUTC=AbstractMetadata.parseUTC(absRoot.getAttributeString(AbstractMetadata.first_line_time)).getMJD();
  lastLineUTC=AbstractMetadata.parseUTC(absRoot.getAttributeString(AbstractMetadata.last_line_time)).getMJD();
  lineTimeInterval=absRoot.getAttributeDouble(AbstractMetadata.line_time_interval) / Constants.secondsInDay;
  orbitStateVectors=AbstractMetadata.getOrbitStateVectors(absRoot);
  if (srgrFlag) {
    srgrConvParams=AbstractMetadata.getSRGRCoefficients(absRoot);
  }
 else {
    nearEdgeSlantRange=AbstractMetadata.getAttributeDouble(absRoot,AbstractMetadata.slant_range_to_first_pixel);
  }
  final String mission=RangeDopplerGeocodingOp.getMissionType(absRoot);
  final String pass=absRoot.getAttributeString(AbstractMetadata.PASS);
  final String antennaPointing=absRoot.getAttributeString(AbstractMetadata.antenna_pointing);
  if (mission.equals("String_Node_Str") && pass.contains("String_Node_Str")) {
    nearRangeOnLeft=false;
  }
  if ((pass.contains("String_Node_Str") && antennaPointing.contains("String_Node_Str")) || (pass.contains("String_Node_Str") && antennaPointing.contains("String_Node_Str"))) {
    orbitOnWest=false;
  }
  if (mission.contains("String_Node_Str") || mission.contains("String_Node_Str") || mission.equals("String_Node_Str")|| mission.contains("String_Node_Str")) {
    skipBistaticCorrection=true;
  }
  final String prodType=absRoot.getAttributeString(AbstractMetadata.PRODUCT_TYPE);
  if (!prodType.contains("String_Node_Str")) {
    isGRD=true;
  }
}