]> git.madduck.net Git - etc/awesome.git/blobdiff - asyncshell.lua

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

using timer sharing; #114
[etc/awesome.git] / asyncshell.lua
index 827cf4be4b0f500174ba2279429039d5f39516aa..a8e3676017168038797a9b28db8aeacec3299172 100644 (file)
@@ -14,6 +14,9 @@
 -- Grab environment
 local awful = require('awful')
 
 -- Grab environment
 local awful = require('awful')
 
+-- Avoid discrepancies across multiple shells
+awful.util.shell = '/bin/sh'
+
 -- Initialize tables for module
 asyncshell = { request_table = {}, id_counter = 0 }
 
 -- Initialize tables for module
 asyncshell = { request_table = {}, id_counter = 0 }
 
@@ -49,7 +52,11 @@ function asyncshell.request(command, callback, timeout)
         id, formatted_command
     )
 
         id, formatted_command
     )
 
-    awful.util.spawn_with_shell(req)
+    if type(awful.spawn) == 'table' then
+        awful.spawn.with_shell(req)
+    else
+        awful.util.spawn_with_shell(req)
+    end
 
     if timeout then
         asyncshell.request_table[id].timer = timer({ timeout = timeout })
 
     if timeout then
         asyncshell.request_table[id].timer = timer({ timeout = timeout })