Commit Graph

89 Commits

Author SHA1 Message Date
Shu-yu Guo
64db2267cf Bug 1202902 - Mass replace toplevel 'let' with 'var' in preparation for global lexical scope. (rs=jorendorff) 2015-09-15 11:19:45 -07:00
Gregor Wagner
a94a444a52 Bug 1202374 - "Can't open apps any more". r=lissyx+mozillians 2015-09-07 03:51:00 +02:00
Alexandre Lissy
2b068eac41 Bug 1193469 - Make mozSettings more defensive. r=gwagner 2015-08-13 14:43:00 -04:00
Alexandre Lissy
2d0507f80d Bug 1107329 - Add locks tasks queue vivacity checking. r=qdot
To help diagnosing further issues with the Settings API getting blocked,
we add some tracking of the tasks and locks queue vivacity. We ensure to
keep track of the last lock id at the head of the queue, and we verify
whether it does not stays on top of it for too long.
2014-12-24 01:30:00 -05:00
Kyle Machulis
270a684d66 Bug 1110872 - Readd cleanup for live locks in SettingsManager; r=gerard-majax 2014-12-18 09:27:06 -08:00
Alexandre Lissy
51143af486 Bug 1110091 - Fix mozSettings logging use of Services. r=qdot 2014-12-11 03:32:00 +01:00
Alexandre Lissy
7b995f0ea3 Bug 1106896 - Improve debug and error reporting in mozSettings. r=qdot
We break down the logging capabilities into two classes: debug and
verbose. Verbose will help to track everything that happens, while debug
should just report error cases. We also augment memory reports with
values to help tracking potential issues like: queue blockage, leaking,
etc.
2014-12-02 14:50:00 +01:00
Alexandre Lissy
7413aa0cdc Bug 1082001 - Cleanup settings lock from parent itself. r=bent
From bug 1065128 SettingsManager has been changed to listen the
dom-window-destroyed event for its cleanup. However, when running Gaia
in Mulet, a race condition is exposed. For B2G, when loading a page,
about:blank is first used. This means that window destroyed events will
be triggered. However, from the dom-window-destroyed event we cannot
distinguish whether this is about:blank or a legit application being
closed. SettingsManager gets initialized (i.e., init() called) when the
application makes use of navigator.mozSettings. So the chain of event is
that we have a SettingsManager living because System app did some
request. At this time, about:blank is being unloaded and triggers a
dom-window-destroyed event. This makes SettingsManager doing its
cleanup, especially freeing the window reference. Then in the meantime,
we have the navigator.mozSettings use that is progressing. At some
point, SettingsManager has no more window to send messages to, and Gaia
is not able to even start.

SettingsRequestManager lives on the parent process and SettingsManager
lives on the child side. Part of the cleanup performed by
SettingsManager was to ensure pending locks on the parent process would
be forced to finalize to make sure those are being properly committed.
We move this cleanup to SettingsRequestManager and we augment the lock
informations with the proper inner window id. This way we can track
which lock is attached to which inner window when the lock gets created.
And thus we can listen on inner-window-destroyed from
SettingsRequestManager to be able to force finalize on any pending lock.
Impacted code path are those were we are not running out of process.
When we are running out of process, SettingsRequestManager already
listens on the child-process-shutdown event to perform the lock
finalization.
2014-10-29 02:36:00 -04:00
Kyle Machulis
5fbfd60a9d Bug 1073259 - Print more descriptive errors when SettingsManager tries to make a request with an invalid window. r=bent 2014-10-17 05:24:00 -04:00
Kyle Machulis
0b5f5b17f3 Bug 1071721 - Call destroyDOMRequestHelper on SettingsLock after transaction ends; r=bent 2014-09-23 13:13:50 -07:00
Kyle Machulis
abed0464a7 Bug 1069605 - Only send messages in SettingsLocks when window is live; r=bent 2014-09-18 17:23:00 -07:00
Kyle Machulis
f52164c1b5 Bug 1068962 - Fix settings lock ownership array splice; r=bent
--HG--
extra : rebase_source : 0374ddeaffe0936ac7bb78aff0fc5b3a467c3bd1
2014-09-18 10:08:36 -07:00
Kyle Machulis
10c38bbb14 Bug 1065128 - Make SettingsManager use dom-window-destroyed for shutdown; r=bent 2014-09-15 13:39:20 -07:00
Kyle Machulis
b979b13529 Bug 1061805 - Make sure Settings API only calls finalize once; r=bent 2014-09-15 09:29:29 -07:00
Kyle Machulis
ac100d8a06 Bug 1062087 - Fix undefined variable error messages in Settings API; r=bent 2014-09-05 18:39:54 -07:00
Kyle Machulis
8ae0266d8f Bug 1015518 - Use SettingsRequestManager as SettingsService Backend; r=bent 2014-08-27 21:01:31 -07:00
Kyle Machulis
7d5df891b8 bug 900551 - Settings API OOP; r=bent 2014-08-27 21:01:29 -07:00
Kyle Machulis
93c0c45ea9 Bug 846200 - Support for granting settings permissions on a per-permission basis; r=bent
--HG--
extra : rebase_source : 941bc56c900d6eb96a49af80be2b328155c0ea45
2014-08-27 21:01:29 -07:00
Ryan VanderMeulen
a408d636f2 Backed out 11 changesets (bug 1059079, bug 1015518, bug 900551, bug 846200) for Gaia UI test failures on a CLOSED TREE.
Backed out changeset d85b4e48b3b4 (bug 1015518)
Backed out changeset 663b73ba69ec (bug 1015518)
Backed out changeset 5cf1cb5fa022 (bug 900551)
Backed out changeset b953dd5bfdaa (bug 900551)
Backed out changeset a2b6d7c84100 (bug 900551)
Backed out changeset ceb79fe83d15 (bug 900551)
Backed out changeset f6acf344fbf0 (bug 900551)
Backed out changeset fa269ea53937 (bug 846200)
Backed out changeset b89c84a850f9 (bug 846200)
Backed out changeset b7a7dfbe4e3f (bug 846200)
Backed out changeset c6f54d821c11 (bug 1059079)
2014-08-28 12:49:49 -04:00
Kyle Machulis
2efdf70b95 Bug 1015518 - Use SettingsRequestManager as SettingsService Backend; r=bent 2014-08-27 21:01:31 -07:00
Kyle Machulis
91d2336a9b Bug 900551 - Settings API OOP; r=bent 2014-08-27 21:01:29 -07:00
Kyle Machulis
e82cbad302 Bug 846200 - Support for granting settings permissions on a per-permission basis; r=bent 2014-08-27 21:01:29 -07:00
Edgar Chen
d4208bc2a3 Bug 1053733 - SettingsManager sends register message to SettingsChangeNotifier again when receives Settings:Notifier:Init:OK. r=qdot 2014-08-14 12:17:39 +08:00
Kyle Machulis
de2e16fbcc Backed out d71120161e89 b5d49f1885af (bug 846200) due to missing xpc shell test fix patch 2014-08-20 12:01:18 -07:00
Kyle Machulis
86a6d3c36d Bug 846200 - Support for granting settings permissions on a per-permission basis 2014-08-20 10:40:37 -07:00
Ed Morley
0f03572425 Backed out changeset a880d4e0d656 (bug 846200) for xpcshell failures in test_bug808734.js; CLOSED TREE 2014-08-19 09:17:30 +01:00
Kyle Machulis
0549181b4e Bug 846200 - Support for granting settings permissions on a per-permission basis; r=bent 2014-08-18 22:06:54 -07:00
Andrea Marchesini
55469e4be7 Bug 1046839 - Unnecessary double cloneInto in mozSettings, r=bholley 2014-07-31 17:46:23 +01:00
Nicholas Nethercote
aaf6fb2124 Bug 1010064 - Allow memory reports to be anonymized. r=bsmedberg.
--HG--
extra : rebase_source : 5eb756b17a97e751deb0f47e909fdb35533cb23b
2014-05-20 23:06:54 -07:00
Gijs Kruitbosch
c30e9aef10 Bug 1022003 - remove ObjectWrapper.jsm, r=bholley,gwagner
--HG--
extra : rebase_source : cdafaf22aaddbb04519a9bc1099b6a10f7b6c886
2014-06-10 16:15:42 +01:00
Ben Turner
36818ba16c Bug 980549 - Simplify SettingsManager transaction management, r=gwagner.
--HG--
extra : rebase_source : 9378c05ec7a5de6f4f692680f2d4aa08b0d32957
2014-05-06 14:14:23 -07:00
Kyle Huey
52e66a793b Bug 993203: Add a memory reporter to count SettingsManager observers. r=njn 2014-04-08 16:37:09 -07:00
Fabrice Desré
0b097b1807 Bug 966502 - Use Cu.cloneInto() instead of ObjectWrapper.jsm r=baku 2014-02-01 11:06:59 -08:00
Gregor Wagner
9eefa26946 Bug 921721 - NS_ERROR_UNEXPECTED in airplane_mode.js when restarting B2G. r=bent 2013-11-01 07:54:21 -07:00
Jan Varga
01428648b0 Bug 832883 - Move IDBKeyRange to WebIDL and define indexedDB/IDBKeyRange in all the spots. r=khuey,bent (initial work done by Ms2ger) 2013-09-28 13:25:46 +02:00
Fabrice Desré
470094f7f6 Bug 806374 - Don't store phone's wallpaper or the dialer ringtone or the notification ringtone as a data: URI in the settings DB r=gwagner 2013-08-11 08:41:59 -07:00
Reuben Morais
a1a8e52ed5 Bug 894964 - Stop throwing on navigator.mozSettings access if the page does not have settings permission. r=gwagner
--HG--
extra : rebase_source : 1f6432f6ae1729d2f97cd833a3c5882ee8cc3a4e
2013-07-17 13:32:39 -07:00
Reuben Morais
ea38b25c81 Bug 889503 - Move Settings API to WebIDL. r=gwagner r=bz
--HG--
extra : rebase_source : 9f858f389b71344353658d4ed49996e0d90b8b99
2013-07-15 18:17:46 -07:00
Gregor Wagner
696c13ed02 Bug 872983 - event.settingValue in mozSettings.onsettingchange gives wrong value. r=fabrice 2013-05-31 11:42:10 -04:00
Gregor Wagner
f3233c0932 Bug 859601 - mozSetting API - return undefined if the API is unsupported on the platform, not null. r=bent 2013-04-11 20:40:44 -07:00
Reuben Morais
807a748b11 Bug 821630 - Fix retrieving blobs with get() in Settings API. r=gwagner 2013-03-11 22:31:15 -07:00
Reuben Morais
e4e518e0f3 Bug 849616 - Use ObjectWrapper.jsm instead of __exposedProps__ in Settings API. r=gwagner
--HG--
extra : rebase_source : b6f492515c0735e8d16fb3f9e903389b09ae3943
2013-03-11 22:31:19 -07:00
Reuben Morais
55e5d71b15 Backed out changeset e56f3e0f00d9 (Bug 821630) for B2G mochitest failures 2013-03-12 02:14:46 -07:00
Reuben Morais
87079a3d76 Bug 821630 - Fix retrieving blobs with get() in Settings API. r=gwagner 2013-03-11 22:31:15 -07:00
Reuben Morais
c32d0a6ca9 Bug 793239 - SettingsLock should have a state property to indicate if it is still valid; r=gwagner 2013-01-15 22:32:49 -05:00
Ehsan Akhgari
6002e1ea4a Backed out changeset 89942aa8ae6a (bug 793239) because of mochitest-3 failure 2013-01-15 20:48:34 -05:00
Reuben Morais
1833ad56d2 Bug 793239 - SettingsLock should have a state property to indicate if it is still valid. r=gwagner 2013-01-15 16:32:15 -08:00
Gregor Wagner
899c9a92bb Bug 821814 - Followup: disable debug flag. r=me 2013-01-07 16:16:17 +01:00
Gregor Wagner
5e98bfb6a2 Bug 827237 - Wifi: ap list in settings is empty. r=bent 2013-01-07 15:03:26 +01:00
Gregor Wagner
9e5ffb8cc2 Bug 821814 - Settings: upgrade settings DB after settings.json changed. r=bent 2013-01-04 16:04:28 -08:00