From 0084bfccc9d7d3ef3980bf942ce24bc83648b62a Mon Sep 17 00:00:00 2001 From: Nirbheek Chauhan Date: Wed, 19 Jul 2017 02:19:47 +0530 Subject: [PATCH] decklink: Fix build on mingw32 by adding missing WINAPI gstdecklinkaudiosink.cpp:155:19: error: conflicting type attributes specified for 'virtual HRESULT GStreamerAudioOutputCallback::QueryInterface(const IID&, void**)' In file included from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/objbase.h:153:0, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/ole2.h:16, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/windows.h:94, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/rpc.h:16, from win/DeckLinkAPI.h:27, from gstdecklink.h:35, from gstdecklinkaudiosink.h:27, from gstdecklinkaudiosink.cpp:25: /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/unknwn.h:67:25: error: overriding 'virtual HRESULT IUnknown::QueryInterface(const IID&, void**)' (and many more) https://ci.gstreamer.net/job/cerbero-cross-mingw32/6407/console --- sys/decklink/gstdecklinkaudiosink.cpp | 8 ++++---- sys/decklink/gstdecklinkvideosink.cpp | 11 ++++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/sys/decklink/gstdecklinkaudiosink.cpp b/sys/decklink/gstdecklinkaudiosink.cpp index 1d631548f3..beabc02506 100644 --- a/sys/decklink/gstdecklinkaudiosink.cpp +++ b/sys/decklink/gstdecklinkaudiosink.cpp @@ -152,12 +152,12 @@ public: g_mutex_init (&m_mutex); } - virtual HRESULT QueryInterface (REFIID, LPVOID *) + virtual HRESULT WINAPI QueryInterface (REFIID, LPVOID *) { return E_NOINTERFACE; } - virtual ULONG AddRef (void) + virtual ULONG WINAPI AddRef (void) { ULONG ret; @@ -169,7 +169,7 @@ public: return ret; } - virtual ULONG Release (void) + virtual ULONG WINAPI Release (void) { ULONG ret; @@ -190,7 +190,7 @@ public: g_mutex_clear (&m_mutex); } - virtual HRESULT RenderAudioSamples (bool preroll) + virtual HRESULT WINAPI RenderAudioSamples (bool preroll) { guint8 *ptr; gint seg; diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp index 78f5726fa1..0c2b3048cf 100644 --- a/sys/decklink/gstdecklinkvideosink.cpp +++ b/sys/decklink/gstdecklinkvideosink.cpp @@ -38,12 +38,12 @@ public: g_mutex_init (&m_mutex); } - virtual HRESULT QueryInterface (REFIID, LPVOID *) + virtual HRESULT WINAPI QueryInterface (REFIID, LPVOID *) { return E_NOINTERFACE; } - virtual ULONG AddRef (void) + virtual ULONG WINAPI AddRef (void) { ULONG ret; @@ -55,7 +55,7 @@ public: return ret; } - virtual ULONG Release (void) + virtual ULONG WINAPI Release (void) { ULONG ret; @@ -71,7 +71,8 @@ public: return ret; } - virtual HRESULT ScheduledFrameCompleted (IDeckLinkVideoFrame * completedFrame, + virtual HRESULT WINAPI ScheduledFrameCompleted ( + IDeckLinkVideoFrame * completedFrame, BMDOutputFrameCompletionResult result) { switch (result) { @@ -96,7 +97,7 @@ public: return S_OK; } - virtual HRESULT ScheduledPlaybackHasStopped (void) + virtual HRESULT WINAPI ScheduledPlaybackHasStopped (void) { GST_LOG_OBJECT (m_sink, "Scheduled playback stopped");