| Index: include/dbus-c++/eventloop-integration.h
|
| diff --git a/include/dbus-c++/eventloop-integration.h b/include/dbus-c++/eventloop-integration.h
|
| index fd56c6ebd7224191810126bcd9aea0f822a62285..a1c64f4262daca044e70b6dcba6b3e5e619d9983 100644
|
| --- a/include/dbus-c++/eventloop-integration.h
|
| +++ b/include/dbus-c++/eventloop-integration.h
|
| @@ -26,6 +26,7 @@
|
| #define __DBUSXX_EVENTLOOP_INTEGRATION_H
|
|
|
| #include <errno.h>
|
| +#include <string.h>
|
| #include "api.h"
|
| #include "dispatcher.h"
|
| #include "util.h"
|
| @@ -68,8 +69,12 @@ public:
|
| //pipe to create a new fd used to unlock a dispatcher at any
|
| // moment (used by leave function)
|
| int ret = pipe(_pipe);
|
| - if (ret == -1) throw Error("PipeError:errno", toString(errno).c_str());
|
| -
|
| + if (ret == -1) {
|
| + char buffer[128]; // buffer copied in Error constructor
|
| + throw Error("PipeError:errno", strerror_r(errno,
|
| + buffer,
|
| + sizeof(buffer)));
|
| + }
|
| _fdunlock[0] = _pipe[0];
|
| _fdunlock[1] = _pipe[1];
|
|
|
|
|