BR3079550: NASM crash on run-time for OMF output format

We could have accessed malloc'ed data on external symbols
in obj and ieee output formats. Fix it by using nasm_zalloc.

Reported-by: Jiri Malak
Patch-by: Jiri Malak
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
This commit is contained in:
Cyrill Gorcunov 2010-10-02 01:21:00 +04:00
parent d4ddfac484
commit 9e8f0ac460
2 changed files with 4 additions and 4 deletions

View File

@ -372,7 +372,7 @@ static void ieee_deflabel(char *name, int32_t segment,
i = segment / 2;
eb = ebhead;
if (!eb) {
eb = *ebtail = nasm_malloc(sizeof(*eb));
eb = *ebtail = nasm_zalloc(sizeof(*eb));
eb->next = NULL;
ebtail = &eb->next;
}
@ -380,7 +380,7 @@ static void ieee_deflabel(char *name, int32_t segment,
if (eb && eb->next)
eb = eb->next;
else {
eb = *ebtail = nasm_malloc(sizeof(*eb));
eb = *ebtail = nasm_zalloc(sizeof(*eb));
eb->next = NULL;
ebtail = &eb->next;
}

View File

@ -993,7 +993,7 @@ static void obj_deflabel(char *name, int32_t segment,
i = segment / 2;
eb = ebhead;
if (!eb) {
eb = *ebtail = nasm_malloc(sizeof(*eb));
eb = *ebtail = nasm_zalloc(sizeof(*eb));
eb->next = NULL;
ebtail = &eb->next;
}
@ -1001,7 +1001,7 @@ static void obj_deflabel(char *name, int32_t segment,
if (eb && eb->next)
eb = eb->next;
else {
eb = *ebtail = nasm_malloc(sizeof(*eb));
eb = *ebtail = nasm_zalloc(sizeof(*eb));
eb->next = NULL;
ebtail = &eb->next;
}