]> Dogcows Code - chaz/openbox/blobdiff - src/Util.cc
added the ability to have numeric arguments for the cycle window/workspace functions.
[chaz/openbox] / src / Util.cc
index d80834447971b425750bd5ee44dc04665eac95f1..6e2ea152e7acef7522d8d0a65f08da416da66476 100644 (file)
@@ -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>
 
@@ -169,13 +169,11 @@ void bexec(const string& command, const string& displaystring) {
     setsid();
     int ret = putenv(const_cast<char *>(displaystring.c_str()));
     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", command.c_str(), NULL);
+    exit(ret);
   }
 #else //   __EMX__
-  spawnlp(P_NOWAIT, "cmd.exe", "cmd.exe", "/c", command, NULL);
+  spawnlp(P_NOWAIT, "cmd.exe", "cmd.exe", "/c", command.c_str(), NULL);
 #endif // !__EMX__
 }
 
@@ -249,10 +247,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;
 }
This page took 0.022118 seconds and 4 git commands to generate.