diff options
Diffstat (limited to 'src/libmach/sym.c')
-rw-r--r-- | src/libmach/sym.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/libmach/sym.c b/src/libmach/sym.c index a5cf0314..b5d3eacf 100644 --- a/src/libmach/sym.c +++ b/src/libmach/sym.c @@ -439,7 +439,7 @@ bynamecmp(const void *va, const void *vb) } int -syminit(Fhdr *hdr) +symopen(Fhdr *hdr) { int i; Symbol *r, *w, *es; @@ -474,8 +474,21 @@ syminit(Fhdr *hdr) return 0; } +void +symclose(Fhdr *hdr) +{ + _delhdr(hdr); + if(hdr->symclose) + hdr->symclose(hdr); + free(hdr->byname); + hdr->byname = nil; + free(hdr->sym); + hdr->sym = nil; + hdr->nsym = 0; +} + Symbol* -addsym(Fhdr *fp, Symbol *sym) +_addsym(Fhdr *fp, Symbol *sym) { Symbol *s; |