Menu

#43 Multiple Instances of WinDjView: A bug

closed
None
5
2009-03-18
2008-12-09
Anonymous
No

I think I've stumbled upon a bug. To reproduce it, keep repeating these two steps on the same DjVu file:

1) open the file in WinDjView by double-clicking on it
2) exit DjView (ctrl-q)

Repeat these two steps as fast as you can.

After you do that several times you will either end up with a process WinDjView still running even after the last step 2) (i.e., no WinDjView window, but the process WinDjView still shows up in the Task Manager and consumes 100% CPU) or worse, you'll have a WinDjView instance after the next step 1) which is stuck on a file (the cursor is in a "wait" state, nothing happens).

The problem is that this sequence of steps eventually leads to two instances of WinDjView running concurrently, which, as far as I can tell, should not happen. And when these two instances are trying to access the same file at the same time (in NTFS at least), they run into trouble.

Basically, if you repeat steps 1) and 2) you'll end up with the WinDjView process consuming 100% of your CPU.

P.S. The bug occurs with AMD Athlon x64 + NTFS. It DOES NOT occur under Intel Celeron M + FAT32 (most probably due to FAT32 being less restrivtive w/r to file access).

Discussion

  • Nobody/Anonymous

    It also seems that in order to reproduce the bug you need a heavy (600dpi) file that take a long time to open (say, due to large djvu dictionaries)

     
  • Nobody/Anonymous

    PLEASE IGNORE THE ABOVE --- The problem was due to a corrupted DjVu file

     
  • Nobody/Anonymous

    Some more news:

    * The DjVu file turned out to be alright in the end, so it's not its fault
    * The crucial diff between the AMD and Intel systems turns out to be different behaviour of THE SAME windjview-0.5.exe! --- On the Intel system it opens files in different windows and on the AMD system it opens them inside the same WinDjView app window!

    Sorry for the confusion. Anyway, the bug is present on the AMD system, so the original bug request still holds.

     
  • Andrew Zhezherun

    Please try to reproduce this in version 1.0. I have made some changes to the startup and closedown processes which might fix this problem for you.

     
  • Andrew Zhezherun

    • assigned_to: nobody --> zhezherun
     
  • Andrew Zhezherun

    • status: open --> pending
     
  • SourceForge Robot

    This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 14 days (the time period specified by
    the administrator of this Tracker).

     
  • SourceForge Robot

    • status: pending --> closed
     

Log in to post a comment.