#678 Hang on tray icon right-click

open
nobody
V3 (197)
5
2012-09-17
2008-07-29
Philip Le Riche
No

Pwsafe (v3.13) is minimised to the tray and locked. I want to open a different safe (home instead of work) so I right-click on the tray icon. Recent Entries History looks like just what I want, but it's greyed out. However, I click it anyway in hope. Pwsafe then hangs with high CPU usage and the tray icon context menu stuck open. Eventually I discover that double-click on the tray icon recovers it, but I still have to log on to my work safe before I can switch to my home one.

Discussion

  • DrK
    DrK
    2008-07-30

    Logged In: YES
    user_id=1730698
    Originator: NO

    I can't reproduce the high CPU usage - nothing happens when I click on a disable (greyed out) menu item - which is what I would expect.

    However, 'Recent Entries' only applies to the currently open database (whether it is currently available or locked). The only way to access entries in another database is to open it first.

    To open another database when the current one is locked in the tray, you can either:
    a. unlocked the current one and then open the new database, or
    b. start another copy of PasswordSafe and open it there.

    So only the high-CPU is a bug, the rest is 'working as designed'. Until we can reproduce the high-CPU effect, i am afraid we have no handle on fixing it :-(

    David

     
  • Logged In: YES
    user_id=1036540
    Originator: YES

    This is reproducible every time for me. System is Toshiba Tecra M5 Intel Core 2 CPU, 1.5GB RAM, WinXP SP2. Is there any way I can get a dump or stack trace of it in this state?

     
  • DrK
    DrK
    2008-07-30

    Logged In: YES
    user_id=1730698
    Originator: NO

    Not really - dumps are always difficult to analyse and rarely have the info we need. Stack trace might be useful if you can get it (thanks for the offer).

    The only other thing is to describe 'exactly' how you reproduce it. Left clicks/right clicks? Is it with every database or just one? Exactly how do you start PWS. Do you have to open an entry first? Do you have to copy something to the clipboard first so that there are entries in the Recent History? Does it matter what you copy to the clipboard (user, passwords, notes etc.)? Does there have to be more than one entry in the Recent History list? etc. etc.

    Basically, anything you can tell us that will enable us to reproduce it. We would rather have too much than too little information! (if you don't mind, that is - it will take some of your time). If it is a lot of info - you can put it in an email to me via my SourceForge ID (and copy Rony - the admin due to it being the holiday period).

    David

     
  • Logged In: YES
    user_id=1036540
    Originator: YES

    This is strange. If I launch another copy of pwsafe from a different folder and/or delete the .cfg file, I still get the problem. But if I copy it into a Mojopac sandbox, even if I copy the .cfg file as well, I don't get the problem.

    Here are several stack traces taken with Sysinternals Procexplorer whilst hanging (however, taking the stack trace often seems to kick it into life):

    ntoskrnl.exe!ZwCloseObjectAuditAlarm+0x45
    hal.dll+0x23fa
    ntoskrnl.exe!KeInitializeDpc+0x839
    ntdll.dll!KiFastSystemCallRet
    USER32.dll!EnableMenuItem+0xf
    pwsafe.exe+0xb44a2
    pwsafe.exe+0xb42cc
    pwsafe.exe+0xb4997
    pwsafe.exe+0xb438c
    pwsafe.exe+0x15576
    pwsafe.exe+0xba248
    pwsafe.exe+0xb5d89
    pwsafe.exe+0x15e71
    pwsafe.exe+0xb85e9
    USER32.dll!GetDC+0x6d
    USER32.dll!GetDC+0x14f
    USER32.dll!IsWindowUnicode+0xa1
    USER32.dll!CallWindowProcW+0x1b
    pwsafe.exe+0x6a62d

    ntoskrnl.exe!ZwAssignProcessToJobObject+0x15
    ntoskrnl.exe!MmCreateMdl+0x28a
    hal.dll!HalClearSoftwareInterrupt+0x342
    PSAPI.DLL!GetModuleFileNameExW+0x7c
    PSAPI.DLL!GetModuleBaseNameW+0x17
    nview.dll!PMLoadPresentation+0x300b
    nview.dll!PMLoadPresentation+0x6035
    nview.dll+0x8b456

    ntoskrnl.exe+0x584d
    ntoskrnl.exe+0x23ee4
    hal.dll+0x2ef2
    kernel32.dll!CompareStringW
    nview.dll!PMLoadPresentation+0x2308
    nview.dll!PMLoadPresentation+0x6170

    ntoskrnl.exe+0x584d
    ntoskrnl.exe+0x23ee4
    hal.dll+0x2ef2
    win32k.sys+0x1899
    ntoskrnl.exe+0x699f
    ntdll.dll!KiFastSystemCallRet
    USER32.dll!GetMenuItemInfoW+0x123
    USER32.dll!GetMenuStringW+0x3b
    nview.dll!PMLoadPresentation+0x2c454

    ntoskrnl.exe+0x584d
    ntoskrnl.exe+0x23ee4
    hal.dll+0x2ef2
    win32k.sys+0x1899
    ntoskrnl.exe+0x699f
    ntdll.dll!KiFastSystemCallRet
    USER32.dll!GetMenuItemInfoW+0x123
    USER32.dll!GetMenuStringW+0x3b
    nview.dll!PMLoadPresentation+0x2c454