Quantcast
Channel: XnView Software
Viewing all articles
Browse latest Browse all 4990

[Linux] consistent crash when quickly browsing big files

$
0
0
by pangwolin (Posted Sun Oct 16, 2016 9:57 pm)
XnViewMP 0.82 (x86_64) is consistently crashing when browsing (in View mode) a bunch of big jpeg files and pressing the ESC key while it's still reading files (from its queue, on the fly).

Here is what I do to reproduce it:
* open a directory with a bunch of files
* start rolling mouse wheel very fast to have a bunch of files queued for rendering
* press ESC while it's still stepping forward to next files


Result: XnView hangs, eats > 100% of CPU, can't recover have to kill it.

It seems to happen while a jpeg file to be displayed is still rendered as the (progressive?) blurry preview (in View mode), and pressing ESC ungracefully interrupts its pipeline, which leads to an infinite loop somewhere (?).

Here below is the last few lines from terminal output.
Code: Select all
LOAD PREVIEW
LOAD INFO
## Bitmap :: load 0
###### LOAD BITMAP
## Bitmap :: load 2048
###### LOAD BITMAP
BitmapLoadThread :: stop()
### crack
### resetViewport (1f87c90)  ==> 1237 937  (654 937) 0 0
SIZE : 0 126  (-1)
SIZE : 0 109  (-1)
BitmapLoadThread :: stop()
getNext => 4
==> 20671d0
##START cache 1 /data/002.jpg
   /data/002.jpg (2654 3800)
MyPreviewThread :: stop()
m_stopCondition.wait()
### crack
## BitmapLoadThread :: load -1 -1
## Bitmap :: load 0
###### LOAD BITMAP
## MyPreviewThread :: ERROR : 15 (0x1fe0110)
m_stopCondition.wakeOne()
m_loadCondition.wait()
MyPreviewThread :: set
## Bitmap :: load 0
###### LOAD BITMAP
getNext => 4
==> 20671d0
setCurrentFilename
LOAD PREVIEW
LOAD INFO
## Bitmap :: load 2048
###### LOAD BITMAP
BitmapLoadThread :: stop()
### crack
### resetViewport (1f87c90)  ==> 1237 937  (654 937) 0 0
SIZE : 0 126  (-1)
SIZE : 0 109  (-1)
BitmapLoadThread :: stop()
getNext => 4
## BitmapLoadThread :: load -1 -1
## Bitmap :: load 0
###### LOAD BITMAP
==> 20ec540
##START cache 1 /data/003.jpg
   /data/aa0.jpg (2654 3800)
MyPreviewThread :: stop()
m_stopCondition.wait()
### crack
## MyPreviewThread :: ERROR : 15 (0x1fe0110)
m_stopCondition.wakeOne()
m_loadCondition.wait()
MyPreviewThread :: set
## Bitmap :: load 0
###### LOAD BITMAP
########################################
############### UPDATE MENU ############
########################################
## BaseViewWindow :: ~BaseViewWindow()
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
######ThumbLoaderThread :: run : 20abf90 OK
QMutex: destroying locked mutex
## BaseViewWindow :: ~BaseViewWindow() ok
AbstractViewWindow :: ~AbstractViewWindow()
BitmapLoadThread :: stop()
### crack
## ~MyPreviewThread (0x1fe0110)
## MyPreviewThread :: ERROR : 0 (0x1fe0110)
m_stopCondition.wakeOne()
m_loadCondition.wait()
Terminated


SPECS: Linux Mint 17.3 (Ubuntu 14.04.1 based)

Hope that helps! Keep up the good work. :D

Read Main Topic

Viewing all articles
Browse latest Browse all 4990

Trending Articles