diff -r e257e2b6459d -r 4aca42fa4eb1 mmappcomponents/harvester/filehandler/src/mpxfolderscanner.cpp --- a/mmappcomponents/harvester/filehandler/src/mpxfolderscanner.cpp Wed Jun 09 10:13:45 2010 +0300 +++ b/mmappcomponents/harvester/filehandler/src/mpxfolderscanner.cpp Mon Jun 21 16:13:35 2010 +0300 @@ -192,6 +192,14 @@ do { TRAP(err, iDirScan->NextL(iDir)); + if( !iDir && !err ) + { + // if iDir NULL and no error, there are no + // more directories in the structure + // in this case there is no leaving functions called before + // returning err has to be 0 + break; + } blocked = iObserver.IsPathBlockedL( iDirScan->FullPath() ); if( blocked ) { @@ -246,6 +254,14 @@ { MPX_DEBUG1("CMPXFolderScanner::SetupNextDriveToScanL iDirScan->NextL()"); TRAP(err, iDirScan->NextL(iDir)); + if( !iDir && !err ) + { + // if iDir NULL and no error, there are no + // more directories in the structure + // in this case there is no leaving functions called before + // returning err has to be 0 + break; + } MPX_DEBUG2("CMPXFolderScanner::SetupNextDriveToScanL path %S", &iDirScan->FullPath()); blocked = iObserver.IsPathBlockedL( iDirScan->FullPath() ); MPX_DEBUG2("CMPXFolderScanner::SetupNextDriveToScanL path blocked %i", blocked);