diff options
Diffstat (limited to 'src/Util.cc')
| -rw-r--r-- | src/Util.cc | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/Util.cc b/src/Util.cc index d8083444..3c494901 100644 --- a/src/Util.cc +++ b/src/Util.cc @@ -26,6 +26,8 @@ #endif // HAVE_CONFIG_H extern "C" { +#include <X11/Xatom.h> + #ifdef HAVE_STRING_H #include <string.h> #endif @@ -48,11 +50,9 @@ extern "C" { #if defined(HAVE_PROCESS_H) && defined(__EMX__) # include <process.h> #endif // HAVE_PROCESS_H __EMX__ -} - -#include <X11/Xatom.h> #include <assert.h> +} #include <algorithm> @@ -171,8 +171,8 @@ void bexec(const string& command, const string& displaystring) { assert(ret != -1); string cmd = "exec "; cmd += command; - execl("/bin/sh", "/bin/sh", "-c", cmd.c_str(), NULL); - exit(0); + ret = execl("/bin/sh", "/bin/sh", "-c", cmd.c_str(), NULL); + exit(ret); } #else // __EMX__ spawnlp(P_NOWAIT, "cmd.exe", "cmd.exe", "/c", command, NULL); @@ -249,10 +249,8 @@ string itostring(unsigned long i) { string itostring(long i) { - if (i < 0) { - std::string tmp = itostring( (unsigned long) -i); + std::string tmp = itostring( (unsigned long) std::abs(i)); + if (i < 0) tmp.insert(tmp.begin(), '-'); - return tmp; - } else - return itostring( (unsigned long) i); + return tmp; } |
