You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have encountered an error regarding the datamatrix code generation.
When trying to encode the string
002K6-24.BTPA.1
to datamatrix, the resulting code will actually encode
002K6-24.BTV82
This happens even with the most recent version of the code (datamatrix.php 1.0.008).
I won't expect a fix since this repo is obsolete but want to warn everybody that you cannot trust the datamatrix generator.
The error does not arise when the string after the last dot is slightly longer, i.e. 002K6-24.BTPA.10 but does trigger when the last part has different content and the content after the last dot is only one digit i.e. 002K6-24.AXERT.1
I believe this happens because the encoding changes when approaching the last dot, then the lookahead failes dues to some reason. I already tried replacing all "and" and "or" statements by && and || to avoid any kind of unintuitive operator precedence, but to no avail.
I also checked the symbattr table and it looks fine. I suspect the logic that messes this up to be located in the getHighLevelEncoding function.
If anybody has solved this riddle, I'd be glad to hear about it.
The text was updated successfully, but these errors were encountered:
I have encountered an error regarding the datamatrix code generation.
When trying to encode the string
002K6-24.BTPA.1
to datamatrix, the resulting code will actually encode
002K6-24.BTV82
This happens even with the most recent version of the code (datamatrix.php 1.0.008).
I won't expect a fix since this repo is obsolete but want to warn everybody that you cannot trust the datamatrix generator.
The error does not arise when the string after the last dot is slightly longer, i.e. 002K6-24.BTPA.10 but does trigger when the last part has different content and the content after the last dot is only one digit i.e. 002K6-24.AXERT.1
I believe this happens because the encoding changes when approaching the last dot, then the lookahead failes dues to some reason. I already tried replacing all "and" and "or" statements by && and || to avoid any kind of unintuitive operator precedence, but to no avail.
I also checked the symbattr table and it looks fine. I suspect the logic that messes this up to be located in the getHighLevelEncoding function.
If anybody has solved this riddle, I'd be glad to hear about it.
The text was updated successfully, but these errors were encountered: