From 72688eaa132403fcb5f103cb13756ef50ed804c0 Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Tue, 6 Aug 2013 21:11:10 -0700 Subject: [PATCH] std: Make CString::new unsafe b/c it can mutate a *T ptr --- src/libstd/c_str.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libstd/c_str.rs b/src/libstd/c_str.rs index fef16581c02..ac9bbfb1dfb 100644 --- a/src/libstd/c_str.rs +++ b/src/libstd/c_str.rs @@ -29,7 +29,7 @@ pub struct CString { impl CString { /// Create a C String from a pointer. - pub fn new(buf: *libc::c_char, owns_buffer: bool) -> CString { + pub unsafe fn new(buf: *libc::c_char, owns_buffer: bool) -> CString { CString { buf: buf, owns_buffer_: owns_buffer } } @@ -187,7 +187,7 @@ mod tests { #[test] fn test_is_null() { - let c_str = CString::new(ptr::null(), false); + let c_str = unsafe { CString::new(ptr::null(), false) }; assert!(c_str.is_null()); assert!(!c_str.is_not_null()); }