Skip to content

Conversation

cgutman
Copy link
Collaborator

@cgutman cgutman commented Dec 21, 2022

Description

boost::process::environment uses a case-sensitive match when looking up environment variables, but Windows variables (especially PATH) tend to behave case-insensitively. Because the name of the Windows variable is Path, not PATH, we would attempt to concatenate ;C:\Program Files (x86)\Steam to the PATH but end up overwriting the entire thing because env["PATH"] returned an empty string.

Our PATH value itself was also incorrectly hardcoded such that a system where the Program Files (x86) folder (or the whole Windows installation) did not reside on the C: drive would not be able to launch Steam.

Screenshot

Issues Fixed or Closed

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Dependency update (updates to dependencies)
  • Documentation update (changes to documentation)
  • Repository update (changes to repository files, e.g. .github/...)

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated the in code docstring/documentation-blocks for new or existing methods/components

Branch Updates

LizardByte requires that branches be up-to-date before merging. This means that after any PR is merged, this branch
must be updated before it can be merged. You must also
Allow edits from maintainers.

  • I want maintainers to keep my branch updated

PATH needs to be matched case-insensitively on Windows or we will just clobber the pre-existing PATH
@ReenigneArcher ReenigneArcher merged commit b1ac4bc into LizardByte:nightly Dec 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants