Fixed a bug in the lockhandler error handling. Resolves #564.

This commit is contained in:
Griatch 2014-09-19 21:15:50 +02:00
parent b5507b0fcb
commit 1b44d9b2ed
4 changed files with 11 additions and 10 deletions

View file

@ -88,7 +88,7 @@ class CmdUsernameSelect(Command):
else:
# store the player so next step can find it
self.menutree.player = player
self.caller.msg("", echo=False)
self.caller.msg(echo=False)
self.menutree.goto("node1b")
@ -104,7 +104,7 @@ class CmdPasswordSelectBack(Command):
def func(self):
"Execute the command"
self.menutree.goto("node1a")
self.caller.msg("", echo=True)
self.caller.msg(echo=True)
class CmdPasswordSelect(Command):
@ -116,7 +116,7 @@ class CmdPasswordSelect(Command):
def func(self):
"Execute the command"
self.caller.msg("", echo=True)
self.caller.msg(echo=True)
if not hasattr(self.menutree, "player"):
self.caller.msg("{rSomething went wrong! The player was not remembered from last step!{n")
self.menutree.goto("node1a")
@ -181,7 +181,7 @@ its and @/./+/-/_ only.{n") # this echoes the restrictions made by django's auth
return
# store the name for the next step
self.menutree.playername = playername
self.caller.msg("", echo=False)
self.caller.msg(echo=False)
self.menutree.goto("node2b")
@ -194,7 +194,7 @@ class CmdPasswordCreateBack(Command):
def func(self):
"Execute the command"
self.caller.msg("", echo=True)
self.caller.msg(echo=True)
self.menutree.goto("node2a")
@ -206,7 +206,7 @@ class CmdPasswordCreate(Command):
def func(self):
"Execute the command"
password = self.args
self.caller.msg("", echo=False)
self.caller.msg(echo=False)
if not hasattr(self.menutree, 'playername'):
self.caller.msg("{rSomething went wrong! Playername not remembered from previous step!{n")
self.menutree.goto("node2a")

View file

@ -1563,6 +1563,7 @@ class CmdLock(ObjManipCommand):
if not obj.access(caller, 'control'):
caller.msg("You are not allowed to do that.")
return
ok = False
try:
ok = obj.locks.add(lockdef)
except LockException, e:

View file

@ -216,7 +216,7 @@ class LockHandler(object):
funcname, rest = (part.strip().strip(')') for part in funcstring.split('(', 1))
func = _LOCKFUNCS.get(funcname, None)
if not callable(func):
elist.append(_("Lock: function '%s' is not available.") % funcstring)
elist.append(_("Lock: lock-function '%s' is not available.") % funcstring)
continue
args = list(arg.strip() for arg in rest.split(',') if arg and not '=' in arg)
kwargs = dict([arg.split('=', 1) for arg in rest.split(',') if arg and '=' in arg])

View file

@ -99,7 +99,6 @@ class TelnetProtocol(Telnet, StatefulTelnetProtocol, Session):
self.mccp.no_mccp(option)
return True
else:
return super(TelnetProtocol, self).disableLocal(option)
def connectionLost(self, reason):
@ -235,6 +234,7 @@ class TelnetProtocol(Telnet, StatefulTelnetProtocol, Session):
nomarkup = kwargs.get("nomarkup", not (xterm256 or useansi))
prompt = kwargs.get("prompt")
echo = kwargs.get("echo", None)
#print "telnet kwargs=%s, message=%s" % (kwargs, text)
#print "xterm256=%s, useansi=%s, raw=%s, nomarkup=%s, init_done=%s" % (xterm256, useansi, raw, nomarkup, ttype.get("init_done"))
if raw:
@ -254,6 +254,6 @@ class TelnetProtocol(Telnet, StatefulTelnetProtocol, Session):
self.transport.write(mccp_compress(self, prompt))
if echo:
self.transport.write(mccp_compress(self, IAC+WONT+ECHO))
elif echo== False:
elif echo == False:
self.transport.write(mccp_compress(self, IAC+WILL+ECHO))