diff options
author | Dennis Real <github@tildepipe.org> | 2012-02-05 16:56:29 +0100 |
---|---|---|
committer | Dennis Real <github@tildepipe.org> | 2012-02-05 17:22:38 +0100 |
commit | e4483e5e25a1471728a31a18d22ba86def489509 (patch) | |
tree | 261a213cda215ceb59c8ffad2b2bd5ecd9a41796 /src | |
parent | 0d7602ffa3ef7d610c2af355258e8fe40ad84b8f (diff) |
- improved handling of images which have exif tags but not ours
- fixed uninitialized pointer in thumbnail mode
- added nikon lens info if available
Diffstat (limited to 'src')
-rw-r--r-- | src/exif.c | 8 | ||||
-rw-r--r-- | src/filelist.c | 5 | ||||
-rw-r--r-- | src/imlib.c | 2 |
3 files changed, 11 insertions, 4 deletions
@@ -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); |