Better
diff --git a/quic/tools/quic_memory_cache_backend.cc b/quic/tools/quic_memory_cache_backend.cc
index 206d2c5..9acc34b 100644
--- a/quic/tools/quic_memory_cache_backend.cc
+++ b/quic/tools/quic_memory_cache_backend.cc
@@ -103,12 +103,12 @@
     QuicStringPiece base) {
   size_t path_start = base.find_first_of('/');
   DCHECK_LT(0UL, path_start);
-  host_ = base.substr(0, path_start);
+  host_ = base.substr(0, path_start).as_string();
   size_t query_start = base.find_first_of(',');
   if (query_start > 0) {
-    path_ = base.substr(path_start, query_start - 1);
+    path_ = base.substr(path_start, query_start - 1).as_string();
   } else {
-    path_ = base.substr(path_start);
+    path_ = base.substr(path_start).as_string();
   }
 }
 
diff --git a/quic/tools/quic_memory_cache_backend.h b/quic/tools/quic_memory_cache_backend.h
index f88d458..796e567 100644
--- a/quic/tools/quic_memory_cache_backend.h
+++ b/quic/tools/quic_memory_cache_backend.h
@@ -54,7 +54,7 @@
 
     const std::vector<QuicStringPiece>& push_urls() { return push_urls_; }
 
-   protected:
+   private:
     void HandleXOriginalUrl();
     QuicStringPiece RemoveScheme(QuicStringPiece url);
 
@@ -64,10 +64,8 @@
     spdy::SpdyHeaderBlock spdy_headers_;
     QuicStringPiece x_original_url_;
     std::vector<QuicStringPiece> push_urls_;
-
-   private:
-    QuicStringPiece host_;
-    QuicStringPiece path_;
+    std::string host_;
+    std::string path_;
   };
 
   QuicMemoryCacheBackend();