diff options
Diffstat (limited to 'testing/portmidi/41-pm_linux.patch')
-rw-r--r-- | testing/portmidi/41-pm_linux.patch | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/testing/portmidi/41-pm_linux.patch b/testing/portmidi/41-pm_linux.patch new file mode 100644 index 0000000000..5404bddc67 --- /dev/null +++ b/testing/portmidi/41-pm_linux.patch @@ -0,0 +1,77 @@ +--- a/pm_linux/finddefault.c ++++ b/pm_linux/finddefault.c +@@ -5,10 +5,13 @@ + #include <stdlib.h> + #include <stdio.h> + #include <string.h> ++#include <ctype.h> + #include "portmidi.h" + + #define STRING_MAX 256 + ++extern int pm_find_default_device(char *pattern, int is_input); ++ + /* skip over spaces, return first non-space */ + void skip_spaces(FILE *inf) + { +@@ -26,7 +29,6 @@ + } + + +-/* + /* Parse preference files, find default device, search devices -- + */ + PmDeviceID find_default_device(char *path, int input, PmDeviceID id) +@@ -80,7 +82,7 @@ + pref_str[i] = c; + } + if (i == STRING_MAX) continue; // value too long, ignore +- pref_str[i] == 0; ++ //pref_str[i] == 0; + i = pm_find_default_device(pref_str, input); + if (i != pmNoDevice) { + id = i; +--- a/pm_linux/pmlinux.c ++++ b/pm_linux/pmlinux.c +@@ -26,6 +26,8 @@ + PmDeviceID pm_default_input_device_id = -1; + PmDeviceID pm_default_output_device_id = -1; + ++extern int find_default_device(char *path, int input, PmDeviceID id); ++ + void pm_init() + { + /* Note: it is not an error for PMALSA to fail to initialize. +--- a/pm_linux/pmlinuxalsa.c ++++ b/pm_linux/pmlinuxalsa.c +@@ -32,9 +32,9 @@ + #endif + + /* to store client/port in the device descriptor */ +-#define MAKE_DESCRIPTOR(client, port) ((void*)(((client) << 8) | (port))) +-#define GET_DESCRIPTOR_CLIENT(info) ((((int)(info)) >> 8) & 0xff) +-#define GET_DESCRIPTOR_PORT(info) (((int)(info)) & 0xff) ++#define MAKE_DESCRIPTOR(client, port) ((void*)((((size_t)client) << 8) | (port))) ++#define GET_DESCRIPTOR_CLIENT(info) ((((size_t)(info)) >> 8) & 0xff) ++#define GET_DESCRIPTOR_PORT(info) (((size_t)(info)) & 0xff) + + #define BYTE unsigned char + +@@ -422,7 +422,7 @@ + } + if (desc->error < 0) return pmHostError; + +- VERBOSE printf("snd_seq_drain_output: 0x%x\n", (unsigned int) seq); ++ VERBOSE printf("snd_seq_drain_output: 0x%zx\n", (size_t) seq); + desc->error = snd_seq_drain_output(seq); + if (desc->error < 0) return pmHostError; + +@@ -436,7 +436,7 @@ + { + alsa_descriptor_type desc = (alsa_descriptor_type) midi->descriptor; + if (!desc) return pmBadPtr; +- VERBOSE printf("snd_seq_drain_output: 0x%x\n", (unsigned int) seq); ++ VERBOSE printf("snd_seq_drain_output: 0x%zx\n", (size_t) seq); + desc->error = snd_seq_drain_output(seq); + if (desc->error < 0) return pmHostError; + |