Program: 87465
Project: 87465
Buggy source:
@Override public void run(){
  try {
    String urlString;
    if (query != null) {
      if (isRealtimeStopFiltered) {
        urlString="String_Node_Str" + URLEncoder.encode(query,"String_Node_Str");
      }
 else {
        urlString="String_Node_Str" + URLEncoder.encode(query,"String_Node_Str");
      }
    }
 else {
      final LatLng latLong=new LatLng(latitude,longitude);
      final UTMRef utmRef=latLong.toUTMRef();
      urlString="String_Node_Str" + (int)utmRef.getEasting() + "String_Node_Str"+ (int)utmRef.getNorthing()+ "String_Node_Str";
    }
    Log.i(TAG,"String_Node_Str" + urlString);
    final InputStream stream=HelperFunctions.executeHttpRequest(context,new HttpGet(urlString));
    final JSONArray jsonArray=new JSONArray(HelperFunctions.InputStreamToString(stream));
    final int arraySize=jsonArray.length();
    for (int i=0; i < arraySize; i++) {
      final JSONObject json=jsonArray.getJSONObject(i);
      if (json.getInt("String_Node_Str") == 0) {
        StationData station=new StationData();
        if (query != null) {
          station.realtimeStop=isRealtimeStopFiltered;
        }
 else {
          station.realtimeStop=json.getBoolean("String_Node_Str");
          if (isRealtimeStopFiltered && !station.realtimeStop) {
            continue;
          }
        }
        station.stationId=json.getInt("String_Node_Str");
        station.stopName=json.getString("String_Node_Str");
        searchForAddress(station);
        final String district=json.getString("String_Node_Str");
        if (district.length() > 0) {
          if (station.extra == null) {
            station.extra=district;
          }
 else {
            station.extra=station.extra + "String_Node_Str" + district;
          }
        }
        if (json.has("String_Node_Str")) {
          station.walkingDistance=json.getInt("String_Node_Str");
        }
        station.utmCoords[0]=json.getInt("String_Node_Str");
        station.utmCoords[1]=json.getInt("String_Node_Str");
        ThreadHandlePostData(station);
      }
    }
  }
 catch (  Exception e) {
    if (e.getClass() == InterruptedException.class) {
      ThreadHandlePostExecute(null);
      return;
    }
    ThreadHandlePostExecute(e);
    return;
  }
  ThreadHandlePostExecute(null);
}

Fixed version (ground truth):
@Override public void run(){
  try {
    String urlString;
    if (query != null) {
      query=query.trim();
      if (isRealtimeStopFiltered) {
        urlString="String_Node_Str" + URLEncoder.encode(query,"String_Node_Str");
      }
 else {
        urlString="String_Node_Str" + URLEncoder.encode(query,"String_Node_Str");
      }
    }
 else {
      final LatLng latLong=new LatLng(latitude,longitude);
      final UTMRef utmRef=latLong.toUTMRef();
      urlString="String_Node_Str" + (int)utmRef.getEasting() + "String_Node_Str"+ (int)utmRef.getNorthing()+ "String_Node_Str";
    }
    Log.i(TAG,"String_Node_Str" + urlString);
    final InputStream stream=HelperFunctions.executeHttpRequest(context,new HttpGet(urlString));
    final JSONArray jsonArray=new JSONArray(HelperFunctions.InputStreamToString(stream));
    final int arraySize=jsonArray.length();
    for (int i=0; i < arraySize; i++) {
      final JSONObject json=jsonArray.getJSONObject(i);
      if (json.getInt("String_Node_Str") == 0) {
        StationData station=new StationData();
        if (query != null) {
          station.realtimeStop=isRealtimeStopFiltered;
        }
 else {
          station.realtimeStop=json.getBoolean("String_Node_Str");
          if (isRealtimeStopFiltered && !station.realtimeStop) {
            continue;
          }
        }
        station.stationId=json.getInt("String_Node_Str");
        station.stopName=json.getString("String_Node_Str");
        searchForAddress(station);
        final String district=json.getString("String_Node_Str");
        if (district.length() > 0) {
          if (station.extra == null) {
            station.extra=district;
          }
 else {
            station.extra=station.extra + "String_Node_Str" + district;
          }
        }
        if (json.has("String_Node_Str")) {
          station.walkingDistance=json.getInt("String_Node_Str");
        }
        station.utmCoords[0]=json.getInt("String_Node_Str");
        station.utmCoords[1]=json.getInt("String_Node_Str");
        ThreadHandlePostData(station);
      }
    }
  }
 catch (  Exception e) {
    if (e.getClass() == InterruptedException.class) {
      ThreadHandlePostExecute(null);
      return;
    }
    ThreadHandlePostExecute(e);
    return;
  }
  ThreadHandlePostExecute(null);
}