Timeline


and

5/21/2010:

17:36 Build of Eraser 6.2 [2154] on Windows completed
07:50 Changeset [2154] by aramacciotti
  • trunk/eraser/Eraser/Strings.it.resx

Italian translation of "untranslated" strings

5/16/2010:

17:17 Build of Eraser 6 [2146] on Windows completed
17:12 Build of Eraser 6.2 [2153] on Windows completed
14:47 Changeset [2153] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs

Fixed crash when erasing an empty file.

12:31 Changeset [2152] by lowjoel
  • trunk/eraser/Eraser.Util/ProgressManager.cs
  • trunk/eraser/Eraser.Util/Strings.en.resx
  • trunk/eraser/Eraser.Util/Strings.it.resx
  • trunk/eraser/Eraser.Util/Strings.nl.resx
  • trunk/eraser/Eraser.Util/Strings.pl.resx
  • trunk/eraser/Eraser.Util/Strings.resx

Some parameter validation in ProgressManagerStep?'s constructor

11:45 Changeset [2151] by lowjoel
  • trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs

Reorganise the extension methods by the class it extends.

11:39 Changeset [2150] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
  • trunk/eraser/Eraser.Util/Win32ErrorCodes.cs

Experimental fix to prevent those pesky disk full messages when erasing unused space.

11:14 Changeset [2149] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/FileSystems/Ntfs.cs
  • trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
  • trunk/eraser/Eraser.Util.Native/OpenHandle.cpp
  • trunk/eraser/Eraser.Util/VolumeInfo.cs

Modified all dependent code to compile after the change in the previous revision.

11:06 Changeset [2148] by lowjoel
  • trunk/eraser/Eraser.Util.Native/OpenHandle.h
  • trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs
  • trunk/eraser/Eraser.Util/VolumeInfo.cs

Use discrete types where possible:

10:54 Changeset [2147] by lowjoel
  • trunk/eraser
  • trunk/eraser/Eraser.Util/VolumeInfo.cs

Forward port from Eraser 6.0: Allow erasing of UNC paths.

10:53 Changeset [2146] by lowjoel
  • branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs

Allow erasing of UNC paths.

10:39 Changeset [2145] by lowjoel
  • trunk/eraser/Eraser.BlackBox/BlackBox.cs

Oh dear - the upload URI was wrong

10:34 Changeset [2144] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

Better message when we skip reparse points.

10:29 Changeset [2143] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs

Instead of skipping reparse points when searching for files to erase, we will remove the reparse point securely, but leave the file contents intact.

10:24 Changeset [2142] by lowjoel
  • trunk/eraser/Eraser/Program.cs
  • trunk/eraser/Eraser/Strings.en.resx
  • trunk/eraser/Eraser/Strings.it.resx
  • trunk/eraser/Eraser/Strings.nl.resx
  • trunk/eraser/Eraser/Strings.pl.resx
  • trunk/eraser/Eraser/Strings.resx

Localise the command line interface of Eraser. Also causes the shell confirmation dialogs to follow the configure UI language. Addresses #355: Implement feature-complete CLI

10:14 Changeset [2141] by lowjoel
  • trunk/eraser/Eraser/SchedulerPanel.cs

Final fix to r2133, r2129, r2117, r1969 to fix #271.

06:06 Build of Eraser 6 [2139] on Windows completed
06:01 Build of Eraser 6.2 [2140] on Windows completed

5/15/2010:

23:32 Changeset [2140] by lowjoel
  • trunk/eraser
  • trunk/eraser/Eraser.Util/VolumeInfo.cs
  • trunk/eraser/Eraser.Util/Win32ErrorCodes.cs

Forward port from Eraser 6.0: Check that the Win32 error code is not ERROR_NOT_READY when we query the drive's mount points, as certain drives may not be mounted or have a usable filesystem when queried. Fixes crash in http://bbs.heidi.ie/viewtopic.php?f=2&t=6207.

23:30 Changeset [2139] by lowjoel
  • branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs

Check that the Win32 error code is not ERROR_NOT_READY when we query the drive's mount points, as certain drives may not be mounted or have a usable filesystem when queried. Fixes crash in http://bbs.heidi.ie/viewtopic.php?f=2&t=6207.

