summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2009-12-09 16:41:20 -0500
committerDavid Malcolm <dmalcolm@redhat.com>2009-12-09 16:41:20 -0500
commit05951574b3eadf31af3dffd67540fb717e2a122b (patch)
treeb8bf7337d56c38e415558cf10afcde6e3b88fa5f
parent18ff0f271fb974e427ed08fd304c2bcd47010390 (diff)
downloadtriage-05951574b3eadf31af3dffd67540fb717e2a122b.tar.gz
triage-05951574b3eadf31af3dffd67540fb717e2a122b.tar.xz
triage-05951574b3eadf31af3dffd67540fb717e2a122b.zip
Various refinements
-rwxr-xr-xabrt-triage.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/abrt-triage.py b/abrt-triage.py
index 8f6a25d..51e9af3 100755
--- a/abrt-triage.py
+++ b/abrt-triage.py
@@ -31,6 +31,8 @@ class Bug(object):
for arg in m.group(1).split()[1:]:
if arg.startswith('/'):
return arg
+ if arg.endswith('.py'):
+ return arg
def get_abrt_reason(self):
for line in self._bug.longdescs[0]['body'].splitlines():
@@ -73,7 +75,7 @@ def characterize_bt(bt, thread, script):
function = None
for (i, frame) in enumerate(thread.framelist):
# Get function name for deepest point in stack that has one:
- if function is None or function in ['??', 'vtable', '__kernel_vsyscall', 'raise', 'abort']:
+ if function is None or function in ['??', 'vtable', '__kernel_vsyscall', 'raise', 'abort', 'g_log', 'g_logv']:
function = frame.function
if frame.function == 'abort':
@@ -127,6 +129,9 @@ def characterize_bt(bt, thread, script):
if function:
bt_blurb += ' in %s' % function
+ if len(thread.framelist) == 1:
+ bt_blurb += '. However the short length of the backtrace suggests that there was a problem generating the backtrace, so that may not be the true location of the error.'
+
if function:
summary = 'Fatal error in "%s" in %s' % (function, script)
else:
@@ -146,12 +151,15 @@ def what_provides_file(path):
import yum
my = yum.YumBase()
my.setCacheDir()
+ if not path.startswith('/'):
+ path = '*/' + path
for pkg, path in my.searchPackageProvides([path]).iteritems():
print pkg.sourcerpm
#print pkg.base_package_name
import rpmUtils
srpmName = rpmUtils.miscutils.splitFilename(pkg.sourcerpm)[0]
return (pkg.name, srpmName)
+ return (None, None)
class Change(object):
'''
@@ -218,6 +226,7 @@ def get_change(bz, bug_id):
script = bug.get_script()
# script = '/usr/bin/deluged'
+ subpackage, srpmname = None, None
if script:
subpackage, srpmname = what_provides_file(script)
@@ -257,7 +266,7 @@ You may find assistance in the Fedora community support forums or mailing list,
comment = '''Thank you for reporting this bug.
-How reproducable is this problem? If you run the program from a terminal, is an error message printed?
+How reproducible is this problem? If you run the program from a terminal, is an error message printed?
What version of %(subpackage)s do you have installed?