1. 17 Aug, 2020 2 commits
    • Ahmad Samir's avatar
      Fix the port to QRegularExpression · 7d2cfbe4
      Ahmad Samir authored
      I made some mistakes when porting from QRegExp to QRegularExpression:
      - With QRegularExpression::DotMatchesEverythingOption enabled, better use
        QRegularExpression::anchoredPattern and not rely on "^" and "$" to anchor
        the pattern (anchoredPattern uses "\A" and "\z" which is more accurate/precise)
      - Disable QRegularExpression::DotMatchesEverythingOption before subsequent
        setPattern calls, it's only needed for the first matching
      - When calling setPattern, obviously the previous QRegularExpression::anchoredPattern
        isn't going to be in effect, call it again if you want the pattern to be
        anchored
      
      Thanks to sitter for the unit tests that exposed the issue, and for
      spotting the issue with needing to anchor the pattern.
      
      All unit tests pass.
      7d2cfbe4
    • Harald Sitter's avatar
      add gdb line test for thread start and current thread markers · 7512f620
      Harald Sitter authored
      these tests do not presently pass because they regressed in the
      qregularexpression port 8d8062fe
      
      as for exmaple observed in https://bugs.kde.org/show_bug.cgi?id=423222
      which lacks the marker lines
      
      at a glance exactMatch->hasMatch wasn't a good port and so the line
      falls into the CRAP regex' `0x[0-9a-f]+.*|` which would match line
      containing a hex number
      7512f620
  2. 10 Aug, 2020 1 commit
  3. 08 Jul, 2020 1 commit
  4. 18 Jun, 2020 1 commit
  5. 17 Jun, 2020 1 commit
  6. 08 Jun, 2020 2 commits
  7. 03 Jun, 2020 1 commit
  8. 31 May, 2020 1 commit
  9. 17 May, 2020 1 commit
  10. 14 May, 2020 2 commits
  11. 12 May, 2020 2 commits
    • Harald Sitter's avatar
      Merge branch 'Plasma/5.18' · 85aa2616
      Harald Sitter authored
      # Conflicts:
      #	CMakeLists.txt
      85aa2616
    • Harald Sitter's avatar
      initialize bools to false by default · c517b795
      Harald Sitter authored
      Summary:
      This should fix random 113 errors (user_not_insider) coming out of the api
      
      I can't really reproduce the problem other than by setting the bools
      explicitly to true. Seeing as they were previously not set explicitly
      they could very well end up true accidentally.
      To fix this let's set them explicitly false.
      
      BUG: 421187
      FIXED-IN: 5.18.6
      
      Test Plan:
      hoping for the best!
      tests still pass tho
      
      Reviewers: davidedmundson, apol
      
      Reviewed By: apol
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D29675
      c517b795
  12. 05 May, 2020 1 commit
  13. 28 Apr, 2020 1 commit
  14. 20 Apr, 2020 2 commits
    • Harald Sitter's avatar
      Merge branch 'Plasma/5.18' · 93c0e901
      Harald Sitter authored
      93c0e901
    • Harald Sitter's avatar
      disable automatic cookie injection · abb0115b
      Harald Sitter authored
      the http slave reads the cookie metadata and defaults to auto, which would
      try to find applicable cookies in the cookiejar and inject it into every
      request. this is problematic because that cookie is not from drkonqi but
      rather some other software (e.g. konqueror). as such the cookie is entirely
      useless for us but gets in the way when bugzilla finds the cookie to be
      unacceptable for whatever reason (outdated,invalid,unexpected).
      
      force all apijobs to disable cookies entirely. we have no use for them.
      
      BUG: 419646
      FIXED-IN: 5.18.5
      abb0115b
  15. 19 Apr, 2020 2 commits
  16. 16 Apr, 2020 2 commits
  17. 14 Apr, 2020 2 commits
    • David Edmundson's avatar
      Merge branch 'Plasma/5.18' · 867692fd
      David Edmundson authored
      867692fd
    • David Edmundson's avatar
      Avoid creating subwindow on internal page widget · 262389b1
      David Edmundson authored
      Summary:
      KWallet::openWallet takes a windowId as a parameter.
      
      QWidget->winId() is a dangerous call, it will create an underlying
      platform window when called. This happens even if we're not the toplevel
      widget. On X11 this passed winId must have always been broken, but not
      in a way that caused a problem.
      
      This leaves QtWayland in a very confused state with the side effect that
      all scrolling widgets become broken.
      
      BUG: 418755
      BUG: 420035
      
      Test Plan:
      Bisected drkonqi till we found the cause
      Verified fix by running crashtest (with some mods so I could report a bug)
      I can't confirm the winId is correct on X11, but the code looks safe
      
      Reviewers: #plasma, sitter
      
      Reviewed By: sitter
      
      Subscribers: sitter, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28832
      262389b1
  18. 09 Apr, 2020 1 commit
    • David Edmundson's avatar
      Don't leak DrKonqi dialog / fix crash on wayland · b2ebd8f2
      David Edmundson authored
      Summary:
      When a QApplication is in it's destructor it calls window->destroy()
      on all remaining QWindows. This deletes the platform window, whilst
      keeping the real object alive. QtWayland doesn't like this.
      
      Deleting the dialog fixes the issue. The deleteLater is fine because
      QCoreApplication teardown is magic.
      
      Test Plan: crashTest
      
      Reviewers: #plasma, sitter
      
      Reviewed By: sitter
      
      Subscribers: anthonyfieroni, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28692
      b2ebd8f2
  19. 06 Apr, 2020 4 commits
    • Harald Sitter's avatar
      Merge branch 'Plasma/5.18' · 1da2c673
      Harald Sitter authored
      1da2c673
    • Harald Sitter's avatar
      fix line rating for new format when function name is missing · 113b91bf
      Harald Sitter authored
      Summary:
      previously this supposedly was
      
      `#2  0x00007fefe9ef79e8 in ?? () at /usr/lib/dri/i965_dri.so`
      
      nowadays the ?? is simply empty. the rating mechanism wasn't properly
      handling this. treat an empty function name to mean the same as ?? and
      rate the line as MissingFunction/Everything depending on whether
      libraryName is also missing.
      
      also update test expectations accordingly (could have actually seen that
      discrepancy if one had paid attention to the outcoming rating :S)
      
      CCBUG: 418538
      
      Test Plan:
      test passes. most lines from 417435 now rate `MissingFunction` and the whole trace is considered useless
      
      ```
      Rating: 128 out of 364 Usefulness: Useless
      90%: 327.6 70%: 254.8 40%: 145.6
      ```
      
      Reviewers: cfeck, ngraham
      
      Reviewed By: ngraham
      
      Subscribers: ahmadsamir, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28027
      113b91bf
    • Harald Sitter's avatar
      Merge branch 'Plasma/5.18' · f95c9b16
      Harald Sitter authored
      f95c9b16
    • Harald Sitter's avatar
      further constrict line parsing of .so files · dd180bb4
      Harald Sitter authored
      Summary:
      As seen in https://bugs.kde.org/show_bug.cgi?id=417435 the previous fix
      for .so detection actually falls flat on the face for most things
      other than glib2. The original test here was flawed as libglib-2.0.so.0
      has the complete suffix '0.so.0' which matched the original parsing
      condition. most libraries however are libfoo.so.0 and for that the suffix
      would be 'so.0' which did not match the original condition.
      
      extend the condition to properly cover files without so-version, files with
      awkward suffix (such as glib) and files with normal names and normal
      versioning.
      also extend test case accordingly
      
      CCBUG: 418538
      
      Test Plan: test passes. all lines from 417435 score less than `Good`
      
      Reviewers: cfeck, ngraham
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28026
      dd180bb4
  20. 02 Apr, 2020 1 commit
  21. 31 Mar, 2020 1 commit
  22. 27 Mar, 2020 2 commits
  23. 25 Mar, 2020 1 commit
  24. 24 Mar, 2020 1 commit
  25. 20 Mar, 2020 4 commits
    • Friedrich W. H. Kossebau's avatar
      Merge branch 'Plasma/5.18' · 7154b5d4
      Friedrich W. H. Kossebau authored
      7154b5d4
    • Friedrich W. H. Kossebau's avatar
      Display PID & signal numbers unlocalized · af4cd7a4
      Friedrich W. H. Kossebau authored
      Summary: These are less numbers, but more identifiers in the system.
      
      Reviewers: #plasma, sitter
      
      Reviewed By: sitter
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28142
      af4cd7a4
    • Harald Sitter's avatar
      Merge branch 'Plasma/5.18' · b79d6c70
      Harald Sitter authored
      # Conflicts:
      #	CMakeLists.txt
      b79d6c70
    • Harald Sitter's avatar
      remove pointless and arbitrary 4 line frame limit · 80efb36b
      Harald Sitter authored
      Summary:
      ... and update a related test case
      
      the original motivation here was garbage _start traces shouldn't be
      considered valuable. of course we have way more advanced measurements for
      whether a trace is valuable or not. notably the actual rating. so as
      long as we have any frame for evaluation that frame's rating **is**
      relevant.
      drkonqi is smart enough to ignore lines that do not matter already.
      e.g. everything above the crash handler is ignored, equally originator
      functions main/start_thread/start/... are ignored. they do not impact
      the rating at all, regardless of the amount of frames under review.
      as such it is entirely possible to have fewer than 4 frames under review
      and that those 4 frames are all we need (e.g. the crash is in main()
      directly)
      
      in fact, the very trace sample testing this was proving how the 4 line
      limit made no sense. the frame about KCmdLineArgs is the only relevant
      and only valuable frame in the sample and it is 100% useful making the
      entire trace useful. it is simply a nullptr dereference in the main.
      
      the frame limit is now 1 and the test sample has been replaced with
      a real-life sample from https://bugs.kde.org/show_bug.cgi?id=193032
      
      Test Plan: test passes again (was broken because _starts is now actively skipped)
      
      Reviewers: apol, bcooksley
      
      Reviewed By: apol
      
      Subscribers: ahmadsamir, bcooksley, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D28098
      80efb36b