• src/xpdev/ini_file.c

    From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Apr 21 11:36:26 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/fe41d2712cdeba67da9c5042
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    And fix some Bornings.
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Wed May 27 22:24:10 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/e3a18a8eeac56fb1577f60dc
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    xpdev: initialize p in iniParseSections() to silence /sdl C4703

    CI job 1507910 (windows-x86 [sbbs], commit 311ed074) failed with a hard
    C4703 ("potentially uninitialized local pointer variable 'p' used") at ini_file.c:1709 from sbbsexec.vcxproj, which uses the VS2017 toolset
    (MSVC 14.16) and /sdl (which elevates C4703 to error). The use is
    actually safe — the preceding `for (i = 0; list[i] != NULL; ++i)`
    loop runs at least once (list[0] != NULL was just checked) and sets
    p on every iteration — but the older toolset's per-TU data-flow can't
    see that proof. Whole-program optimization could; 311ed074 disabled
    WPO for Release|Win32, removing the cover.

    The faulty data-flow chain (early return + extended use of p outside
    the discovery loop) was introduced in 48edf261f0; initializing p at
    its declaration silences the warning and makes the invariant explicit
    at zero runtime cost.
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)