Skip to content
  • Harald Sitter's avatar
    disable bug report when there are signs of an update · 210c9d88
    Harald Sitter authored
    Summary:
    this actually improves UX more than anything. when there was an update it
    is fairly impossible to install debug symbols, so drkonqi may get stuck in
    a loop between saying this crash is garbage and suggesting the user install
    some more symbols. what's more is that the crash can be the result
    of incompatibilities in runtime-loaded plugins (a notorious example are
    KIO slaves, which get forked from klauncher which I think can lead
    to problems when loading the newer libQt5Core.so etc.).
    
    all in all crashes coming from a half-update runtime are hard to trace
    and also at risk of being worthless. so, instead disable the report and
    the install symbols features and inform the user about what
    went wrong in both cases.
    
    this is pretty much exclusively working for linux where the kernel will
    actually add " (deleted)" hints to all symlinks in procfs and have a
    map_files directory where all mmap'd regions are symlinked to their
    respective paths... also with that suffix as needed.
    
    the way it works is super easy: iter all map_files, get all deleted paths,
    make sure none of the .so or the executable itself are marked deleted.
    if anything is marked deleted, the report feature gets disabled
    
    Test Plan: update dolphin -> attach drkonqi -> drkonqi whines about dolphin being updated
    
    Reviewers: #plasma, apol
    
    Reviewed By: apol
    
    Subscribers: apol, plasma-devel
    
    Tags: #plasma
    
    Differential Revision: https://phabricator.kde.org/D25002
    210c9d88