Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bounty offered] Fix QR flakiness #306

Open
za3k opened this issue Apr 9, 2025 · 0 comments
Open

[Bounty offered] Fix QR flakiness #306

za3k opened this issue Apr 9, 2025 · 0 comments

Comments

@za3k
Copy link
Contributor

za3k commented Apr 9, 2025

See: za3k/qr-backup#69 to collect the bounty. this is a cross-post.

there is exactly one widely-available command-line program in linux which reads QR codes, zbar. it has a problem -- it sometimes fails, even on digitally generated QR codes. the failure rate for digital codes should be 0%, because they have exactly all the right data.

at least 1/3 of bugs in the zbar issue tracker are about this. almost all of the bugs in the tracker are about QR codes.

fixing this problem will make qr-backup measurably better. it will also make QR reading better on linux in general, for a lot of people.

i suspect it will fix another 1/3 of the bugs in the zbar tracker, even though they are not explicitly about digitally-generated QR codes.


zbar sometimes fails (>0.1% of the time) to scan a QR code. Fix this, changing the code of zbar to be correct, and get zbar to have a 0% error rate for digitally-generated images of QR codes.

Debugging tips:

  • Set DEBUG_SVG and recompile
  • Set QR_DEBUG, after merging the code in image.zip (source: Timothy Terriberry)

Reproduction case: https://user-images.githubusercontent.com/64830812/127732474-ff7fa13e-d913-4926-8361-ace8cf14d1f8.png

Code link: https://github.com/mchehab/zbar/tree/master/zbar/qrcode

Bounty: 10 hours of my time in trade

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant