Closed mowgli closed 8 years ago
LOL, this is a serious issue.
Original comment by: zas_
Original comment by: zas_
This is what it does. After moving some image, it probably sets a flag to re-check the collections. And then it does something it really should not do: load available collections and try to find any files in that collection, with any extension in any mixed case.
path=0x8c329e0 "/home/user/images/image01.orf") at filedata.c:489
at filedata.c:541
path_utf8=0xbfffdb21 "/home/user/images/image01.jpg", st=0xbfffda88, check_sidecars=1, basename_hash=0x0) at filedata.c:445
path_utf8=0xbfffdb21 "/home/user/images/image01.jpg") at filedata.c:605
path=0x8356c80 "/home/user/.local/share/geeqie/collections/All.gqv", flags=COLLECTION_LOAD_NONE) at collect-io.c:163
at collect-io.c:792
This is probably solvable by some single "if". However, I've got no comprehensive view of the code and do not know where else this functions may be needed.
Original comment by: seegras
This is a workaround in collect-io.c to turn them off:
static gboolean collect_manager_timer_cb(gpointer data) { DEBUG_1("collection manager timer expired"); / g_idle_add_full(G_PRIORITY_LOW, collect_manager_process_cb, NULL, NULL); / collection_manager_timer_id = 0; return FALSE; }
Original comment by: seegras
I think this should be gone. Please correct me seegras....
This has probably something to do with some thumbnails-cache.
If geeqie can't find a specific file it tries to find it under 201 different names:
This happens at least after moving files, and even if the user wasn't working in that specific directory at all. And locks up geeqie for several seconds up to minutes, depending on the amount of files.
A sanitized (user and filename changed) strace-output covering only one file:
stat64("/home/user/images/image01.jpg", 0xbf9c6444) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.JPG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.JPg", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.JpG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Jpg", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.jPG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.jPg", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.jpG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.jpg", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ARW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ARw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ArW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Arw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.aRW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.aRw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.arW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.arw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.SRF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.SRf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.SrF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Srf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.sRF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.sRf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.srF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.srf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.SR2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Sr2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.sR2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.sr2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.CRW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.CRw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.CrW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Crw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.cRW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.cRw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.crW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.crw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.CR2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Cr2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.cR2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.cr2", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.KDC", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.KDc", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.KdC", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Kdc", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.kDC", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.kDc", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.kdC", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.kdc", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.DCR", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.DCr", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.DcR", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Dcr", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dCR", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dCr", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dcR", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dcr", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.K25", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.k25", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.RAF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.RAf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.RaF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Raf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.rAF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.rAf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.raF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.raf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MEF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MEf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MeF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Mef", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mEF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mEf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.meF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mef", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MOS", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MOs", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MoS", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Mos", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mOS", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mOs", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.moS", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mos", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MRW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MRw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.MrW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Mrw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mRW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mRw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mrW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.mrw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.NEF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.NEf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.NeF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Nef", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.nEF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.nEf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.neF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.nef", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ORF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ORf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.OrF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Orf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.oRF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.oRf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.orF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.orf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.PEF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.PEf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.PeF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Pef", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.pEF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.pEf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.peF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.pef", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.PTX", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.PTx", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.PtX", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Ptx", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.pTX", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.pTx", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ptX", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ptx", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.DNG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.DNg", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.DnG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Dng", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dNG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dNg", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dnG", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.dng", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.X3F", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.X3f", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.x3F", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.x3f", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.RAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.RAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.RaW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Raw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.rAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.rAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.raW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.raw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.R3D", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.R3d", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.r3D", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.r3d", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.3FR", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.3Fr", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.3fR", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.3fr", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ERF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ERf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ErF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Erf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.eRF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.eRf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.erF", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.erf", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFRAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFRAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFRaW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFRaw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFrAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFrAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFraW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UFraw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfRAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfRAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfRaW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfRaw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfrAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfrAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.UfraW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Ufraw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFRAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFRAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFRaW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFRaw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFrAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFrAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFraW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.uFraw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufRAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufRAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufRaW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufRaw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufrAW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufrAw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufraW", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.ufraw", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.XMP", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.XMp", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.XmP", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.Xmp", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.xMP", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.xMp", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.xmP", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.xmp", 0xbf9c6354) = -1 ENOENT (No such file or directory) stat64("/home/user/images/image01.jpg", 0xbf9c6424) = -1 ENOENT (No such file or directory)
Reported by: seegras