From bfab4dc328f580cc21c31ee3e4f53e1b8ca7c4ab Mon Sep 17 00:00:00 2001 From: Bert Date: Tue, 6 Sep 2011 11:09:57 +0200 Subject: Added EXIF auto-orientation --- thumbs.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'thumbs.c') diff --git a/thumbs.c b/thumbs.c index 5708651..cede997 100644 --- a/thumbs.c +++ b/thumbs.c @@ -34,6 +34,8 @@ #define st_atim st_atimespec #endif +void exif_auto_orientate(const fileinfo_t*); + const int thumb_dim = THUMB_SIZE + 10; char *cache_dir = NULL; @@ -221,6 +223,7 @@ int tns_load(tns_t *tns, int n, const fileinfo_t *file, float z, zw, zh; thumb_t *t; Imlib_Image *im; + const char *fmt; if (!tns || !tns->thumbs || !file || !file->name || !file->path) return 0; @@ -252,6 +255,12 @@ int tns_load(tns_t *tns, int n, const fileinfo_t *file, imlib_context_set_image(im); imlib_context_set_anti_alias(1); + if (!cache_hit) { + fmt = imlib_image_format(); + if (!strcmp(fmt, "jpeg")) + exif_auto_orientate(file); + } + w = imlib_image_get_width(); h = imlib_image_get_height(); zw = (float) THUMB_SIZE / (float) w; -- cgit v1.2.3