summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2012-02-06 11:08:58 +0100
committerDaniel Friesel <derf@finalrewind.org>2012-02-06 11:08:58 +0100
commitb1e497e7555d2c72fb8b64a00c3e6804f36bd62f (patch)
treef513e9d2bcd6d7cb384bade126de5369242231d4
parent0d7602ffa3ef7d610c2af355258e8fe40ad84b8f (diff)
EXIF fixes by reald (closes #80)
commit 9c8226a1a54d1246e086923bb1b36e3827b25767 Merge: e4483e5 132ecc0 Author: Dennis Real <github@tildepipe.org> Date: Sun Feb 5 17:24:17 2012 +0100 Merge branch 'master' of ssh://github.com/reald/feh commit e4483e5e25a1471728a31a18d22ba86def489509 Author: Dennis Real <github@tildepipe.org> Date: Sun Feb 5 16:56:29 2012 +0100 - improved handling of images which have exif tags but not ours - fixed uninitialized pointer in thumbnail mode - added nikon lens info if available commit 132ecc0f9f0a2243c4f6745d0af36be810bf9eba Author: Dennis Real <github@tildepipe.org> Date: Sun Feb 5 16:56:29 2012 +0100 - improved handling of images which have exif tags but not ours - fixed uninitialzed pointer in thumbnail mode - added nikon lens info if available
-rw-r--r--.gitignore1
-rw-r--r--src/exif.c8
-rw-r--r--src/filelist.c5
-rw-r--r--src/imlib.c2
4 files changed, 12 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index dd0b562..559c5ab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
/src/*.inc
/src/feh
/man/*.1
+*~ \ No newline at end of file
diff --git a/src/exif.c b/src/exif.c
index 02154e4..9d26072 100644
--- a/src/exif.c
+++ b/src/exif.c
@@ -45,10 +45,10 @@ static void exif_trim_spaces(char *str)
{
if (*str != ' ')
{
- end = str;
+ end = str+1;
}
}
- *++end = '\0';
+ *end = '\0';
}
@@ -146,7 +146,7 @@ void exif_get_info(ExifData * ed, char *buffer, unsigned int maxsize)
{
return;
}
- else if (ed == NULL )
+ else if (ed == NULL)
{
snprintf(buffer, (size_t)maxsize, "%s\n", "No Exif data in file.");
return;
@@ -187,6 +187,8 @@ void exif_get_info(ExifData * ed, char *buffer, unsigned int maxsize)
{
/* Digital Vari-Program */
exif_get_mnote_tag(ed, 171, buffer + strlen(buffer), maxsize - strlen(buffer));
+ /* Lens */
+ exif_get_mnote_tag(ed, 132, buffer + strlen(buffer), maxsize - strlen(buffer));
}
}
diff --git a/src/filelist.c b/src/filelist.c
index 32bc2a5..9756c27 100644
--- a/src/filelist.c
+++ b/src/filelist.c
@@ -54,6 +54,9 @@ feh_file *feh_file_new(char *filename)
else
newfile->name = estrdup(filename);
newfile->info = NULL;
+#ifdef HAVE_LIBEXIF
+ newfile->ed = NULL;
+#endif
return(newfile);
}
@@ -70,7 +73,7 @@ void feh_file_free(feh_file * file)
if (file->info)
feh_file_info_free(file->info);
#ifdef HAVE_LIBEXIF
- if (file->info)
+ if (file->ed)
exif_data_unref(file->ed);
#endif
free(file);
diff --git a/src/imlib.c b/src/imlib.c
index 0b60180..197b8f5 100644
--- a/src/imlib.c
+++ b/src/imlib.c
@@ -522,6 +522,8 @@ void feh_draw_exif(winwidget w)
return;
}
+
+ buffer[0] = '\0';
exif_get_info(FEH_FILE(w->file->data)->ed, buffer, MAX_EXIF_DATA);
fn = feh_load_font(w);