Move allocation of imbuf from array to allocimbuf.
[blender.git] / source / blender / imbuf / intern / util.c
index 12dfcc3a791fa79a8ced726d36949d4a2acec17f..32100aa2288bc9ff033b5c45510d79f1e32349cb 100644 (file)
@@ -34,9 +34,6 @@
 
 #ifdef _WIN32
 #  include <io.h>
-#  define open _open
-#  define read _read
-#  define close _close
 #endif
 
 #include <stdlib.h>
@@ -119,6 +116,7 @@ const char *imb_ext_image_qt[] = {
        NULL
 };
 
+#if 0  /* UNUSED */
 const char *imb_ext_movie_qt[] = {
        ".avi",   
        ".flc",   
@@ -129,6 +127,7 @@ const char *imb_ext_movie_qt[] = {
        ".mv",
        NULL
 };
+#endif
 
 const char *imb_ext_movie[] = {
        ".avi",
@@ -177,33 +176,34 @@ const char *imb_ext_audio[] = {
        ".aif",
        ".aiff",
        ".m4a",
+       ".mka",
        NULL
 };
 
-int IMB_ispic(const char *name)
+int IMB_ispic_type(const char *name)
 {
        /* increased from 32 to 64 because of the bitmaps header size */
 #define HEADER_SIZE 64
 
        unsigned char buf[HEADER_SIZE];
        ImFileType *type;
-       struct stat st;
+       BLI_stat_t st;
        int fp;
 
        if (UTIL_DEBUG) printf("IMB_ispic_name: loading %s\n", name);
        
        if (BLI_stat(name, &st) == -1)
-               return FALSE;
+               return false;
        if (((st.st_mode) & S_IFMT) != S_IFREG)
-               return FALSE;
+               return false;
 
-       if ((fp = BLI_open(name, O_BINARY | O_RDONLY, 0)) < 0)
-               return FALSE;
+       if ((fp = BLI_open(name, O_BINARY | O_RDONLY, 0)) == -1)
+               return false;
 
        memset(buf, 0, sizeof(buf));
        if (read(fp, buf, HEADER_SIZE) <= 0) {
                close(fp);
-               return FALSE;
+               return false;
        }
 
        close(fp);
@@ -225,11 +225,15 @@ int IMB_ispic(const char *name)
                }
        }
 
-       return FALSE;
+       return 0;
 
 #undef HEADER_SIZE
 }
 
+bool IMB_ispic(const char *name)
+{
+       return (IMB_ispic_type(name) != 0);
+}
 
 static int isavi(const char *name)
 {
@@ -237,7 +241,7 @@ static int isavi(const char *name)
        return AVI_is_avi(name);
 #else
        (void)name;
-       return FALSE;
+       return false;
 #endif
 }
 
@@ -250,10 +254,6 @@ static int isqtime(const char *name)
 
 #ifdef WITH_FFMPEG
 
-#ifdef _MSC_VER
-#define va_copy(dst, src) ((dst) = (src))
-#endif
-
 /* BLI_vsnprintf in ffmpeg_log_callback() causes invalid warning */
 #ifdef __GNUC__
 #  pragma GCC diagnostic push
@@ -387,7 +387,7 @@ static int isredcode(const char *filename)
 int imb_get_anim_type(const char *name)
 {
        int type;
-       struct stat st;
+       BLI_stat_t st;
 
        if (UTIL_DEBUG) printf("in getanimtype: %s\n", name);