diff options
author | makefu <github@syntax-fehler.de> | 2014-04-27 18:17:23 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2014-04-27 18:17:23 +0200 |
commit | aa4b1772353ddf520b210bb1a692ce1b604cba23 (patch) | |
tree | 416bf15d2c7a49542b53b805dd6a155e05735cf1 /Reaktor/IRC | |
parent | adffcc9053665c52029cb96746ce28d9f334d18a (diff) | |
parent | 11a8e061d7b96df22c4793cbbd79cb8dba686513 (diff) |
Merge branch 'master' of ssh://github.com/krebscode/painload
Diffstat (limited to 'Reaktor/IRC')
-rw-r--r-- | Reaktor/IRC/getconf.py | 7 | ||||
-rw-r--r-- | Reaktor/IRC/ircasy.py | 5 | ||||
-rwxr-xr-x | Reaktor/IRC/reaktor.py | 8 |
3 files changed, 11 insertions, 9 deletions
diff --git a/Reaktor/IRC/getconf.py b/Reaktor/IRC/getconf.py index f9cd4404..168c908c 100644 --- a/Reaktor/IRC/getconf.py +++ b/Reaktor/IRC/getconf.py @@ -9,14 +9,17 @@ import os def make_getconf(filename): - def getconf(prop): + def getconf(prop, default_value=None): prop_split = prop.split('.') string = '' config = load_config(filename) #imp.reload(config) tmp = config.__dict__ for pr in prop_split: - tmp = tmp[pr] + if pr in tmp: + tmp = tmp[pr] + else: + return default_value return tmp return getconf diff --git a/Reaktor/IRC/ircasy.py b/Reaktor/IRC/ircasy.py index 259ea98c..9a7f44f3 100644 --- a/Reaktor/IRC/ircasy.py +++ b/Reaktor/IRC/ircasy.py @@ -114,10 +114,7 @@ class asybot(asychat): self.on_kick(prefix, command, params, rest) elif command == 'JOIN': - try: - self.on_join(prefix, command, params, rest) - except: - pass + self.on_join(prefix, command, params, rest) elif command == '433': # ERR_NICKNAMEINUSE, retry with another name diff --git a/Reaktor/IRC/reaktor.py b/Reaktor/IRC/reaktor.py index b53ef651..ec306e7c 100755 --- a/Reaktor/IRC/reaktor.py +++ b/Reaktor/IRC/reaktor.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import os from ircasy import asybot from asyncore import loop @@ -36,7 +36,7 @@ class Reaktor(asybot): return False def on_join(self, prefix, command, params, rest): - for command in getconf('on_join'): + for command in getconf('on_join', []): self.execute_command(command, None, prefix, params) def on_privmsg(self, prefix, command, params, rest): @@ -69,6 +69,9 @@ class Reaktor(asybot): log.info("cannot parse args!") cwd = getconf('workdir') + if not os.access(cwd,os.W_OK): + log.error("Workdir '%s' is not Writable! Falling back to root dir"%cwd) + cwd = "/" env = command.get('env', {}) env['_prefix'] = prefix @@ -81,7 +84,6 @@ class Reaktor(asybot): target.append(env['_from']) log.debug('target:' +str(target)) - env['config_filename'] = os.path.abspath(self.config) start = time() try: p = popen(myargv, bufsize=1, stdout=PIPE, stderr=PIPE, env=env, cwd=cwd) |