Skip to content

fix: Guard MSVC runtime version depending on compiler version - #8312

Merged
sithlord48 merged 1 commit into
masterfrom
fix8311
Mar 6, 2025
Merged

fix: Guard MSVC runtime version depending on compiler version#8312
sithlord48 merged 1 commit into
masterfrom
fix8311

Conversation

@nbolton

@nbolton nbolton commented Mar 6, 2025

Copy link
Copy Markdown
Member

Fixes: #8311

PR shows an error dialog and exits the program (server, client, and daemon) if the MSVC++ runtime is too old. This avoids silent crashes which are very confusing and waste a lot of time. Windows doesn't tell you when a binary was linked against an older library, it just loads whatever DLL it finds and hopes for the best.

Wrong version:
image

Missing runtime (default Windows message):
image

@nbolton
nbolton force-pushed the fix8311 branch 4 times, most recently from a287ec8 to 2c2f7d8 Compare March 6, 2025 14:38
@sithlord48

Copy link
Copy Markdown
Member

Should the gui do this check as well ?

@nbolton
nbolton requested a review from sithlord48 March 6, 2025 15:29
@nbolton

nbolton commented Mar 6, 2025

Copy link
Copy Markdown
Member Author

Should the gui do this check as well ?

We could if we link the gui bin to the arch lib. Thoughts?

That said, the user should never be able to get to the point of running the GUI because this new feature prevents the MSI from completing the installation.

@nbolton
nbolton marked this pull request as ready for review March 6, 2025 15:33
@sithlord48
sithlord48 merged commit 4953311 into master Mar 6, 2025
@sithlord48
sithlord48 deleted the fix8311 branch March 6, 2025 15:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Windows binaries allow incorrect VC++ runtime DLL to be loaded

2 participants