rtsp-server: Change the logic so we don't pop a NULL context

When doing a port scan (e.g. with nmap) the call to GST_RTSP_CHECK()
will sometimes fail. This call is made before any context is pushed
resulting in an attempt to pop a NULL context.

https://bugzilla.gnome.org/show_bug.cgi?id=757949
This commit is contained in:
Marcus Prebble 2015-11-11 14:58:33 +01:00 committed by Sebastian Dröge
parent 2178a7c871
commit b90d4ba917

View file

@ -1191,9 +1191,11 @@ gst_rtsp_server_io_func (GSocket * socket, GIOCondition condition,
manage_client (server, client); manage_client (server, client);
} else { } else {
GST_WARNING_OBJECT (server, "received unknown event %08x", condition); GST_WARNING_OBJECT (server, "received unknown event %08x", condition);
goto exit_no_ctx;
} }
exit: exit:
gst_rtsp_context_pop_current (&ctx); gst_rtsp_context_pop_current (&ctx);
exit_no_ctx:
return G_SOURCE_CONTINUE; return G_SOURCE_CONTINUE;
@ -1204,7 +1206,8 @@ accept_failed:
GST_ERROR_OBJECT (server, "Could not accept client on socket %p: %s", GST_ERROR_OBJECT (server, "Could not accept client on socket %p: %s",
socket, str); socket, str);
g_free (str); g_free (str);
goto exit; /* We haven't pushed the context yet, so just return */
goto exit_no_ctx;
} }
connection_refused: connection_refused:
{ {