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 | |
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
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | config.mk | 2 | ||||
-rw-r--r-- | src/exif.c | 8 | ||||
-rw-r--r-- | src/filelist.c | 5 | ||||
-rw-r--r-- | src/imlib.c | 2 |
5 files changed, 13 insertions, 5 deletions
@@ -3,3 +3,4 @@ /src/*.inc /src/feh /man/*.1 +*~
\ No newline at end of file @@ -21,7 +21,7 @@ curl ?= 1 debug ?= 0 help ?= 0 xinerama ?= 1 -exif ?= 0 +exif ?= 1 ifeq (${curl},1) CFLAGS += -DHAVE_LIBCURL @@ -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); |