decklink: fix initialization fails in windows binary
authorTakeshi Sato <t-sato@bx.jp.nec.co.jp>
Tue, 27 Mar 2018 03:24:30 +0000 (12:24 +0900)
committerNirbheek Chauhan <nirbheek@centricular.com>
Tue, 27 Mar 2018 06:34:05 +0000 (12:04 +0530)
There is no log of gst_decklink_com_thread () which initializes COM.
The initialization part is not valid with #ifdef MSC_VER.
Windows binaries are built with gcc.
As with other codes, it was avoidable by setting it to G_OS_WIN32
instead of MSC_VER.

https://bugzilla.gnome.org/show_bug.cgi?id=794652

sys/decklink/gstdecklink.cpp

index e1f91ba..b08ae48 100644 (file)
@@ -1065,7 +1065,7 @@ public:
   }
 };
 
-#ifdef _MSC_VER
+#ifdef G_OS_WIN32
 /* FIXME: We currently never deinit this */
 
 static GMutex com_init_lock;
@@ -1114,7 +1114,7 @@ gst_decklink_com_thread (gpointer data)
 
   return NULL;
 }
-#endif /* _MSC_VER */
+#endif /* G_OS_WIN32 */
 
 static GOnce devices_once = G_ONCE_INIT;
 static GPtrArray *devices;      /* array of Device */
@@ -1127,7 +1127,7 @@ init_devices (gpointer data)
   HRESULT ret;
   int i;
 
-#ifdef _MSC_VER
+#ifdef G_OS_WIN32
   // Start COM thread for Windows
 
   g_mutex_lock (&com_init_lock);
@@ -1138,7 +1138,7 @@ init_devices (gpointer data)
   /* wait until the COM thread signals that COM has been initialized */
   g_cond_wait (&com_init_cond, &com_init_lock);
   g_mutex_unlock (&com_init_lock);
-#endif /* _MSC_VER */
+#endif /* G_OS_WIN32 */
 
   iterator = CreateDeckLinkIteratorInstance ();
   if (iterator == NULL) {