d961feae78d0db917b1e6e41a938605e0f57f829: Merge m-c to graphics
Kartikaya Gupta <kgupta@mozilla.com> - Thu, 30 Mar 2017 08:55:36 -0400 - rev 399429
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Merge m-c to graphics MozReview-Commit-ID: IhFmzYDQJte
e11dc9ddab7a4dcbbda01bbbc8572bf8bfc0dbe3: Bug 1339575 - Add pref to create color layers for nsDisplaySolidColor. r=mstange
Jamie Nicol <jnicol@mozilla.com> - Mon, 13 Mar 2017 16:02:09 +0000 - rev 399428
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1339575 - Add pref to create color layers for nsDisplaySolidColor. r=mstange Switched off for now as it causes reftest failures. MozReview-Commit-ID: EzU8fhncppS
720b9177c6856c1c4339d0fac1bf5149c0d53950: No bug, Automated HPKP preload list update from host bld-linux64-spot-388 - a=hpkp-update
ffxbld - Wed, 05 Apr 2017 08:18:11 -0700 - rev 399427
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
No bug, Automated HPKP preload list update from host bld-linux64-spot-388 - a=hpkp-update
d47e927c1dcc19339749f3662c8c24e1c1f848d9: No bug, Automated HSTS preload list update from host bld-linux64-spot-388 - a=hsts-update
ffxbld - Wed, 05 Apr 2017 08:18:09 -0700 - rev 399426
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
No bug, Automated HSTS preload list update from host bld-linux64-spot-388 - a=hsts-update
3854bcf837a729374b4d345910c274fed12cffe4: merge mozilla-inbound to mozilla-central a=merge
Carsten "Tomcat" Book <cbook@mozilla.com> - Wed, 05 Apr 2017 14:33:35 +0200 - rev 399425
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
merge mozilla-inbound to mozilla-central a=merge
abdb79a72b8177377404ddbc6d9d06c0ffa8f07c: Bug 1351136 (follow-up) - Fix a harmless argument mis-ordering in a call to profiler_get_start_params(). r=me.
Nicholas Nethercote <nnethercote@mozilla.com> - Wed, 05 Apr 2017 11:56:37 +1000 - rev 399424
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1351136 (follow-up) - Fix a harmless argument mis-ordering in a call to profiler_get_start_params(). r=me. Found by Coverity.
72f31ba9e92b20a71a221463719951f9903e2ce4: Bug 1353197 - Add a test for URLSearchParams handling of non-ASCII keys in the record<> ctor, r=annevk
Andrea Marchesini <amarchesini@mozilla.com> - Wed, 05 Apr 2017 08:09:33 +0200 - rev 399423
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1353197 - Add a test for URLSearchParams handling of non-ASCII keys in the record<> ctor, r=annevk
975e8f26034796f3bc7b9f0aa18cba4e4e5cf05c: Bug 1346145 - Label nsIDocument::SelectorCache. r=ehsan
Bevis Tseng <btseng@mozilla.com> - Mon, 13 Mar 2017 14:49:28 +0800 - rev 399422
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1346145 - Label nsIDocument::SelectorCache. r=ehsan SelectorCache::NotifyExpired() will be invoked by nsExpirationTracker::TimerCallback() from an unlabel runnable. We adopt the change in nsExpirationTracker to provide a DocGroup EventTarget for the invocation of this callback.
899fd5a47a205adc5ce28ea57e8426a299c79dd3: Bug 1345464 - Add an optional EventTarget to nsExpirationTracker to support Labeling for Quantum-DOM. r=froydnj
Bevis Tseng <btseng@mozilla.com> - Thu, 30 Mar 2017 09:23:36 -0400 - rev 399421
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1345464 - Add an optional EventTarget to nsExpirationTracker to support Labeling for Quantum-DOM. r=froydnj
3ee3add6393dd5923d91328ba47f0a6f55f33f41: Bug 1350177 - Part 3: Refactor SurfaceCache with ExpirationTrackerImpl. r=froydnj,aosmond
Bevis Tseng <btseng@mozilla.com> - Mon, 27 Mar 2017 21:47:23 -0400 - rev 399420
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1350177 - Part 3: Refactor SurfaceCache with ExpirationTrackerImpl. r=froydnj,aosmond Always acquire StaticMutexAutoLock for the use of ExpirationTrackerImpl.
8f496e855383001c787bc218281594abafb7bf2b: Bug 1350177 - Part 2: Fix compiling error after ExpirationTrackerImpl is introduced. r=mystor
Bevis Tseng <btseng@mozilla.com> - Wed, 29 Mar 2017 15:48:47 -0400 - rev 399419
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1350177 - Part 2: Fix compiling error after ExpirationTrackerImpl is introduced. r=mystor
cd56b45db4eb8ce629624a007f2943ea0c8cb632: Bug 1350177 - Part 1: Define ExpirationTrackerImpl as a Thread-Safe Tracker. r=froydnj
Bevis Tseng <btseng@mozilla.com> - Mon, 27 Mar 2017 19:37:29 +0800 - rev 399418
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1350177 - Part 1: Define ExpirationTrackerImpl as a Thread-Safe Tracker. r=froydnj 1. Define ExpirationTrackerImpl which requires AutoLock before calling Tracker APIs. 2. Move expiration logic from nsExpirationTracker to ExpirationTrackerImpl. 3. Keep nsExprationTracker un-thread-safe with fake Lock acquired.
c03d368159cbf653df19416dab2b013eb59b649a: Bug 1346109. Call NotifyApproximateFrameVisibilityUpdate after we set a display port base rect. r=botond
Timothy Nikkel <tnikkel@gmail.com> - Wed, 05 Apr 2017 00:18:11 -0500 - rev 399417
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1346109. Call NotifyApproximateFrameVisibilityUpdate after we set a display port base rect. r=botond NotifyApproximateFrameVisibilityUpdate gets the displayport so we want the base rect set before calling it. We also don't want to record the displayport if we ignored it in the actual visibility pass.
19c4e80bee84eb2515f71df3649423245d0c13d5: Bug 1353181 followup - Fix non-DEBUG warnings-as-errors bustage.
L. David Baron <dbaron@dbaron.org> - Tue, 04 Apr 2017 21:42:18 -0700 - rev 399416
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1353181 followup - Fix non-DEBUG warnings-as-errors bustage.
63a14b2f3c7432bc2898a5f814a6ad84539cd8ad: Bug 1353187 - Guard access to the frame property table with a frame state bit. r=dholbert
L. David Baron <dbaron@dbaron.org> - Tue, 04 Apr 2017 20:59:21 -0700 - rev 399415
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1353187 - Guard access to the frame property table with a frame state bit. r=dholbert This protects all accesses to the frame property table with a bit stored on the frame. This means we avoid hashtable operations when asking about frame properties on frames that have no properties. The changes to RestyleManager, and the new HasSkippingBitCheck API, are needed because RestyleManager depended on being able to ask for properties on a deleted frame (knowing that the property in question could not have been set on any new frames since the deleted frame was destroyed), in order to use the destruction of the properties that happens at frame destruction as a mechanism for learning that the frame was destroyed. The changes there preserve the use of that mechanism, although it becomes a bit uglier. The ugliness is well-deserved. MozReview-Commit-ID: BScmDUlWq65
c3075684667085325129a6ae7fb0375e476b9036: Bug 1353187 - Give frame properties the const-ness semantics of member variables. r=dholbert
L. David Baron <dbaron@dbaron.org> - Tue, 04 Apr 2017 20:59:21 -0700 - rev 399414
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1353187 - Give frame properties the const-ness semantics of member variables. r=dholbert This makes it so that, given a |const nsIFrame*|, a caller can retrieve properties but not set or remove them, but with an |nsIFrame*| all operations are allowed. I believe this is sensible since properties act as extended member variables for things that are needed rarely, and these are the const-ness semantics of member variables. This also avoids the need for const_cast<nsIFrame*> to cast away const in the following patch, which guards property access with a frame state bit. MozReview-Commit-ID: IJ9JnGzdH51
e4ac2148c9204c4a61f572b947a9e998b83ccfc9: Bug 1352888 - Don't set the collision flag when adding to PLDHashTable if we've already found the entry we're going to add. r=njn
L. David Baron <dbaron@dbaron.org> - Tue, 04 Apr 2017 20:59:21 -0700 - rev 399413
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1352888 - Don't set the collision flag when adding to PLDHashTable if we've already found the entry we're going to add. r=njn PLDHashTable's entry store has two types of unoccupied entries: free entries and removed entries. The search of a chain of entries (determined by the hash value) in the entry store to search for an entry can stop at free entries, but it continues across removed entries, because removed entries are entries that may have been skipped over when we were adding the value we're searching for to the hash, but have since been removed. For live entries, we also maintain this distinction by using one bit of storage for a collision flag, which notes that if the hashtable entry is removed, its place in the entry store must become a removed entry rather than a free entry. When we add a new entry to the table, Add's semantics require that we return an existing entry if there is one, and only create a new entry if no existing entry exists. (Bug 1352198 suggests the possibility of a faster alternative Add API where the caller guarantees that the key is not already in the hashtable.) When we search for the existing entry, we must thus continue the search across removed entries, even though we record the first removed entry found to return if the search for an existing entry fails. The existing code adds the collision flag through the entire table search during an Add. This patch changes that behavior so that we only add the collision flag prior to finding the first removed entry. Adding it after we find the first removed entry is unnecessary, since we are not making that entry part of a path to a new entry. If it is part of a path to an existing entry, it will already have the collision flag set. This patch effectively puts an if (!firstRemoved) around the else branch of the if (MOZ_UNLIKELY(EntryIsRemoved(entry))), and then refactors that condition outwards since it is now around the contents of both the if and else branches. MozReview-Commit-ID: CsXnMYttHVy
b6f0b34e87f26826fb65c9889d6d1f24fc6f200c: Bug 1353181 - Make nsStringBuffer's reference count use the minimum memory synchronization needed. r=froydnj
L. David Baron <dbaron@dbaron.org> - Tue, 04 Apr 2017 20:59:21 -0700 - rev 399412
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1353181 - Make nsStringBuffer's reference count use the minimum memory synchronization needed. r=froydnj This is the same optimization made for ThreadSafeAutoRefCnt in bug 1277709. However, nsStringBuffer uses a 32-bit reference count all the time, so it can't easily use ThreadSafeAutoRefCnt. MozReview-Commit-ID: LpB3xaYbaEE
24f889bd554967c3008fd325c36903b5651188af: Bug 1277709 - Make threadsafe reference counting use the minimum memory sychronization needed. r=froydnj
L. David Baron <dbaron@dbaron.org> - Tue, 04 Apr 2017 20:59:20 -0700 - rev 399411
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1277709 - Make threadsafe reference counting use the minimum memory sychronization needed. r=froydnj This uses std::atomic rather than mozilla::Atomic since mozilla::Atomic does not support using different memory synchronization for different atomic operations on the same variable. The added comments could use careful review since, while they reflect my understanding of the issue, I don't consider myself an expert on the topic. MozReview-Commit-ID: 7xByCXt17Dr
ae40354e5a083eb11e1491028d0cdfe3be5e31a8: Bug 1348936 - Fix BasicPlanarYCbCrImage::CopyData() r=nical
sotaro <sotaro.ikeda.g@gmail.com> - Wed, 05 Apr 2017 11:45:13 +0900 - rev 399410
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1348936 - Fix BasicPlanarYCbCrImage::CopyData() r=nical
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip