Loading dom/cache/Cache.cpp +9 −3 Original line number Diff line number Diff line Loading @@ -285,7 +285,9 @@ Cache::Match(JSContext* aCx, const RequestOrUSVString& aRequest, CacheQueryParams params; ToCacheQueryParams(params, aOptions); AutoChildOpArgs args(this, CacheMatchArgs(CacheRequest(), params), 1); AutoChildOpArgs args(this, CacheMatchArgs(CacheRequest(), params, OpenMode::Eager), 1); args.Add(ir, IgnoreBody, IgnoreInvalidScheme, aRv); if (NS_WARN_IF(aRv.Failed())) { Loading @@ -309,7 +311,9 @@ Cache::MatchAll(JSContext* aCx, const Optional<RequestOrUSVString>& aRequest, CacheQueryParams params; ToCacheQueryParams(params, aOptions); AutoChildOpArgs args(this, CacheMatchAllArgs(void_t(), params), 1); AutoChildOpArgs args(this, CacheMatchAllArgs(void_t(), params, OpenMode::Eager), 1); if (aRequest.WasPassed()) { RefPtr<InternalRequest> ir = ToInternalRequest(aCx, aRequest.Value(), Loading Loading @@ -491,7 +495,9 @@ Cache::Keys(JSContext* aCx, const Optional<RequestOrUSVString>& aRequest, CacheQueryParams params; ToCacheQueryParams(params, aOptions); AutoChildOpArgs args(this, CacheKeysArgs(void_t(), params), 1); AutoChildOpArgs args(this, CacheKeysArgs(void_t(), params, OpenMode::Eager), 1); if (aRequest.WasPassed()) { RefPtr<InternalRequest> ir = Loading dom/cache/CacheStorage.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -333,7 +333,7 @@ CacheStorage::Match(JSContext* aCx, const RequestOrUSVString& aRequest, nsAutoPtr<Entry> entry(new Entry()); entry->mPromise = promise; entry->mArgs = StorageMatchArgs(CacheRequest(), params); entry->mArgs = StorageMatchArgs(CacheRequest(), params, OpenMode::Eager); entry->mRequest = request; mPendingRequests.AppendElement(entry.forget()); Loading dom/cache/CacheTypes.ipdlh +5 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ include ChannelInfo; include PBackgroundSharedTypes; using HeadersGuardEnum from "mozilla/dom/FetchIPCTypes.h"; using OpenMode from "mozilla/dom/cache/IPCUtils.h"; using ReferrerPolicy from "mozilla/dom/FetchIPCTypes.h"; using RequestCredentials from "mozilla/dom/FetchIPCTypes.h"; using RequestMode from "mozilla/dom/FetchIPCTypes.h"; Loading Loading @@ -106,12 +107,14 @@ struct CacheMatchArgs { CacheRequest request; CacheQueryParams params; OpenMode openMode; }; struct CacheMatchAllArgs { CacheRequestOrVoid requestOrVoid; CacheQueryParams params; OpenMode openMode; }; struct CachePutAllArgs Loading @@ -129,12 +132,14 @@ struct CacheKeysArgs { CacheRequestOrVoid requestOrVoid; CacheQueryParams params; OpenMode openMode; }; struct StorageMatchArgs { CacheRequest request; CacheQueryParams params; OpenMode openMode; }; struct StorageHasArgs Loading dom/cache/IPCUtils.h +7 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,13 @@ namespace IPC { mozilla::dom::cache::DEFAULT_NAMESPACE, mozilla::dom::cache::NUMBER_OF_NAMESPACES> {}; template<> struct ParamTraits<mozilla::dom::cache::OpenMode> : public ContiguousEnumSerializer<mozilla::dom::cache::OpenMode, mozilla::dom::cache::OpenMode::Eager, mozilla::dom::cache::OpenMode::NumTypes> {}; } // namespace IPC #endif // mozilla_dom_cache_IPCUtils_h dom/cache/Manager.cpp +23 −15 Original line number Diff line number Diff line Loading @@ -544,9 +544,11 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mResponse.mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mResponse.mBodyId, Move(stream)); Loading Loading @@ -609,10 +611,12 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mSavedResponses[i].mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mSavedResponses[i].mBodyId, Move(stream)); } Loading Loading @@ -1157,10 +1161,12 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mSavedRequests[i].mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mSavedRequests[i].mBodyId, Move(stream)); } Loading Loading @@ -1221,10 +1227,12 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mSavedResponse.mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mSavedResponse.mBodyId, Move(stream)); Loading Loading
dom/cache/Cache.cpp +9 −3 Original line number Diff line number Diff line Loading @@ -285,7 +285,9 @@ Cache::Match(JSContext* aCx, const RequestOrUSVString& aRequest, CacheQueryParams params; ToCacheQueryParams(params, aOptions); AutoChildOpArgs args(this, CacheMatchArgs(CacheRequest(), params), 1); AutoChildOpArgs args(this, CacheMatchArgs(CacheRequest(), params, OpenMode::Eager), 1); args.Add(ir, IgnoreBody, IgnoreInvalidScheme, aRv); if (NS_WARN_IF(aRv.Failed())) { Loading @@ -309,7 +311,9 @@ Cache::MatchAll(JSContext* aCx, const Optional<RequestOrUSVString>& aRequest, CacheQueryParams params; ToCacheQueryParams(params, aOptions); AutoChildOpArgs args(this, CacheMatchAllArgs(void_t(), params), 1); AutoChildOpArgs args(this, CacheMatchAllArgs(void_t(), params, OpenMode::Eager), 1); if (aRequest.WasPassed()) { RefPtr<InternalRequest> ir = ToInternalRequest(aCx, aRequest.Value(), Loading Loading @@ -491,7 +495,9 @@ Cache::Keys(JSContext* aCx, const Optional<RequestOrUSVString>& aRequest, CacheQueryParams params; ToCacheQueryParams(params, aOptions); AutoChildOpArgs args(this, CacheKeysArgs(void_t(), params), 1); AutoChildOpArgs args(this, CacheKeysArgs(void_t(), params, OpenMode::Eager), 1); if (aRequest.WasPassed()) { RefPtr<InternalRequest> ir = Loading
dom/cache/CacheStorage.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -333,7 +333,7 @@ CacheStorage::Match(JSContext* aCx, const RequestOrUSVString& aRequest, nsAutoPtr<Entry> entry(new Entry()); entry->mPromise = promise; entry->mArgs = StorageMatchArgs(CacheRequest(), params); entry->mArgs = StorageMatchArgs(CacheRequest(), params, OpenMode::Eager); entry->mRequest = request; mPendingRequests.AppendElement(entry.forget()); Loading
dom/cache/CacheTypes.ipdlh +5 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ include ChannelInfo; include PBackgroundSharedTypes; using HeadersGuardEnum from "mozilla/dom/FetchIPCTypes.h"; using OpenMode from "mozilla/dom/cache/IPCUtils.h"; using ReferrerPolicy from "mozilla/dom/FetchIPCTypes.h"; using RequestCredentials from "mozilla/dom/FetchIPCTypes.h"; using RequestMode from "mozilla/dom/FetchIPCTypes.h"; Loading Loading @@ -106,12 +107,14 @@ struct CacheMatchArgs { CacheRequest request; CacheQueryParams params; OpenMode openMode; }; struct CacheMatchAllArgs { CacheRequestOrVoid requestOrVoid; CacheQueryParams params; OpenMode openMode; }; struct CachePutAllArgs Loading @@ -129,12 +132,14 @@ struct CacheKeysArgs { CacheRequestOrVoid requestOrVoid; CacheQueryParams params; OpenMode openMode; }; struct StorageMatchArgs { CacheRequest request; CacheQueryParams params; OpenMode openMode; }; struct StorageHasArgs Loading
dom/cache/IPCUtils.h +7 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,13 @@ namespace IPC { mozilla::dom::cache::DEFAULT_NAMESPACE, mozilla::dom::cache::NUMBER_OF_NAMESPACES> {}; template<> struct ParamTraits<mozilla::dom::cache::OpenMode> : public ContiguousEnumSerializer<mozilla::dom::cache::OpenMode, mozilla::dom::cache::OpenMode::Eager, mozilla::dom::cache::OpenMode::NumTypes> {}; } // namespace IPC #endif // mozilla_dom_cache_IPCUtils_h
dom/cache/Manager.cpp +23 −15 Original line number Diff line number Diff line Loading @@ -544,9 +544,11 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mResponse.mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mResponse.mBodyId, Move(stream)); Loading Loading @@ -609,10 +611,12 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mSavedResponses[i].mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mSavedResponses[i].mBodyId, Move(stream)); } Loading Loading @@ -1157,10 +1161,12 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mSavedRequests[i].mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mSavedRequests[i].mBodyId, Move(stream)); } Loading Loading @@ -1221,10 +1227,12 @@ public: } nsCOMPtr<nsIInputStream> stream; if (mArgs.openMode() == OpenMode::Eager) { rv = BodyOpen(aQuotaInfo, aDBDir, mSavedResponse.mBodyId, getter_AddRefs(stream)); if (NS_WARN_IF(NS_FAILED(rv))) { return rv; } if (NS_WARN_IF(!stream)) { return NS_ERROR_FILE_NOT_FOUND; } } mStreamList->Add(mSavedResponse.mBodyId, Move(stream)); Loading