23:10 Changeset [2138] by lowjoel
  • trunk/eraser/Eraser/SchedulerPanel.cs

Don't create empty tasks when dragging and dropping.

23:09 Changeset [2137] by lowjoel
  • trunk/eraser/Eraser/SchedulerPanel.cs

Fixed regression in r2118: the check for file/directory existence should be a boolean OR, not a boolean AND.

23:04 Changeset [2136] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp

Warning fix.

23:04 Changeset [2135] by lowjoel
  • trunk/eraser/Eraser/AboutForm.cs
  • trunk/eraser/Version.cs.in

Fixed querying of file version information. File version information is what we want, not the .NET assembly version, since that is now fixed for compatibility with other revisions.

17:06 Build of Eraser 6.2 [2134] on Windows completed
14:52 Changeset [2134] by lowjoel
  • trunk/eraser/Eraser.Util/StreamInfo.cs

Document a TODO.

14:52 Changeset [2133] by lowjoel
  • trunk/eraser/Eraser.Manager/DirectExecutor.cs

Run the task completion event handler before resetting the type of task so that immediately run tasks can be deleted upon completion.

14:50 Changeset [2132] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/IRegistrar.cs

Implemented a new FactoryRegistrar? class which is a registrar, but creates new instances of every object upon enumeration so that multiple copies of the class can exist at any one time.

13:28 Changeset [2131] by lowjoel
  • trunk/eraser/Documentation/Documentation.docx
  • trunk/eraser/Documentation/Documentation.pdf

Document the Run Immediately and Run at Restart options -- after completion of the task (or by cancelling the task) the task's schedule will be reset to Run Manually.

13:28 Changeset [2130] by lowjoel
  • branches/eraser6/6.0/Eraser/SchedulerPanel.cs

Revert r2116: the commit would introduce more problems than it fixes.

13:22 Changeset [2129] by lowjoel
  • trunk/eraser/Eraser.Manager/DirectExecutor.cs
  • trunk/eraser/Eraser/SchedulerPanel.cs
  • Define the behaviour of Run immediately (run now tasks) and Run manually: after a run now task is complete, it is reset to run manually; if a run immediately task is saved to the task list, upon load, it is automatically queued for running.
  • As a result, we don't need to worry about having blank "task status" entries when the task is set to run immediately upon creation. This would revert r1969
12:41 Changeset [2128] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp

Removed debug code.

12:34 Changeset [2127] by lowjoel
  • trunk/eraser/Eraser/Program.cs

Complete the implementation of the secure move command. Addresses #60: Eraser Secure Cut.

12:34 Changeset [2126] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp

When creating the command line, check all paths to ensure that the last character is not a \, otherwise we need to escape it (otherwise the command line is garbled)

11:50 Changeset [2125] by lowjoel
  • trunk/eraser/Version.cs.in

Fix the AssemblyVersion? attribute since things like dependencies and serialisation uses it (arbitrarily at r2112 -- change this whenever any of the APIs or the serialised members change)

11:45 Changeset [2124] by lowjoel
  • trunk/eraser/Eraser/Program.cs

There's no need for the confirmation dialog when cutting and pasting stuff, so don't show it when we do Secure Move, either.

11:44 Changeset [2123] by lowjoel
  • trunk/eraser/Eraser.Shell/SecureMove.h
  • trunk/eraser/Eraser.Shell/ShellExt.vcproj

Removed the Superseded Secure Move code. Addresses #60: Eraser Secure Cut.

11:43 Ticket #60 (Eraser Secure Cut.) closed by Joel
fixed: Completely implemented in r2122. Yay!
11:42 Changeset [2122] by lowjoel
  • trunk/eraser/Eraser.Shell/Eraser.Shell.rgs
  • trunk/eraser/Installer/DirectoryStructure.wxs

Include the Background registry key when installing Eraser so that Eraser's Secure Paste will appear when the user right-clicks on the background. Addresses #60: Eraser Secure Cut.

11:36 Changeset [2121] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp

Secure Paste uses the same command as Secure Move (they are just invoked differently)

11:35 Changeset [2120] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp
  • trunk/eraser/Eraser.Shell/CtxMenu.h

