Fix writing to meta files
authorKlaus Ethgen <Klaus@Ethgen.de>
Sun, 17 Sep 2017 14:12:21 +0000 (15:12 +0100)
committerKlaus Ethgen <Klaus@Ethgen.de>
Sun, 17 Sep 2017 14:15:58 +0000 (15:15 +0100)
Some time ago, this seemed to break. It should never have worked as it
took the image extension and compare it to "...meta".

src/metadata.c

index 86a2cd2..75ff89a 100644 (file)
@@ -298,11 +298,14 @@ gboolean metadata_write_perform(FileData *fd)
 {
        gboolean success;
        ExifData *exif;
+       guint ln, lf;
 
        g_assert(fd->change);
 
+       ln = strlen(fd->change->dest);
+       lf = strlen(GQ_CACHE_EXT_METADATA);
        if (fd->change->dest &&
-           strcmp(registered_extension_from_path(fd->change->dest), GQ_CACHE_EXT_METADATA) == 0)
+           g_ascii_strncasecmp(fd->change->dest + ln - lf, GQ_CACHE_EXT_METADATA, lf) == 0)
                {
                success = metadata_legacy_write(fd);
                if (success) metadata_legacy_delete(fd, fd->change->dest);