Skip to content

[BUG - Release] "Access violation in UObjectBase::IsA via ForEachUObject/FindFirstOf" - reproducible, identical crash across sessions with different mods active #1328

Description

@hdwiggins

Summary

Repeated, fully reproducible access violation (0xc0000005, read) inside UObjectBase::IsA, reached via ForEachUObject --> FindFirstOf. Two separate crash sessions (with a different set of active Lua/DLL mods each time) produced an identical call stack down to the exact hex offset within UE4SS.dll, which I think rules out any single mod as the cause and points at the core object-iteration path.

Environment

  • UE4SS build: experimental, "Clean 146", commit dated 2026-06-11T22:16Z

Crash signature

  • Exception: c0000005 (access violation, read)
  • Faulting function: UE4SS!RC::Unreal::UObjectBase::IsA+0x1e (module offset 0x36d3be in both dumps)
  • Call chain (identical offsets in both dumps):
    ... --> LuaMadeSimple::Lua::call_function --> Unreal::Hook::FCallbackOptions::FCallbackOptions --> UObjectGlobals::ForEachUObject --> UObjectGlobals::FindFirstOf --> UObjectBase::IsA (crash)
  • The register holding the "object" pointer at fault time contains what appears to be fragments of UTF-16 text rather than a valid UObject address in both dumps (possibly FindFirstOf/ForEachUObject handing back a pointer into FName/FString data instead of a live UObject).

Reproduction notes

  • First crash: StateIndicator (third-party Lua+DLL mod) enabled, along with several other Lua mods (SwimSpeed_Increased, LockpickSettings, G1R_InGameClock, etc.)
  • Second crash: StateIndicator disabled, all other mods unchanged; produced the exact same stack, same offset, ruling out that specific mod.
  • Both crashes occurred a short time after gameplay events likely involving object destruction/GC (an NPC load transition in the first case, closing a lockpicking minigame on a chest in the second); consistent with a race between object teardown and the iteration in ForEachUObject.

What I've already ruled out

  • Not a bUseUObjectArrayCache staleness issue (already false)
  • Not specific to any one Lua mod's logic (identical stack with mod disabled)

Attachments

  • crash_1.dmp (StateIndicator enabled)
  • crash_2.dmp (StateIndicator disabled)
  • UE4SS

.log

  • mod list.png

UE4SS.log

(enabled mod list at time of second crash)

Image

Happy to provide more detail, test a patched build, or gather anything else that would help; this is 100% reproducible on my end.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions