summaryrefslogtreecommitdiff
path: root/Variables.py
diff options
context:
space:
mode:
authorPeter Wu <lekensteyn@gmail.com>2011-12-06 16:13:18 +0000
committerPeter Wu <lekensteyn@gmail.com>2011-12-06 16:13:18 +0000
commit6e8c92a69c6f7abe88d98e729e06bca6ccf17d72 (patch)
tree2b3ecc0db0e2b020fabdd5c8ba628615cf4080ea /Variables.py
parent96333bbb306f7141dee99dc01a9afff8bc7b114b (diff)
downloadpp2cc-6e8c92a69c6f7abe88d98e729e06bca6ccf17d72.tar.gz
Fix stack corruption when using arguments (param access off by one)
Diffstat (limited to 'Variables.py')
-rw-r--r--Variables.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/Variables.py b/Variables.py
index 89c8501..26de704 100644
--- a/Variables.py
+++ b/Variables.py
@@ -48,7 +48,8 @@ class Variables(object):
# XXX don't hardcode R5
return ("R5", str(-self.local_vars[name]))
try:
- return ("R5", str(1 + self.param_vars.index(name)))
+ # 1 for the return address, 1 for the stored BP
+ return ("R5", str(2 + self.param_vars.index(name)))
except ValueError:
pass
# lookup in the parent