From 2eb651d46fb60bb9fb1929c07e4b901baa73c189 Mon Sep 17 00:00:00 2001 From: Andoni Morales Alastruey Date: Wed, 10 Mar 2010 10:51:28 -0800 Subject: [PATCH] multiudpsink: Reset windows error code after getting corresponding error message. --- gst/udp/gstmultiudpsink.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gst/udp/gstmultiudpsink.c b/gst/udp/gstmultiudpsink.c index e828b6af35..ae7abfeb02 100644 --- a/gst/udp/gstmultiudpsink.c +++ b/gst/udp/gstmultiudpsink.c @@ -411,7 +411,12 @@ socket_last_error_message () if (FAILED (result)) { return g_strdup ("failed to get error message from system"); } else { - return g_convert ((gchar *) buf, -1, "UTF-16", "UTF-8", NULL, NULL, NULL); + gchar *res = + g_convert ((gchar *) buf, -1, "UTF-16", "UTF-8", NULL, NULL, NULL); + /* g_convert() internally calls windows functions which reset the + windows error code, so fix it up again like this */ + WSASetLastError (errorcode); + return res; } #else return g_strdup (g_strerror (errno));