Menu

#355 Aztec Regression Bug

2.0
closed
nobody
None
2 days ago
3 days ago
No

Hi everyone,

I finally got some time to prepare for a long overdue Zint update, and I might have found a regression bug. It began with the update on 2026-03-11 15:48:24. I only shows the defect barcode on a 64 Bit ARM platform, and I cannot yet reproduce it on my laptop.

I have incuded an image how it looks on ARM.

Here is the code that I use to provoke it.

#include <stdio.h>
#include <string.h>
#include "zint.h"


// gcc main.c -O3 -I ./backend/ zint.a -o test -lm -lpng

int main()
{
    char Send[2000] = {0};
    char Data[] = 
"\x5B\x29\x3E\x7E\x44\x33\x30\x30\x31\x7E\x44\x32\x39\x30\x32\x38\x39\x30\x37\x35\x20\x20\x20\x20\x7E\x44\x32\x39\x20\x20\x20\x7E\x44\x32\x39\x20\x20\x20\x7E\x44\x32\x39\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x47\x45\x4F\x50\x7E\x44\x32\x39\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x30\x30\x31\x7E\x44\x32\x39\x30\x30\x30\x35\x37\x37\x30\x32\x32\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x4E\x7E\x44\x32\x39\x4D\x75\x73\x74\x65\x72\x73\x74\x72\x61\x73\x73\x65\x20\x31\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x55\x6C\x6D\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x4D\x61\x78\x20\x4D\x75\x73\x74\x65\x72\x6D\x61\x6E\x6E\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x7E\x44\x33\x30\x30\x37\x7E\x44\x32\x39\x47\x30\x32\x7E\x44\x32\x39\x30\x7E\x44\x32\x39\x30\x7E\x44\x32\x39\x30\x7E\x44\x32\x39\x7E\x44\x33\x31\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x7E\x44\x33\x31\x30\x36\x37\x30\x34\x31\x33\x38\x38\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x7E\x44\x33\x31\x7E\x44\x33\x31\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x7E\x44\x33\x31\x7E\x44\x33\x31\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x32\x39\x30\x30\x30\x30\x32\x30\x34\x33\x33\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x4B\x47\x4F\x06\x30\x37\x32\x30\x32\x31\x00\x36\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x32\x39\x4B\x47\x4F\x06\x30\x37\x32\x30\x32\x31\x00\x36\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x33\x30\x30\x37\x7E\x44\x32\x39\x53\x30\x31\x30\x7E\x44\x32\x39\x58\x58\x58\x58\x20\x58\x58\x58\x58\x58\x58\x58\x58\x20\x58\x58\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x7E\x44\x33\x31\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x58\x58\x20\x58\x58\x58\x20\x58\x58\x58\x58\x58\x58\x58\x58\x58\x20\x34\x30\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x7E\x44\x33\x31\x58\x58\x58\x58\x58\x58\x58\x58\x58\x58\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7E\x44\x33\x31\x38\x39\x35\x32\x30\x20\x20\x20\x20\x7E\x44\x33\x31\x32\x37\x36\x7E\x44\x33\x31\x7E\x44\x33\x30\x30\x37\x7E\x44\x32\x39\x53\x30\x32\x30\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x32\x39\x7E\x44\x33\x30\x30\x37\x7E\x44\x32\x39\x53\x30\x33\x30\x7E\x44\x32\x39\x7E\x44\x32\x39";

    memcpy(Send,Data,sizeof(Data));
    int BinarySize = sizeof(Data);

    struct zint_symbol *Symbol = ZBarcode_Create();
    Symbol->symbology = BARCODE_AZTEC;
    Symbol->input_mode |= DATA_MODE | FAST_MODE;
    Symbol->scale = 1.5;
    ZBarcode_Encode_and_Print(Symbol,(unsigned char *)Send,BinarySize,0);
}
1 Attachments

Discussion

  • codemonkey82

    codemonkey82 - 3 days ago

    I will keep trying to reproduce it on my laptop.

    Some platform info for the ARM:

    CHAR_MIN: 0
    char size = 1
    short size = 2
    int size = 4
    long size = 8
    long long size = 8

     
  • Git Lost

    Git Lost - 2 days ago

    Thanks very much codemonkey, should be fixed with commit [fdaed0] if you could give it a whirl.

    Must add ARM testing to the CI....

     

    Related

    Commit: [fdaed0]

  • codemonkey82

    codemonkey82 - 2 days ago

    Brilliant, it works! That was really fast. I thought this one would be hard because of the different platforms. The ticket can be closed!

     
    • Git Lost

      Git Lost - 2 days ago

      Good stuff, thanks! Added arm64 build to the CI with commit [aadd94] . (Re closing, I usually leave issues open until the release that fixes them is done.)

       

      Related

      Commit: [aadd94]

  • Git Lost

    Git Lost - 2 days ago
    • status: open --> closed
     
  • Git Lost

    Git Lost - 2 days ago

    Actually, as this was introduced after the last release, it does make sense to close it now. Thanks again!

     

Log in to post a comment.

Auth0 Logo