Addresses #60: Eraser Secure Cut.

  • Implemented the display and the invocation of the Eraser Secure Paste command.
  • Only respond to Cut operations, ignore copy operations (otherwise we will be cutting the file, not copying it when we paste)
10:30 Changeset [2119] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp
  • trunk/eraser/Eraser.Shell/CtxMenu.h

Implemented initialisation code for Secure Paste. Addresses #60: Eraser Secure Cut.

09:45 Changeset [2118] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.Manager/FileSystem.cs
  • trunk/eraser/Eraser/Program.cs
  • trunk/eraser/Eraser/SchedulerPanel.cs

When we use File.Exists, we have to also check using Directory.Exists as File.Exists returns false if the path points to a directory.

09:40 Changeset [2117] by lowjoel
  • trunk/eraser
  • trunk/eraser/Eraser/SchedulerPanel.cs

Forward-port from Eraser 6.0: Supplements r1969: when no task is running, queuing the task causes the task to run immediately; the task is added to the scheduler, but the execution status isn't set properly (the progress bar doesn't show)

09:38 Changeset [2116] by lowjoel
  • branches/eraser6/6.0/Eraser/SchedulerPanel.cs

Supplements r1969: when no task is running, queuing the task causes the task to run immediately; the task is added to the scheduler, but the execution status isn't set properly (the progress bar doesn't show)

09:02 Changeset [2115] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs

Wrong test for reparse points, causing folder erasures to never run.

09:01 Changeset [2114] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

Fixed progress calculation: the amount of data needed to complete the erase was doubly counted, causing the progress calculation to be wrong.

07:53 Changeset [2113] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

Removed unused strings.

07:21 Changeset [2112] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx
  • trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs
  • trunk/eraser/Eraser.Util/Shell.cs

Implemented secure move of files and folders.

05:49 Build of Eraser 6.2 [2111] on Windows completed
05:34 Changeset [2111] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs

Fixed bug introduced n r2085: files were not enumerated when a directory was selected for erasure.

05:27 Changeset [2110] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs

Partially implemented the copying of directories. Addresses #60: Eraser Secure Cut.

04:37 Changeset [2109] by lowjoel
  • trunk/eraser/Eraser.Util/StreamInfo.cs

Fixed missing </summary> tag.

04:37 Changeset [2108] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs

Addresses #60: Eraser Secure Cut.

04:22 Changeset [2107] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs

Fixed wrong check against a non-existent file.

04:00 Changeset [2106] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

New API

  • the GetPaths? function no longer returns the total size of the files as an out parameter, that can be calculated from the list itself (use the Length property)
  • GetFiles? and GetPathADSes are now statis functions
02:50 Changeset [2105] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs

Factored out the stream erasure code to a separate function; the Execute() method is to be defined by the final subclass.

01:22 Ticket #79 (Code path optomisation) closed by Joel
fixed: As of r2104 GetPaths? is only called once, after the moving of the erasure …

5/14/2010:

17:39 Build of Eraser 6.2 [2104] on Windows completed
14:23 Changeset [2104] by lowjoel
  • trunk/eraser/Eraser.Manager/Strings.en.resx
  • trunk/eraser/Eraser.Manager/Strings.it.resx
  • trunk/eraser/Eraser.Manager/Strings.nl.resx
  • trunk/eraser/Eraser.Manager/Strings.pl.resx
  • trunk/eraser/Eraser.Manager/Strings.resx
  • trunk/eraser/Eraser.Manager/Task.cs

Code structure more amenable to localisation.

14:14 Changeset [2103] by lowjoel
  • trunk/eraser/Eraser.Manager/Task.cs

Fixed spacing.

14:10 Changeset [2102] by lowjoel
  • trunk/eraser/Eraser.Manager/Task.cs

Handle instances properly when empty tasks are somehow created.

14:07 Changeset [2101] by lowjoel
  • trunk/eraser/Eraser/Program.GuiProgram.cs

Fixed potential NullReferenceException? which will mask the inner exception when an exception is thrown in the OnInitInstance? event handler for GuiProgram?.

