~compiz-team/compiz/compiz.fix_1077866

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import apport.packaging
from apport.hookutils import *

def add_info(report, ui):

    # if it's a stacktrace, report it directly against the right component
    if "Stacktrace" in report:
        for external_component in ("/usr/lib/libnux", "/usr/lib/compiz/libunityshell", "/usr/lib/libunity"):
            for words in report["Stacktrace"].split():
                if words.startswith(external_component):
                    report.add_package_info(apport.packaging.get_file_package(words))
                    return
        report.add_hooks_info(ui, srcpackage='xorg')
        return

    
    # ok, add maximum interesting info without too much spam
    report['CompizPlugins'] = command_output(['gconftool-2',
        '--get', '/apps/compiz-1/general/screen0/options/active_plugins'])
    # User configuration
    report['GconfCompiz'] = command_output(['gconftool-2', '-R', '/apps/compiz-1'])

    unity_bug = False
    if ui and "unity" in report['CompizPlugins'] and report['SourcePackage'] != "unity":
        if ui.yesno("Thanks for reporting this bug. It seems you have unity running. Is the issue you are reporting is related to unity itself rather than compiz?"):
            unity_bug = True
            
    if unity_bug:
        report.add_package_info('unity')
        report.add_hooks_info(ui, srcpackage='unity')
        return

    # add all relevant info like xorg ones
    report.add_hooks_info(ui, srcpackage='xorg')