zipfuse: OsString -> CString
libfuse uses CString. In order to avoid conversion between OsString and
CString, zipfuse also internally uses CString.
Bug: 186377508
Test: atest ZipFuseTest
Change-Id: I48cfc294d3d897ab89179205465e652d8ffbeeee
diff --git a/zipfuse/src/main.rs b/zipfuse/src/main.rs
index d6710d6..d0792d5 100644
--- a/zipfuse/src/main.rs
+++ b/zipfuse/src/main.rs
@@ -26,11 +26,10 @@
use fuse::mount::*;
use std::collections::HashMap;
use std::convert::TryFrom;
-use std::ffi::{CStr, CString, OsStr};
+use std::ffi::{CStr, CString};
use std::fs::{File, OpenOptions};
use std::io;
use std::io::Read;
-use std::os::unix::ffi::OsStrExt;
use std::os::unix::io::AsRawFd;
use std::path::Path;
use std::sync::Mutex;
@@ -159,7 +158,6 @@
fn lookup(&self, _ctx: Context, parent: Self::Inode, name: &CStr) -> io::Result<Entry> {
let inode = self.find_inode(parent)?;
let directory = inode.get_directory().ok_or_else(ebadf)?;
- let name = OsStr::from_bytes(name.to_bytes());
let entry = directory.get(name);
match entry {
Some(e) => Ok(Entry {