BBS:      TELESC.NET.BR
Assunto:  src/xpdev/ini_file.c
De:       Rob Swindell (on Windows 11)
Data:     Wed, 27 May 2026 22:24:10 -0700
-----------------------------------------------------------
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.
n
---
  mSynchronetn  hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net

-----------------------------------------------------------
[Voltar]