Skip to content

avoid creating unnecessary reference in Windows Env iterator #70479

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 1 commit into from
Mar 30, 2020

Conversation

RalfJung
Copy link
Member

Discovered in rust-lang/miri#1225: the Windows Env iterator violates Stacked Borrows by creating an &u16, turning it into a raw pointer, and then accessing memory outside the range of that type.

There is no need to create a reference here in the first place, so the fix is trivial.
Cc @JOE1994
Cc rust-lang/unsafe-code-guidelines#134

@rust-highfive
Copy link
Contributor

r? @shepmaster

(rust_highfive has picked a reviewer for you, use r? to override)

@RalfJung
Copy link
Member Author

r? @Mark-Simulacrum

@Mark-Simulacrum
Copy link
Member

@bors r+ rollup

@bors
Copy link
Collaborator

bors commented Mar 30, 2020

📌 Commit 2a1e61e has been approved by Mark-Simulacrum

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 30, 2020
@bors
Copy link
Collaborator

bors commented Mar 30, 2020

⌛ Testing commit 2a1e61e with merge 436b6e93f2f9d171a1dcbec015ea57e3a5023b05...

@Dylan-DPC-zz
Copy link

@bors retry (yield)

bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 30, 2020
Rollup of 4 pull requests

Successful merges:

 - rust-lang#70479 (avoid creating unnecessary reference in Windows Env iterator)
 - rust-lang#70546 (Polonius: update to 0.12.1, fix more move errors false positives, update test expectations)
 - rust-lang#70559 (fix BTreeMap test compilation with Miri)
 - rust-lang#70567 (Fix broken link in README)

Failed merges:

r? @ghost
@bors bors merged commit 47ffca2 into rust-lang:master Mar 30, 2020
@RalfJung RalfJung deleted the win-env branch April 2, 2020 08:48
JOE1994 added a commit to JOE1994/miri that referenced this pull request Jun 8, 2020
A small fix was made to libstd in rust-lang/rust#70479 (back in March).
(Miri reported UB due to Stacked Borrows violation - [link to Miri error log](rust-lang#1225 (comment)))

Thank you for reviewing 👍
bors added a commit to rust-lang/miri that referenced this pull request Jun 8, 2020
Add a case to list of 'StackedBorrows violations'

A small fix was made to libstd in rust-lang/rust#70479 (back in March).
(Miri reported UB due to Stacked Borrows violation - [link to Miri error log](#1225 (comment)))

Thank you for reviewing 👍
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants