diff options
| author | bors <bors@rust-lang.org> | 2025-09-25 10:30:50 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-09-25 10:30:50 +0000 |
| commit | 7cfd7d328b14b936c7ffede92cacebe8557c6388 (patch) | |
| tree | 96d690bc6e6acdfb369bdc003ba5254b76002711 /library/alloc | |
| parent | bbcbc7818ba27c951f9fd881fd3ec4cd5123b741 (diff) | |
| parent | 57ee169ff281fcdfd02384ef0760f4ce8162478f (diff) | |
| download | rust-7cfd7d328b14b936c7ffede92cacebe8557c6388.tar.gz rust-7cfd7d328b14b936c7ffede92cacebe8557c6388.zip | |
Auto merge of #147003 - matthiaskrgr:rollup-b5z9uiz, r=matthiaskrgr
Rollup of 7 pull requests Successful merges: - rust-lang/rust#146556 (Fix duration_since panic on unix when std is built with integer overflow checks) - rust-lang/rust#146679 (Clarify Display for error should not include source) - rust-lang/rust#146753 (Improve the pretty print of UnstableFeature clause) - rust-lang/rust#146894 (Improve derive suggestion of const param) - rust-lang/rust#146950 (core: simplify `CStr::default()`) - rust-lang/rust#146958 (Fix infinite recursion in Path::eq with String) - rust-lang/rust#146971 (fix ICE in writeback due to bound regions) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'library/alloc')
| -rw-r--r-- | library/alloc/src/ffi/c_str.rs | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/library/alloc/src/ffi/c_str.rs b/library/alloc/src/ffi/c_str.rs index b0c8c4b1ca4..3e78d680ea6 100644 --- a/library/alloc/src/ffi/c_str.rs +++ b/library/alloc/src/ffi/c_str.rs @@ -970,17 +970,14 @@ impl Default for Rc<CStr> { /// This may or may not share an allocation with other Rcs on the same thread. #[inline] fn default() -> Self { - let rc = Rc::<[u8]>::from(*b"\0"); - // `[u8]` has the same layout as `CStr`, and it is `NUL` terminated. - unsafe { Rc::from_raw(Rc::into_raw(rc) as *const CStr) } + Rc::from(c"") } } #[stable(feature = "default_box_extra", since = "1.17.0")] impl Default for Box<CStr> { fn default() -> Box<CStr> { - let boxed: Box<[u8]> = Box::from([0]); - unsafe { Box::from_raw(Box::into_raw(boxed) as *mut CStr) } + Box::from(c"") } } |
