[pypy-svn] r17831 - pypy/dist/pypy/interpreter

arigo at codespeak.net arigo at codespeak.net
Sat Sep 24 17:40:05 CEST 2005


Author: arigo
Date: Sat Sep 24 17:40:00 2005
New Revision: 17831

Modified:
   pypy/dist/pypy/interpreter/pyopcode.py
Log:
(pedronis, arigo)

Overlooked yet another usage of '== space.w_None'.
This one was spelled 'is not f.space.w_None'...
But actually using space.is_w() here makes the flow
space very unhappy, so care is neeeded.

Obscure stuff.



Modified: pypy/dist/pypy/interpreter/pyopcode.py
==============================================================================
--- pypy/dist/pypy/interpreter/pyopcode.py	(original)
+++ pypy/dist/pypy/interpreter/pyopcode.py	Sat Sep 24 17:40:00 2005
@@ -379,9 +379,10 @@
         f.valuestack.pop()   # ignore the exception type
         f.valuestack.pop()   # ignore the exception value
         w_unroller = f.valuestack.pop()
-        if w_unroller is not f.space.w_None:
+        unroller = f.space.interpclass_w(w_unroller)
+        if unroller is not None:
             # re-raise the unroller, if any
-            raise f.space.interpclass_w(w_unroller)
+            raise unroller
 
     def BUILD_CLASS(f):
         w_methodsdict = f.valuestack.pop()



More information about the Pypy-commit mailing list