Граф коммитов

51 Коммитов

Автор SHA1 Сообщение Дата
Bevis Tseng 44deb08f5c Bug 1151017 - Support the 'close' Event on Databases. r=khuey
Outline of this patch:

1. Define a new ipdl message called |CloseAfterInvalidationComplete| to trigger the close event after all transactions are complete only if the database is invalidated by the user agent.
2. Make sure the following event sequence is consistent during invalidation according to the steps in |5.2. Closing a database| by the following 2 solutions:
     IDBRequest.onerror -> IDBTransaction.onerror -> IDBTransaction.onabort -> IDBDatabase.onclose.
   2.1. In parent process, do not force to abort the transactions after invalidation but wait for all the transactions in its child process are complete.
   2.2. In child process, make sure that each IDBTransaction will notify its completion to the parent after all its pending IDBRequests are finished.
3. Add test_database_onclose.js to test the close event especially when read/write operation is ongoing.
4. Add test_database_close_without_onclose.js as a XPCShell test because setTimeout() is not preferred in Mochitest to ensure that the IDBDatabase.onclose event won't be sent after closed normally.
2016-05-31 18:08:20 +08:00
Kyle Huey 31dabb4558 Bug 1247117: De-namespace much of IndexedDB. r=baku 2016-02-16 13:46:08 -08:00
Andrew McCreight 9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -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
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
Olli Pettay 3b8be5cd0d Bug 1084421 - Only Events with a wrapper should trigger GC more likely, r=mccr8
--HG--
extra : rebase_source : 398e18dfc3d103ee139cc3c5d49710855c925e82
2014-10-18 02:16:58 +03:00
Peter Van der Beken dcda2ba9bb Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, remove nsWrapperCache::SetIsDOMBinding. r=bz.
--HG--
extra : rebase_source : 89c476cd9436530b2df5acc903909e34188417a0
2014-10-07 11:44:49 +02:00
Ben Turner d081140cb0 Bug 994190 - 'Modify main-thread IndexedDB to use PBackground', r=khuey. 2014-09-26 16:21:57 -07:00
Ben Turner 46d101f40c Backout bug 994190 and merge over some stuff that landed afterwards on a CLOSED TREE. 2014-09-17 19:36:01 -04:00
Ben Turner 1a91d40956 Bug 994190 - 'Modify main-thread IndexedDB to use PBackground', r=khuey.
--HG--
rename : dom/indexedDB/ipc/SerializationHelpers.h => dom/indexedDB/SerializationHelpers.h
rename : dom/indexedDB/ipc/unit/head.js => dom/indexedDB/test/unit/xpcshell-head-child-process.js
rename : dom/indexedDB/test/unit/head.js => dom/indexedDB/test/unit/xpcshell-head-parent-process.js
rename : dom/ipc/Blob.h => dom/ipc/BlobParent.h
rename : dom/ipc/FileDescriptorSetChild.cpp => ipc/glue/FileDescriptorSetChild.cpp
rename : dom/ipc/FileDescriptorSetChild.h => ipc/glue/FileDescriptorSetChild.h
rename : dom/ipc/FileDescriptorSetParent.cpp => ipc/glue/FileDescriptorSetParent.cpp
rename : dom/ipc/FileDescriptorSetParent.h => ipc/glue/FileDescriptorSetParent.h
rename : dom/ipc/PFileDescriptorSet.ipdl => ipc/glue/PFileDescriptorSet.ipdl
2014-09-13 12:12:19 -04:00
Ehsan Akhgari 1b1d6ffebf Bug 1061023 - Fix more bad implicit constructors in DOM; r=baku
--HG--
extra : rebase_source : c80c5f9d7ae28286513cdb52ad76b46c240bdd5d
2014-09-01 18:26:43 -04:00
Boris Zbarsky 79dab91ff6 Bug 991742 part 8. Remove the "aScope" argument of WebIDL/nsWrapperCache WrapObject() methods. r=bholley
This patch was mostly generated with the following command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e '/WrapObject(JSContext/ {; N; s/\(WrapObject(JSContext *\* *a\{0,1\}[Cc]x\),\n\{0,1\} *JS::Handle<JSObject\*> a\{0,1\}[sS]cope/\1/ ; }' -i ""

and then reverting the changes that made to
dom/bindings/BindingUtils.h, since those WrapObject methods are not
the ones we're trying to change here, plus a bunch of manual fixups
for cases that this command did not catch (including all the callsites
of WrapObject()).
2014-04-08 18:27:18 -04:00
Boris Zbarsky d4bd64ee2c Bug 991742 part 6. Remove the "aScope" argument of binding Wrap() methods. r=bholley
This patch was mostly generated with this command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e 's/Binding::Wrap(aCx, aScope, this/Binding::Wrap(aCx, this/' -e 's/Binding_workers::Wrap(aCx, aScope, this/Binding_workers::Wrap(aCx, this/' -e 's/Binding::Wrap(cx, scope, this/Binding::Wrap(cx, this/' -i ""

plus a few manual fixes to dom/bindings/Codegen.py, js/xpconnect/src/event_impl_gen.py, and a few C++ files that were not caught in the search-and-replace above.
2014-04-08 18:27:17 -04:00
Neil Rashbrook cf9b85f5a7 Bug 514280 Consistently declare and define IID accessors r=bsmedberg 2014-03-28 08:45:02 +00:00
Masayuki Nakano 08a11f7934 Bug 975688 part.28 Rename nsDOMEvent to mozilla::dom::Event r=smaug
--HG--
rename : dom/events/nsDOMEvent.cpp => dom/events/Event.cpp
rename : dom/events/nsDOMEvent.h => dom/events/Event.h
2014-03-05 09:37:43 +09:00
Kyle Huey d2e93ff015 Bug 903772: Part 3 - Refactor GlobalObject. r=peterv 2013-08-22 22:17:08 -07:00
Boris Zbarsky 0314f249cd Bug 895009. Don't pass in NonNull/OwningNonNull arguments to WebIDL binding consumers. r=peterv 2013-07-22 08:15:43 -04:00
Ryan VanderMeulen 7c21303600 Backed out changesets 0a196c0e9f96 (bug 895974) and 0d8aa14f5ed3 (bug 895009) for causing intermittent Linux32 mochitest-1 asserts on a CLOSED TREE. 2013-07-22 18:18:17 -04:00
Boris Zbarsky cebee2f230 Bug 895009. Don't pass in NonNull/OwningNonNull arguments to WebIDL binding consumers. r=peterv 2013-07-22 08:15:43 -04:00
Ehsan Akhgari 19b4fb2985 Bug 890405 - Remove nsIIDBVersionChangeEvent; r=janv 2013-07-11 13:36:42 -04:00
Ehsan Akhgari 60e599bc9c Backed out changeset 121171dddc5b (bug 890405) for Jetpack test failures
Landed on a CLOSED TREE
2013-07-11 13:33:19 -04:00
Ehsan Akhgari 4e6140c4d4 Bug 890405 - Remove nsIIDBVersionChangeEvent; r=janv,Mossop 2013-07-11 11:33:37 -04:00
Ehsan Akhgari fd1d2f2354 Bug 890382 - Implement a Web IDL event constructor for IDBVersionChangeEvent; r=smaug 2013-07-05 13:57:28 -04:00
Ehsan Akhgari a7786da45b Backed out changeset 170e1863b9b6 (bug 890382) because of xpcshell test failures 2013-07-04 20:59:44 -04:00
Ehsan Akhgari 1e6a689354 Bug 890382 - Implement a Web IDL event constructor for IDBVersionChangeEvent; r=smaug 2013-07-04 18:12:39 -04:00
Boris Zbarsky b834439797 Bug 864727 part 5. Make all the WrapObject methods take a handle for the scope object. r=ms2ger 2013-04-25 12:29:54 -04:00
Olli Pettay 4c521cb404 Bustage fix for Bug 847607, CLOSED TREE
--HG--
extra : rebase_source : 5813d5213ce7aad43c6e8e74792e21656864200e
2013-03-12 20:47:21 +02:00
Olli Pettay 7cbf366952 Bug 847607 - Paris bindings for IDB event, r=khuey
--HG--
extra : rebase_source : de5c4ba79b8d990b25abaabd3892847f286737fd
2013-03-12 19:45:59 +02:00
Olli Pettay eaf67cc919 Bug 822399 - Make Event to use Paris bindings, r=peterv 2013-03-09 13:34:29 +02:00
Ehsan Akhgari e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -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 PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Aryeh Gregor d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Gervase Markham 82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Kyle Huey c03fa0a540 Bug 692635: Transaction abort events should bubble. r=sicking 2011-11-23 09:15:15 -05:00
Ben Turner 62e17c5846 Bug 692671: IndexedDB: remove timeout in database operations. r=sicking. 2011-11-08 09:43:00 -08:00
Kyle Huey bee1f84b2f Bug 687361: Implement the new IndexedDB setVersion API. r=bent
--HG--
rename : dom/indexedDB/nsIIDBVersionChangeRequest.idl => dom/indexedDB/nsIIDBOpenDBRequest.idl
2011-10-20 12:10:56 -04:00
Michael Wu d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Ben Turner 9b0dc88cb6 Bug 622042 - 'IndexedDB: Rework events and requests'. r=sicking, a=sicking. 2011-01-06 22:21:36 -08:00
Ben Turner 06b9c71a4a Bug 613083 - 'IndexedDB: Switch serialization format from JSON to structured clone bytestream'. r=sicking, a=blocking. 2010-12-21 11:02:04 -05:00
Ben Turner 5583c79faf Bug 607729 - 'IndexedDB: Allow IndexedDB events to propagate, and error events to hit window.error'. r=sicking, a=blocking+ 2010-11-10 15:26:03 -08:00
Ben Turner b682a58ad1 Bug 601774 - 'IndexedDB: Audit exceptions thrown from indexedDB methods'. r=sicking, a=blocking+ 2010-11-10 15:25:44 -08:00
Ben Turner 027592ef2a Bug 603811 - 'IndexedDB: Implement setVersion changes to the spec'. r=sicking, a=blocking2.0-betaN+ 2010-10-19 10:58:52 -07:00
Peter Van der Beken df9b07548e Bug 592352 - 'Assertbotch on shutdown after IDB solo mochitest -- leaked contexts?'. r=bent. 2010-09-13 15:32:56 -07:00
David Mandelin 0213339141 Backed out changeset 834e5fb759c2 -- appears to be causing leaks on mochitest-browser-chrome 2010-09-13 18:34:11 -07:00
Peter Van der Beken 511524fbed Bug 592352 - 'Assertbotch on shutdown after IDB solo mochitest -- leaked contexts?'. r=bent. 2010-09-13 15:32:56 -07:00
Robert Sayre 9b4b59c837 Merge mozilla-central to tracemonkey.
--HG--
rename : dom/indexedDB/IDBCursorRequest.cpp => dom/indexedDB/IDBCursor.cpp
rename : dom/indexedDB/IDBCursorRequest.h => dom/indexedDB/IDBCursor.h
2010-06-30 11:54:20 -07:00
Robert Sayre 09c9e748a4 Do a trivial rooting change instead of the more involved one I tried after the merge. 2010-06-25 14:54:22 -07:00
Robert Sayre 514faf210c Fix rooting API differences. will get review after the fact, taking care of bustage now. 2010-06-23 19:24:28 -07:00
Ben Turner 4334db65c2 Bug 553413 - 'Implement Asynchronous parts of the Indexed Database API.' p=sdwilsh+bent, r=jst. 2010-06-23 12:46:08 -07:00
Ben Turner d4a7c32a21 Bug 575399 - 'IndexedDB: Remove XPConnect slow paths from some IndexedDB methods'. r=sdwilsh 2010-06-28 15:22:41 -07:00
Shawn Wilsher c4b3932911 Bug 574811 - Rename IDBObjectStoreRequest to IDBObjectStore
Updating interface names per recent specification changes.
r=bent

--HG--
rename : dom/indexedDB/IDBObjectStoreRequest.cpp => dom/indexedDB/IDBObjectStore.cpp
rename : dom/indexedDB/IDBObjectStoreRequest.h => dom/indexedDB/IDBObjectStore.h
2010-06-28 11:51:06 -07:00