mirror of
https://github.com/zint/zint
synced 2024-11-16 20:57:25 +13:00
command line: avoid arg_opts buffer overflow if -d/i used without space before arg
This commit is contained in:
parent
e5c6f99b04
commit
980e039743
@ -240,7 +240,7 @@ INTERNAL int is_extendable(const int symbology) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Indicates which symbols can have composite 2D component data */
|
/* Indicates which symbols can have composite 2D component data */
|
||||||
INTERNAL int is_composite(int symbology) {
|
INTERNAL int is_composite(const int symbology) {
|
||||||
return symbology >= BARCODE_EANX_CC && symbology <= BARCODE_DBAR_EXPSTK_CC;
|
return symbology >= BARCODE_EANX_CC && symbology <= BARCODE_DBAR_EXPSTK_CC;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ extern "C" {
|
|||||||
INTERNAL int is_stackable(const int symbology);
|
INTERNAL int is_stackable(const int symbology);
|
||||||
INTERNAL int is_extendable(const int symbology);
|
INTERNAL int is_extendable(const int symbology);
|
||||||
INTERNAL int is_composite(const int symbology);
|
INTERNAL int is_composite(const int symbology);
|
||||||
INTERNAL int istwodigits(const unsigned char source[], int length, const int position);
|
INTERNAL int istwodigits(const unsigned char source[], const int length, const int position);
|
||||||
INTERNAL unsigned int decode_utf8(unsigned int *state, unsigned int *codep, const unsigned char byte);
|
INTERNAL unsigned int decode_utf8(unsigned int *state, unsigned int *codep, const unsigned char byte);
|
||||||
INTERNAL int utf8_to_unicode(struct zint_symbol *symbol, const unsigned char source[], unsigned int vals[], size_t *length, int disallow_4byte);
|
INTERNAL int utf8_to_unicode(struct zint_symbol *symbol, const unsigned char source[], unsigned int vals[], size_t *length, int disallow_4byte);
|
||||||
INTERNAL void set_minimum_height(struct zint_symbol *symbol, const int min_height);
|
INTERNAL void set_minimum_height(struct zint_symbol *symbol, const int min_height);
|
||||||
|
@ -515,9 +515,9 @@ int main(int argc, char **argv) {
|
|||||||
char *outfile_extension;
|
char *outfile_extension;
|
||||||
int data_arg_num = 0;
|
int data_arg_num = 0;
|
||||||
#ifndef _MSC_VER
|
#ifndef _MSC_VER
|
||||||
arg_opt arg_opts[(argc + 1) / 2];
|
arg_opt arg_opts[argc];
|
||||||
#else
|
#else
|
||||||
arg_opt *arg_opts = (arg_opt *) _alloca(((argc + 1) / 2) * sizeof(arg_opt));
|
arg_opt *arg_opts = (arg_opt *) _alloca(argc * sizeof(arg_opt));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
my_symbol = ZBarcode_Create();
|
my_symbol = ZBarcode_Create();
|
||||||
|
Loading…
Reference in New Issue
Block a user