]> git.tdb.fi Git - libs/core.git/commitdiff
Add a constructor for system_error that takes error message instead of code
authorMikko Rasa <tdb@tdb.fi>
Fri, 5 Aug 2011 14:49:46 +0000 (17:49 +0300)
committerMikko Rasa <tdb@tdb.fi>
Fri, 5 Aug 2011 14:49:46 +0000 (17:49 +0300)
source/core/systemerror.cpp
source/core/systemerror.h

index 6d1d876c1f3e00fb94886a1612454af7443bf01a..8d8844a280d06da5ef81894ed64d036959f21415 100644 (file)
@@ -5,6 +5,7 @@
 #include <cerrno>
 #include <cstring>
 #endif
+#include <limits>
 #include "systemerror.h"
 
 using namespace std;
@@ -16,6 +17,11 @@ system_error::system_error(const string &w, int c):
        code_(c)
 { }
 
+system_error::system_error(const string &w, const string &e):
+       runtime_error(w+": "+e),
+       code_(numeric_limits<int>::min())
+{ }
+
 string system_error::get_message(int c)
 {
 #ifdef WIN32
index 4b7493d47a5409bfb7902c12b9d997bf7b3cd5ee..c6b516af9f5dddba7d435a6d02408a9f68820f0e 100644 (file)
@@ -13,6 +13,7 @@ private:
 
 public:
        system_error(const std::string &, int = -1);
+       system_error(const std::string &, const std::string &);
        virtual ~system_error() throw() { }
 
        int code() const throw() { return code_; }