1. 28 Apr, 2021 1 commit
  2. 26 Apr, 2021 4 commits
    • Harald Sitter's avatar
      disable dbus interface and explain what it does · 18665eb1
      Harald Sitter authored
      this wasn't really obvious from the get go, but from the API I'd guess
      it's so a running kdevelop can register itself as external debugger on a
      running drkonqi. we limit this to kcrash (for now anyway) there's not
      really a reason kdevelop would have to route coredumpd dumps through
      drkonqi and it'd needlessly complicate things, in particular since we
      need coredumpbackend to have the prepare API that kdevelop would have to
      implement to use the backend over dbus, so the interface also needs to
      grow api, and then the interface also needed to grow API to communicate
      backend support.
      18665eb1
    • Harald Sitter's avatar
      prepare the backend before tracing · 1ba9cf5d
      Harald Sitter authored
      debuggermanager now plays negotiator between backend and generator so
      that the backend can prepare itself for tracing.
      specifically this will allow us to interface with coredumpd where we
      might need to extract the dump for tracing just before starting the
      trace. this will be possible with the new preparation dance between
      generator, manager and backend.
      
      instead of outright starting the generator now enters loading state and
      emits `preparing()` to get the backend to prepare. once the backend is
      prepared it in turn emits a signal to trigger further startup in the
      generator.
      1ba9cf5d
    • Harald Sitter's avatar
      delegate construction · e7c3069c
      Harald Sitter authored
      now that AbstractDrKonqiBackend is a qobject we can do constructor
      delegation as we have no special constructor needs.
      
      KCrashBackend delegates to AbstractDrKonqiBackend delegates to QObject.
      e7c3069c
    • Harald Sitter's avatar
      make all backends qobjects · 78c416ae
      Harald Sitter authored
      this simplifies the backend inheritance.
      backends are now always qobjects, there's no practical reason why it
      would be any other way anyway, or more specifically since there's no use
      for multi-inheritance there's no point in doing it
      78c416ae
  3. 22 Apr, 2021 2 commits
  4. 16 Apr, 2021 8 commits
  5. 15 Apr, 2021 2 commits
  6. 14 Apr, 2021 12 commits
  7. 12 Apr, 2021 1 commit
  8. 09 Apr, 2021 1 commit
  9. 08 Apr, 2021 5 commits
  10. 01 Apr, 2021 2 commits
    • Harald Sitter's avatar
      add missing includes for freebsd · 42aca174
      Harald Sitter authored
      every time I use errno I forget that it requires an include lest it
      fails on freebsd.
      
      also add string.h for strerror for good measure
      42aca174
    • Harald Sitter's avatar
      refactor deleted file detection · 1de2c484
      Harald Sitter authored
      instead of using procfs' /map_files use /maps. this will allow us to
      also process data after the process had gone away (e.g. when processing
      data from coredumpd) and makes no difference for the running process.
      
      the parser is now in its own file and has a unit test
      
      there's also new tech in place that additionally adds stat support. this
      is also to aid in future development for coredumpd support. if a library
      has changed in the time between the core dumping and drkonqi starting,
      then we need a way to figure out if the file has changed even when we
      can't rely on the ' (deleted)' marker in the /maps data.
      the easiest way to achieve this is to compare the inodes. while that
      isn't always accurate it's probably accurate enough for our purposes.
      1de2c484
  11. 30 Mar, 2021 1 commit
  12. 26 Mar, 2021 1 commit