Program: 94442
Project: 94442
Buggy source:
protected void runRequest() throws Exception {
  int code=-1;
  try {
    setupProxies();
    setupAuthentication();
    setupTimeouts();
    URLConnection urlConnection=directoryOrFile.openConnection();
    if (directoryOrFile.getProtocol().equalsIgnoreCase("String_Node_Str")) {
      urlConnection.setUseCaches(false);
    }
    urlConnection.setRequestProperty("String_Node_Str","String_Node_Str");
    IURLConnectionModifier connectionModifier=Activator.getDefault().getURLConnectionModifier();
    if (connectionModifier != null) {
      connectionModifier.setSocketFactoryForConnection(urlConnection);
    }
    InputStream ins=urlConnection.getInputStream();
    code=getResponseCode(urlConnection);
    ins.close();
    if (code == HttpURLConnection.HTTP_OK) {
      remoteFiles=new IRemoteFile[1];
      remoteFiles[0]=new URLRemoteFile(urlConnection.getLastModified(),urlConnection.getContentLength(),fileID);
    }
 else     if (code == HttpURLConnection.HTTP_NOT_FOUND) {
      throw new BrowseFileTransferException(NLS.bind("String_Node_Str",directoryOrFile.toString()),code);
    }
 else     if (code == HttpURLConnection.HTTP_UNAUTHORIZED) {
      throw new BrowseFileTransferException("String_Node_Str",code);
    }
 else     if (code == HttpURLConnection.HTTP_FORBIDDEN) {
      throw new BrowseFileTransferException("String_Node_Str",code);
    }
 else     if (code == HttpURLConnection.HTTP_PROXY_AUTH) {
      throw new BrowseFileTransferException("String_Node_Str",code);
    }
 else {
      throw new BrowseFileTransferException(NLS.bind("String_Node_Str",new Integer(code)),code);
    }
  }
 catch (  Exception e) {
    Exception except=(e instanceof BrowseFileTransferException) ? e : new BrowseFileTransferException(NLS.bind("String_Node_Str",directoryOrFile),e,code);
    throw except;
  }
}

Fixed version (ground truth):
protected void runRequest() throws Exception {
  int code=-1;
  try {
    setupProxies();
    setupAuthentication();
    setupTimeouts();
    URLConnection urlConnection=directoryOrFile.openConnection();
    if (directoryOrFile.getProtocol().equalsIgnoreCase("String_Node_Str")) {
      urlConnection.setUseCaches(false);
    }
    urlConnection.setRequestProperty("String_Node_Str","String_Node_Str");
    IURLConnectionModifier connectionModifier=Activator.getDefault().getURLConnectionModifier();
    if (connectionModifier != null) {
      connectionModifier.setSocketFactoryForConnection(urlConnection);
    }
    InputStream ins=urlConnection.getInputStream();
    code=getResponseCode(urlConnection);
    ins.close();
    if (isHTTP()) {
      if (code == HttpURLConnection.HTTP_NOT_FOUND) {
        throw new BrowseFileTransferException(NLS.bind("String_Node_Str",directoryOrFile.toString()),code);
      }
 else       if (code == HttpURLConnection.HTTP_UNAUTHORIZED) {
        throw new BrowseFileTransferException("String_Node_Str",code);
      }
 else       if (code == HttpURLConnection.HTTP_FORBIDDEN) {
        throw new BrowseFileTransferException("String_Node_Str",code);
      }
 else       if (code == HttpURLConnection.HTTP_PROXY_AUTH) {
        throw new BrowseFileTransferException("String_Node_Str",code);
      }
 else {
        throw new BrowseFileTransferException(NLS.bind("String_Node_Str",new Integer(code)),code);
      }
    }
    remoteFiles=new IRemoteFile[1];
    remoteFiles[0]=new URLRemoteFile(urlConnection.getLastModified(),urlConnection.getContentLength(),fileID);
  }
 catch (  Exception e) {
    Exception except=(e instanceof BrowseFileTransferException) ? e : new BrowseFileTransferException(NLS.bind("String_Node_Str",directoryOrFile),e,code);
    throw except;
  }
}