Timeline


and

7/31/2012:

19:07 Build of Eraser 6.2 [2791] on Windows completed
09:34 Ticket #448 (Eraser 6.1.0.2779 Crash Assistant very slow compressing crash reports) closed by Joel
fixed

07/31/12:

09:31 Changeset [2791] by lowjoel
  • trunk/eraser/Eraser.BlackBox/BlackBoxUploadForm.cs

Don't give duplicate information: there's no need to put the progress percentage as a string when there's already a progress bar.

09:30 Changeset [2790] by lowjoel
  • trunk/eraser/Eraser.BlackBox/BlackBoxReportUploader.cs

Woops, do not upload to the debug server.

09:26 Changeset [2789] by lowjoel
  • trunk/eraser/Eraser.BlackBox/BlackBoxReportUploader.cs

Do not trigger a GUI update so often -- this caused compression times to be excessively long. Addresses #448

09:19 Changeset [2788] by lowjoel
  • trunk/eraser/Eraser.BlackBox/BlackBoxUploadForm.cs

Fix the progress bar display in the report upload progress dialog. The dialog was displaying all sorts of incoherent information!

08:04 Ticket #451 (ran unused disk space and don't know if it worked!) closed by Joel
invalid: I've activated your account. Please ask on the forum.
08:03 Ticket #449 (Correctly tag each official erazor version in svn tags) closed by Joel
fixed: Thanks. I wrote the documentation so long ago I forgot to do it myself! …
07:59 Ticket #450 (after use) closed by Joel
invalid: Please use the forum for queries.
06:25 Changeset [2787] by lowjoel
  • branches/eraser6/EraserService/Eraser/Program.cs

Fix exception on startup when erasing from the shell context menu extension.

06:13 Ticket #452 (Eraser BUG can't delete sandboxie's folder) created by kxmp
Eraser can't delete sandboxie's folder and defaultbox folder changed a …

07/24/12:

12:08 Ticket #451 (ran unused disk space and don't know if it worked!) created by wendywoo
I started the Unused Disk Space method yesterday afternoon and it was …

07/18/12:

01:00 Ticket #445 (Leaking in memory to 4GB) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …
01:00 Ticket #444 (Recurring Time Display Formatting Error) closed by trac-robot
This ticket was closed automatically by the system. It was previously set …

07/17/12:

07:48 Changeset [2786] by lowjoel
  • branches/eraser6/EraserService/Eraser.DefaultPlugins/ErasureTargets/ErasureTargetBase.cs
  • branches/eraser6/EraserService/Eraser.Manager/Task.cs
  • branches/eraser6/EraserService/Eraser.Plugins/ProgressManager.cs
  • branches/eraser6/EraserService/Eraser.Util/Sampler.cs

These types need to be Marshalled By Reference for progress reporting to work properly.

07:06 Changeset [2785] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/Task.cs
  • branches/eraser6/EraserService/Eraser.Util/Sampler.cs

These classes need to be serializable too.

07:00 Changeset [2784] by EraserSlave
  • branches/eraser6/EraserService/Eraser.Plugins/ProgressManager.cs

These private subclasses need to be serializable too.

06:21 Changeset [2783] by lowjoel
  • branches/eraser6/EraserService/Eraser.Plugins/ProgressManager.cs

Allow the ProgressManager? classes to be serialized since we will be using them remotely when using RemoteExecutor?.

06:18 Changeset [2782] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Don't dispose the service after the lease ends. Because we are a singleton, that behaviour is disruptive, causing new clients be unable to connect even if the service is running.

07/16/12:

20:07 Ticket #450 (after use) created by rylayne48
Once I use Eraser can I still use my re-installation disc to re-load my …
19:13 Build of Eraser 6 [2780] on Windows completed
19:08 Build of Eraser 6.2 [2781] on Windows completed
13:00 Ticket #449 (Correctly tag each official erazor version in svn tags) created by tom_1st
Currently the svn tags are rarely used to tag a version: …
11:19 Changeset [2781] by lowjoel
  • trunk/eraser
  • trunk/eraser/Eraser.Util/VolumeInfo.cs

Modification from r2779 of Eraser 6.0: When an exception is thrown when locking a volume, do not execute the cleanup code since it cannot run. At the same time, make the Dispose method idempotent, as required by IDisposable.

Fixes https://eraser.heidi.ie/forum/viewtopic.php?f=2&t=8866.

11:05 Changeset [2780] by lowjoel
  • branches/eraser6/6.0/Eraser.Util/VolumeInfo.cs

When an exception is thrown in the VolumeLock? constructor, do not execute the cleanup code since it cannot run. At the same time, make the Dispose method idempotent, as required by IDisposable.

Fixes https://eraser.heidi.ie/forum/viewtopic.php?f=2&t=8866

07/13/12:

19:47 Ticket #448 (Eraser 6.1.0.2779 Crash Assistant very slow compressing crash reports) created by phkhgh
I'm fairly sure I now have a good, working install of r2779. When open …

07/04/12:

