gst/rtsp/gstrtspsrc.c: Call WSAStartup() and WSACleanup before using the Winsock API.

Original commit message from CVS:
Patch by: Ole André Vadla Ravnås  <ole.andre.ravnas@tandberg.com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_finalize):
Call WSAStartup() and WSACleanup before using the Winsock API.
See #520808.
This commit is contained in:
Ole André Vadla Ravnås 2008-03-17 15:56:01 +00:00 committed by Wim Taymans
parent fbb779216c
commit 110a0ea563
2 changed files with 25 additions and 0 deletions

View file

@ -1,3 +1,12 @@
2008-03-17 Wim Taymans <wim.taymans@collabora.co.uk>
Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_finalize):
Call WSAStartup() and WSACleanup before using the Winsock API.
See #520808.
2008-03-16 Stefan Kost <ensonic@users.sf.net>
* gst/avi/gstavidemux.c:

View file

@ -104,6 +104,10 @@
#include "gstrtspsrc.h"
#ifdef G_OS_WIN32
#include <winsock2.h>
#endif
GST_DEBUG_CATEGORY_STATIC (rtspsrc_debug);
#define GST_CAT_DEFAULT (rtspsrc_debug)
@ -321,6 +325,14 @@ gst_rtspsrc_class_init (GstRTSPSrcClass * klass)
static void
gst_rtspsrc_init (GstRTSPSrc * src, GstRTSPSrcClass * g_class)
{
#ifdef G_OS_WIN32
WSADATA wsa_data;
if (WSAStartup (MAKEWORD (2, 2), &wsa_data) != 0) {
GST_ERROR_OBJECT (src, "WSAStartup failed: 0x%08x", WSAGetLastError ());
}
#endif
src->location = g_strdup (DEFAULT_LOCATION);
src->url = NULL;
@ -368,6 +380,10 @@ gst_rtspsrc_finalize (GObject * object)
g_static_rec_mutex_free (rtspsrc->conn_rec_lock);
g_free (rtspsrc->conn_rec_lock);
#ifdef G_OS_WIN32
WSACleanup ();
#endif
G_OBJECT_CLASS (parent_class)->finalize (object);
}