Program: 19171
Project: 19171
Buggy source:
protected JsonReader callGet(String function) throws WherigoServiceException {
  InputStream is=null;
  InputStreamReader isr=null;
  Log.i(TAG,"String_Node_Str" + maskPassword(function));
  try {
    URL url=new URL(BASE_URL + function);
    HttpURLConnection con=(HttpURLConnection)url.openConnection();
    con.setConnectTimeout(30000);
    con.setReadTimeout(30000);
    con.setRequestMethod("String_Node_Str");
    con.setRequestProperty("String_Node_Str","String_Node_Str");
    con.setRequestProperty("String_Node_Str","String_Node_Str");
    con.setRequestProperty("String_Node_Str","String_Node_Str");
    final String encoding=con.getContentEncoding();
    if (encoding != null && encoding.equalsIgnoreCase("String_Node_Str")) {
      Log.i(TAG,"String_Node_Str");
      is=new GZIPInputStream(con.getInputStream());
    }
 else     if (encoding != null && encoding.equalsIgnoreCase("String_Node_Str")) {
      Log.i(TAG,"String_Node_Str");
      is=new InflaterInputStream(con.getInputStream(),new Inflater(true));
    }
 else {
      Log.i(TAG,"String_Node_Str");
      is=con.getInputStream();
    }
    isr=new InputStreamReader(is,"String_Node_Str");
    return new JsonReader(isr);
  }
 catch (  Exception e) {
    Log.e(TAG,e.toString(),e);
    throw new WherigoServiceException(WherigoServiceException.ERROR_CONNECTION_ERROR,e.getClass().getSimpleName(),e);
  }
}

Fixed version (ground truth):
protected JsonReader callGet(String function) throws WherigoServiceException {
  InputStream is=null;
  InputStreamReader isr=null;
  Log.i(TAG,"String_Node_Str" + maskParameterValues(function));
  try {
    URL url=new URL(BASE_URL + function);
    HttpURLConnection con=(HttpURLConnection)url.openConnection();
    con.setConnectTimeout(30000);
    con.setReadTimeout(30000);
    con.setRequestMethod("String_Node_Str");
    con.setRequestProperty("String_Node_Str","String_Node_Str");
    con.setRequestProperty("String_Node_Str","String_Node_Str");
    con.setRequestProperty("String_Node_Str","String_Node_Str");
    if (con.getResponseCode() >= 400) {
      is=con.getErrorStream();
    }
 else {
      is=con.getInputStream();
    }
    final String encoding=con.getContentEncoding();
    if (encoding != null && encoding.equalsIgnoreCase("String_Node_Str")) {
      Log.i(TAG,"String_Node_Str");
      is=new GZIPInputStream(is);
    }
 else     if (encoding != null && encoding.equalsIgnoreCase("String_Node_Str")) {
      Log.i(TAG,"String_Node_Str");
      is=new InflaterInputStream(is,new Inflater(true));
    }
 else {
      Log.i(TAG,"String_Node_Str");
    }
    if (con.getResponseCode() >= 400) {
      isr=new InputStreamReader(is,"String_Node_Str");
      StringBuilder sb=new StringBuilder();
      char buffer[]=new char[1024];
      int len=0;
      while ((len=isr.read(buffer)) != -1) {
        sb.append(buffer,0,len);
      }
      isr.close();
      throw new WherigoServiceException(WherigoServiceException.ERROR_API_ERROR,sb.toString());
    }
    isr=new InputStreamReader(new DisconnectableInputStream(is,con),"String_Node_Str");
    return new JsonReader(isr);
  }
 catch (  Exception e) {
    Log.e(TAG,e.toString(),e);
    throw new WherigoServiceException(WherigoServiceException.ERROR_CONNECTION_ERROR,e.getClass().getSimpleName(),e);
  }
}