[Checkins] SVN: Sandbox/J1m/customdoctests/src/zc/customdoctests/js.py Added work around for python-spidermonkey problem when exceptions are
Jim Fulton
jim at zope.com
Tue Feb 15 13:44:56 EST 2011
Log message for revision 120350:
Added work around for python-spidermonkey problem when exceptions are
raised while loading when load is caled from JS code.
Changed:
U Sandbox/J1m/customdoctests/src/zc/customdoctests/js.py
-=-
Modified: Sandbox/J1m/customdoctests/src/zc/customdoctests/js.py
===================================================================
--- Sandbox/J1m/customdoctests/src/zc/customdoctests/js.py 2011-02-15 17:37:08 UTC (rev 120349)
+++ Sandbox/J1m/customdoctests/src/zc/customdoctests/js.py 2011-02-15 18:44:56 UTC (rev 120350)
@@ -47,7 +47,22 @@
globs['add_js_global'] = cx.add_global
# Rhino & spidermonkey/js compatability functions
- cx.add_global('load', lambda name: JS(open(name).read(), name))
+ cx.add_global('load_',
+ lambda name: JS(load_template % open(name).read(), name))
+ JS(load_js)
cx.add_global('print',
lambda *s: sys.stdout.write('%s\n' % ' '.join(map(str, s)))
)
+ cx.add_global('printe',
+ lambda *s: sys.stderr.write('%s\n' % ' '.join(map(str, s)))
+ )
+
+load_template = "try { %s } catch (e) {spidermonkey_error = e;}"
+
+load_js = """
+function load(p) {
+ spidermonkey_error = undefined;
+ load_(p);
+ if (spidermonkey_error) throw spidermonkey_error;
+}
+"""
More information about the checkins
mailing list