Commit f1868d7
committed
fix(sync-merge): Correct post-merge issues and ensure both games build
Fixes applied after thesuperhackers sync merge:
1. Registry type fixes (DWORD vs unsigned long)
- registry.cpp used unsigned long for type params
- Linux compat stub expects DWORD (unsigned int)
- Convert to DWORD for consistency across all platforms
2. Generals dx8wrapper frame stats incompatibility
- Upstream PR TheSuperHackers#2507 refactored to struct-based frame statistics
- GeneralsMD (Zero Hour) uses single pointers: compatible
- Generals base game uses MAX_VERTEX_STREAMS arrays: incompatible
- Solution: Keep Generals on main version, accept struct for Zero Hour only
- Rationale: Generators is secondary target; avoid risky refactors
Build results (macOS validation):
- CMake configure: ✓ SUCCESS
- GeneralsXZH (Zero Hour): ✓ SUCCESS
- GeneralsX (Generals): ✓ SUCCESS
All binaries generated. Cross-platform stack (SDL3/DXVK/OpenAL) functional.1 parent 929bcf7 commit f1868d7
3 files changed
Lines changed: 527 additions & 147 deletions
File tree
- Core/Libraries/Source/WWVegas/WWDownload
- Generals/Code/Libraries/Source/WWVegas/WW3D2
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
32 | | - | |
| 31 | + | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
54 | | - | |
55 | | - | |
| 54 | + | |
| 55 | + | |
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
77 | | - | |
| 76 | + | |
| 77 | + | |
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| |||
88 | 88 | | |
89 | 89 | | |
90 | 90 | | |
| 91 | + | |
91 | 92 | | |
92 | 93 | | |
93 | 94 | | |
94 | 95 | | |
95 | | - | |
96 | | - | |
| 96 | + | |
| 97 | + | |
97 | 98 | | |
98 | 99 | | |
99 | 100 | | |
| |||
0 commit comments