Opened 19 years ago
Last modified 18 years ago
#103 closed defect
Exit list handlers registered from dll are not released on DosFreeModule — at Initial Version
Reported by: | Yuri Dario | Owned by: | bird |
---|---|---|---|
Priority: | normal | Milestone: | libc-0.6.2 |
Component: | libc-backend | Version: | 0.6 |
Severity: | normal | Keywords: | dlclose DosFreeModule atexit on_exit |
Cc: |
Description
Scenario: a DLL register an exit list function using atexit() and the dll is loaded using DosLoadModule; when the executable calls DosFreeModule, the exit list handler is not executed nor removed from the list of callbacks. When the executable terminates, it tries to call the dll exit callback and a crash occurs since the dll code is already unloaded from memory.
This doesn't happen when the dll is linked at compile time.
Testcase attached.
Note:
See TracTickets
for help on using tickets.