• src/doors/clans-src/src/door.c fight.c quests.c system.c

    From Deuc¿@VERT to Git commit to main/sbbs/master on Tue Oct 28 19:18:47 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/acfdd2f82af3bd893f217aa5
    Modified Files:
    src/doors/clans-src/src/door.c fight.c quests.c system.c
    Log Message:
    Handle libraries that call exit()

    OpenDoors will call exit() under you sometimes, and there's really
    no way to stop it. That means to clean up the semaphore, we need
    to use an atexit() handler.

    System_Close() already does everything we need, I just need to make
    sure nothing is calling exit() to avoid it now. :(

    So, I've split it into System_CloseAtExit() which should only be
    called from exit() and System_Close() which calls it. It tries to
    detect if exit() was called from System_CloseAtExit() and falls back
    to abort() with a diagnostic, since abort() is the thing most likely
    to flush buffers but not call atexit() handlers.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net