summaryrefslogtreecommitdiff
path: root/libs/surfaces
diff options
context:
space:
mode:
Diffstat (limited to 'libs/surfaces')
-rw-r--r--libs/surfaces/generic_midi/generic_midi_control_protocol.cc1
-rw-r--r--libs/surfaces/mackie/mackie_control_protocol_poll.cc1
-rw-r--r--libs/surfaces/powermate/powermate.cc26
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;
}