servo: Merge #18702 - do not force resource_path on android (from paulrouget:android_res_path); r=Manishearth

I want to be able to configure the resource path via `set_resources_path`.

Source-Repo: https://github.com/servo/servo
Source-Revision: b1c2d7195dd01a131c10d2bc2ad457a51c3fa118

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c23fb710a0acc994fc4f02ea58bce46393dde018
This commit is contained in:
Paul Rouget 2017-10-04 10:34:52 -05:00
Родитель 6d14b17623
Коммит 8b66bf2d47
1 изменённых файлов: 10 добавлений и 2 удалений

Просмотреть файл

@ -27,10 +27,18 @@ pub fn set_resources_path(path: Option<String>) {
#[cfg(target_os = "android")]
#[allow(unsafe_code)]
pub fn resources_dir_path() -> io::Result<PathBuf> {
let dir = unsafe {
let mut dir = CMD_RESOURCE_DIR.lock().unwrap();
if let Some(ref path) = *dir {
return Ok(PathBuf::from(path));
}
let data_path = unsafe {
CStr::from_ptr((*android_injected_glue::get_app().activity).externalDataPath)
};
Ok(PathBuf::from(dir.to_str().unwrap()))
let path = PathBuf::from(data_path.to_str().unwrap());
*dir = Some(path.to_str().unwrap().to_owned());
Ok(path)
}
#[cfg(not(target_os = "android"))]