Open rbur004 opened 8 years ago
sigh
I would like to keep the PGM parser as small as possible. I'll settle for ignoring that single comment in that single place. (Sure it doesn't catch all comments, but that change makes it slightly less wrong than it is now, and it fixes things for you.) I'd happily merge a PR with that regex change and a test covering a comment-bearing PGM file in spec/zbar/image_spec.rb
.
I found it when I manually converted screen shots, which are png files, to pgm, using Graphics Converter. I was testing that I was generating pgm correctly. The goal was to generate Y800, using Chunky-png, so a screen shot of a qrcode could be processed by zbar (which now works).
https://gist.github.com/rbur004/f3615da42dc163de83d7e9e1f386892d
In Image::from_pgm, the test for a valid pgm file is wrong.
The PGM spec says that any string starting with # is a comment. The test file I tried, failed to load, as it had a comment line between the P5 line, and the width line.
i.e. it looked like P5
test_qrcode.pgm
Would match this file, but shift $2 to $3, $3 to $4 and $4 to $5, even if there was no comment line. Of course, it is possible to have multiple comment lines, at any point, but having a comment after the P5 seems to be standard.