Page MenuHomePhorge

Fix crash when upload failed
ClosedPublic

Authored by nannanko on Jul 6 2024, 5:10 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Aug 31, 6:52 PM
Unknown Object (File)
Sat, Aug 31, 3:21 PM
Unknown Object (File)
Fri, Aug 30, 9:31 AM
Unknown Object (File)
Fri, Aug 30, 9:31 AM
Unknown Object (File)
Fri, Aug 30, 9:31 AM
Unknown Object (File)
Fri, Aug 30, 9:30 AM
Unknown Object (File)
Fri, Aug 30, 9:30 AM
Unknown Object (File)
Tue, Aug 27, 5:14 AM
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.