Skip to content

Severe UI texture corruption on Galaxy A55/Xclipse 530 with DXVK free-list errors #11

Description

@foodmaher

Prerequisites

  • I have searched for similar issues and confirmed this is not a duplicate

Game Version

  • Command & Conquer Generals
  • Command & Conquer Generals: Zero Hour
  • Other (please specify below)

Operating System

  • macOS
  • Linux
  • Windows
  • Other (please specify below)

Bug Description

Android 15

The game develops severe graphical corruption in menus and UI elements while running on a Samsung Galaxy A55.

generalszh-log.txt

The corruption includes:

  • Black rectangles appearing over menu elements
  • Menu backgrounds and logos being duplicated or displayed in the wrong locations
  • Options-menu elements overlapping each other
  • Corrupted command bar and tooltip rendering
  • UI textures from previous screens remaining visible on later screens

Gameplay initially renders correctly, but the graphical corruption appears after navigating between menus, starting a skirmish game, and opening the in-game Options menu.

The engine log repeatedly reports DXVK resource allocator corruption:

err: DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err: DxvkResourceAllocationPool: corrupted free list head 0xb40000734816a87f, abandoning chain

DEBUG: Shell::push() called with filename='Menus/SkirmishGameOptionsMenu.wnd'
DEBUG: Shell::push() marked as pending, will load 'Menus/SkirmishGameOptionsMenu.wnd' next frame
DEBUG: Shell::update() - Processing pending push: 'Menus/SkirmishGameOptionsMenu.wnd'
DEBUG: Shell::doPush() called with layoutFile='Menus/SkirmishGameOptionsMenu.wnd'
DEBUG: About to call TheWindowManager->winCreateLayout('Menus/SkirmishGameOptionsMenu.wnd')
DEBUG: winCreateLayout returned: 0xb4000072483c0a60
DEBUG: Shell::doPush() completed successfully
DEBUG: Shell::update() - Push completed

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb40000734816a87f, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb4000073483cce3f, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb40000734814537f, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb4000073483c473f, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb400007348499e3f, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb40000734850683f, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb4000073485383ff, abandoning chain

DEBUG: SDL3GameEngine::reset()
INFO: OSDisplaySetBusyState(false, false) - Linux stub
INFO: OSDisplaySetBusyState(true, true) - Linux stub

[GX-ISSUE144] Tooltip show command=NonCommand_Options
textLabel=CONTROLBAR:Options
descriptionLabel=CONTROLBAR:OptionsDescription

[GX-ISSUE144] Tooltip populate command=NonCommand_Options
type=0
textLabel=CONTROLBAR:Options
descriptionLabel=CONTROLBAR:OptionsDescription

INFO: OSDisplaySetBusyState(false, false) - Linux stub

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb4000073481ab13f, abandoning chain

INFO: OSDisplaySetBusyState(true, true) - Linux stub

DEBUG-UI: MainMenuSystem GBM_SELECTED control='MainMenu.wnd:ButtonExit' buttonPushed=0

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb4000073485ffcff, abandoning chain

err:   DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err:   DxvkResourceAllocationPool: corrupted free list head 0xb4000073487921ff, abandoning chain

INFO: OSDisplaySetBusyState(false, false) - Linux stub
DEBUG: SDL3GameEngine::reset()
INFO: OSDisplaySetBusyState(false, false) - Linux stub
INFO: SDL3GameEngine::execute() - exited main loop
DEBUG: SDL3GameEngine::~SDL3GameEngine() destroyed
WARNING: DX8WebBrowser::Shutdown() - Linux stub
INFO: GameMain() returned with code 0

Exiting with code 0




### Reproduction Steps


## Reproduction Steps

```markdown
1. Launch Command & Conquer Generals: Zero Hour.
2. Wait for the main menu and shell-map background to load.
3. Open Solo Play.
4. Open the Skirmish menu.
5. Start a skirmish game.
6. Select a worker/dozer and open the building command menu.
7. Hover over or select several construction buttons so that tooltips are displayed.
8. Open the in-game Options menu.
9. Return to the game and repeat opening and closing the Options menu.
10. Return to the main menu or open the Exit Game confirmation window.

After these actions, UI textures begin displaying as black blocks, duplicated images, overlapping menu graphics, or textures from previous screens.

The log begins showing messages similar to:

```text
DxvkResourceAllocationPool: corrupted free list head ..., abandoning chain

<img width="1600" height="720" alt="Image" src="https://github.com/user-attachments/assets/10d70bda-5347-492f-80df-125f2e58ff32" />

### Additional Context


## Additional Context

```markdown
Screenshots demonstrate:

1. Gameplay initially rendering correctly.
2. The in-game pause menu rendering correctly.
3. Severe corruption after opening the Options screen.
4. Duplicated and misplaced menu textures on the main-menu Exit confirmation screen.

Relevant log excerpts:

```text
DEBUG: Shell::push() called with filename='Menus/SkirmishGameOptionsMenu.wnd'
DEBUG: Shell::doPush() completed successfully

err: DxvkResourceAllocationPool: corrupted free list head 0x2000000001, abandoning chain
err: DxvkResourceAllocationPool: corrupted free list head 0xb40000734816a87f, abandoning chain

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions