diff options
author | Jeremy Allison <jra@samba.org> | 2000-05-01 19:43:50 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2000-05-01 19:43:50 +0000 |
commit | 3b25f7368be3877e9ad27498bc9451ec88d4b07f (patch) | |
tree | 730133b3ce701f5ef5a81d1060eccd5f27468115 /source/utils/make_smbcodepage.c | |
parent | c40e0a5d3bfa11cb3699bdba1ded91515cabaf5d (diff) | |
download | samba-3b25f7368be3877e9ad27498bc9451ec88d4b07f.tar.gz samba-3b25f7368be3877e9ad27498bc9451ec88d4b07f.tar.xz samba-3b25f7368be3877e9ad27498bc9451ec88d4b07f.zip |
locking/posix.c: Fixed double-free nasty crash bug found by insure.
utils/make_smbcodepage.c:
utils/make_unicodemap.c: Insure 'make install' fixes.
Jeremy.
Diffstat (limited to 'source/utils/make_smbcodepage.c')
-rw-r--r-- | source/utils/make_smbcodepage.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/utils/make_smbcodepage.c b/source/utils/make_smbcodepage.c index f0b68a7baea..1bd3edc2631 100644 --- a/source/utils/make_smbcodepage.c +++ b/source/utils/make_smbcodepage.c @@ -167,6 +167,7 @@ static int do_compile(int codepage, char *input_file, char *output_file) FILE *fp = NULL; size_t size = 0; char *buf = NULL; + char *orig_buf = NULL; char output_buf[CODEPAGE_HEADER_SIZE + 4 * MAXCODEPAGELINES]; int num_lines = 0; int i = 0; @@ -223,6 +224,8 @@ The maximum size I will believe is 100k.\n", prog_name, size); num_lines = clean_data( &buf, &size); + orig_buf = buf; /* Save for free(). */ + /* There can be a maximum of MAXCODEPAGELINES lines. */ if(num_lines > MAXCODEPAGELINES) { @@ -300,6 +303,7 @@ definition file. File %s has %d.\n", prog_name, MAXCODEPAGELINES, input_file, nu fclose(fp); + free(orig_buf); return 0; } |