Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exception_Access_Violation #54

Open
siegetech opened this issue Sep 8, 2020 · 7 comments
Open

Exception_Access_Violation #54

siegetech opened this issue Sep 8, 2020 · 7 comments

Comments

@siegetech
Copy link

Using 4.25
First of all, amazing work on keeping this alive!
I have this crash on packaged game and editor, it seems to be on creation of the level/asset

[2020.09.08-18.16.39:930][786]LogWindows: Error: === Critical error: === [2020.09.08-18.16.39:930][786]LogWindows: Error: [2020.09.08-18.16.39:930][786]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0xffffffff [2020.09.08-18.16.39:930][786]LogWindows: Error: [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffe31d4b2d6 UE4Editor-CoreUObject.dll!UObjectBase::IsValidLowLevelFast() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectBase.cpp:270] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffdf4ac8405 UE4Editor-Blu.dll!UBluEye::TextureUpdate() [D:\REPOSITORIES\Virtuelle Events\VirtualEvents\Plugins\BLUI\Source\Blu\Private\BluEye.cpp:153] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffdf4ac1c76 UE4Editor-Blu.dll!RenderHandler::OnPaint() [D:\REPOSITORIES\Virtuelle Events\VirtualEvents\Plugins\BLUI\Source\Blu\Private\RenderHandler.cpp:32] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffdf4aef564 UE4Editor-Blu.dll!std::vector<CefRect,std::allocator<CefRect> >::_Xlength() [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde650ad6d libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffdeae82866 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffdeb4f4958 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8926a5e libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde6cabc35 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde857296c libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde857678b libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8576380 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde85713a8 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8571c4f libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8580ce8 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde84f3861 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8d362e9 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8d36071 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8530734 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde852feae libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde8d36af8 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde84deaae libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:930][786]LogWindows: Error: [Callstack] 0x00007ffde846c8d6 libcef.dll!UnknownFunction [] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ffdf4abc602 UE4Editor-Blu.dll!TBaseFunctorDelegateInstance<bool __cdecl(float),<lambda_a176ac6b39a6bd4f7278490eafa4dc42> >::Execute() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:945] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ffe3210d0a9 UE4Editor-Core.dll!FTicker::Tick() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\Core\Private\Containers\Ticker.cpp:95] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ff73e67a213 UE4Editor.exe!FEngineLoop::Tick() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5051] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ff73e68ba7c UE4Editor.exe!GuardedMain() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\Launch\Private\Launch.cpp:169] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ff73e68bb5a UE4Editor.exe!GuardedMainWrapper() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ff73e69e31d UE4Editor.exe!WinMain() [D:\UNREALENGINE\UE_4.25_Build\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:268] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ff73e6a145a UE4Editor.exe!__scrt_common_main_seh() [d:\agent\_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ffe8b587bd4 KERNEL32.DLL!UnknownFunction [] [2020.09.08-18.16.39:931][786]LogWindows: Error: [Callstack] 0x00007ffe8c6cce51 ntdll.dll!UnknownFunction [] [2020.09.08-18.16.39:931][786]LogWindows: Error: [2020.09.08-18.16.39:964][786]LogExit: Executing StaticShutdownAfterError [2020.09.08-18.16.39:970][786]LogWindows: FPlatformMisc::RequestExit(1)

@getnamo
Copy link
Owner

getnamo commented Sep 8, 2020

Hmm appears Texture is a nullptr or something of the sort at https://github.com/getnamo/BLUI/blob/master/Source/Blu/Private/BluEye.cpp#L153 stage. Where/when is the blueye being initialized in your context?

@getnamo
Copy link
Owner

getnamo commented Sep 8, 2020

It may be enough to replace 153 with:

if (bValidTexture && Texture && Texture->IsValidLowLevelFast())

@siegetech
Copy link
Author

The browser was being defined right at the start of any level. I changed it a bit so it loads a little bit later, will also place your change and see what happens.

@siegetech
Copy link
Author

So even with your fix and init bluEye after a noticeable delay, I get the same call stack at the same location L153. Any other ideas on how we might catch the unabletoread memory before it crashes?

@getnamo getnamo added the bug label Oct 5, 2020
@getnamo getnamo added the tip label Mar 6, 2021
@JLionel
Copy link

JLionel commented Apr 28, 2023

Hi, we're actually having the same issue on the release 4.6.0 (for Unreal 5.1) with the exact same crash report. I tried many things to figured out when/why the crash occur, before explaining everything I tried, do you want me to create a new issue (cause this one is old) or can I put everything here ?

@getnamo
Copy link
Owner

getnamo commented Apr 28, 2023

You can add to the issue, add any relevant steps to repro which might help the debug.

@JLionel
Copy link

JLionel commented Apr 28, 2023

Context : we have a network project were we have differents levels with their own server and we can travel between them. We use blui to display PDF locally and with web link. For this project we use the Engine from the github of EpicGames (version 5.1) and like I said before with use the last version of Blui (v4.6.0 UE5.1).
I took the same function of the BP Example to init BluEye.
It crashes in the editor and with a shipping build. All my test were made with the editor.

So after many test I found out that it crashes only the textures that use a web link and not a local file (or I was extremely lucky). There is nothing much to do, just launch the game and it randomly crash. I tried different distance between the character and the Blui actor but nothing change.

We know that the crash occure when "Texture->IsValidLowLevelFast()" is called in the function UBluEye::TextureUpdate (line 153), even after adding a direct check to the pointer before the call like so (pretty simple):

    if(Texture == nullptr)
    {
        UE_LOG(LogTemp, Warning, TEXT("Texture is nullptr"))
        return;
    }

It always crash at the line 346 of UObjectBase.cpp during this check (in the function IsValidLowLevelFast() of course):

    if (*(void**)this == nullptr)
    {
	UE_LOG(LogUObjectBase, Error, TEXT("Virtual functions table is invalid."));
	return false;
    }

I didn't figured out why it crashes here exactly.
I tried changing this call with the IsValid() function of Object.h and it still cause an exception (during the flag check in this case).

One of my guess is, maybe it's related with the blu_ue4_process.exe not being closed properly :

I found that when using a weblink, if we close the browser (manually or by closing the current play) all the process remains but if we use a local file, process are closed normally and don't remain. It's the only significant difference between local and web link I have, so it's a weak guess. I tried closing it using a methode but didn't succeed (I know there is an issue opened for the process but here is what I tried : Here)

The other reason could be that the Texture got destroy at some point during the call for unknow reasons.

Here is everything I have and I really can't figured out how to fix this, so I hope it help you a little, our last option will be to add all pdf locally.

(Thanks for the work you provide with blui by the way)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants