Skip to content
Commit c07434bf authored by Harald Sitter's avatar Harald Sitter 🐧
Browse files

prevent exhausting the maximum size of bug reports

Summary:
bugzilla has a hardcoded server-side limit for how large a given comment
may be. this can somewhat easily get triggered by heavily threaded
applications as the backtrace would include a lot of "noise" threads.
when this previously happened drkonqi would find itself incapable of
filing the report and leaving the user to their own devices.

now we are much smarter about this
if the reportinterface finds that the bug description is too long it will
try to use a reduced backtrace (only a couple of lines from the relevant
thread) or when that too is too long to exclude the backtrace entirely.
in both events it would then additionally attach the complete backtrace
to the bug.

for this there's a bunch of rejiggering necessary:
- generateReportFullText has had its signature changed, instead of using
  a lazy bool now use enums to control the output. this should be vastly
  more readable
- new Backtrace control on generateReportFullText ranging Complete>
  Redcued>Exclude
- addedToCC was renamed to attachBacktraceWithReport which is a more
  suitable name for what it does. it's logic has been moved to a new
  attachBacktrace which requires the caller to set the actual comment
- attachBacktrace is called with a full report comment when used via \
  attachBacktraceWithReport (i.e. the user indicated that their crash
  is in fact the same as another report, so their report gets
  attached to the other one). it's called with a simplified message when
  attaching as part of a reduced/excluded backtrace dance

the end result is that the reports can no longer exhaust the hardcoded
character limit.

there is one caveat: the user can still write a super long description
manually and exhaust the limit. this is however very hard to do in
real life without "abusing" the description for something.

CHANGELOG: Bug reporting can no longer exhaust the maximum character size enforced by Bugzilla
BUG: 248807
FIXED-IN: 5.17.0

Test Plan:
- file bug report with ETOOLONGTRACE -> gets reduced and attached
- regular attaching still works
- exhausting the limit *exactly* works as expected

Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D22399
parent 854c9532
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment