Friday, October 4, 2013

Multi Commander v3.5.1

Multi Commander v3.5.1 is now out.
The focus of this release have been to fix stability issues.
Most crash are very rare and most of them I can not reproduce.
Over 70+ Changes and 14 Rare Crash issues that was reported by Crash report system is fixed.

Since this crashes are not common and I have not been abel to reproduce them it have not been easy to fix them and I'm not sure that all of them are fixed since I'm not able to reproduce them . What I done on some issues is that I found what might be the problem and fixed that. Hoping that is what caused the problem.

I have track down that a lot of the problems is because of some reference count errors so I created a couple of RAII classes that now will make sure that the reference count now is correct. So that objects is not deleted while they are still in use. This often the case if Multi Commander crashes when exiting.

Also a big portion of rare crashes are from Shell Extensions. Shell Extension are extension to Windows Explorer that adds its own menu items to the shell popup menu (Right click menu).
The problem with Shell Extension is that it is 3de part code that gets executed inside Multi Commander. So when a shell extension crashes it will bring down Multi Commander and the users thing that it is because of a problem with Multi Commander.

The problem is that a lot of Shell Extensions are only tested for Windows Explorer and these shell extension assumes that they are started from Windows Explorer so when a program like Multi Commander launch it, They can get confused and crash.

For this release I have rewritten how Shell Extension works and hopefully there will be less crashes with this. But all of them can not be removed since some Shell Extension will not work proper unless they are started from Windows Explorer.
To find out what shell extension that causes you problem you can use ShellExView from NirSoft and from it you can disable/enable shell extensions one by one.

A know Shell Extension that causing a lot of crashes is ASUSWSShellExt.dll / ASUSWSSHellExt64.dll
I see from crash reports that this file is behind a lot of crashes.

Read more and download it