Fix bound checking dlcose problem
commitaaec564a82a152563f639c4a68552b51e8ad806f
authorherman ten brugge <hermantenbrugge@home.nl>
Thu, 19 May 2022 05:40:14 +0000 (19 07:40 +0200)
committerherman ten brugge <hermantenbrugge@home.nl>
Thu, 19 May 2022 05:40:14 +0000 (19 07:40 +0200)
treee5163678f12643ef9c019ac528ca453b82ab3513
parent4c82b003420fabbb95e077866784badc1a49189b
Fix bound checking dlcose problem

The main problem is that an application called dlclose and then
had a bound checking problem. The list of dll's in tccrun was
not updated an caused a crash.
Also fixed some minor other things.

tccdbg.c:
- Allow filenames like ../file.c
- Rewrite DWARF_ABBREV_MEMBER_BF/DWARF_ABBREV_MEMBER a bit

tccelf.c:
- Add call to __bt_exit. This solves problem when dlclose is called

tccrun.c:
- Rewrite rt_printline_dwarf a litlle to use opcode_length correctly
- Do not stop at DW_LNE_end_sequence
- Fix DW_LNE_set_address again. Works now in *bsd.

lib/bt-exe.c lib/bt-dll.c:
- Add __bt_exit/__bound_exit_dll

lib/bcheck.c:
- Add __bound_exit_dll
lib/bcheck.c
lib/bt-dll.c
lib/bt-exe.c
tccdbg.c
tccelf.c
tccrun.c