summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--stream/librtsp/rtsp_session.c2
-rw-r--r--stream/realrtsp/real.c2
-rw-r--r--stream/realrtsp/sdpplin.c1
3 files changed, 4 insertions, 1 deletions
diff --git a/stream/librtsp/rtsp_session.c b/stream/librtsp/rtsp_session.c
index 72734e8776..72b8a2a607 100644
--- a/stream/librtsp/rtsp_session.c
+++ b/stream/librtsp/rtsp_session.c
@@ -94,6 +94,7 @@ static void rtsp_close(rtsp_t *s) {
if (s->mrl) free(s->mrl);
if (s->session) free(s->session);
if (s->user_agent) free(s->user_agent);
+ free(s->server);
rtsp_free_answers(s);
rtsp_unschedule_all(s);
free(s);
@@ -194,6 +195,7 @@ rtsp_session_t *rtsp_session_start(int fd, char **mrl, char *path, char *host,
rtsp_session->real_session->header_len;
}
rtsp_session->real_session->recv_read = 0;
+ rmff_free_header(h);
} else /* not a Real server : try RTP instead */
{
char *public = NULL;
diff --git a/stream/realrtsp/real.c b/stream/realrtsp/real.c
index a5b37f6e34..29c88335be 100644
--- a/stream/realrtsp/real.c
+++ b/stream/realrtsp/real.c
@@ -249,7 +249,7 @@ static rmff_header_t *real_parse_sdp(char *data, char **stream_rules, uint32_t b
if (!desc->stream[i]->mlti_data) {
len = 0;
- buf = NULL;
+ buf = xbuffer_free(buf);
} else
len=select_mlti_data(desc->stream[i]->mlti_data, desc->stream[i]->mlti_data_size, rulematches[0], &buf);
diff --git a/stream/realrtsp/sdpplin.c b/stream/realrtsp/sdpplin.c
index c4104fb00c..9669b085fd 100644
--- a/stream/realrtsp/sdpplin.c
+++ b/stream/realrtsp/sdpplin.c
@@ -376,6 +376,7 @@ void sdpplin_free(sdpplin_t *description) {
free(description->stream[i]->mlti_data);
if (description->stream[i]->asm_rule_book)
free(description->stream[i]->asm_rule_book);
+ free(description->stream[i]->id);
free(description->stream[i]);
}
}