Program: 3873
Project: 3873
Buggy source:
/** 
 * Creates a RequeryDownloader to finish downloading incompleteFile.  This constructor has preconditions on several parameters; putting the burden on the caller makes the method easier to implement, since the superclass constructor immediately starts a download thread.
 * @param pushListProvider TODO
 * @param incompleteFile the incomplete file to resume to, whichMUST be the result of IncompleteFileManager.getFile.
 * @param name the name of the completed file, which MUST be the result ofIncompleteFileManager.getCompletedName(incompleteFile)
 * @param size the size of the completed file, which MUST be the result ofIncompleteFileManager.getCompletedSize(incompleteFile) 
 */
@Inject ResumeDownloaderImpl(SaveLocationManager saveLocationManager,DownloadManager downloadManager,FileManager fileManager,IncompleteFileManager incompleteFileManager,DownloadCallback downloadCallback,NetworkManager networkManager,AlternateLocationFactory alternateLocationFactory,RequeryManagerFactory requeryManagerFactory,QueryRequestFactory queryRequestFactory,OnDemandUnicaster onDemandUnicaster,DownloadWorkerFactory downloadWorkerFactory,AltLocManager altLocManager,ContentManager contentManager,SourceRankerFactory sourceRankerFactory,UrnCache urnCache,VerifyingFileFactory verifyingFileFactory,DiskController diskController,IPFilter ipFilter,@Named("String_Node_Str") ScheduledExecutorService backgroundExecutor,Provider<MessageRouter> messageRouter,Provider<HashTreeCache> tigerTreeCache,ApplicationServices applicationServices,RemoteFileDescFactory remoteFileDescFactory,Provider<PushList> pushListProvider,SocketsManager socketsManager,@Named("String_Node_Str") EventMulticaster<DownloadStateEvent> downloadStateMulticaster){
  super(saveLocationManager,downloadManager,fileManager,incompleteFileManager,downloadCallback,networkManager,alternateLocationFactory,requeryManagerFactory,queryRequestFactory,onDemandUnicaster,downloadWorkerFactory,altLocManager,contentManager,sourceRankerFactory,urnCache,verifyingFileFactory,diskController,ipFilter,backgroundExecutor,messageRouter,tigerTreeCache,applicationServices,remoteFileDescFactory,pushListProvider,socketsManager,downloadStateMulticaster);
}

Fixed version (ground truth):
/** 
 * Creates a RequeryDownloader to finish downloading incompleteFile.  This constructor has preconditions on several parameters; putting the burden on the caller makes the method easier to implement, since the superclass constructor immediately starts a download thread.
 * @param pushListProvider TODO
 * @param incompleteFile the incomplete file to resume to, whichMUST be the result of IncompleteFileManager.getFile.
 * @param name the name of the completed file, which MUST be the result ofIncompleteFileManager.getCompletedName(incompleteFile)
 * @param size the size of the completed file, which MUST be the result ofIncompleteFileManager.getCompletedSize(incompleteFile) 
 */
@Inject ResumeDownloaderImpl(SaveLocationManager saveLocationManager,DownloadManager downloadManager,FileManager fileManager,IncompleteFileManager incompleteFileManager,DownloadCallback downloadCallback,NetworkManager networkManager,AlternateLocationFactory alternateLocationFactory,RequeryManagerFactory requeryManagerFactory,QueryRequestFactory queryRequestFactory,OnDemandUnicaster onDemandUnicaster,DownloadWorkerFactory downloadWorkerFactory,AltLocManager altLocManager,ContentManager contentManager,SourceRankerFactory sourceRankerFactory,UrnCache urnCache,VerifyingFileFactory verifyingFileFactory,DiskController diskController,IPFilter ipFilter,@Named("String_Node_Str") ScheduledExecutorService backgroundExecutor,Provider<MessageRouter> messageRouter,Provider<HashTreeCache> tigerTreeCache,ApplicationServices applicationServices,RemoteFileDescFactory remoteFileDescFactory,Provider<PushList> pushListProvider,SocketsManager socketsManager,@Named("String_Node_Str") ListeningExecutorService downloadStateProcessingQueue){
  super(saveLocationManager,downloadManager,fileManager,incompleteFileManager,downloadCallback,networkManager,alternateLocationFactory,requeryManagerFactory,queryRequestFactory,onDemandUnicaster,downloadWorkerFactory,altLocManager,contentManager,sourceRankerFactory,urnCache,verifyingFileFactory,diskController,ipFilter,backgroundExecutor,messageRouter,tigerTreeCache,applicationServices,remoteFileDescFactory,pushListProvider,socketsManager,downloadStateProcessingQueue);
}