From eb5ab43c48e73f8432ee899b903483c2af6819b2 Mon Sep 17 00:00:00 2001 From: Julien Date: Sun, 25 Sep 2011 18:34:38 +0200 Subject: [PATCH] FIX: out of range ascii chars --- horrlang.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/horrlang.py b/horrlang.py index 29de523..6242455 100755 --- a/horrlang.py +++ b/horrlang.py @@ -61,7 +61,9 @@ class Machine: self.mem_ptr += self.get_integer() def O(self): - self.write(chr(self.mem[self.mem_ptr])) + char = self.mem[self.mem_ptr] + if char > 0 and char < 256: + self.write(chr(char)) def I(self): self.mem[self.mem_ptr] = ord(self.read(1)) @@ -101,8 +103,9 @@ class Machine: while True: if self.mem[self.exc_ptr] == 0: return - if self.mem[self.exc_ptr] <= 255: - control = chr(self.mem[self.exc_ptr]) + char = self.mem[self.exc_ptr] + if char > 0 and char < 256: + control = chr(char) if debug: print control if hasattr(self, control):