abrt version: 1.1.17
Attached file: backtrace, 11833 bytes
comment: After restarting Geeqie I found out that the new directory has been created.
Attached file: coredump, 9998336 bytes
reason: Process /usr/bin/geeqie was killed by signal 6 (SIGABRT)
release: Fedora release 14 (Laughlin)
How to reproduce
1.Using List View of directories attempted to create new directory (right mouse button -> New Folder...).
2.Entered the name of the new directory and pressed Return key.
Created attachment 480046 [details]
> #5 0x000000000044f056 in file_cache_put (fc=0x0, fd=0x29d0690, size=1)
> at filecache.c:110
The fc=0x0 looks suspicious as it won't work, because the called functions require a valid FileCacheData pointer:
| void file_cache_put(FileCacheData *fc, FileData *fd, gulong size)
| FileCacheEntry *fe;
| if (file_cache_get(fc, fd)) return;
| gboolean file_cache_get(FileCacheData *fc, FileData *fd)
| GList *work;
| g_assert(fc && fd);
The "New folder" test-case isn't 100%, though. Here it doesn't crash. It's likely the same or similar race-condition in directory loading/refreshing.
There's something missing in the backtrace (for reasons I will need to track down, too).
The code path between image-load.c and file_cache_put() enters exif-common.c, where it chooses not to create a new FileCache if a file path is not readable. Later, however, it expects the FileCache to be usable and crashes on the 0 ptr:
| ExifData *exif_read_fd(FileData *fd)
| gchar *sidecar_path;
| if (!fd || !is_readable_file(fd->path)) return NULL;
| if (!exif_cache) exif_cache = file_cache_new(exif_release_cb, 4);
| void exif_free_fd(FileData *fd, ExifData *exif)
| if (!fd) return;
| g_assert(fd->exif == exif);
| file_cache_put(exif_cache, fd, 1);
geeqie-1.0-9.fc14 has been submitted as an update for Fedora 14.
geeqie-1.0-9.fc14 has been pushed to the Fedora 14 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
su -c 'yum --enablerepo=updates-testing update geeqie'. You can provide feedback for this update here: https://admin.fedoraproject.org/updates/geeqie-1.0-9.fc14
geeqie-1.0-9.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report.