Zint has been pached for MSVC2010

This commit is contained in:
Arin Alexander 2016-03-22 15:49:35 +03:00
parent 58d2063438
commit 7a10231858
4 changed files with 25 additions and 12 deletions

View File

@ -660,6 +660,8 @@ int aztec(struct zint_symbol *symbol, unsigned char source[], int length)
#ifndef _MSC_VER
unsigned char local_source[length + 1];
#else
unsigned int* data_part;
unsigned int* ecc_part;
unsigned char* local_source = (unsigned char*)_alloca(length + 1);
#endif
@ -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));

View File

@ -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++) {

View File

@ -578,6 +578,9 @@ int reduced_charset(struct zint_symbol *symbol, unsigned char *source, int lengt
int ZBarcode_Encode(struct zint_symbol *symbol, unsigned char *source, int length)
{
#ifdef _MSC_VER
unsigned char* local_source;
#endif
int error_number, error_buffer, i;
error_number = 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 */

View File

@ -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++) {
@ -2000,6 +2003,10 @@ int microqr(struct zint_symbol *symbol, unsigned char source[], int length)
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++) {