From 13ac6129537a8be82d8c1bc6d769536d6ccfa1e4 Mon Sep 17 00:00:00 2001 From: Alexandre Ratchov Date: Mon, 18 Nov 2013 18:43:28 +0100 Subject: [PATCH] fix signed vs unsigned char confusion --- sndioctl/sndioctl.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sndioctl/sndioctl.c b/sndioctl/sndioctl.c index caa5f5f..5448da0 100644 --- a/sndioctl/sndioctl.c +++ b/sndioctl/sndioctl.c @@ -19,6 +19,7 @@ #include #include #include "sysex.h" +#include "bsd-compat.h" #define MIDI_CMDMASK 0xf0 /* command mask */ #define MIDI_CHANMASK 0x0f /* channel mask */ @@ -125,7 +126,7 @@ onsysex(unsigned char *buf, int len) fprintf(stderr, "%u: invalid channel name\n", cn); exit(1); } - strlcpy(ctls[cn].name, x->u.slotdesc.name, SYSEX_NAMELEN); + memcpy(ctls[cn].name, x->u.slotdesc.name, SYSEX_NAMELEN); ctls[cn].vol = 0; break; case SYSEX_AUCAT_DUMPEND: @@ -204,7 +205,8 @@ int main(int argc, char **argv) { char *dev = NULL; - unsigned char buf[MSGMAX], *lhs, *rhs; + unsigned char buf[MSGMAX]; + char *lhs, *rhs; int c, cn, vol, size; while ((c = getopt(argc, argv, "f:v")) != -1) {