Alias module: avoid infinite recursion if an alias substitute by the same command
This commit is contained in:
parent
73acc00762
commit
edbfac2943
@ -153,12 +153,18 @@ def treat_variables(res):
|
|||||||
@hook("pre_PRIVMSG_cmd")
|
@hook("pre_PRIVMSG_cmd")
|
||||||
def treat_alias(msg):
|
def treat_alias(msg):
|
||||||
if msg.cmds[0] in DATAS.getNode("aliases").index:
|
if msg.cmds[0] in DATAS.getNode("aliases").index:
|
||||||
|
oldcmd = msg.cmds[0]
|
||||||
msg.text = msg.text.replace(msg.cmds[0],
|
msg.text = msg.text.replace(msg.cmds[0],
|
||||||
DATAS.getNode("aliases").index[msg.cmds[0]]["origin"], 1)
|
DATAS.getNode("aliases").index[msg.cmds[0]]["origin"], 1)
|
||||||
|
|
||||||
msg.qual = "def"
|
msg.qual = "def"
|
||||||
msg.parse_content()
|
msg.parse_content()
|
||||||
|
|
||||||
return treat_alias(msg)
|
# Avoid infinite recursion
|
||||||
|
if oldcmd == msg.cmds[0]:
|
||||||
|
return msg
|
||||||
|
else:
|
||||||
|
return treat_alias(msg)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
msg.text = replace_variables(msg.text, msg)
|
msg.text = replace_variables(msg.text, msg)
|
||||||
|
Loading…
Reference in New Issue
Block a user