fixed INT64_C & UINT64_C definitions (patch #2033)
authorVadim Pisarevsky <vadim.pisarevsky@itseez.com>
Wed, 10 Oct 2012 13:27:32 +0000 (17:27 +0400)
committerVadim Pisarevsky <vadim.pisarevsky@itseez.com>
Wed, 10 Oct 2012 13:27:32 +0000 (17:27 +0400)
modules/highgui/src/ffmpeg_codecs.hpp

index a9654ad..ca7f55c 100644 (file)
@@ -46,14 +46,17 @@ extern "C" {
 
 #if !defined(WIN32) || defined(__MINGW32__)
 // some versions of FFMPEG assume a C99 compiler, and don't define INT64_C
-#if !defined INT64_C || !defined UINT64_C
-#define INT64_C
-#define UINT64_C
- #define __STDC_CONSTANT_MACROS
-// force re-inclusion of stdint.h to get INT64_C macro
-#undef _STDINT_H
 #include <stdint.h>
+
+// some versions of FFMPEG assume a C99 compiler, and don't define INT64_C
+#ifndef INT64_C
+#define INT64_C(c) (c##LL)
 #endif
+
+#ifndef UINT64_C
+#define UINT64_C(c) (c##ULL)
+#endif
+
 #include <errno.h>
 #endif