From 7a1023185854d4a3d23ed8618e3359daa9a03104 Mon Sep 17 00:00:00 2001 From: Arin Alexander Date: Tue, 22 Mar 2016 15:49:35 +0300 Subject: [PATCH] Zint has been pached for MSVC2010 --- 3rdparty/zint-2.4.4/backend/aztec.c | 10 ++++++---- 3rdparty/zint-2.4.4/backend/gridmtx.c | 3 ++- 3rdparty/zint-2.4.4/backend/library.c | 7 +++++-- 3rdparty/zint-2.4.4/backend/qr.c | 17 ++++++++++++----- 4 files changed, 25 insertions(+), 12 deletions(-) diff --git a/3rdparty/zint-2.4.4/backend/aztec.c b/3rdparty/zint-2.4.4/backend/aztec.c index 6675ee4..a93eba7 100644 --- a/3rdparty/zint-2.4.4/backend/aztec.c +++ b/3rdparty/zint-2.4.4/backend/aztec.c @@ -658,9 +658,11 @@ int aztec(struct zint_symbol *symbol, unsigned char source[], int length) int comp_loop = 4; #ifndef _MSC_VER - unsigned char local_source[length + 1]; + unsigned char local_source[length + 1]; #else - unsigned char* local_source = (unsigned char*)_alloca(length + 1); + unsigned int* data_part; + unsigned int* ecc_part; + unsigned char* local_source = (unsigned char*)_alloca(length + 1); #endif memset(binary_string,0,20000); @@ -996,8 +998,8 @@ int aztec(struct zint_symbol *symbol, unsigned char source[], int length) #ifndef _MSC_VER unsigned int data_part[data_blocks + 3], ecc_part[ecc_blocks + 3]; #else - unsigned int* data_part = (unsigned int*)_alloca((data_blocks + 3) * sizeof(unsigned int)); - unsigned int* ecc_part = (unsigned int*)_alloca((ecc_blocks + 3) * sizeof(unsigned int)); + data_part = (unsigned int*)_alloca((data_blocks + 3) * sizeof(unsigned int)); + ecc_part = (unsigned int*)_alloca((ecc_blocks + 3) * sizeof(unsigned int)); #endif /* Copy across data into separate integers */ memset(data_part,0,(data_blocks + 2)*sizeof(int)); diff --git a/3rdparty/zint-2.4.4/backend/gridmtx.c b/3rdparty/zint-2.4.4/backend/gridmtx.c index 8622817..47f904d 100644 --- a/3rdparty/zint-2.4.4/backend/gridmtx.c +++ b/3rdparty/zint-2.4.4/backend/gridmtx.c @@ -920,6 +920,7 @@ int grid_matrix(struct zint_symbol *symbol, unsigned char source[], int length) #else int* utfdata = (int *)_alloca((length + 1) * sizeof(int)); int* gbdata = (int *)_alloca((length + 1) * sizeof(int)); + char* grid; #endif for(i = 0; i < 1460; i++) { @@ -1041,7 +1042,7 @@ int grid_matrix(struct zint_symbol *symbol, unsigned char source[], int length) #ifndef _MSC_VER char grid[size * size]; #else - char* grid = (char *)_alloca((size * size) * sizeof(char)); + grid = (char *)_alloca((size * size) * sizeof(char)); #endif for(x = 0; x < size; x++) { diff --git a/3rdparty/zint-2.4.4/backend/library.c b/3rdparty/zint-2.4.4/backend/library.c index dd173a1..f769a46 100644 --- a/3rdparty/zint-2.4.4/backend/library.c +++ b/3rdparty/zint-2.4.4/backend/library.c @@ -578,7 +578,10 @@ int reduced_charset(struct zint_symbol *symbol, unsigned char *source, int lengt int ZBarcode_Encode(struct zint_symbol *symbol, unsigned char *source, int length) { - int error_number, error_buffer, i; +#ifdef _MSC_VER + unsigned char* local_source; +#endif + int error_number, error_buffer, i; error_number = 0; if(length == 0) { @@ -596,7 +599,7 @@ int ZBarcode_Encode(struct zint_symbol *symbol, unsigned char *source, int lengt #ifndef _MSC_VER unsigned char local_source[length + 1]; #else - unsigned char* local_source = (unsigned char*)_alloca(length + 1); + local_source = (unsigned char*)_alloca(length + 1); #endif /* First check the symbology field */ diff --git a/3rdparty/zint-2.4.4/backend/qr.c b/3rdparty/zint-2.4.4/backend/qr.c index bfe0f13..23b4743 100644 --- a/3rdparty/zint-2.4.4/backend/qr.c +++ b/3rdparty/zint-2.4.4/backend/qr.c @@ -1004,6 +1004,9 @@ int qr_code(struct zint_symbol *symbol, unsigned char source[], int length) int jisdata[length + 1]; char mode[length + 1]; #else + int* datastream; + int* fullstream; + unsigned char* grid; int* utfdata = (int *)_alloca((length + 1) * sizeof(int)); int* jisdata = (int *)_alloca((length + 1) * sizeof(int)); char* mode = (char *)_alloca(length + 1); @@ -1115,8 +1118,8 @@ int qr_code(struct zint_symbol *symbol, unsigned char source[], int length) int datastream[target_binlen + 1]; int fullstream[qr_total_codewords[version - 1] + 1]; #else - int* datastream = (int *)_alloca((target_binlen + 1) * sizeof(int)); - int* fullstream = (int *)_alloca((qr_total_codewords[version - 1] + 1) * sizeof(int)); + datastream = (int *)_alloca((target_binlen + 1) * sizeof(int)); + fullstream = (int *)_alloca((qr_total_codewords[version - 1] + 1) * sizeof(int)); #endif qr_binary(datastream, version, target_binlen, mode, jisdata, length, gs1, est_binlen); @@ -1126,7 +1129,7 @@ int qr_code(struct zint_symbol *symbol, unsigned char source[], int length) #ifndef _MSC_VER unsigned char grid[size * size]; #else - unsigned char* grid = (unsigned char *)_alloca((size * size) * sizeof(unsigned char)); + grid = (unsigned char *)_alloca((size * size) * sizeof(unsigned char)); #endif for(i = 0; i < size; i++) { @@ -1999,7 +2002,11 @@ int microqr(struct zint_symbol *symbol, unsigned char source[], int length) int binary_count[4]; int ecc_level, autoversion, version; int n_count, a_count, bitmask, format, format_full; - + +#ifdef _MSC_VER + unsigned char* grid; +#endif + if(length > 35) { strcpy(symbol->errtxt, "Input data too long"); return ERROR_TOO_LONG; @@ -2169,7 +2176,7 @@ int microqr(struct zint_symbol *symbol, unsigned char source[], int length) #ifndef _MSC_VER unsigned char grid[size * size]; #else - unsigned char* grid = (unsigned char *)_alloca((size * size) * sizeof(unsigned char)); + grid = (unsigned char *)_alloca((size * size) * sizeof(unsigned char)); #endif for(i = 0; i < size; i++) {