diff options
Diffstat (limited to 'libs/surfaces')
-rw-r--r-- | libs/surfaces/generic_midi/generic_midi_control_protocol.cc | 1 | ||||
-rw-r--r-- | libs/surfaces/mackie/mackie_control_protocol_poll.cc | 1 | ||||
-rw-r--r-- | libs/surfaces/powermate/powermate.cc | 26 |
3 files changed, 17 insertions, 11 deletions
diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc index 3906b53e36..93cbf088c7 100644 --- a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc +++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc @@ -27,7 +27,6 @@ #include <midi++/port.h> #include <midi++/manager.h> -#include <midi++/port_request.h> #include <ardour/route.h> #include <ardour/session.h> diff --git a/libs/surfaces/mackie/mackie_control_protocol_poll.cc b/libs/surfaces/mackie/mackie_control_protocol_poll.cc index 05681c0c25..fa7134fa95 100644 --- a/libs/surfaces/mackie/mackie_control_protocol_poll.cc +++ b/libs/surfaces/mackie/mackie_control_protocol_poll.cc @@ -9,7 +9,6 @@ #include <midi++/types.h> #include <midi++/port.h> #include <midi++/manager.h> -#include <midi++/port_request.h> #include "i18n.h" #include <unistd.h> diff --git a/libs/surfaces/powermate/powermate.cc b/libs/surfaces/powermate/powermate.cc index 139313f3f8..8b3051af20 100644 --- a/libs/surfaces/powermate/powermate.cc +++ b/libs/surfaces/powermate/powermate.cc @@ -14,12 +14,15 @@ #include <i18n.h> #include <pbd/xml++.h> +#include <pbd/error.h> +#include <glibmm.h> #include "powermate.h" using namespace ARDOUR; using namespace std; using namespace sigc; +using namespace PBD; #define NUM_VALID_PREFIXES 2 @@ -32,17 +35,22 @@ static const char *valid_prefix[NUM_VALID_PREFIXES] = { int open_powermate(const char *dev, int mode) { - int fd = open(dev, mode); - int i; - char name[255]; - - if(fd < 0){ - fprintf(stderr, "Unable to open \"%s\": %s\n", dev, strerror(errno)); - return -1; - } + if (!Glib::file_test (dev, Glib::FILE_TEST_EXISTS)) { + return -1; + } + int fd = open(dev, mode); + int i; + char name[255]; + + if(fd < 0){ + if (errno != EACCES) { + error << string_compose ("Unable to open \"%1\": %2", dev, strerror(errno)) << endmsg; + } + return -1; + } if(ioctl(fd, EVIOCGNAME(sizeof(name)), name) < 0){ - fprintf(stderr, "\"%s\": EVIOCGNAME failed: %s\n", dev, strerror(errno)); + error << string_compose ("\"%1\": EVIOCGNAME failed: %2", dev, strerror(errno)) << endmsg; close(fd); return -1; } |