12:16 Ticket #368 (Stop Eraser running process when not required) closed by Joel
duplicate: Yeah, duplicate of #299. Thanks.
12:11 Ticket #368 (Stop Eraser running process when not required) created by DavidHB
There have been a significant number of requests on the forum that the …

5/13/2010:

17:47 Build of Eraser 6.2 [2100] on Windows completed
17:00 Changeset [2100] by aramacciotti
  • trunk/eraser/Eraser/Eraser.csproj

5/12/2010:

17:36 Build of Eraser 6.2 [2099] on Windows completed
12:06 Changesets [2098-2099] by aramacciotti
  • trunk/eraser/Eraser/ShellConfirmationDialog.Designer.cs
  • trunk/eraser/Eraser/ShellConfirmationDialog.resx
  • trunk/eraser/Eraser/ShellConfirmationDialog.resx

Italian translation

05:14 Build of Eraser 6.2 [2097] on Windows completed

5/11/2010:

20:54 Changeset [2097] by aramacciotti
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx

Italian translations

17:53 Build of Eraser 6.2 [2095] on Windows completed
13:45 Ticket #367 (Perform Profiling of Eraser) created by Joel
To find slow spots and duplicate code.
13:44 Ticket #366 (Allow users to check whether their crashes have been fixed) created by Joel
13:39 Changeset [2096] by lowjoel
  • trunk/website/scripts/blackbox/upload.php

I'm executing a prepared statement! Don't query directly as that's invalid SQL syntax.

13:29 Changeset [2095] by lowjoel
  • trunk/eraser/Eraser.BlackBox/BlackBox.cs

Fixed potential nested exception when the HTTP request failed.

5/10/2010:

17:21 Build of Eraser 6.2 [2094] on Windows completed
12:09 Changeset [2094] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

New strings.

12:06 Changeset [2093] by lowjoel
  • trunk/eraser/Eraser.Manager/FileSystem.cs
  • trunk/eraser/Eraser/Program.cs
  • trunk/eraser/Eraser/SchedulerPanel.cs

When checking whether a path is a directory, always ensure that the path exists before running GetAttributes?.

05:29 Build of Eraser 6.2 [2092] on Windows completed

5/9/2010:

22:32 Changeset [2092] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTarget.cs

Fixed crash when running unused space erasure targets and when the default erasure method was specified.

17:06 Build of Eraser 6.2 [2091] on Windows completed
12:41 Ticket #365 (Blank context menu item: Windows XP) created by DavidHB
On the Eraser Support Forum, user Daneel reported as follows:"The version …
11:30 Changeset [2091] by aramacciotti
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx

More strings italian translation

11:18 Changeset [2090] by lowjoel
  • trunk/eraser/Eraser.Util/NativeMethods/WinUser.cs

Silence warnings. These warnings are useless because the NMHDR structure is for interop.

11:18 Changeset [2089] by aramacciotti
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx

Italian translation of new strings

11:17 Changeset [2088] by aramacciotti
  • trunk/eraser/Eraser/ShellConfirmationDialog.Designer.cs
  • trunk/eraser/Eraser/ShellConfirmationDialog.it.resx
  • trunk/eraser/Eraser/ShellConfirmationDialog.resx

Italian translation

05/09/10:

11:06 Changeset [2087] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs

Implement secure move of files.

11:05 Changeset [2086] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs

Swapped titles for the file/folder save dialogs.

11:00 Changeset [2085] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureMethods/FirstLast16KB.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx
  • trunk/eraser/Eraser.Manager/ErasureMethod.cs
06:04 Changeset [2084] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs

Fixed crash upon completion of an erase.

05/08/10:

17:11 Build of Eraser 6 [2080] on Windows completed
17:06 Build of Eraser 6.2 [2083] on Windows completed
16:07 Changeset [2083] by aramacciotti
  • trunk/eraser/Eraser/SettingsPanel.it.resx
  • trunk/eraser/Eraser/SettingsPanel.resx

Shortening italian Save button label

16:03 Changeset [2082] by aramacciotti
  • trunk/eraser/Eraser/TaskDataSelectionForm.Designer.cs
  • trunk/eraser/Eraser/TaskDataSelectionForm.it.resx
  • trunk/eraser/Eraser/TaskDataSelectionForm.resx

