зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #5317 - Fix some warnings in the CEF port (from Ms2ger:cef); r=jdm
Source-Repo: https://github.com/servo/servo Source-Revision: 092a6d6f10216470c118e0efbb1ce969ce2864a3
This commit is contained in:
Родитель
176d45569b
Коммит
58cb86389f
|
@ -18,9 +18,9 @@ use libc::c_int;
|
|||
use util::opts;
|
||||
use std::borrow::ToOwned;
|
||||
use std::cell::{Cell, RefCell, BorrowState};
|
||||
use std::sync::atomic::{AtomicInt, Ordering};
|
||||
use std::sync::atomic::{AtomicIsize, Ordering};
|
||||
|
||||
thread_local!(pub static ID_COUNTER: AtomicInt = AtomicInt::new(0));
|
||||
thread_local!(pub static ID_COUNTER: AtomicIsize = AtomicIsize::new(0));
|
||||
thread_local!(pub static BROWSERS: RefCell<Vec<CefBrowser>> = RefCell::new(vec!()));
|
||||
|
||||
pub enum ServoBrowser {
|
||||
|
|
|
@ -34,9 +34,8 @@ pub fn command_line_init(argc: c_int, argv: *const *const u8) {
|
|||
unsafe {
|
||||
let mut a: Vec<String> = vec!();
|
||||
for i in 0u..(argc as uint) {
|
||||
let offset = *argv.offset(i as int) as *const c_char;
|
||||
let slice = ffi::c_str_to_bytes(&offset);
|
||||
let s = str::from_utf8(slice).unwrap();
|
||||
let slice = ffi::CStr::from_ptr(*argv.offset(i as int) as *const c_char);
|
||||
let s = str::from_utf8(slice.to_bytes()).unwrap();
|
||||
a.push(String::from_str(s));
|
||||
}
|
||||
let cl = command_line_new();
|
||||
|
|
|
@ -128,8 +128,8 @@ pub extern "C" fn cef_log(_file: *const c_char,
|
|||
_severity: c_int,
|
||||
message: *const c_char) {
|
||||
unsafe {
|
||||
let slice = ffi::c_str_to_bytes(&message);
|
||||
println!("{}", str::from_utf8(slice).unwrap())
|
||||
let slice = ffi::CStr::from_ptr(message);
|
||||
println!("{}", str::from_utf8(slice.to_bytes()).unwrap())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -94,7 +94,7 @@ pub extern "C" fn cef_string_utf8_set(src: *const u8, src_len: size_t, output: *
|
|||
return 0;
|
||||
}
|
||||
|
||||
ptr::copy_memory((*output).str, src, src_len as uint);
|
||||
ptr::copy((*output).str, src, src_len as uint);
|
||||
(*output).length = src_len;
|
||||
(*output).dtor = Some(string_utf8_dtor as extern "C" fn(*mut u8));
|
||||
}
|
||||
|
@ -175,7 +175,7 @@ pub extern "C" fn cef_string_utf16_set(src: *const c_ushort, src_len: size_t, ou
|
|||
return 0;
|
||||
}
|
||||
|
||||
ptr::copy_memory((*output).str, src, src_len as uint);
|
||||
ptr::copy((*output).str, src, src_len as uint);
|
||||
(*output).length = src_len;
|
||||
(*output).dtor = Some(string_utf16_dtor as extern "C" fn(*mut c_ushort));
|
||||
}
|
||||
|
@ -233,7 +233,7 @@ pub extern "C" fn cef_string_wide_set(src: *const wchar_t, src_len: size_t, outp
|
|||
return 0;
|
||||
}
|
||||
|
||||
ptr::copy_memory((*output).str, src, src_len as uint);
|
||||
ptr::copy((*output).str, src, src_len as uint);
|
||||
(*output).length = src_len;
|
||||
(*output).dtor = Some(string_wide_dtor as extern "C" fn(*mut wchar_t));
|
||||
}
|
||||
|
|
|
@ -182,7 +182,7 @@ impl<'a> CefWrap<*const cef_string_t> for &'a [u16] {
|
|||
fn to_c(buffer: &'a [u16]) -> *const cef_string_t {
|
||||
unsafe {
|
||||
let ptr: *mut c_ushort = mem::transmute(libc::malloc(((buffer.len() + 1) * 2) as u64));
|
||||
ptr::copy_memory(ptr, mem::transmute(buffer.as_ptr()), buffer.len());
|
||||
ptr::copy(ptr, mem::transmute(buffer.as_ptr()), buffer.len());
|
||||
*ptr.offset(buffer.len() as int) = 0;
|
||||
|
||||
// FIXME(pcwalton): This leaks!! We should instead have the caller pass some scratch
|
||||
|
|
Загрузка…
Ссылка в новой задаче