• Re: src/doors/syncdoom/de

    From Darksix@VERT/DARKSIX to Rob Swindell (on Debian L on Monday, June 22, 2026 15:08:30
    https://gitlab.synchro.net/main/sbbs/-/commit/b2be5818e9fd2f72645dd686 Added Files: src/doors/syncdoom/deh_ammo.c deh_bexstr.c deh_cheat.c deh_defs.h
    deh_doom.c deh_frame.c deh_io.c deh_io.h deh_main.c deh_mapping.c deh_mapping.h deh_misc.c deh_ptr.c deh_sound.c deh_str.c deh_text.c deh_thing.c
    deh_weapon.c w_merge.c Modified Files: src/doors/syncdoom/CMakeLists.txt d_main.c deh_main.h deh_misc.h deh_str.h doomfeatures.h doomtype.h Log Message:
    syncdoom: vendor and enable DeHackEd (-deh) and WAD merge (-merge)

    Both were #undef'd in doomfeatures.h with their sources absent. Vendor the DeHackEd subsystem (deh_*.c/.h) and w_merge from Chocolate Doom and enable
    FEATURE_DEHACKED + FEATURE_WAD_MERGE. The deh sources came from a newer Chocolate Doom than our doomgeneric base, so a few adaptations were needed: -
    doomtype.h: add the PRINTF_ATTR / PRINTF_ARG_ATTR macros the newer headers use. - deh_io.c: this base has no M_fopen, and lumpinfo is an array of structs.
    - deh_main.c: drop DEH_AutoLoadPatches (needs the newer i_glob); and free the -deh filename only when it is the malloc'd copy -- this base's
    D_TryFindWADByName returns the original argv string when the file isn't found, and freeing that stack pointer aborted the door (free(): invalid pointer).
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net

    DEHacked is not considered useful anymore, it has been securely imported into WAD's themselves these days.

    ---
    þ Synchronet þ DaRKLoRD BBS