From: Howard Chu Date: Tue, 8 Nov 2011 10:13:14 +0000 (-0800) Subject: Calculate tcUrl length X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1c77ff43439068981d2ad9872952922a1ee37f89;p=rtmpdump Calculate tcUrl length --- diff --git a/rtmpdump.c b/rtmpdump.c index a8fa128..892a8bc 100644 --- a/rtmpdump.c +++ b/rtmpdump.c @@ -1152,13 +1152,12 @@ main(int argc, char **argv) if (tcUrl.av_len == 0) { - char str[1024]; - - tcUrl.av_len = snprintf(str, sizeof(str), "%s://%.*s:%d/%.*s", + tcUrl.av_len = strlen(RTMPProtocolStringsLower[protocol]) + + hostname.av_len + app.av_len + sizeof("://:65535/"); + tcUrl.av_val = (char *) malloc(tcUrl.av_len); + tcUrl.av_len = snprintf(tcUrl.av_val, tcUrl.av_len, "%s://%.*s:%d/%.*s", RTMPProtocolStringsLower[protocol], hostname.av_len, hostname.av_val, port, app.av_len, app.av_val); - tcUrl.av_val = (char *) malloc(tcUrl.av_len + 1); - strcpy(tcUrl.av_val, str); } int first = 1;