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

Streamline's interposer Exception Handler must be made defeatable by users #45

Open
Kaldaien opened this issue Sep 18, 2024 · 1 comment
Labels
triaged Under investigation but not fixed

Comments

@Kaldaien
Copy link

Posting a rant from Special K's recent CHANGELOG because that's all this problem description deserves.

24.9.19
=======
 + Added protection against SteamAPI's internal exceptions being caught by
     NVIDIA Streamline's Interposer DLL and triggering NVIDIA's stupid
       any exception detected ==> minidump crap built-in to DLSS3.

    * Calling SteamAPI functions from overlay code is UNSAFE thanks to NVIDIA
        and their non-defeatable and ill-advised exception handler built-in to
          Streamline.

     Streamline catches exceptions that ARE handled by the software, or are
       continuable, and turns harmless exceptions into full crashes (gah!!).

    sl.interposer.dll is pure evil when officially compiled by NVIDIA using
      the release build configuration.

    @ NVIDIA get that crap out of there please, and remove the codesigned DLL
        DRM so users can at least bypass your boobytrap without losing DLSS3.

The exception handler swallows exceptions that are normally handled correctly and turns them into unnecessary crashes.

And because the stupid Interposer DLL has your awful DRM attached to it, if users were to recompile the Interposer with the exception handling death trap removed, they cannot use DLSS Frame Generation.

Seriously, WTF?

This was a terrible idea, and you are punishing users with DRM that most developers and users do not even know you built-in to Streamline. The DRM is uncalled for and I hesitate to call Streamline "open source" when you pull shenanigans like this.

Nobody can actually modify your software to fix its problems without losing support for the only thing (DLSS-G) Streamline does that developers could not already do as well, if not better, by interfacing with NGX directly.

@jake-nv jake-nv added the ack Acknowledged. We may or may not do something, but won’t commit either way. label Sep 24, 2024
@jake-nv
Copy link
Collaborator

jake-nv commented Sep 28, 2024

Sorry to hear SL is giving you issues.

We've been looking at revisiting the exception handling, use of SEH, and crash dump functionality. It's an ongoing discussion regarding the best path forward- while maintaining backwards compatibility with existing integrations.

@jake-nv jake-nv added triaged Under investigation but not fixed and removed ack Acknowledged. We may or may not do something, but won’t commit either way. labels Sep 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triaged Under investigation but not fixed
Projects
None yet
Development

No branches or pull requests

2 participants