View Issue Details

IDProjectCategoryView StatusLast Update
0000570LDMud 3.3Implementationpublic2018-01-29 22:57
Reporterzesstra Assigned Tozesstra  
Status resolvedResolutionfixed 
Fixed in Version3.3.718 
Summary0000570: fatal() fails to dump a core if the master is not loaded
Descriptionfatal() calls shutdown() in the master and in that process assert_master_ob_loaded() is called. If there is no master object yet, exit(1) is called. In that way, a core dump is not available and to debug it, you have to reproduce with breakpoints at the right places in the debugger. I think, it would make more sense to call fatal() (again). fatal() will anyway detect that it was called recursively and directly dump a core by calling dump_core() without doing anything else which is the desired behaviour I guess.

Or do you see a special reason why the driver should exit normally in this case? After all some part of the driver called fatal()... (In my case it was called from slaballoc.c because of a double free.)
TagsNo tags attached.



2008-12-14 17:35

administrator   ~0000819

r2448 replaces the call to exit() by a call to fatal().

Issue History

Date Modified Username Field Change
2008-09-10 15:54 zesstra New Issue
2008-12-14 17:35 zesstra Note Added: 0000819
2008-12-14 17:35 zesstra Assigned To => zesstra
2008-12-14 17:35 zesstra Status new => resolved
2008-12-14 17:35 zesstra Resolution open => fixed
2008-12-14 17:35 zesstra Fixed in Version => 3.3.718
2010-11-16 10:42 zesstra Source_changeset_attached => ldmud.git master fefd0966
2018-01-29 19:59 zesstra Source_changeset_attached => ldmud.git master fefd0966
2018-01-29 22:57 zesstra Source_changeset_attached => ldmud.git master fefd0966