Italian translation of some controls label

14:33 Changeset [2081] by lowjoel
  • trunk/eraser
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs

Forward port from Eraser 6.0: Completely fixes the bug address in r1041: GetPathADSes takes a value by "out", meaning whatever value the totalSize variable had before would have been overwritten. Fixed the code to work properly now. This would have reported the wrong amount of data that needs to be written to erase the file.

5/8/2010:

14:30 Changeset [2080] by lowjoel
  • branches/eraser6/6.0/Eraser.Manager/Task.cs

Completely fixes the bug address in r1041: GetPathADSes takes a value by "out", meaning whatever value the totalSize variable had before would have been overwritten. Fixed the code to work properly now. This would have reported the wrong amount of data that needs to be written to erase the file.

12:00 Ticket #330 (False identification of compressed/encrypted/sparse files) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …
06:06 Changeset [2079] by lowjoel
  • trunk/eraser/Eraser.Util/Win32ErrorCodes.cs

Handle the RequestAborted? error code as an OperationCanceledException?.

06:01 Changeset [2078] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

New strings.

06:00 Changeset [2077] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.resx

Don't use the split button to pick the file or folder to move to; ask the user what he wants moved, then present the appropriate dialogs. Addresses #60: Eraser Secure Cut.

05:58 Changeset [2076] by lowjoel
  • trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs
  • trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs

The callback function cannot have SafeFileHandle? as the HANDLE cannot be marshalled from unmanaged to managed code as a SafeFileHandle?. Addresses #60: Eraser Secure Cut.

05:28 Build of Eraser 6.2 [2075] on Windows completed
05:05 Changeset [2075] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp

Warning fix.

04:54 Changeset [2074] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs

The FileErasureTarget?.GetPaths? function should be protected, not internal.

04:53 Changeset [2073] by lowjoel
  • trunk/eraser/Eraser.Util/ExtensionMethods/IO.cs
  • trunk/eraser/Eraser.Util/NativeMethods/Kernel.cs

Define and document the CopyFileEx? function needed to implement secure move. Addresses #60

04:38 Changeset [2072] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs

Implemented the skeleton for the SecureMoveErasureTarget?.

04:37 Changeset [2071] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs

Implement the save/load functions for the SecureMoveErasureTargetConfigurer?.

01:56 Changeset [2070] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.cs

Apply themes for the target configurers.

01:54 Changeset [2069] by lowjoel
  • trunk/eraser/Eraser.Util/ExtensionClasses/SplitButton.cs

Fall back to a normal (non-split) button when the current platform doesn't support split buttons; the split button context menu can be found by right-clicking the button.

01:52 Changeset [2068] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

Implement the UI for the SecureMoveErasureTargetConfigurer?.

01:49 Changeset [2067] by lowjoel
  • trunk/eraser/Eraser.Util/Eraser.Util.csproj
  • trunk/eraser/Eraser.Util/ExtensionClasses/SplitButton.cs
  • trunk/eraser/Eraser.Util/NativeMethods/WinUser.cs

Implement a SplitButton? class for use with the SecureMoveErasureTargetConfigurer? class.

5/5/2010:

05:44 Build of Eraser 6.2 [2066] on Windows completed

5/4/2010:

22:31 Changeset [2066] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs

Implement IConfigurer and ICliConfigurer, even if they are no-ops.

17:31 Build of Eraser 6.2 [2064] on Windows failed
Step build failed
13:19 Changeset [2065] by lowjoel
  • trunk/website/scripts/blackbox/upload.php

Extra quote which I didn't see.

09:29 Changeset [2064] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/SecureMoveErasureTargetConfigurer.resx
  • trunk/eraser/Eraser.DefaultPlugins/Plugin.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx
  • trunk/eraser/Eraser/Program.cs

Implemented basic supporting code for the secure move erasure target.

09:04 Changeset [2063] by lowjoel
  • trunk/eraser/Eraser/Program.cs

Implemented the CLI for secure move.

08:54 Changeset [2062] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp
  • trunk/eraser/Eraser.Shell/Eraser.Shell.rc
  • trunk/eraser/Eraser.Shell/resource.h
  • trunk/eraser/Eraser/Program.cs

Implemented the Context menu half of the Secure Move function.

08:24 Ticket #279 (Implement Custom Erasure Types) closed by Joel
fixed: r2052, r2053, r2058 polishes the implementation and fixes the last few …
08:22 Changeset [2061] by lowjoel
  • trunk/website/scripts/blackbox/upload.php

Fixed SQL syntax error: quote adds quotes for us, so we were double-quoting.

08:14 Changeset [2060] by lowjoel
  • trunk/eraser/Eraser.Shell/CtxMenu.cpp

Removed debug code, oops.

08:13 Changeset [2059] by lowjoel
  • trunk/eraser/Eraser/SchedulerPanel.cs

Handle cases where other shell folders, other than the recycle bin, is dropped into Eraser. Display a proper message to indicate why the drag and drop operation cannot succeed.

08:03 Changeset [2058] by lowjoel
  • trunk/eraser/Eraser/TaskDataSelectionForm.cs

Display the name specified in the plugin for the erasure types.

08:02 Changeset [2057] by lowjoel
  • trunk/eraser/Eraser.Util/NativeMethods/Shell.cs
  • trunk/eraser/Eraser.Util/Shell.cs
  • trunk/eraser/Eraser/SchedulerPanel.cs
  • trunk/eraser/Eraser/Strings.en.resx
  • trunk/eraser/Eraser/Strings.it.resx
  • trunk/eraser/Eraser/Strings.nl.resx
  • trunk/eraser/Eraser/Strings.pl.resx
  • trunk/eraser/Eraser/Strings.resx

Implemented drag & drop from shell virtual folders (mainly the Recycle Bin)

07:22 Changeset [2056] by lowjoel
  • trunk/eraser/Eraser.Manager/Plugins.cs

Undo some changes in r2050 where the assembly resolution code would be removed upon loading of plugins -- this caused certain types to be unable to load and crash the program.

06:51 Changeset [2055] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/EntropySources
  • trunk/eraser/Eraser.DefaultPlugins/EntropySources/KernelEntropySource.cs
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/Plugin.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx
  • trunk/eraser/Eraser.Manager/EntropySource.cs
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj

Move the entropy source implementations to the DefaultPlugin?.

05:44 Build of Eraser 6.2 [2054] on Windows completed
04:53 Changeset [2054] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTargetConfigurer.cs

There's nothing to save and load, so IConfigurer<ErasureTarget?> for RecycleBinErasureTargetConfigurer? should always be no-ops.

04:41 Changeset [2053] by lowjoel
  • trunk/eraser/Eraser/Strings.en.resx
  • trunk/eraser/Eraser/Strings.it.resx
  • trunk/eraser/Eraser/Strings.nl.resx
  • trunk/eraser/Eraser/Strings.pl.resx
  • trunk/eraser/Eraser/Strings.resx
  • trunk/eraser/Eraser/TaskDataSelectionForm.cs

Handle configurers without UIs just like non-existent configurers.

04:40 Changeset [2052] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • Define the Name property so that clients can query for the name of the Erasure Target.
  • Return a RecycleBinErasureTargetConfigurer? object when the recycle bin is the target picked.
04:31 Changeset [2051] by lowjoel
  • trunk/eraser/Eraser/Eraser.csproj
  • trunk/eraser/Eraser/Program.cs
  • trunk/eraser/Eraser/SchedulerPanel.cs

r2050 allows us to reference a plugin that is required for functionality, since the plugin will always be loaded.

04:30 Changeset [2050] by lowjoel
  • trunk/eraser/Eraser.Manager/Plugins.cs
  • trunk/eraser/Eraser.Manager/Strings.en.resx
  • trunk/eraser/Eraser.Manager/Strings.it.resx
  • trunk/eraser/Eraser.Manager/Strings.nl.resx
  • trunk/eraser/Eraser.Manager/Strings.pl.resx
  • trunk/eraser/Eraser.Manager/Strings.resx

Implemented Core plugins as a list of plugins which must be loaded, and is dictated by the loading assembly. Addresses #363.

  • Plugins are always only loaded once
  • Only Core plugins, as defined by the loading assembly, is given the ability to be set as a Core plugin
