prevented loading of .dotfiles as an image,
authorRob Haarsma <phaseIV@zonnet.nl>
Sun, 9 Feb 2003 15:16:36 +0000 (15:16 +0000)
committerRob Haarsma <phaseIV@zonnet.nl>
Sun, 9 Feb 2003 15:16:36 +0000 (15:16 +0000)
bugfix added for illegal avi/anim handling.

source/blender/src/imasel.c

index 3b1ee2e11770ba061cf8b6a8f0bc3aabee6aaa1d..c1fe8686da4763d852109136adc240eb92b09380 100644 (file)
@@ -502,6 +502,21 @@ void get_next_image(SpaceImaSel *simasel)
                                
                                animlen= IMB_anim_get_duration(anim);
                                ibuf = IMB_anim_absolute(anim, animlen / 2);
+
+                               if(ibuf) {
+                                       //get icon dimensions for movie
+                                       ima->orgx = ibuf->x;
+                                       ima->orgy = ibuf->y;
+//                                     ima->orgd = ibuf->depth;
+
+                                       if (ima->orgx > ima->orgy){
+                                               ima->dw = 64;
+                                               ima->dh = (short)(62 * ((float)ima->orgy / (float)ima->orgx));
+                                       }else{
+                                               ima->dw = (short)(64 * ((float)ima->orgx / (float)ima->orgy));
+                                               ima->dh = 62;
+                                       }
+                               }
                                
                                IMB_free_anim(anim);
                        }
@@ -669,13 +684,17 @@ void get_file_info(SpaceImaSel *simasel)
        strcpy(name ,  simasel->dir);
        strcat(name ,  direntry->name);
        
-       if (IMB_ispic(name)) {
-               direntry->type = IMS_IMA;
-       }else{
-               if (IMB_isanim(name)) {
-                       direntry->type = IMS_ANIM;
+       if(direntry->name[0] == '.') {
+               direntry->type = IMS_NOIMA;
+       } else {
+               if (IMB_ispic(name)) {
+                       direntry->type = IMS_IMA;
                }else{
-                       direntry->type = IMS_NOIMA;
+                       if (IMB_isanim(name)) {
+                               direntry->type = IMS_ANIM;
+                       }else{
+                               direntry->type = IMS_NOIMA;
+                       }
                }
        }