View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0004987 | NoesisGUI | C++ SDK | public | 2026-04-14 19:43 | 2026-04-21 09:30 |
| Reporter | hugo_lucky | Assigned To | hcpizzi | ||
| Priority | normal | Severity | crash | ||
| Status | resolved | Resolution | fixed | ||
| Product Version | 3.2.12 | ||||
| Target Version | 3.2.13 | Fixed in Version | 3.2.13 | ||
| Summary | 0004987: NullRHI crash in NoesisInstance — FNoesisPosVS shader assert (UE 5.7, NoesisGUI 3.2.8) | ||||
| Description | Hi Noesis team, We're running into a fatal crash when launching a packaged UE 5.7 build with -NullRHI (headless mode for automated testing on CI). The crash happens the first time any Noesis UI widget initializes. Error:
Callstack:
Root cause: Why this matters: Our local fix (2 edits in NoesisInstance.cpp): We applied these changes locally and tagged them with [NullRHI Patch] comments. Both are minimal and non-breaking for the normal rendering path. Edit 1 — Init guard (~line 654 in InitInstance): Wrapped the ENQUEUE_RENDER_COMMAND(FNoesisInstance_InitRenderer) block in a CanEverRender() check. When NullRHI is active, RenderDevice stays nullptr. The downstream render methods (UpdateRenderTree, RenderOffscreen, RenderOnscreen) already null-check RenderDevice and early-return, so this is safe. // Before:
// After:
Edit 2 — Destructor guard (~line 163 in ~FNoesisSlateElement): Since Renderer->Init() is never called under NullRHI, calling Renderer->Shutdown() in the destructor is unsafe. We guard it behind RenderDevice != nullptr which acts as a reliable proxy for "was the renderer initialized?". // Before:
// After:
What still works under NullRHI with this patch: XAML tree creation, layout, and measure passes No visual rendering output Thanks! | ||||
| Platform | Any | ||||
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2026-04-14 19:43 | hugo_lucky | New Issue | |
| 2026-04-15 10:57 | sfernandez | Assigned To | => hcpizzi |
| 2026-04-15 10:57 | sfernandez | Status | new => assigned |
| 2026-04-15 10:57 | sfernandez | Product Version | => 3.2.12 |
| 2026-04-15 10:57 | sfernandez | Target Version | => 3.2.13 |
| 2026-04-15 10:57 | sfernandez | Description Updated | |
| 2026-04-15 10:58 | sfernandez | Description Updated | |
| 2026-04-15 10:58 | sfernandez | Description Updated | |
| 2026-04-21 09:30 | hcpizzi | Status | assigned => resolved |
| 2026-04-21 09:30 | hcpizzi | Resolution | open => fixed |
| 2026-04-21 09:30 | hcpizzi | Fixed in Version | => 3.2.13 |
| 2026-04-21 09:30 | hcpizzi | Note Added: 0012235 |