aports/community/v4l-utils/0001-ir-ctl-fixes-for-musl-compile.patch
2018-03-06 00:47:06 +00:00

38 lines
1.1 KiB
Diff

diff --git a/utils/ir-ctl/ir-ctl.c b/utils/ir-ctl/ir-ctl.c
index bc58cee..1a44011 100644
--- a/utils/ir-ctl/ir-ctl.c
+++ b/utils/ir-ctl/ir-ctl.c
@@ -42,6 +42,16 @@
# define _(string) string
#endif
+/* taken from glibc unistd.h */
+#ifndef TEMP_FAILURE_RETRY
+#define TEMP_FAILURE_RETRY(expression) \
+ (__extension__ \
+ ({ long int __result; \
+ do __result = (long int) (expression); \
+ while (__result == -1L && errno == EINTR); \
+ __result; }))
+#endif
+
# define N_(string) string
@@ -344,12 +354,14 @@ static struct file *read_scancode(const char *name)
return NULL;
}
- pstr = strndupa(name, p - name);
+ pstr = strndup(name, p - name);
if (!protocol_match(pstr, &proto)) {
fprintf(stderr, _("error: protocol '%s' not found\n"), pstr);
+ free(pstr);
return NULL;
}
+ free(pstr);
if (!strtoscancode(p + 1, &scancode)) {
fprintf(stderr, _("error: invalid scancode '%s'\n"), p + 1);