Ben Kelly
3b9d1c465e
Bug 1150691 Fix Cache API race with storage invalidation. r=ehsan
2015-04-02 17:39:46 -07:00
Ben Kelly
ae0e7c02cf
Bug 1150608 Do not reuse CacheId values within an origin. r=ehsan
2015-04-02 17:11:41 -07:00
Ehsan Akhgari
7f0cac73a3
Bug 1147699 - Part 14: Add a test for FetchEvent.request.context when intercepting loads coming from plugins; r=nsm
2015-03-30 08:42:53 -04:00
Ehsan Akhgari
47c59f235a
Bug 1147699 - Part 1: Move Request::mContext to InternalRequest, and determine the mapping to nsContentPolicyType; r=nsm
...
As the documentation in InternalRequest.h in this patch shows, the
mapping between nsContentPolicyType and RequestContext is not complete
yet. Because the InternalRequest object needs to know the actual
nsContentPolicyType in order for FetchDriver to be able to use that
information, we can't just store the RequestContext. Therefore, this
patch adds both of these to InternalRequest. Once we get to a stage
where we have a complete mapping of these values, we can store only one
of them and compute the other from it. That requires addressing all of
the TODO comments in the InternalRequest.h documentation.
2015-03-30 08:42:31 -04:00
Ehsan Akhgari
bb4f610dac
Bug 1147184 - Extend the tests for Cache.put; r=bkelly
2015-03-25 21:22:18 -04:00
Ben Kelly
3654e7656b
Bug 1143192 Allow Context initialization to be cancelled. r=ehsan
2015-03-25 07:16:40 -07:00
Ehsan Akhgari
ff8405ed01
Bug 1146610 - Add static_asserts that check the validity of the enum values that we write into the cache database; r=bkelly
...
These assertions will catch future accidental changes to these enums
which will invalidate the data that we store in the Cache database.
2015-03-24 16:45:12 -04:00
Ben Kelly
51b7d8b6c0
Bug 1146557 P1 Fix CacheStorage and Cache to QI to nsISupports correctly. r=ehsan
2015-03-24 07:34:17 -07:00
Ehsan Akhgari
fe1c309d02
Bug 1146612 - Add a test to ensure that Cache.put() with an existing request will reorder it in the DB; r=bkelly
2015-03-24 10:32:02 -04:00
Ehsan Akhgari
c65501f8bc
Bug 1146585 - Add a test for Cache.delete; r=bkelly
2015-03-24 10:32:01 -04:00
Ben Kelly
b7d8aaec19
Bug 1142852 P2 Make Cache Action use non-threadsafe ref-counting. r=ehsan
2015-03-23 22:28:09 -04:00
Ben Kelly
a1e93d47a8
Bug 1110487 P4 Allow Cache Action objects to be canceled more than once. r=ehsan
2015-03-23 22:23:45 -04:00
Ben Kelly
81bce2740d
Bug 1110487 P3 Cache should ensure Actions are finished before completing. r=ehsan
2015-03-23 22:23:45 -04:00
Ben Kelly
12af2a6a57
Bug 1110487 P2 Implement the nsIOfflineStorage interface in Cache. r=janv,ehsan
2015-03-16 07:10:36 -07:00
Ehsan Akhgari
f701f72fb3
Bug 1146202 - Add a test for the handling of ignoreVary in Cache.keys; r=bkelly
2015-03-23 15:46:58 -04:00
Ehsan Akhgari
1835ea57f2
Bug 1126819 - Part 2: Persist the Request.cache attribute in DOM Cache; r=bkelly
2015-03-23 15:46:58 -04:00
Daniel Holbert
48c2e9bef2
Bug 1110814 followup: Add missing 'override' annotations to new methods in CacheParent. rs=ehsan
2015-03-22 10:33:56 -07:00
Ehsan Akhgari
9dbf30b541
Bug 1110814 follow-up: Fix a typo in order to fix the test failures
2015-03-22 10:35:29 -04:00
Ben Kelly
275609c516
Bug 1110814 P1 Implement Cache IPC actor for streaming data from child to parent. r=khuey
2015-03-22 02:52:12 -04:00
Ehsan Akhgari
f0bc72be6b
Bug 1145792 - Add a test for the Cache.keys method; r=bkelly
2015-03-21 20:13:33 -04:00
Ehsan Akhgari
d9a8b3d4a8
Bug 1145445
- Add a test for CacheStorage; r=bkelly
2015-03-21 20:11:24 -04:00
Ehsan Akhgari
0efffdf2eb
Bug 1144725 - Forcefully terminate the workers used in DOM cache tests once we're done with them; r=bkelly
2015-03-21 20:09:40 -04:00
Ehsan Akhgari
69cd0a74b8
Bug 1143894 - Part 5: Add a test for handling of the Vary header with multiple entries in the cache; r=bkelly
2015-03-21 19:45:14 -04:00
Ehsan Akhgari
734a1b3adf
Bug 1143894 - Part 4: Add tests for handling of the Vary header in DOM Cache; r=bkelly
2015-03-21 19:45:13 -04:00
Ehsan Akhgari
a40740e8bf
Bug 1143894 - Part 3: Do not propagate errors in getting the headers to the outside world; r=bkelly
...
The Vary header may contain invalid header name values. We should just
ignore such values as opposed to propagating them to the caller. Before
this patch, attempts to add a request with such a Vary header for example
would fail, since the internal QueryCache() call when executing the
CachePutAllAction would fail.
2015-03-21 19:45:12 -04:00
Ehsan Akhgari
6cb4d8af01
Bug 1143894 - Part 2: Support Vary headers including multiple header names in DOM Cache; r=bkelly
...
The Vary header may include one or more HTTP header field names, so we
need to extract those names here, similar to the way that the
nsHttpChannel::ResponseWouldVary() function consumes the Vary header.
2015-03-21 19:45:12 -04:00
Ehsan Akhgari
fc3b1c8b70
Bug 1143894 - Part 1: Clear the ErrorResult message if InternalHeaders::Get fails; r=bkelly
...
InternalHeaders::Get() may throw NS_ERROR_TYPE_ERR with an associated message.
The semantics of ErrorResult dictate that the message needs to be consumed by
the time that the object gets destroyed, so we need to clear it before
returning in these two places.
2015-03-21 19:45:11 -04:00
Ehsan Akhgari
883849ee32
Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
...
This patch was automatically generated using the following script:
function convert() {
echo "Converting $1 to $2..."
find . \
! -wholename "*/.git*" \
! -wholename "obj-ff-dbg*" \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Daniel Holbert
0c20ebd00d
Bug 1143223 followup: Add MOZ_OVERRIDE annotation to ReadStream::Inner's refcounting macro. rs=ehsan
2015-03-21 00:17:49 -07:00
Ben Kelly
84463ac14b
Bug 1143223 - Teach Cache ReadStream not to AddRef() itself in its destructor. r=ehsan
2015-03-20 11:01:57 -07:00
Ryan VanderMeulen
befdfa6794
Backed out changeset fd0834bbfd3c (bug 1143223) for making test_mediaElementAudioSourceNodePassThrough.html almost perma-timeout on Android 4.0.
...
--HG--
extra : rebase_source : b315a864686e99bd22bd3ef0e842c5236a92cfa6
2015-03-20 17:03:27 -04:00
Ehsan Akhgari
146e202730
Bug 1144337 - Add tests to ensure that cacheName is only honored on CacheStorage, and not Cache; r=bkelly
2015-03-20 16:05:49 -04:00
Ben Kelly
63da054263
Bug 1143223 Teach Cache ReadStream not to AddRef() itself in its destructor. r=ehsan
2015-03-20 11:01:57 -07:00
Ehsan Akhgari
1e0c4573e6
Bug 1143222 - Put the DOM Cache tests in sequential mode again until we fix the rest of the intermittent failures; a=RyanVM
2015-03-19 17:08:02 -04:00
Ehsan Akhgari
b92e929c3e
Bug 1145321 - Disconnect the CacheStorage object from its actor when it gets cycle collected; r=bkelly
2015-03-19 17:06:59 -04:00
Ehsan Akhgari
8734ffb7e3
Bug 1143504 - Disconnect the Cache object from its actor when it gets cycle collected; r=bkelly
2015-03-19 17:06:57 -04:00
Boris Zbarsky
dc24477d79
Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
...
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp. The
rest of this diff was generated by running the following commands:
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Ehsan Akhgari
2515f140bb
Bug 1144236 - Add tests for the ignoreMethod match mode in DOM cache; r=bkelly
2015-03-17 10:58:00 +01:00
Ehsan Akhgari
6d29d6c974
Bug 1144214 - Fix DeleteOrphanedBodyAction so that it doesn't orphan cache files if the action is canceled; r=bkelly
2015-03-18 14:19:00 +01:00
Nigel Babu
2e6821328d
Backed out changeset dd13fdf7b284 (bug 1144236) for bustage CLOSED TREE
...
--HG--
extra : amend_source : 3a70fa61052cbdaa1df2a1656880717965d1165e
2015-03-18 12:05:33 +05:30
Nigel Babu
47340db7f0
Backed out changeset 96c20db25b6b (bug 1144214) for Android M4 bustage CLOSED TREE
2015-03-18 11:48:41 +05:30
Ehsan Akhgari
e73318de31
Bug 1144236 - Add tests for the ignoreMethod match mode in DOM cache; r=bkelly
2015-03-17 23:56:32 -04:00
Ehsan Akhgari
b48d53e850
Bug 1144214 - Fix DeleteOrphanedBodyAction so that it doesn't orphan cache files if the action is canceled; r=bkelly
2015-03-17 23:56:31 -04:00
Nikhil Marathe
011987e024
Bug 1143155 - Filtered response stores internal response and allows access to headers. r=bkelly
...
--HG--
extra : rebase_source : 3fcc1d7de76e679f5055382af1159f004dd5372c
2015-03-17 08:47:01 -07:00
Ehsan Akhgari
babb2a95d5
Bug 1143222 - Avoid dumping out extremely long response bodies to the mochitest log, and re-enable the newly added DOM cache tests to run both in seqential and parallel modes; r=bkelly
...
The test timeouts here are some form of bug 1141256, which causes the service
worker spawned in the parallel mode of the tests to never start up. It turns
out that avoiding sending this huge message to the mochitest logger avoids the
issue on the infrastructure, so let's re-enable these tests. Bug 1141256 still
needs to be investigated.
2015-03-17 16:51:57 -04:00
Daniel Holbert
082fd9cd7f
Bug 1142841: Convert all nsRefPtr<nsIRunnable> to nsCOMPtr<nsIRunnable>. r=ehsan
...
This patch was generated by a script. Here's the source of the script for
future reference:
find . \( -iname "*.cpp" -o -iname "*.h" \) | \
xargs -n 1 sed -i "s/nsRefPtr<nsIRunnable>/nsCOMPtr<nsIRunnable>/g"
2015-03-17 09:29:17 -07:00
Ehsan Akhgari
eaf970dc6a
Bug 1143959 - Set the journal mode and foreign key pragmas for all DBActions; r=bkelly
...
Before this patch, we would only set these pragmas as part of CreateSchema
which runs in SetupAction. This meant that the connection used to perform
other DBActions would not have had these pragmas applied. As a result,
sqlite would not honor foreign keys on such connections, so the cascade
delete rules responsible for deleting rows from request_headers and
response_headers would not get executed when DBSchema::CachePut deleted the
old entry before adding a new one.
The test in the patch demonstrates how this could result in an observable
breakage. Before this patch, the response headers stored in the cache for
the overwritten entry would reflect both `Mirrored: `foo' and `Mirrored: bar'
headers, which means that attempting to get this header on the cached
response would return the first entry, `foo'.
2015-03-17 08:18:28 -04:00
Ehsan Akhgari
23214cf141
Bug 1143833 - Add tests for the ignoreSearch match mode in DOM cache; r=bkelly
2015-03-16 17:11:05 -04:00
Ehsan Akhgari
3355cc8ff3
Bug 1143820 - Add tests to ensure that the URL fragments are correctly ignored by the DOM Cache API; r=bkelly
2015-03-16 17:08:09 -04:00
Ehsan Akhgari
56026081c7
Bug 1143813 - Add tests for attempting to store a non-GET request in the DOM Cache; r=bkelly
2015-03-16 17:03:45 -04:00