20 std::string &file_path,
25 static constexpr llvm::StringLiteral k_zip_separator(
"!/");
26 std::string path(file_spec.
GetPath());
27 size_t pos = path.find(k_zip_separator);
32 static constexpr llvm::StringLiteral k_zip_separator_win(
"!\\");
33 if (pos == std::string::npos)
34 pos = path.find(k_zip_separator_win);
37 if (pos == std::string::npos) {
49 std::string zip_path(path.substr(0, pos));
50 std::string so_path(path.substr(pos + k_zip_separator.size()));
55 std::replace(so_path.begin(), so_path.end(),
'\\',
'/');
63 if (
ZipFile::Find(zip_data, so_path, so_file_offset, so_file_size)) {