Skip to content

DebugTextSystem never draws the first queued message #3377

Description

@BenjaBobs

Release Type: GitHub source

Version: 4.4.0-dev at commit 2f6f79b4bc06654ae4b287455a7d7cc28b53410a

Platform(s): Linux/Vulkan

Describe the bug

DebugTextSystem never renders the first message in its overlay queue.
This means a single call to DebugTextSystem.Print(...) produces no visible text.
When several messages are queued, every message except the first one renders.
The draw loop starts at the last message but stops when the index reaches zero because its condition is index > 0.
The first message is also never expired or removed from the queue.

To Reproduce

  1. Call game.DebugTextSystem.Print("+", position) once per frame.
  2. Start the game.
  3. Observe that the text does not render.
  4. Queue another debug message in the same frame.
  5. Observe that the second message renders while the first one still does not.

Expected behavior

Every queued debug message should render, including the message at index zero.

Screenshots

Not applicable.

Log and callstacks

There is no exception or log output.

Additional context

Changing the reverse loop condition from index > 0 to index >= 0 makes it process every message while preserving safe removal during reverse iteration.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions