v4l-utils/v4l-utils-32bitfix.patch
Tomáš Chvátal a238b452cc Accepting request 745189 from home:seife:testing
add v4l-utils-32bitfix.patch (boo#1109541)

This fixes reproducible builds issue, 32bit generated wrong entry (STREAM_ID=0x7ffffff instead of =(unsigned)-1)

OBS-URL: https://build.opensuse.org/request/show/745189
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/v4l-utils?expand=0&rev=63
2019-11-04 15:50:27 +00:00

25 lines
993 B
Diff

Index: b/lib/libdvbv5/dvb-file.c
===================================================================
--- a/lib/libdvbv5/dvb-file.c
+++ b/lib/libdvbv5/dvb-file.c
@@ -589,7 +589,8 @@ static int fill_entry(struct dvb_entry *
n_prop = entry->n_props;
entry->props[n_prop].cmd = i;
if (!attr_name || !*attr_name)
- entry->props[n_prop].u.data = atol(value);
+ /* some put stream_id=4294967295 (-1) which is more than LONG_MAX on 32bit... */
+ entry->props[n_prop].u.data = (uint32_t)atoll(value);
else {
for (j = 0; attr_name[j]; j++)
if (!strcasecmp(value, attr_name[j]))
@@ -708,7 +709,8 @@ static int fill_entry(struct dvb_entry *
/* FIXME: this works only for integer values */
n_prop = entry->n_props;
entry->props[n_prop].cmd = cmd;
- entry->props[n_prop].u.data = atol(value);
+ /* some put stream_id=4294967295 (-1) which is more than LONG_MAX on 32bit... */
+ entry->props[n_prop].u.data = (uint32_t)atoll(value);
entry->n_props++;
return 0;