[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/kspread/plugins/scripting/scripts
From: Sebastian Sauer <mail () dipe ! org>
Date: 2007-11-04 21:18:19
Message-ID: 1194211099.737210.811.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 732829 by sebsauer:
catch+display also exceptions
M +6 -3 consoledocker.py
--- trunk/koffice/kspread/plugins/scripting/scripts/consoledocker.py #732828:732829
@@ -9,7 +9,6 @@
Dual-licensed under LGPL v2+higher and the BSD license.
"""
-import os, sys, types
import Kross, KoDocker, KSpread
import PyQt4.Qt as Qt
import sip #wrapinstance, unwrapinstance
@@ -61,6 +60,7 @@
def row(self):
return 0
def hasChildren(self):
+ import types
if not self.parent:
return True
if isinstance(self.object, types.ClassType) or \
isinstance(self.object, types.ModuleType): @@ -206,6 +206,7 @@
self.treeExpired = False
def execute(self, code):
+ import sys, traceback
_stdout = sys.stdout
_stderr = sys.stderr
try:
@@ -226,9 +227,11 @@
Base.write(self, "<b>%s</b>" % \
text.strip().replace("\n","<br>")) sys.stdout = StdOut(self.browser)
sys.stderr = StdErr(self.browser)
-
sys.stdout.write("> <i>%s</i>" % code.strip())
- exec code in globals(), globals()
+ try:
+ exec code in globals(), globals()
+ except:
+ sys.stderr.write("".join( \
traceback.format_exception(sys.exc_info()[0],sys.exc_info()[1],sys.exc_info()[2]) )) \
finally: sys.stdout = _stdout
sys.stderr = _stderr
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic