Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
SAT>IP server: run rtcp thread after signals are initialized otherwis…
…e forking does not work
  • Loading branch information
perexg committed Nov 7, 2015
1 parent b589a31 commit 0c7f054
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 5 deletions.
11 changes: 8 additions & 3 deletions src/satip/rtp.c
Expand Up @@ -789,13 +789,18 @@ satip_rtcp_thread(void *aux)
/*
*
*/
void satip_rtp_init(void)
void satip_rtp_init(int boot)
{
TAILQ_INIT(&satip_rtp_sessions);
pthread_mutex_init(&satip_rtp_lock, NULL);

satip_rtcp_run = 1;
tvhthread_create(&satip_rtcp_tid, NULL, satip_rtcp_thread, NULL, "satip-rtcp");
if (boot)
satip_rtcp_run = 0;

if (!boot && !satip_rtcp_run) {
satip_rtcp_run = 1;
tvhthread_create(&satip_rtcp_tid, NULL, satip_rtcp_thread, NULL, "satip-rtcp");
}
}

/*
Expand Down
3 changes: 2 additions & 1 deletion src/satip/rtsp.c
Expand Up @@ -1553,7 +1553,7 @@ void satip_server_rtsp_init
session_number = *(uint32_t *)rnd;
TAILQ_INIT(&rtsp_sessions);
pthread_mutex_init(&rtsp_lock, NULL);
satip_rtp_init();
satip_rtp_init(1);
}
if (rtsp_port != port && rtsp_server) {
rtsp_close_sessions();
Expand All @@ -1576,6 +1576,7 @@ void satip_server_rtsp_init
void satip_server_rtsp_register(void)
{
tcp_server_register(rtsp_server);
satip_rtp_init(0);
}

void satip_server_rtsp_done(void)
Expand Down
2 changes: 1 addition & 1 deletion src/satip/server.h
Expand Up @@ -74,7 +74,7 @@ void satip_rtp_update_pmt_pids(void *id, mpegts_apids_t *pmt_pids);
int satip_rtp_status(void *id, char *buf, int len);
void satip_rtp_close(void *id);

void satip_rtp_init(void);
void satip_rtp_init(int boot);
void satip_rtp_done(void);

void satip_server_rtsp_init(const char *bindaddr, int port,
Expand Down

0 comments on commit 0c7f054

Please sign in to comment.