Cleaning freespace on Seagate external drive crashes at end

Please post your support questions here.

Moderators: Eraser DevTeam, Eraser Moderators

Cleaning freespace on Seagate external drive crashes at end

Postby Rishu73 » Tue Jul 03, 2012 9:17 pm

I captured the errors in a debugger, so I have call stacks and the like:

Output:
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Eraser.Util.FileSystem.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\WinSxS\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_08e61857a83bc251\msvcm90.dll', Symbols loaded.
A first chance exception of type 'System.IO.IOException' occurred in Eraser.Util.dll

Additional information: Could not lock volume.


Callstack:
Eraser.Util.dll!Eraser.Util.VolumeLock.VolumeLock(System.IO.FileStream stream) + 0x145 bytes
Eraser.Util.dll!Eraser.Util.VolumeInfo.LockVolume(System.IO.FileStream stream) + 0x26 bytes
Eraser.DefaultPlugins.dll!Eraser.DefaultPlugins.FatFileSystem.EraseDirectoryStructures(Eraser.Util.VolumeInfo info, Eraser.Manager.FileSystemEntriesEraseProgress callback) + 0x13d bytes
Eraser.Manager.dll!Eraser.Manager.DirectExecutor.EraseUnusedSpace(Eraser.Manager.Task task, Eraser.Manager.UnusedSpaceTarget target, Eraser.Manager.DirectExecutor.TaskProgressManager progress) + 0x899 bytes
Eraser.Manager.dll!Eraser.Manager.DirectExecutor.Main() + 0x3f6 bytes
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) + 0x9b bytes
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x4d bytes


Crash:

Output:
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_64\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Eraser.exe'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Eraser.Manager.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualBasic\8.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualBasic.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Eraser.Util.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Plugins\Eraser.DefaultPlugins.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Core\3.5.0.0__b77a5c561934e089\System.Core.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\en\Eraser.resources.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\BevelLine.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Plugins\en\Eraser.DefaultPlugins.resources.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\en\Eraser.Manager.resources.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Program Files\Eraser\Eraser.Util.FileSystem.dll'
'Eraser.exe' (Managed (v2.0.50727)): Loaded 'C:\Windows\WinSxS\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_08e61857a83bc251\msvcm90.dll', Symbols loaded.
An unhandled exception of type 'System.NullReferenceException' occurred in Eraser.Util.dll

Additional information: Object reference not set to an instance of an object.

Callstack:
Eraser.Util.dll!Eraser.Util.VolumeLock.Dispose(bool disposing) + 0x24 bytes
Eraser.Util.dll!Eraser.Util.VolumeLock.Finalize() + 0x19 bytes
Rishu73
 
Posts: 7
Joined: Fri Jun 29, 2012 5:42 pm

Re: Cleaning freespace on Seagate external drive crashes at

Postby Joel » Mon Jul 16, 2012 10:10 am

Thanks! VolumeLock wasn't implemented properly; if the volume was not locked, an exception would be thrown (correct) but the deterministic cleanup code did not handle the situation correctly (which was wrong). I've fixed this in r2780.
Be sure to read the FAQ before posting. If you found this application useful, please contribute to Eraser's development.

I develop Eraser but I am not an employee of Heidi Computers Ltd. My views do not represent those of Heidi Computers Ltd.
Don't PM or Email me questions: they won't be answered any faster than on the forum and knowledge won't be accessible by all.
User avatar
Joel
Eraser DevTeam
 
Posts: 3688
Joined: Sat Aug 19, 2006 12:16 am
Location: Singapore


Return to Eraser Support

Who is online

Users browsing this forum: Google [Bot], Yahoo [Bot] and 2 guests