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

[Overlay] Cannot create hook in Linux #92

Open
Edremon opened this issue Nov 22, 2024 · 8 comments
Open

[Overlay] Cannot create hook in Linux #92

Edremon opened this issue Nov 22, 2024 · 8 comments
Labels
bug Something isn't working linux Linux OS related overlay Overlay related question Further information is requested

Comments

@Edremon
Copy link
Contributor

Edremon commented Nov 22, 2024

In release build, overlay is not showing up. With debug build, game segfault when overlay is enabled.

The backtrace is:

#0  0xdcc12927 in std::once_flag::_Prepare_execution::_Prepare_execution<std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#1}>(void (std::__future_base::_State_baseV2::*&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*))::{lambda()#1}::_FUN() () from /Half-Life 2/bin/libsteam_api.so
#1  0xf7d5f9e0 in ?? () from /usr/lib32/libc.so.6
#2  0xf7d5fa69 in pthread_once () from /usr/lib32/libc.so.6
#3  0xdcc13d78 in std::__future_base::_Async_state_impl<std::thread::_Invoker<std::tuple<InGameOverlay::RendererDetector_t::DetectRenderer(std::chrono::duration<long long, std::ratio<1ll, 1000ll> >, InGameOverlay::RendererHookType_t, bool)::{lambda()#1}> >, InGameOverlay::RendererHook_t*>::_M_run() () from /Half-Life 2/bin/libsteam_api.so
#4  0xe8db21f1 in std::execute_native_thread_routine (__p=0x568f77c0) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:104
#5  0xf7d59e5e in ?? () from /usr/lib32/libc.so.6
#6  0xf7e0cff8 in ?? () from /usr/lib32/libc.so.6

If launching the game with -vulkan, #93 fix and overlay enabled, it will also segfault in release build, debug build in this case have the same backtrace.

@Detanup01
Copy link
Owner

Preparing full build.
Check with this https://github.com/Detanup01/gbe_fork/actions/runs/11981263769
and close or add 'bug' label

@Edremon
Copy link
Contributor Author

Edremon commented Nov 22, 2024

Check with this https://github.com/Detanup01/gbe_fork/actions/runs/11981263769

I made those PR, I obviously tested with them.

close or add 'bug' label

I can't add label, only maintainers can.

@Detanup01
Copy link
Owner

  1. Thanks so can close this :)

  2. Fuck and sad.

@Edremon
Copy link
Contributor Author

Edremon commented Nov 22, 2024

When I said tested, I mean that the current state of this issue is still the same, well one was needed to actually build the emulator and the other was referenced in my previous edit to be able to run with -vulkan and see that the same problem occur.

@Detanup01
Copy link
Owner

Its too late for me, sry.
Also I have 0 experience on linux crashes, errors, bugs, you name it.
Maybe debug build tell more where, what address, proper code place it causing issues?

@Detanup01 Detanup01 reopened this Nov 22, 2024
@Detanup01 Detanup01 added bug Something isn't working question Further information is requested linux Linux OS related labels Nov 22, 2024
@Edremon
Copy link
Contributor Author

Edremon commented Nov 23, 2024

Weirdly enough, I can't reproduce the segfault, I haven't changed anything as far as I'm aware. But, overlay is still not showing. Log from ingame_overlay are the following:

Vulkan

[trace] - operator(){463} - Started renderer detection.
[info] - _HookVulkan{362} - Hooked vkQueuePresentKHR to detect Vulkan
[error] - _HookVulkan{379} - Failed to hook _VkQueuePresentKHR
[info] - ~VulkanHook_t{1066} - VulkanHook_t Hook removed
[trace] - operator(){519} - Renderer detection done 0x0.

OpenGL

[trace] - operator(){463} - started renderer detection.
[info] - _hookopenglx{335} - hooked glxswapbuffers to detect openglx
[error] - _hookopenglx{345} - failed to hook _glxswapbuffers
[info] - ~openglxhook_t{188} - openglx hook removed
[trace] - operator(){519} - renderer detection done 0x0.

@Detanup01 Detanup01 added the overlay Overlay related label Nov 23, 2024
@Detanup01
Copy link
Owner

Well since its overlay issue I cant do shit. Test NOT valve games (if even works and only HL2/OV issue). It known that Valve games has issues with overlay.

@Edremon
Copy link
Contributor Author

Edremon commented Nov 24, 2024

I don't think I have any other steam linux native game. I also opened an issue at ingame_overlay: Nemirtingas/ingame_overlay#47

@Detanup01 Detanup01 changed the title Overlay segfault in HL2 on Linux [Overlay] Cannot create hook in Linux Nov 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working linux Linux OS related overlay Overlay related question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants