summary refs log tree commit diff stats
path: root/lib
diff options
context:
space:
mode:
authoryglukhov <yuriy.glukhov@gmail.com>2015-06-15 23:30:09 +0300
committeryglukhov <yuriy.glukhov@gmail.com>2015-06-15 23:30:09 +0300
commitffa4f8dc997331f2005f19ab2fb9f34b433f9e16 (patch)
tree5b1e70fa99bf1fd8bb4874819e368946f13eebe5 /lib
parentfa1f3aecce3398f4d7afe69294ba9b3f928a66a2 (diff)
downloadNim-ffa4f8dc997331f2005f19ab2fb9f34b433f9e16.tar.gz
Added noUnhandledHandler
Diffstat (limited to 'lib')
-rw-r--r--lib/system/jssys.nim16
1 files changed, 9 insertions, 7 deletions
diff --git a/lib/system/jssys.nim b/lib/system/jssys.nim
index 4d5ba1f73..5a9333a0e 100644
--- a/lib/system/jssys.nim
+++ b/lib/system/jssys.nim
@@ -114,19 +114,21 @@ proc unhandledException(e: ref Exception) {.
 proc raiseException(e: ref Exception, ename: cstring) {.
     compilerproc, asmNoStackFrame.} =
   e.name = ename
-  if excHandler == 0:
-    unhandledException(e)
+  when not defined(noUnhandledHandler):
+    if excHandler == 0:
+      unhandledException(e)
   asm "throw `e`;"
 
 proc reraiseException() {.compilerproc, asmNoStackFrame.} =
   if lastJSError == nil:
     raise newException(ReraiseError, "no exception to reraise")
   else:
-    if excHandler == 0:
-      var isNimException : bool
-      asm "`isNimException` = lastJSError.m_type;"
-      if isNimException:
-        unhandledException(cast[ref Exception](lastJSError))
+    when not defined(noUnhandledHandler):
+      if excHandler == 0:
+        var isNimException : bool
+        asm "`isNimException` = lastJSError.m_type;"
+        if isNimException:
+          unhandledException(cast[ref Exception](lastJSError))
     asm "throw lastJSError;"
 
 proc raiseOverflow {.exportc: "raiseOverflow", noreturn.} =