Skip to content
  • Harald Sitter's avatar
    force a token refresh before submitting the report · 824efbe6
    Harald Sitter authored
    Summary:
    when the user takes a very long time to prepare the bug report the original
    login session may have timed out and prevent submitting the bug report.
    as a super simple way to prevent this let's simply force a refresh.
    we need to do a query to check validity anyway, so we might as well
    force a refresh and get a new token right away.
    
    this temporarily chains the login interfaces to the report interfaces, upon
    successful login the report is sent. if any of the two throws an error
    the page goes into error state which offers a retry button to run
    aboutToShow again. therefore we also want to disconnect the signal chains
    to avoid multiple slot invocations on possible retries.
    
    BUG: 338216
    FIXED-IN: 5.17.0
    CHANGELOG: Login tokens get refreshed before submitting reports to prevent unauthorized errors
    
    Test Plan:
    - file bug without any interruption all goody
    - add `Bugzilla::connection().setToken(QString());` to simulate the token having gone invalid -> continues to work
    - disconnect network before submit causes a network unreachable login error -> connect again -> retry -> submission succeeds
    
    Reviewers: apol
    
    Reviewed By: apol
    
    Subscribers: plasma-devel
    
    Tags: #plasma
    
    Differential Revision: https://phabricator.kde.org/D22288
    824efbe6