diff options
| author | grischka <grischka> | 2008-05-11 00:11:52 +0200 |
|---|---|---|
| committer | grischka <grischka> | 2008-09-12 02:36:01 +0200 |
| commit | 1300cec38cc48405715416f107a65a4d7d608767 (patch) | |
| tree | 1d610cd62a50db42cce9830e444d03d0f7012f66 /tcc.c | |
| parent | f9bf48d6433a0e9a317fe8beba9c8daf429ff6ed (diff) | |
| download | tinycc-1300cec38cc48405715416f107a65a4d7d608767.tar.gz tinycc-1300cec38cc48405715416f107a65a4d7d608767.tar.bz2 | |
free_section bugfix
Diffstat (limited to 'tcc.c')
| -rw-r--r-- | tcc.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -1284,9 +1284,9 @@ Section *new_section(TCCState *s1, const char *name, int sh_type, int sh_flags) static void free_section(Section *s) { - if (s->link && 0 == s->link->sh_num) + if (s->link && (s->link->sh_flags & SHF_PRIVATE)) free_section(s->link); - if (s->hash && 0 == s->hash->sh_num) + if (s->hash && (s->link->sh_flags & SHF_PRIVATE)) s->hash->link = NULL, free_section(s->hash); tcc_free(s->data); tcc_free(s); |
