rust/library/std
Alex Crichton d6b06b8a32 std: Fix a bug on the wasm32-wasi target opening files
This commit fixes an issue pointed out in #82758 where LTO changed the
behavior of a program. It turns out that LTO was not at fault here, it
simply uncovered an existing bug. The bindings to
`__wasilibc_find_relpath` assumed that the relative portion of the path
returned was always contained within thee input `buf` we passed in. This
isn't actually the case, however, and sometimes the relative portion of
the path may reference a sub-portion of the input string itself.

The fix here is to use the relative path pointer coming out of
`__wasilibc_find_relpath` as the source of truth. The `buf` used for
local storage is discarded in this function and the relative path is
copied out unconditionally. We might be able to get away with some
`Cow`-like business or such to avoid the extra allocation, but for now
this is probably the easiest patch to fix the original issue.
2021-03-05 08:43:25 -08:00
..
benches
src std: Fix a bug on the wasm32-wasi target opening files 2021-03-05 08:43:25 -08:00
tests Fix SGX CI, take 3 2020-12-07 15:22:34 +01:00
build.rs Drop support for cloudabi targets 2020-11-22 17:11:41 -05:00
Cargo.toml Bump minimum libc version to 0.2.85 for std. 2021-02-24 12:47:28 +01:00