Skip to content

[sync] TheSuperHackers upstream sync 2026-04-23#101

Merged
fbraz3 merged 26 commits into
mainfrom
thesuperhackers-sync-04-23-2026
Apr 24, 2026
Merged

[sync] TheSuperHackers upstream sync 2026-04-23#101
fbraz3 merged 26 commits into
mainfrom
thesuperhackers-sync-04-23-2026

Conversation

@fbraz3

@fbraz3 fbraz3 commented Apr 23, 2026

Copy link
Copy Markdown
Owner

Summary

Syncs upstream TheSuperHackers/GeneralsGameCode into GeneralsX — merge commit 40aeb17c4 on branch thesuperhackers-sync-04-23-2026.

This sync brings upstream bug fixes, code unification (unify commits that move files from Generals/GeneralsMD into Core), and tool additions.


Conflict Resolution

Five conflicts were resolved during the merge:

1. Core/Libraries/Source/WWVegas/WW3D2/render2dsentence.cpp

  • Conflict: Upstream added a new Update_Current_Buffer function definition; GeneralsX already had a cross-platform version with FreeType support (// GeneralsX @build fbraz 11/02/2026).
  • Decision: Kept our cross-platform implementation, rejected the upstream duplicate.

2. Generals/Code/GameEngine/Source/Common/GlobalData.cpp

  • Conflict: HEAD had #ifndef _WIN32 / #include <filesystem> / #endif for non-Windows user data paths; upstream had #include "ww3d.h" and #include "texturefilter.h".
  • Decision: Additive merge — kept both include blocks to satisfy both needs.

3. Generals/Code/GameEngine/Include/GameClient/Display.h (unify move)

  • Conflict: Upstream's unify commit moved this file to Core/GameEngine/Include/GameClient/Display.h.
  • Decision: git rm the Generals copy; the Core version is now canonical.

4. Generals/Code/GameEngine/Source/GameClient/System/Image.cpp (unify move)

  • Conflict: Upstream's unify commit moved this file to Core/GameEngine/Source/GameClient/System/Image.cpp.
  • Decision: git rm the Generals copy; the Core version is now canonical.

5. scripts/tooling/cpp/maintenance/remove_return.py (new file)

  • Conflict: New file introduced by upstream — a Python utility to remove superfluous trailing return; statements.
  • Decision: Accepted from upstream as-is.

Full resolution plan: docs/WORKDIR/planning/PLAN-20260423_THESUPERHACKERS_SYNC_CONFLICT_RESOLUTION.md


Validation Checklist

macOS (Apple Silicon — ARM64)

  • Configure (cmake --preset macos-vulkan)
  • Build GeneralsXZH (1449/1450 targets)
  • Build GeneralsX (783/784 targets)
  • Deploy GeneralsXZH
  • Deploy GeneralsX

Linux (Deferred — macOS build machine)

  • Configure (linux64-deploy)
  • Build GeneralsXZH
  • Build GeneralsX

Runtime (Manual — Deferred)


Notes

  • Runtime headless smoke test exits with SIGSEGV during initSubsystem('TheRadar') — this is a pre-existing issue, not introduced by this sync. Investigation is tracked separately.
  • Linux validation is deferred to a Linux build machine.

bobtista and others added 25 commits April 16, 2026 19:59
…ackers#2514)

This increases the overall game performance by 20 to 50%
…ers-sync-04-23-2026

# Conflicts:
#	Core/Libraries/Source/WWVegas/WW3D2/render2dsentence.cpp
#	Generals/Code/GameEngine/Include/GameClient/Display.h
#	Generals/Code/GameEngine/Source/Common/GlobalData.cpp
#	Generals/Code/GameEngine/Source/GameClient/System/Image.cpp
#	scripts/tooling/cpp/maintenance/remove_return.py
@fbraz3 fbraz3 merged commit b8dca55 into main Apr 24, 2026
10 checks passed
@fbraz3 fbraz3 deleted the thesuperhackers-sync-04-23-2026 branch April 24, 2026 02:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants