Files
zipgandDBX Agent fbb588eecb fix(windows): keep the 8 MiB main-thread stack on legacy builds (0xC00000FD) (#13672)
* fix(windows): keep the 8 MiB main-thread stack on legacy builds

Windows 7 / Server 2012 R2 users on 0.6.58 report the WER dialog "DBX 已停止
工作" with APPCRASH signature dbx.exe / faulting module dbx.exe / exception
c00000fd (STATUS_STACK_OVERFLOW) as soon as they click a database connection
(MySQL, Oracle 11 and Dameng 8 all reproduce), while 0.6.55 is fine.

Root cause: .cargo/config.toml raises the main-thread stack to 8 MiB with
-C link-arg=/STACK:8388608, but Cargo ignores target rustflags whenever a
RUSTFLAGS env var is set. The Win7/Server 2012 R2 jobs set RUSTFLAGS for the
static CRT, so the legacy PE kept the 1 MiB linker default while the standard
Windows build kept 8 MiB. The 0.6.56 connect-path rewrite made the DB query
stack deeper, and the legacy 1 MiB stack overflows on connect.

- repeat -C link-arg=/STACK:8388608 in every workflow RUSTFLAGS that links a
  Windows PE (release Win7 app + dbx-web, CI Win7/standard/duckdb jobs, SQL
  Server 2000 Win7 test build)
- add the same flag to the legacy target table in .cargo/config.toml for local
  builds
- fail the Win7 PE audit when SizeOfStackReserve drops below 8 MiB, so this
  cannot silently regress again
- assert the flag stays in the workflows from ci-workflow.test.mjs

* chore(clippy): indent the MariaDB KB doc continuation

main's 7958f7ad9 added an unindented continuation line after a doc list
item, so rust-fmt-clippy now fails on main and on every PR with
clippy::doc_lazy_continuation under -D warnings. Indent the line the way
the lint documents so the build can go green.

---------

Co-authored-by: DBX Agent <agent@dbx.local>
2026-10-27 20:19:24 +08:00
..