raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=3d6fa02540e8b56f85d285309268db5c6d793636

commit 3d6fa02540e8b56f85d285309268db5c6d793636
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Thu Apr 12 20:55:22 2018 +0900

    evas - loading extension query - fix to not skip small extensions
    
    since this can take an extension as well as a file path (extension
    being .gif or .jpeg etc.) it would skip if passed a small extension
    only (5 chars or less). fix and this fixes e's thumbnailing too for
    some files.
    
    @fix
---
 src/lib/evas/common/evas_image_load.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/lib/evas/common/evas_image_load.c 
b/src/lib/evas/common/evas_image_load.c
index 0ea6a582d6..d1ffed88c6 100644
--- a/src/lib/evas/common/evas_image_load.c
+++ b/src/lib/evas/common/evas_image_load.c
@@ -516,14 +516,17 @@ evas_common_extension_can_load_get(const char *file)
    unsigned int i;
 
    length = eina_stringshare_strlen(file) + 1;
-   if (length < 5) return EINA_FALSE;
 
    for (i = 0; i < sizeof (loaders) / sizeof (struct ext_loader_s); ++i)
      {
         if (loaders[i].length > length) continue;
 
         if (!strcasecmp(loaders[i].extension, file + length - 
loaders[i].length))
-          return EINA_TRUE;
+          {
+             if ((file[length - loaders[i].length] != '/') ||
+                 (length == loaders[i].length))
+               return EINA_TRUE;
+          }
      }
    return EINA_FALSE;
 }

-- 


Reply via email to