diff options
author | Max Kellermann <max@duempel.org> | 2013-09-04 23:36:30 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2013-09-04 23:36:30 +0200 |
commit | ee9e238179677ad0168ead6edfe17f798dbf47dc (patch) | |
tree | 032c0f1593bc64f6745cd81cc124d9fc272a5010 | |
parent | 29030b54c98b0aee65fbc10ebf7ba36bed98c02c (diff) | |
download | mpd-ee9e238179677ad0168ead6edfe17f798dbf47dc.tar.gz mpd-ee9e238179677ad0168ead6edfe17f798dbf47dc.tar.xz mpd-ee9e238179677ad0168ead6edfe17f798dbf47dc.zip |
system/SocketError: un-inline constructor
Reduces header dependencies.
-rw-r--r-- | src/event/ServerSocket.cxx | 2 | ||||
-rw-r--r-- | src/system/SocketError.cxx | 22 | ||||
-rw-r--r-- | src/system/SocketError.hxx | 15 |
3 files changed, 26 insertions, 13 deletions
diff --git a/src/event/ServerSocket.cxx b/src/event/ServerSocket.cxx index f0b02e34c..342acc04e 100644 --- a/src/event/ServerSocket.cxx +++ b/src/event/ServerSocket.cxx @@ -32,6 +32,8 @@ #include "util/Error.hxx" #include "util/Domain.hxx" +#include <glib.h> + #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> diff --git a/src/system/SocketError.cxx b/src/system/SocketError.cxx index d3569c6f1..315a86e1f 100644 --- a/src/system/SocketError.cxx +++ b/src/system/SocketError.cxx @@ -21,4 +21,26 @@ #include "SocketError.hxx" #include "util/Domain.hxx" +#include <glib.h> + const Domain socket_domain("socket"); + +#ifdef WIN32 + +SocketErrorMessage::SocketErrorMessage(socket_error_t code) +{ + DWORD nbytes = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | + FORMAT_MESSAGE_IGNORE_INSERTS | + FORMAT_MESSAGE_MAX_WIDTH_MASK, + NULL, code, 0, + (LPSTR)msg, sizeof(msg), NULL); + if (nbytes == 0) + strcpy(msg, "Unknown error"); +} + +#else + +SocketErrorMessage::SocketErrorMessage(socket_error_t code) + :msg(g_strerror(code)) {} + +#endif diff --git a/src/system/SocketError.hxx b/src/system/SocketError.hxx index c42e267dd..2b8332715 100644 --- a/src/system/SocketError.hxx +++ b/src/system/SocketError.hxx @@ -23,8 +23,6 @@ #include "gcc.h" #include "util/Error.hxx" -#include <glib.h> - #ifdef WIN32 #include <winsock2.h> typedef DWORD socket_error_t; @@ -97,18 +95,9 @@ class SocketErrorMessage { public: #ifdef WIN32 - explicit SocketErrorMessage(socket_error_t code=GetSocketError()) { - DWORD nbytes = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | - FORMAT_MESSAGE_IGNORE_INSERTS | - FORMAT_MESSAGE_MAX_WIDTH_MASK, - NULL, code, 0, - (LPSTR)msg, sizeof(msg), NULL); - if (nbytes == 0) - strcpy(msg, "Unknown error"); - } + explicit SocketErrorMessage(socket_error_t code=GetSocketError()); #else - explicit SocketErrorMessage(socket_error_t code=GetSocketError()) - :msg(g_strerror(code)) {} + explicit SocketErrorMessage(socket_error_t code=GetSocketError()); #endif operator const char *() const { |