From: Mike Williams Date: Wed, 18 May 2011 13:14:22 +0000 (-0400) Subject: ffserver: move close_connection() call to avoid a temporary string and copy. X-Git-Tag: android-x86-4.4-r1~12310^2~1119 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=e2d7dc87df0c1e261e4a3fe082d192a7a798d4d5;p=android-x86%2Fexternal-ffmpeg.git ffserver: move close_connection() call to avoid a temporary string and copy. Signed-off-by: Mike Williams Signed-off-by: Anton Khirnov --- diff --git a/ffserver.c b/ffserver.c index b95a854363..56bcba58f7 100644 --- a/ffserver.c +++ b/ffserver.c @@ -3274,7 +3274,6 @@ static void rtsp_cmd_pause(HTTPContext *c, const char *url, RTSPMessageHeader *h static void rtsp_cmd_teardown(HTTPContext *c, const char *url, RTSPMessageHeader *h) { HTTPContext *rtp_c; - char session_id[32]; rtp_c = find_rtp_session_with_url(url, h->session_id); if (!rtp_c) { @@ -3282,16 +3281,14 @@ static void rtsp_cmd_teardown(HTTPContext *c, const char *url, RTSPMessageHeader return; } - av_strlcpy(session_id, rtp_c->session_id, sizeof(session_id)); - - /* abort the session */ - close_connection(rtp_c); - /* now everything is OK, so we can send the connection parameters */ rtsp_reply_header(c, RTSP_STATUS_OK); /* session ID */ - avio_printf(c->pb, "Session: %s\r\n", session_id); + avio_printf(c->pb, "Session: %s\r\n", rtp_c->session_id); avio_printf(c->pb, "\r\n"); + + /* abort the session */ + close_connection(rtp_c); }