On Sat, 05 Mar 2011 18:49:50 +0000, Omari wrote:

> >    ERROR:filedata.c:676:file_data_free: assertion failed: 
> > (fd->sidecar_files == NULL)
> >
> > This has been encountered during loading images from an SD card.

> I don't think it's ever legitimate for file foo.jpg to have a sidecar 
> foo.JPG, even on a case-sensitive filesystem.  So doing a check in 
> file_data_check_sidecars() sounds reasonable.
> 
> I wouldn't add extra checks in file_data_unref() unless they are 
> guaranteed to be correct for all filesystems (since it is definitely 
> valid for foo.jpg and foo.JPG to _exist_, and we don't want to end up 
> with memory/resource leaks in that case).

Okay. I've only thought about ways to handle (and prevent) the special
case where the file path of a parent and one of its childs would match
during case-insensitive comparison.

Meanwhile I've revised the patch.

Bug reporter has found another related issue, which required patching
also the function that does the fstat check for a generated list of file
extensions. If one starts Geeqie with a file arg, such as the path to a
.CR2 file that would become a sidecar file, the fstat would succeed for
all the generated mixed-cased permutations of .JPG. That resulted in the
same fatal assertion crash.

The patch has been submitted to the project's Patch tracker.

------------------------------------------------------------------------------
What You Don't Know About Data Connectivity CAN Hurt You
This paper provides an overview of data connectivity, details
its effect on application quality, and explores various alternative
solutions. http://p.sf.net/sfu/progress-d2d
_______________________________________________
Geeqie-devel mailing list
Geeqie-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geeqie-devel

Reply via email to