mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
ffserver: start dropping all unneededly harcoded str lengths
Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
This commit is contained in:
parent
b4cb597900
commit
fb349359dc
24
ffserver.c
24
ffserver.c
@ -71,6 +71,8 @@
|
||||
#include "cmdutils.h"
|
||||
#include "ffserver_config.h"
|
||||
|
||||
#define PATH_LENGTH 1024
|
||||
|
||||
const char program_name[] = "ffserver";
|
||||
const int program_birth_year = 2000;
|
||||
|
||||
@ -388,16 +390,33 @@ static int compute_datarate(DataRateData *drd, int64_t count)
|
||||
|
||||
static void start_children(FFServerStream *feed)
|
||||
{
|
||||
char pathname[1024];
|
||||
char *pathname;
|
||||
char *slash;
|
||||
int i;
|
||||
size_t cmd_length;
|
||||
|
||||
if (no_launch)
|
||||
return;
|
||||
|
||||
cmd_length = strlen(my_program_name);
|
||||
|
||||
/**
|
||||
* FIXME: WIP Safeguard. Remove after clearing all harcoded
|
||||
* '1024' path lengths
|
||||
*/
|
||||
if (cmd_length > PATH_LENGTH - 1) {
|
||||
http_log("Could not start children. Command line: '%s' exceeds "
|
||||
"path length limit (%d)\n", my_program_name, PATH_LENGTH);
|
||||
return;
|
||||
}
|
||||
|
||||
pathname = av_strdup (my_program_name);
|
||||
if (!pathname) {
|
||||
http_log("Could not allocate memory for children cmd line\n");
|
||||
return;
|
||||
}
|
||||
/* replace "ffserver" with "ffmpeg" in the path of current
|
||||
* program. Ignore user provided path */
|
||||
av_strlcpy(pathname, my_program_name, sizeof(pathname));
|
||||
|
||||
slash = strrchr(pathname, '/');
|
||||
if (!slash)
|
||||
@ -445,6 +464,7 @@ static void start_children(FFServerStream *feed)
|
||||
|
||||
signal(SIGPIPE, SIG_DFL);
|
||||
execvp(pathname, feed->child_argv);
|
||||
av_free (pathname);
|
||||
_exit(1);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user