Page MenuHomePhorge

Fix crash when upload failed
ClosedPublic

Authored by nannanko on Jul 6 2024, 5:10 PM.
Tags
None
Referenced Files
F37903: D104.1727958730.diff
Wed, Oct 2, 5:32 AM
Unknown Object (File)
Tue, Oct 1, 8:19 PM
Unknown Object (File)
Sun, Sep 29, 1:51 AM
Unknown Object (File)
Wed, Sep 25, 10:08 PM
Unknown Object (File)
Tue, Sep 24, 8:11 PM
Unknown Object (File)
Tue, Sep 24, 4:26 PM
Unknown Object (File)
Tue, Sep 24, 4:26 PM
Unknown Object (File)
Tue, Sep 24, 4:26 PM
Subscribers
None

Details

Summary

When response isn't an valid json, nlohmann::json::parse() will cause a crash. This fixed it.

Type: fix

Test Plan

Verify that kazv doesn't crash when upload failed.

Diff Detail

Repository
rK kazv
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

There is currently a lack of unit tests, and I'm not sure how to write them at the moment. I will add all related tests for uploading and downloading soon.

src/kazv-io-job.cpp
299–300

Why not use try-catch?

Also Better to log it.

299–300

Don't assume the json body is in valid format. There are plenty of things that can go wrong.

tusooa requested changes to this revision.Jul 6 2024, 5:41 PM
This revision now requires changes to proceed.Jul 6 2024, 5:41 PM
  • Use try-catch for exception
tusooa requested changes to this revision.Jul 12 2024, 7:08 AM
tusooa added inline comments.
src/kazv-io-job.cpp
300–315

Note, your original code doesn't create a default-constructed json. This creates an empty json array instead.

305

should be qCWarning(kazvLog)

309
310
313

should be qCWarning(kazvLog)

src/l10n/en/100-ui.ftl
215

missing translations for cmn-Hans

This revision now requires changes to proceed.Jul 12 2024, 7:08 AM
  • Add cmn-Hans translations
  • Use qCWarning instead of qDebug
  • Check json format, fix a template call
This revision is now accepted and ready to land.Jul 13 2024, 9:08 AM
This revision was automatically updated to reflect the committed changes.