04:15 Changeset [2049] by lowjoel
  • trunk/eraser/Eraser.Manager/ManagerLibrary.cs

Fixed crash on startup because the ErasureTargetRegistrar? was not initialised.

03:10 Changeset [2048] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs

Compilo fixes.

03:07 Changeset [2047] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs

Compilo.

03:04 Changeset [2046] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.cs

Compilo fix.

03:04 Changeset [2045] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs

Fixed the null Progress property upon the completion of the FileSystemObjectErasureTarget?.Execute function. The Progress property is now managed by the derived class itself.

02:07 Changeset [2044] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/IConfigurer.cs
  • trunk/eraser/Eraser/Program.cs
  • trunk/eraser/Eraser/TaskDataSelectionForm.cs

Implement the ICliConfigurer interface to allow configuration of objects from the command line, which helps to solve the compile problems with the change of erasure targets to plugins.

01:50 Changeset [2043] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetConfigurer.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetConfigurer.resx
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetConfigurer.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetConfigurer.resx
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetConfigurer.resx

Rename all the Settings classes to Configurer since it implements IConfigurer.

01:42 Changeset [2042] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/IConfigurer.cs

Abstract the Configurer concept to allow configuration by other types, e.g. through a CLI instead of just a GUI.

01:37 Changeset [2041] by lowjoel
  • trunk/eraser/Eraser/SchedulerPanel.cs

If we don't accept the drag & drop data, don't bother executing the acceptance code.

01:35 Changeset [2040] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs

Compilo.

01:32 Changeset [2039] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetSettings.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObjectErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetSettings.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBinErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetSettings.cs
  • trunk/eraser/Eraser.DefaultPlugins/Plugin.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx

Name the files after the class contained therein.

01:28 Changeset [2038] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/File.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileSystemObject.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/Folder.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/RecycleBin.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpace.cs

Split the huge File.cs into its constituent classes in separate files.

01:22 Changeset [2037] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/File.cs

Compile fixes.

01:20 Changeset [2036] by lowjoel
  • trunk/eraser/Eraser.DefaultPlugins/Eraser.DefaultPlugins.csproj
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/File.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetSettings.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FileErasureTargetSettings.resx
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetSettings.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/FolderErasureTargetSettings.resx
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetSettings.cs
  • trunk/eraser/Eraser.DefaultPlugins/ErasureTargets/UnusedSpaceErasureTargetSettings.resx
  • trunk/eraser/Eraser.DefaultPlugins/Plugin.cs
  • trunk/eraser/Eraser.DefaultPlugins/Strings.en.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.it.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.nl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.pl.resx
  • trunk/eraser/Eraser.DefaultPlugins/Strings.resx
  • trunk/eraser/Eraser.Manager/DirectExecutor.cs
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/ManagerLibrary.cs
  • trunk/eraser/Eraser.Manager/Strings.en.resx
  • trunk/eraser/Eraser.Manager/Strings.it.resx
  • trunk/eraser/Eraser.Manager/Strings.nl.resx
  • trunk/eraser/Eraser.Manager/Strings.pl.resx
  • trunk/eraser/Eraser.Manager/Strings.resx

Split the ErasureTarget?.cs file into the ErasureTarget? abstract base class, and implement the ErasureTarget? abstract base class in the DefaultPlugins? library.

00:23 Changeset [2035] by lowjoel
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
  • trunk/eraser/Eraser.Manager/ErasureMethod.cs

Name the source file after the name of the class within the file.

00:16 Changeset [2034] by lowjoel
  • trunk/eraser/Eraser.Manager/Strings.en.resx
  • trunk/eraser/Eraser.Manager/Strings.it.resx
  • trunk/eraser/Eraser.Manager/Strings.nl.resx
  • trunk/eraser/Eraser.Manager/Strings.pl.resx
  • trunk/eraser/Eraser.Manager/Strings.resx

New strings.

00:15 Changesets [2032-2033] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.DefaultPlugins/FileSystems/Windows.cs
  • trunk/eraser/Eraser.Manager/DirectExecutor.cs
  • trunk/eraser/Eraser.Util.Native/OpenHandle.cpp
  • trunk/eraser/Eraser.Util.Native/OpenHandle.h

Create a utility OpenHandle?.Close function which is shorthand for closing all file handles with a given path.

5/3/2010:

23:56 Changeset [2031] by lowjoel
  • trunk/eraser/Eraser.Manager/DirectExecutor.cs

Fixed crash when erasing files with the default erasure methods (due to uncommited changes made when changing the erasure target API)

23:51 Changeset [2030] by lowjoel
  • trunk/eraser/Eraser.Manager/RemoteExecutor.cs

Fixed logic error (a temporary buffer was used, and copied to a memory stream for larger requests) and a memory leak in RemoteExecutorServer? when processing input from clients (the stream was redundant)

17:24 Build of Eraser 6.2 [2029] on Windows completed
15:41 Ticket #364 (Eraser problems when deleting many files) created by protection
I was able to reproduce the problem more than once. Any time I try to …
14:52 Changeset [2029] by lowjoel
  • trunk/eraser/Eraser/TaskDataSelectionForm.cs

Fixed a few NullReferenceExceptions? when dealing with targets that don't have settings, also, show a message that an erasure target doesn't have any settings for the user to define when it doesn't return an IErasureTargetConfigurer

14:43 Changeset [2028] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser/Strings.en.resx
  • trunk/eraser/Eraser/Strings.it.resx
  • trunk/eraser/Eraser/Strings.nl.resx
  • trunk/eraser/Eraser/Strings.pl.resx
  • trunk/eraser/Eraser/Strings.resx

Fixed a few NullReferenceExceptions? when dealing with targets that don't have settings.

14:35 Changeset [2027] by lowjoel
  • trunk/eraser/Eraser.Manager/FileErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.Designer.cs

Fixed alignment and fonts when designing the target settings forms.

14:33 Changeset [2026] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs

Fixed typo in r2020, inequality comparison, not equality comparison.

14:27 Changeset [2025] by lowjoel
  • trunk/eraser/Eraser/TaskDataSelectionForm.Designer.cs
  • trunk/eraser/Eraser/TaskDataSelectionForm.resx

Reorganised the dialog to make the settings for the erasure target more obvious, and renumbered tab indices.

14:18 Changeset [2024] by lowjoel
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/FileErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/FileErasureTargetSettings.cs
  • trunk/eraser/Eraser.Manager/FileErasureTargetSettings.resx
  • trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.cs
  • trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.resx
  • trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.cs
  • trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.resx
  • trunk/eraser/Eraser/Strings.en.resx
  • trunk/eraser/Eraser/Strings.it.resx
  • trunk/eraser/Eraser/Strings.nl.resx
  • trunk/eraser/Eraser/Strings.pl.resx
  • trunk/eraser/Eraser/Strings.resx
  • trunk/eraser/Eraser/TaskDataSelectionForm.Designer.cs
  • trunk/eraser/Eraser/TaskDataSelectionForm.cs
  • trunk/eraser/Eraser/TaskDataSelectionForm.resx

Use the new form of the task data selection dialog: The type of erasure target is a combobox now so that in future new types of erasure methods can be defined. Addresses #279

13:18 Changeset [2023] by lowjoel
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/FileErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/FileErasureTargetSettings.cs
  • trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.cs
  • trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.Designer.cs
  • trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.cs

Create placeholders to configure the different erasure target types.

13:13 Changeset [2022] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs

Allow for the configuration of erasure targets through the provision of a SettingsPanel? and a Configure function which will create a UI and update the task based on the UI respectively.

13:04 Changeset [2021] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs

Reorganise the class based on intent.

13:01 Changeset [2020] by lowjoel
  • trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser/TaskDataSelectionForm.cs
  • trunk/eraser/Eraser/TaskPropertiesForm.cs

Rearchitect the API for the ErasureTarget? class to be simpler.

13:00 Changeset [2019] by lowjoel
  • trunk/eraser/Eraser.Manager/Task.cs

Compilo.

12:35 Changeset [2018] by lowjoel
  • trunk/eraser/Eraser.Manager/ErasureTarget.cs
  • trunk/eraser/Eraser.Manager/Task.cs

Split the Eraser targets classes to a separate source file.

Note: See TracTimeline for information about the timeline view.