[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #28077 [Core Tor/Tor]: remove unsafe block from cstr! macro
#28077: remove unsafe block from cstr! macro
--------------------------+------------------------------------
Reporter: cyberpunks | Owner: (none)
Type: defect | Status: needs_review
Priority: Medium | Milestone: Tor: 0.3.6.x-final
Component: Core Tor/Tor | Version: Tor: 0.3.4.1-alpha
Severity: Normal | Resolution:
Keywords: rust | Actual Points:
Parent ID: | Points:
Reviewer: ahf | Sponsor:
--------------------------+------------------------------------
Comment (by ahf):
The way I read the `default()` implementation for `CStr` is that it is:
{{{
#[stable(feature = "cstr_default", since = "1.10.0")]
impl<'a> Default for &'a CStr {
fn default() -> &'a CStr {
const SLICE: &'static [c_char] = &[0];
unsafe { CStr::from_ptr(SLICE.as_ptr()) }
}
}
}}}
Which seems to be what we are doing too, which means that to me it seems
sensible to use the `unwrap_or_default()` method.
Opened a PR to see what Travis says:
https://github.com/torproject/tor/pull/466
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28077#comment:8>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs