Index: chrome/common/zip_internal.cc |
diff --git a/chrome/common/zip_internal.cc b/chrome/common/zip_internal.cc |
index ddcfd00a360fb1d01383d27f04aa75669e92d7f5..fd46a9b8a5c450e243de31f7f09eaa2ec61ee975 100644 |
--- a/chrome/common/zip_internal.cc |
+++ b/chrome/common/zip_internal.cc |
@@ -81,6 +81,15 @@ unzFile OpenForUnzipping(const std::string& file_name_utf8) { |
return unzOpen2(file_name_utf8.c_str(), zip_func_ptrs); |
} |
+#if defined(OS_POSIX) |
+unzFile OpenFdForUnzipping(int zip_fd) { |
+ zlib_filefunc_def zip_funcs; |
+ fill_fdopen_filefunc(&zip_funcs, zip_fd); |
+ // Passing dummy "fd" filename to zlib. |
+ return unzOpen2("fd", &zip_funcs); |
+} |
+#endif |
+ |
zipFile OpenForZipping(const std::string& file_name_utf8, int append_flag) { |
zlib_filefunc_def* zip_func_ptrs = NULL; |
#if defined(OS_WIN) |