diff options
author | Julien Isorce <julien.isorce@gmail.com> | 2011-10-06 17:43:19 +0200 |
---|---|---|
committer | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2011-11-28 10:34:45 +0000 |
commit | 26d6add9457f00ce8ec13844368466f0e3816e5d (patch) | |
tree | 9401bf8827b184fe12b65e7d0ed19f809c15ab07 /ext/rtmp/gstrtmpsrc.c | |
parent | 98b9d602c1b7c9a4c7bed083f6549c481570caa7 (diff) | |
download | gstreamer-plugins-bad-26d6add9457f00ce8ec13844368466f0e3816e5d.tar.gz |
rtmp: add WSAStartup and WSACleanup on Win32
https://bugzilla.gnome.org/show_bug.cgi?id=661098
Diffstat (limited to 'ext/rtmp/gstrtmpsrc.c')
-rw-r--r-- | ext/rtmp/gstrtmpsrc.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/ext/rtmp/gstrtmpsrc.c b/ext/rtmp/gstrtmpsrc.c index e37ac06b7..578bd8f90 100644 --- a/ext/rtmp/gstrtmpsrc.c +++ b/ext/rtmp/gstrtmpsrc.c @@ -53,6 +53,10 @@ #include <gst/gst.h> +#ifdef G_OS_WIN32 +#include <winsock2.h> +#endif + GST_DEBUG_CATEGORY_STATIC (rtmpsrc_debug); #define GST_CAT_DEFAULT rtmpsrc_debug @@ -153,6 +157,14 @@ gst_rtmp_src_class_init (GstRTMPSrcClass * klass) static void gst_rtmp_src_init (GstRTMPSrc * rtmpsrc, GstRTMPSrcClass * klass) { +#ifdef G_OS_WIN32 + WSADATA wsa_data; + + if (WSAStartup (MAKEWORD (2, 2), &wsa_data) != 0) { + GST_ERROR_OBJECT (rtmpsrc, "WSAStartup failed: 0x%08x", WSAGetLastError ()); + } +#endif + rtmpsrc->cur_offset = 0; rtmpsrc->last_timestamp = 0; @@ -167,6 +179,10 @@ gst_rtmp_src_finalize (GObject * object) g_free (rtmpsrc->uri); rtmpsrc->uri = NULL; +#ifdef G_OS_WIN32 + WSACleanup (); +#endif + G_OBJECT_CLASS (parent_class)->finalize (object); } |