07:06 Build of Eraser 6.2 [2779] on Windows completed
02:02 Changeset [2779] by lowjoel
  • trunk/eraser/Installer/DirectoryStructure.wxs

SharpZipLib? and LZMA# are both needed for BlackBox? to compress reports. Include them together with the BlackBox? component, not with the Main component.

07/03/12:

07:06 Build of Eraser 6.2 [2777] on Windows completed
06:43 Ticket #443 (Command Line Method GUID not used in adding task) closed by Joel
fixed: Seems to be fixed in r2731 without me doing anything. Weird.
06:23 Changeset [2778] by lowjoel
  • branches/eraser6/EraserService/Installer/DirectoryStructure.wxs

Use long file names when starting the Eraser service.

06:23 Changeset [2777] by lowjoel
  • trunk/eraser/Installer/DirectoryStructure.wxs

Forgot to remove the reference to the Service exe since the patch to use long file names was first applied on the RemoteExecutor? branch.

06:18 Changeset [2776] by lowjoel
  • trunk/eraser/Eraser/Program.cs

Remove unused enum.

06:16 Changeset [2775] by lowjoel
  • trunk/eraser/Eraser.Shell/Eraser.Shell.rc
  • trunk/eraser/Eraser/Eraser.csproj
  • trunk/eraser/Installer/DirectoryStructure.wxs

Use Einar Egilsson's InsertIcons? to embed the Eraser document icons into Eraser.exe and not the shell extension, since users may not install the shell extension.

06:14 CompilingEraser edited by Joel
Fixed link to csgettext. (diff)
06:11 csgettext.exe attached to LocalisingEraser by Joel
csgettext binary.
06:10 CompilingEraser edited by Joel
Added new dependencies: csgettext (not strictly necessary) InsertIcons? … (diff)
06:05 CompilingEraser edited by Joel
Some VS2010 changes (diff)
05:46 Changeset [2774] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/Task.cs

These event handlers also need the event keyword declaration.

05:17 Changeset [2773] by lowjoel
  • branches/eraser6/EraserService/Eraser/MainForm.cs

Instead of quitting only when the user presses OK on the UAC prompt, we will just bring our process down anyway. This should help prevent some race conditions.

04:44 Changeset [2772] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs
  • branches/eraser6/EraserService/Eraser/MainForm.cs

Second half of the commit: Spawn a new instance of Eraser which is running with elevated permissions before terminating.

04:36 Changeset [2771] by lowjoel
  • branches/eraser6/EraserService/Eraser.Util/NativeMethods/Shell.cs
  • branches/eraser6/EraserService/Eraser.Util/Shell.cs
  • branches/eraser6/EraserService/Eraser/MainForm.Designer.cs
  • branches/eraser6/EraserService/Eraser/MainForm.cs
  • branches/eraser6/EraserService/Eraser/MainForm.resx
  • branches/eraser6/EraserService/Eraser/Program.cs

First half of the Restart as Admin code: Use the ability of the RemoteExecutorClient? to shut down the server.

04:35 Changeset [2770] by lowjoel
  • branches/eraser6/EraserService/Eraser.Service/Program.cs

When we are running the service, intercept the exit of the RemoteExecutorServer? instance so that the service will also quit.

04:34 Changeset [2769] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Allow the client to shut down the server remotely.

04:34 Changeset [2768] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Fix the idempotence of RemoteExecutorServer?.Dispose(bool)

04:33 Changeset [2767] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Compile fix.

00:40 Ticket #447 (Plausible Deniability files should also take on the file name) created by Joel
We currently only use the file data for plausible deniability. Take on the …
00:23 Changeset [2766] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Mark our Task event handlers OneWay? since we do not return a value or take ref parameters, and modification to the Task object will already be remoted.

00:06 Changeset [2765] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/Task.cs

TaskEventArgs? needs to be serializable for it to be used with Remoting callback events.

00:06 Changeset [2764] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/Schedule.cs

Fixed comparison against itself when null.

00:04 Changeset [2763] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Marshal the OnTaskAdded? and OnTaskDeleted? events as well.

00:03 Changeset [2762] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/Executor.cs
  • branches/eraser6/EraserService/Eraser.Plugins/Host.cs
  • branches/eraser6/EraserService/Eraser.Plugins/IRegistrar.cs
  • branches/eraser6/EraserService/Eraser.Util/Theming.cs

All event handlers should be explicitly declared event.

07/02/12:

07:38 Changeset [2761] by lowjoel
  • branches/eraser6/EraserService/Eraser.Service/Eraser.Service.csproj
  • branches/eraser6/EraserService/Eraser.Service/Program.cs
  • branches/eraser6/EraserService/Eraser/Program.cs

Change the Service project type to a Windows application, and run the Service without a Console window.

07:28 Changeset [2760] by lowjoel
  • branches/eraser6/EraserService/Installer/DirectoryStructure.wxs

Add a link to the Eraser Service exe from the Installer. /atRestart will be run by the Service exe.

05:26 Changeset [2759] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Supplements r2757, I said we need a unique client name but actually it wasn't generated unique.

05:17 Changeset [2758] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Warning suppress. We need the using statement to make sure the mutex is discarded.

05:12 Changeset [2757] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Enable two-way communication (the client also needs to open a randomly-named port) so that callback functions can work.
This revision also changes the port name used for IPC. The previous pipe name is now the port name; the Executor instance is at the Executor URI (see ExecutorName?)

05:06 Changeset [2756] by lowjoel
  • branches/eraser6/EraserService/Eraser/LogForm.cs
  • branches/eraser6/EraserService/Eraser/MainForm.cs
  • branches/eraser6/EraserService/Eraser/ProgressForm.cs
  • branches/eraser6/EraserService/Eraser/SchedulerPanel.cs
  • branches/eraser6/EraserService/Eraser/SettingsPanel.cs

Callbacks for the Executor need to be public so that the Remote executor will work.

04:27 Changeset [2755] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/Schedule.cs

Override equality testing for the Schedule types, since previously we'd only compare against local references but we can compare against objects which actually exist outside of our process address space.

03:05 Changeset [2754] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs
  • branches/eraser6/EraserService/Eraser.Service/Program.cs

Using a global mutex, allow us to detect when another server is already running, and bail out when that happens. We can't have two servers running at once.

02:43 Changeset [2753] by lowjoel
  • branches/eraser6/EraserService/Eraser/Program.cs

Generalise the CommandConnect? function for all Program functions to call, since the UI is just a viewer for the Service running in the background.

02:42 Changeset [2752] by lowjoel
  • branches/eraser6/EraserService/Eraser.Service/Program.cs

Compile fix. We're just swallowing exceptions here since the Service instance should not show any UI.

02:41 Changeset [2751] by lowjoel
  • branches/eraser6/EraserService/Eraser/Strings.en.resx
  • branches/eraser6/EraserService/Eraser/Strings.it.resx
  • branches/eraser6/EraserService/Eraser/Strings.nl.resx
  • branches/eraser6/EraserService/Eraser/Strings.pl.resx
  • branches/eraser6/EraserService/Eraser/Strings.resx

Removed another unused string.

02:27 Changeset [2750] by lowjoel
  • branches/eraser6/EraserService/Eraser.Service/Program.cs
  • branches/eraser6/EraserService/Eraser/Program.cs

Move the task list management code to Eraser.Service, since we want to migrate all task execution to a separated instance of Eraser's engine.

02:23 Changeset [2749] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/ErasureTargetCollection.cs
  • branches/eraser6/EraserService/Eraser.Manager/Executor.cs
  • branches/eraser6/EraserService/Eraser.Manager/Task.cs
  • branches/eraser6/EraserService/Eraser/Program.cs

As far as possible, restrict the constructors for all MarshalObjectByRef? types.

The only types which can be used outside of Eraser.Manager are the *Executor types, which is used for hosting, as well as the Task type, which needs to be created for use with the Executors. Since we need to ensure proxies are properly used when needed, ensure that the Task type is constructed only after an Executor type is constructed, allowing Executor types to inject remoting calls.

02:13 Changeset [2748] by lowjoel
  • branches/eraser6/EraserService/Eraser/Strings.en.resx
  • branches/eraser6/EraserService/Eraser/Strings.it.resx
  • branches/eraser6/EraserService/Eraser/Strings.nl.resx
  • branches/eraser6/EraserService/Eraser/Strings.pl.resx
  • branches/eraser6/EraserService/Eraser/Strings.resx

Remove an unused string.

02:12 Changeset [2747] by lowjoel
  • branches/eraser6/EraserService/Eraser/Program.cs

Partially revert r2744 since it included a change which was not ready for commit.

02:05 Changeset [2746] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

We need to allow deserialization of all types, since we are sending data across the IPC channel. Decrease the security checks on foreign objects, which doesn't really provide much security of its own (see http://msdn.microsoft.com/en-us/library/5dxse167%28v=vs.100%29.aspx)

02:02 Changeset [2745] by lowjoel
  • branches/eraser6/EraserService/Eraser.Manager/RemoteExecutor.cs

Some code cleanup.

01:58 Changeset [2744] by lowjoel
  • branches/eraser6/EraserService/Eraser.Service/Program.cs
  • branches/eraser6/EraserService/Eraser/Eraser.csproj
  • branches/eraser6/EraserService/Eraser/Program.cs

Move some UI-independent constants out from the Eraser assembly to the Eraser.Service assembly. We will still maintain references in the old Program class, but deprecate those.

01:55 Changeset [2743] by lowjoel
  • branches/eraser6/EraserService/Eraser.Plugins/PersistentStore.cs
  • branches/eraser6/EraserService/Eraser.Service/Eraser.Service.csproj
  • branches/eraser6/EraserService/Eraser.Service/Settings.cs
  • branches/eraser6/EraserService/Eraser/Settings.cs

Split the settings code out into two: The code used for Eraser's GUI settings (left in the Eraser assembly) and the code to handle registry reads/writes (moved to Eraser.Service)

Note: See TracTimeline for information about the timeline view.