Comment 5 for bug 1039220

Revision history for this message
Brian Murray (brian-murray) wrote : Re: don't report python crashes for programs that don't match the file on disk (like for kernel crashes)

This applies to every type of crash:

        # check if binary changed since the crash happened
        if 'ExecutablePath' in self.report and 'ExecutableTimestamp' in self.report:
            orig_time = int(self.report['ExecutableTimestamp'])
            del self.report['ExecutableTimestamp']
            cur_time = int(os.stat(self.report['ExecutablePath']).st_mtime)

            if orig_time != cur_time:
                self.report['UnreportableReason'] = (
                    _('The problem happened with the program %s which changed '
                      'since the crash occurred.') % self.report['ExecutablePath'])
                return

However, because collect_info just returns here there will be a complete .crash file with 'UnreportableReason' in it which apport will then create a .upload file for, because the check_unreportable check is later. Whoopsie seems to deliberately ignore the UnreportableReason field and not upload that to daisy at all. This makes sense as you might want to be able to find out what kind of things are unreportable, but there currently is no way to filter these out.