Buggy code:
public class MavenIndex { private static final Logger LOGGER = LoggerFactory . getLogger ( MavenIndex . class ) ; private IndexingContext indexingContext ; private PlexusContainer plexusContainer ; private Indexer indexer ; public MavenIndex ( URL repoUrl , File indexDirectory ) throws IOException { } public void closeIndexSearcher ( IndexSearcher searcher ) throws IOException { } private void createIndexingContext ( URL repoUrl , File indexDirectory ) throws IOException , IllegalArgumentException , ExistingLuceneIndexMismatchException , PlexusContainerException , ComponentLookupException { } public Iterable < ArtifactInfo > getArtifactsSince ( final Date startDate ) throws IOException { } public IndexingContext getIndexingContext ( ) { } public Date getLastUpdateLocalRepo ( ) { } public IndexSearcher newIndexSearcher ( ) throws IOException { } public void updateIndex ( String username , String password ) throws IOException { IndexUpdater indexUpdater ; Wagon httpWagon ; try { indexUpdater = plexusContainer . lookup ( IndexUpdater . class ) ; httpWagon = plexusContainer . lookup ( Wagon . class , "http" ) ; } catch ( ComponentLookupException e ) { throw new IOException ( e ) ; } MavenIndex . LOGGER . info ( "Updating<seq2seq4repair_space>maven<seq2seq4repair_space>index..." ) ; TransferListener listener = new AbstractTransferListener ( ) { @ Override public void transferCompleted ( TransferEvent transferEvent ) { MavenIndex . LOGGER . debug ( ( ( "Downloading<seq2seq4repair_space>" + ( transferEvent . getResource ( ) . getName ( ) ) ) + "<seq2seq4repair_space>successfull" ) ) ; } @ Override public void transferProgress ( TransferEvent transferEvent , byte [ ] buffer , int length ) { } @ Override public void transferStarted ( TransferEvent transferEvent ) { MavenIndex . LOGGER . debug ( ( "Downloading<seq2seq4repair_space>" + ( transferEvent . getResource ( ) . getName ( ) ) ) ) ; } } ; AuthenticationInfo info = null ; if ( ( username != null ) && ( password != null ) ) { info = new AuthenticationInfo ( ) ; info . setUserName ( username ) ; info . setPassword ( password ) ; } ResourceFetcher resourceFetcher = new org . apache . maven . index . updater . WagonHelper . WagonFetcher ( httpWagon , listener , info , null ) ; Date lastUpdateLocalRepo = indexingContext . getTimestamp ( ) ; IndexUpdateRequest updateRequest = new IndexUpdateRequest ( indexingContext , resourceFetcher ) ; IndexUpdateResult updateResult = indexUpdater . fetchAndUpdateIndex ( updateRequest ) ; if ( updateResult . isFullUpdate ( ) ) { MavenIndex . LOGGER . debug ( "Full<seq2seq4repair_space>update<seq2seq4repair_space>happened!" ) ; } else <START_BUG> if ( updateResult . getTimestamp ( ) . equals ( lastUpdateLocalRepo ) ) { <END_BUG> MavenIndex . LOGGER . debug ( "No<seq2seq4repair_space>update<seq2seq4repair_space>needed,<seq2seq4repair_space>index<seq2seq4repair_space>is<seq2seq4repair_space>up<seq2seq4repair_space>to<seq2seq4repair_space>date!" ) ; } else { MavenIndex . LOGGER . debug ( ( ( ( ( "Incremental<seq2seq4repair_space>update<seq2seq4repair_space>happened,<seq2seq4repair_space>change<seq2seq4repair_space>covered<seq2seq4repair_space>" + lastUpdateLocalRepo ) + "<seq2seq4repair_space>-<seq2seq4repair_space>" ) + ( updateResult . getTimestamp ( ) ) ) + "<seq2seq4repair_space>period." ) ) ; } } }

Fix:
if ( ( updateResult . getTimestamp ( ) ) == null ) {