-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
SteamVR crashes after 10-20 minutes running in Sandboxie-Plus x64 #1243
Comments
Could you test the Plus versions released in June (four in total) and verify if a specific Sandboxie version introduced the issue? I would also suggest to provide a log. Assuming you're on the main Sandboxie Plus window and you've closed any running program in the sandbox:
In order to take a log with Plus, you need to enable 'Trace Log' tab by opening 'Options' menu -> 'Trace Logging'. |
The contents of the panel appear to be more than can fit in the clipboard. Is the log saved to disk, or can it be saved to disk? |
Upon further checking, the issue isn't the length of the log, but rather certain Asian characters in the log. If I reverse the order of the log before copying the panel, it pastes more of it in Notepad++, however it still stops pasting (or copying?) after getting to one of these Asian characters: I'll need a workaround for this issue if you want to see the entire log. Until then, here's all I was able to copy (barely anything, as the timestamps run from 16:37:25 to 16:52:48): |
This log bug should be fixed on 0.9.7d. After seeing your partial trace log, I think you may try to apply these lines and verify if they help with your issue:
If you need to take another log, you could use temporarily for debugging purposes other trace options described here and also applying |
Still crashed after about 15 minutes. Did you want a trace log for that as well? |
Apparently the Trace log feature is struggling because you're running it for more than 10 minutes. I passed this issue to the maintainer, in the meantime you may want to take a log for a smaller number of minutes and/or replacing I would also suggest to the maintainer a new option to use a hotkey to stop/restart a trace log quickly in order to avoid a compulsive use of the |
I've gone back to Sandboxie-Plus 0.7.0 testing this, and I can't find a version that it runs in that it doesn't crash after about 15 minutes. It's possible it was a change to SteamVR that broke things. |
Yesterday I installed 0.9.8b and there is a new button on the Trace tab to save a log on file... I think it's more reliable than the "Copy Panel" feature, although the "Unknown" lines (like yours here) can still be displayed. In my case, these are the "Unknown" lines I logged with the new "save as log" feature while accessing to Windows Explorer:
It looks like it can't handle very long paths and the Trace Log cuts them... with "Copy Panel" is even worse, because it doesn't allow you to copy almost anything when any "Unknown" entry is displayed on the Trace tab. EDIT: What happens if you apply |
Here's (hopefully) a full trace log: Let me know if you need anything else. |
This is the only SteamVR error I was able to reproduce in a sandbox (without having no game or controller attached).
I didn't have any luck to find out the cause after analyzing the previous logs, so I'm going to attach my log below in case someone wants to try: |
For debugging you may need to simulate an HMD (VR device) with one of the programs detailed in the following article: Note that you may need to install an app on your phone for them to work, however I don't think they require VR or XR support on the phone so you should be able to do it without any VR equipment whatsoever. |
I have some news about this issue:
Crash dump: steamvr_media_player.exe.1899435299.zip |
Its strange the crash happens inside a hooking routine, wil investigate this furtner |
it is strange on my system this hook works correctly, not sure why it runs into a crash for you, may be there is already some other hook present that interfears, |
Indeed I already explained that I can't reproduce it in the compartment mode (that would be the workaround). In order to reproduce it, you need to follow the required steps I posted here. My GlobalSettings:
|
do i need to wait 20 minutes? |
Nope, the problem I reproduced here appears after opening the |
Of course it starts fine. The bug report is about a crash that happens after a period of time, not an issue with the software starting in the sandbox. The bug report is also not about the "App Compartment" mode. That's not a sandbox. A workaround would be finding a way to run VR games in the sandbox while allowing them to communicate with SteamVR when it's running outside of the sandbox, not running SteamVR and whatever game you want to try in a non-sandboxed mode. Also note that non-Patreon users do not appear to be able to use the "App Compartment" feature, or at least some of its capabilities appear to be locked behind a paywall. This makes it a non-viable workaround even if it could have worked as a workaround in the first place, as not everyone would have access to it. BTW: I've upgraded to an HTC Vive Pro 2, which requires software from HTC to function (VIVE Console). While this software and its associated service do run in a sandbox, SteamVR does not appear to be able to output to the device's screens (possibly due to a vrcompositor.exe crash that happens shortly after SteamVR launches in the sandbox). |
Ok, so the media player closes with the error "HMD not found (108)", that needs some open something presumably... "App Compartment" mode, is as secure as comodo sandbox, so its still a sandbox, also steam is not one of your regular suspects of aggressively trying to escape isolation. |
The crash dump was generated with |
I was able to reproduce the issue in my debugger and it seams the problem is quite not so trivial, A proper fix for this issue will require a significant redesign of the internal hooking mechanism. I presume other crashes which occur only after a longer runtime may have the same cause. It is a significant architectural oversight not to have properly cleaned up the hooks once a dll is unloaded. |
Do you see any possibility of a game running in Sanboxie's sandbox being able to communicate with SteamVR when it is not running via Sandboxie? While that obviously wouldn't fix the hooking issue, it would work around it for the SteamVR crash in the short term. There's an example of a free downloadable VR game at the following link that can be used for testing if needed (to my knowledge the game is safe, but the reality is that can't be guaranteed when downloading games from sources like this, which is why I want to be able to run the games in a sandbox, but right now that also means running SteamVR in the sandbox with the game as the sandbox blocks the communication between the game and SteamVR): |
I have not investigated yet how the communication works, |
I have a fix in an internal dev build it will be included in one of the builds to come, it changes the hooking management a lot so may not be 1.0.xx but in the 1.1.xx line we will see |
build 1.2.0 that is to be releases withing the next week will contain the fix for this issue, thx for your patience |
Awesome. Thanks. |
build is released |
When running in the sandbox, SteamVR will work normally for about 10-20 minutes. There are two exceptions to this:
During this 10-20 minutes you can play VR games that will work without the Steam client normally. Eventually other SteamVR processes will begin to crash, leaving you with a sudden black screen in the VR HMD. This happens even if you never launch games, never turn on the controllers, and are just standing in place in SteamVR Home.
Background - If you download a free VR game from a website such as itch.io you don't necessarily know if it's trustworthy. It's not possible for SteamVR to connect to a VR HMD from within a virtual machine, and it isn't possible for a VR game running in a sandbox to connect to SteamVR, so up until now the only way I could play downloaded VR games with some degree of safety was to run SteamVR in the sandbox as well. A few months ago SteamVR began crashing when running in a sandbox, and I would run it like this too infrequently to know if it was an update to SteamVR or to Sandboxie that was responsible for it breaking.
Steps to reproduce the behavior:
C:\Program Files (x86)\Steam\steamapps\common\SteamVR\bin\win64\vrstartup.exe
Note: It should be possible to simulate a VR HMD with a smartphone using software such as VRidge or Trinus VR, so it may be possible to test this without actually needing an HTC Vive or an Oculus Rift (they connect over the network, so testing in a VM with DirectX 11 support should work):
https://uploadvr.com/budget-vr-101-get-pc-vr-streaming-phone/
Expected behavior
I expect SteamVR to continue running in the sandbox without issues.
System details and installed software (please provide the following information):
The text was updated successfully, but these errors were encountered: