Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
IPTV: m3u parser opmized to skip all unknown '#EXT' lines
  • Loading branch information
perexg committed Oct 14, 2015
1 parent e62e5ea commit ccc13bb
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 5 deletions.
9 changes: 7 additions & 2 deletions src/input/mpegts/iptv/iptv_auto.c
Expand Up @@ -236,14 +236,19 @@ iptv_auto_network_process_m3u(iptv_network_t *in, char *data,
name = data;
}
while (*data && *data != '\n') data++;
if (*data) { *data = '\0'; data++; }
if (*data) data++;
continue;
} else if (strncmp(data, "#EXT", 4) == 0) {
data += 4;
while (*data && *data != '\n') data++;
if (*data) data++;
continue;
}
while (*data && *data <= ' ') data++;
url = data;
while (*data && *data != '\n') data++;
if (*data) { *data = '\0'; data++; }
if (*url)
if (*url && *url > ' ')
iptv_auto_network_process_m3u_item(in, last_url, remove_args,
url, name, logo, epgid,
chnum, &total, &count);
Expand Down
6 changes: 3 additions & 3 deletions src/input/mpegts/iptv/iptv_http.c
Expand Up @@ -32,16 +32,16 @@ iptv_http_m3u(char *data)
while (*data && *data != '\n') data++;
if (*data) data++;
while (*data) {
if (strncmp(data, "#EXTINF:", 8) == 0) {
if (strncmp(data, "#EXT", 4) == 0) {
while (*data && *data != '\n') data++;
if (*data) { *data = '\0'; data++; }
if (*data) data++;
continue;
}
while (*data && *data <= ' ') data++;
url = data;
while (*data && *data != '\n') data++;
if (*data) { *data = '\0'; data++; }
if (*url)
if (*url && *url > ' ')
return strdup(url);
}
return NULL;
Expand Down

0 comments on commit ccc13bb

Please sign in to comment.