diff options
author | David Malcolm <[email protected]> | 2009-12-09 16:41:20 -0500 |
---|---|---|
committer | David Malcolm <[email protected]> | 2009-12-09 16:41:20 -0500 |
commit | 05951574b3eadf31af3dffd67540fb717e2a122b (patch) | |
tree | b8bf7337d56c38e415558cf10afcde6e3b88fa5f | |
parent | 18ff0f271fb974e427ed08fd304c2bcd47010390 (diff) | |
download | triage-05951574b3eadf31af3dffd67540fb717e2a122b.tar.gz triage-05951574b3eadf31af3dffd67540fb717e2a122b.tar.xz triage-05951574b3eadf31af3dffd67540fb717e2a122b.zip |
Various refinements
-rwxr-xr-x | abrt-triage.py | 13 |
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? |