Shell extension is not ready for two instances of context menu
Created originally on Bitbucket by petrsolin
I'm author of Altap Salamander file manager. I have solved problem with TortoiseHg context menu opened by right click in panel of our file manager. It has invoked unexpected commands (e.g. "View File Status" when user clicked on "Hg Workbench").
I have looked into TortoiseHg shell extension to find where is a problem. I have found that you are using global object MenuIdMap for all instances of context menu objects (CShellExtCMenu). I'm using two context menu objects for creating panel context menu and that's why this problem occurs. MenuIdMap contains IDs only for second menu and so commands from first menu are not working properly.
It seems to me that patch should be trivial, just move MenuIdMap from global space to CShellExtCMenu class. It is accessed only from methods of CShellExtCMenu. Please consider fixing this.