summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2019-12-25 14:01:27 -0800
committerKhem Raj <raj.khem@gmail.com>2019-12-26 19:52:55 -0800
commit70902f79e8b796a10c1d84a0e4ebfb8f6f9f695d (patch)
tree4cdf7f2428179bb0b5a47239a9aa7790fd333f1f
parentb52d234cf2ca61e8b9888701b1da553626903877 (diff)
downloadmeta-openembedded-70902f79e8b796a10c1d84a0e4ebfb8f6f9f695d.tar.gz
tvheadend: Fix format-truncation warnings
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-allocate-space-for-buf-on-heap.patch46
-rw-r--r--meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb1
2 files changed, 47 insertions, 0 deletions
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-allocate-space-for-buf-on-heap.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-allocate-space-for-buf-on-heap.patch
new file mode 100644
index 0000000000..cbd76b6abf
--- /dev/null
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-allocate-space-for-buf-on-heap.patch
@@ -0,0 +1,46 @@
1From d4a405f87fc215c14e610a25b5a6b14060c1ef15 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 25 Dec 2019 13:53:52 -0800
4Subject: [PATCH] allocate space for buf on heap
5
6Avoids
7| src/epggrab/module/xmltv.c:204:47: error: '%s' directive output may be truncated writing between 2 and 2147483645 bytes into a region of size 115 [-Werror=format-truncation=]
8| 204 | snprintf(buf, sizeof(buf)-1, "ddprogid://%s/%s", mod->id, s);
9| | ^~
10
11Upstream-Status: Submitted [https://github.com/tvheadend/tvheadend/pull/1324]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 src/epggrab/module/xmltv.c | 6 ++++--
15 1 file changed, 4 insertions(+), 2 deletions(-)
16
17diff --git a/src/epggrab/module/xmltv.c b/src/epggrab/module/xmltv.c
18index 34ab05bdb..b1a956614 100644
19--- a/src/epggrab/module/xmltv.c
20+++ b/src/epggrab/module/xmltv.c
21@@ -197,11 +197,12 @@ static void parse_xmltv_dd_progid
22 (epggrab_module_t *mod, const char *s, char **uri, char **suri,
23 epg_episode_num_t *epnum)
24 {
25- char buf[128];
26 if (strlen(s) < 2) return;
27
28+ char* buf = (char *)malloc(strlen(s) + strlen(mod->id) + 13);
29+ buf[strlen(s) + strlen(mod->id) + 12] = '\0';
30 /* Raw URI */
31- snprintf(buf, sizeof(buf)-1, "ddprogid://%s/%s", mod->id, s);
32+ snprintf(buf, strlen(s) + strlen(mod->id) + 12, "ddprogid://%s/%s", mod->id, s);
33
34 /* SH - series without episode id so ignore */
35 if (strncmp("SH", s, 2))
36@@ -219,6 +220,7 @@ static void parse_xmltv_dd_progid
37 if (buf[e+1]) sscanf(&buf[e+1], "%hu", &(epnum->e_num));
38 }
39 }
40+ free(buf);
41 }
42
43 /**
44--
452.24.1
46
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb b/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
index a818a961f3..20faef047e 100644
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
+++ b/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
@@ -10,6 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=9cae5acac2e9ee2fc3aec01ac88ce5db"
10 10
11SRC_URI = "git://github.com/tvheadend/tvheadend.git \ 11SRC_URI = "git://github.com/tvheadend/tvheadend.git \
12 file://0001-adjust-for-64bit-time_t.patch \ 12 file://0001-adjust-for-64bit-time_t.patch \
13 file://0001-allocate-space-for-buf-on-heap.patch \
13 " 14 "
14 15
15SRCREV = "fda89e85e0b6ae796d8a09e178d3937aa7869270" 16SRCREV = "fda89e85e0b6ae796d8a09e178d3937aa7869270"