Skip to content

Commit

Permalink
ffserver: reflow start_children()
Browse files Browse the repository at this point in the history
Signed-off-by: Reynaldo H. Verdejo Pinochet <[email protected]>
  • Loading branch information
reynaldo committed Dec 26, 2014
1 parent 1abdfb1 commit ec42251
Showing 1 changed file with 23 additions and 17 deletions.
40 changes: 23 additions & 17 deletions ffserver.c
Original file line number Diff line number Diff line change
Expand Up @@ -384,11 +384,29 @@ static int compute_datarate(DataRateData *drd, int64_t count)

static void start_children(FFServerStream *feed)
{
char pathname[1024];
char *slash;
int i;

if (no_launch)
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)
slash = pathname;
else
slash++;
strcpy(slash, "ffmpeg");

for (; feed; feed = feed->next) {
if (feed->child_argv && !feed->pid) {

if (!feed->child_argv || feed->pid)
continue;

feed->pid_start = time(0);

feed->pid = fork();
Expand All @@ -397,21 +415,11 @@ static void start_children(FFServerStream *feed)
http_log("Unable to create children\n");
exit(1);
}
if (!feed->pid) {

if (feed->pid)
continue;

/* In child */
char pathname[1024];
char *slash;
int i;

/* 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)
slash = pathname;
else
slash++;
strcpy(slash, "ffmpeg");

http_log("Launch command line: ");
http_log("%s ", pathname);
Expand All @@ -436,8 +444,6 @@ static void start_children(FFServerStream *feed)
execvp(pathname, feed->child_argv);

_exit(1);
}
}
}
}

Expand Down

0 comments on commit ec42251

Please sign in to comment.