|
|
@@ -293,21 +293,35 @@ bool img_load_gif(img_t *img, const fileinfo_t *file) |
|
|
|
} |
|
|
|
#endif /* HAVE_GIFLIB */ |
|
|
|
|
|
|
|
bool img_load(img_t *img, const fileinfo_t *file) |
|
|
|
Imlib_Image img_open(const fileinfo_t *file) |
|
|
|
{ |
|
|
|
const char *fmt; |
|
|
|
struct stat st; |
|
|
|
Imlib_Image im = NULL; |
|
|
|
|
|
|
|
if (access(file->path, R_OK) == -1 || |
|
|
|
stat(file->path, &st) == -1 || !S_ISREG(st.st_mode) || |
|
|
|
(img->im = imlib_load_image(file->path)) == NULL) |
|
|
|
if (access(file->path, R_OK) == 0 && |
|
|
|
stat(file->path, &st) == 0 && S_ISREG(st.st_mode)) |
|
|
|
{ |
|
|
|
if (file->flags & FF_WARN) |
|
|
|
error(0, 0, "%s: Error opening image", file->name); |
|
|
|
return false; |
|
|
|
im = imlib_load_image(file->path); |
|
|
|
if (im != NULL) { |
|
|
|
imlib_context_set_image(im); |
|
|
|
if (imlib_image_get_data_for_reading_only() == NULL) { |
|
|
|
imlib_free_image(); |
|
|
|
im = NULL; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (im == NULL && (file->flags & FF_WARN)) |
|
|
|
error(0, 0, "%s: Error opening image", file->name); |
|
|
|
return im; |
|
|
|
} |
|
|
|
|
|
|
|
bool img_load(img_t *img, const fileinfo_t *file) |
|
|
|
{ |
|
|
|
const char *fmt; |
|
|
|
|
|
|
|
if ((img->im = img_open(file)) == NULL) |
|
|
|
return false; |
|
|
|
|
|
|
|
imlib_context_set_image(img->im); |
|
|
|
imlib_image_set_changes_on_disk(); |
|
|
|
|
|
|
|
#if HAVE_LIBEXIF |
|
|
|