mercurial/hook.py
changeset 9851 9e7b2c49d25d
parent 9658 852b1f3032d2
child 10103 37679dbf2ee3
--- a/mercurial/hook.py	Thu Nov 12 14:34:07 2009 -0600
+++ b/mercurial/hook.py	Thu Nov 12 14:05:52 2009 -0800
@@ -37,10 +37,18 @@
         try:
             obj = __import__(modname)
         except ImportError:
+            e1 = sys.exc_type, sys.exc_value, sys.exc_traceback
             try:
                 # extensions are loaded with hgext_ prefix
                 obj = __import__("hgext_%s" % modname)
             except ImportError:
+                e2 = sys.exc_type, sys.exc_value, sys.exc_traceback
+                if ui.tracebackflag:
+                    ui.warn(_('exception from first failed import attempt:\n'))
+                ui.traceback(e1)
+                if ui.tracebackflag:
+                    ui.warn(_('exception from second failed import attempt:\n'))
+                ui.traceback(e2)
                 raise util.Abort(_('%s hook is invalid '
                                    '(import of "%s" failed)') %
                                  (hname, modname))