Merge inbound to mozilla-central r=merge a=merge
authorGurzau Raul <rgurzau@mozilla.com>
Mon, 04 Dec 2017 00:17:25 +0200
changeset 394617 709f355a7a8c4ae426d1824841a71ffdb5ce0137
parent 394613 574f4f58fe09dd590ea892406e237318c31705b4 (current diff)
parent 394616 3622fedf746420df0d82bb25ea7432715b7cea17 (diff)
child 394635 785572419acc82b2cbdcd2e24ca59fdbf5d7255f
child 394771 619f6b32ec218915870c196f24eb5342d59c97b7
push id33015
push userrgurzau@mozilla.com
push dateSun, 03 Dec 2017 22:17:47 +0000
treeherdermozilla-central@709f355a7a8c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmerge, merge
milestone59.0a1
first release with
nightly linux32
709f355a7a8c / 59.0a1 / 20171204100103 / files
nightly linux64
709f355a7a8c / 59.0a1 / 20171204100103 / files
nightly mac
709f355a7a8c / 59.0a1 / 20171204100103 / files
nightly win32
709f355a7a8c / 59.0a1 / 20171204100103 / files
nightly win64
709f355a7a8c / 59.0a1 / 20171204100103 / files
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
releases
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Merge inbound to mozilla-central r=merge a=merge
testing/web-platform/tests/webdriver/tests/element_retrieval/find_element_from_elements.py
--- a/gfx/layers/ipc/CompositorVsyncScheduler.cpp
+++ b/gfx/layers/ipc/CompositorVsyncScheduler.cpp
@@ -129,23 +129,28 @@ CompositorVsyncScheduler::PostCompositeT
     RefPtr<CancelableRunnable> task = NewCancelableRunnableMethod<TimeStamp>(
       "layers::CompositorVsyncScheduler::Composite",
       this,
       &CompositorVsyncScheduler::Composite,
       aCompositeTimestamp);
     mCurrentCompositeTask = task;
     ScheduleTask(task.forget(), 0);
   }
+}
+
+void
+CompositorVsyncScheduler::PostVRTask(TimeStamp aTimestamp)
+{
   MonitorAutoLock lockVR(mCurrentVRListenerTaskMonitor);
   if (mCurrentVRListenerTask == nullptr && VRListenerThreadHolder::Loop()) {
     RefPtr<CancelableRunnable> task = NewCancelableRunnableMethod<TimeStamp>(
       "layers::CompositorVsyncScheduler::DispatchVREvents",
       this,
       &CompositorVsyncScheduler::DispatchVREvents,
-      aCompositeTimestamp);
+      aTimestamp);
     mCurrentVRListenerTask = task;
     MOZ_ASSERT(VRListenerThreadHolder::Loop());
     VRListenerThreadHolder::Loop()->PostDelayedTask(Move(task.forget()), 0);
   }
 }
 
 void
 CompositorVsyncScheduler::ScheduleComposition()
@@ -225,16 +230,17 @@ bool
 CompositorVsyncScheduler::NotifyVsync(TimeStamp aVsyncTimestamp)
 {
   // Called from the vsync dispatch thread. When in the GPU Process, that's
   // the same as the compositor thread.
   MOZ_ASSERT_IF(XRE_IsParentProcess(), !CompositorThreadHolder::IsInCompositorThread());
   MOZ_ASSERT_IF(XRE_GetProcessType() == GeckoProcessType_GPU, CompositorThreadHolder::IsInCompositorThread());
   MOZ_ASSERT(!NS_IsMainThread());
   PostCompositeTask(aVsyncTimestamp);
+  PostVRTask(aVsyncTimestamp);
   return true;
 }
 
 void
 CompositorVsyncScheduler::CancelCurrentCompositeTask()
 {
   MOZ_ASSERT(CompositorThreadHolder::IsInCompositorThread() || NS_IsMainThread());
   MonitorAutoLock lock(mCurrentCompositeTaskMonitor);
--- a/gfx/layers/ipc/CompositorVsyncScheduler.h
+++ b/gfx/layers/ipc/CompositorVsyncScheduler.h
@@ -50,16 +50,17 @@ public:
   bool NotifyVsync(TimeStamp aVsyncTimestamp);
   void SetNeedsComposite();
   void OnForceComposeToTarget();
 
   void ScheduleTask(already_AddRefed<CancelableRunnable>, int);
   void ResumeComposition();
   void ComposeToTarget(gfx::DrawTarget* aTarget, const gfx::IntRect* aRect = nullptr);
   void PostCompositeTask(TimeStamp aCompositeTimestamp);
+  void PostVRTask(TimeStamp aTimestamp);
   void Destroy();
   void ScheduleComposition();
   void CancelCurrentCompositeTask();
   bool NeedsComposite();
   void Composite(TimeStamp aVsyncTimestamp);
   void ForceComposeToTarget(gfx::DrawTarget* aTarget, const gfx::IntRect* aRect);
 
   const TimeStamp& GetLastComposeTime()
--- a/testing/modules/AppInfo.jsm
+++ b/testing/modules/AppInfo.jsm
@@ -58,16 +58,17 @@ this.newAppInfo = function(options = {})
     // nsIXULRuntime
     inSafeMode: false,
     logConsoleErrors: true,
     OS,
     XPCOMABI: "noarch-spidermonkey",
     invalidateCachesOnRestart() {},
     shouldBlockIncompatJaws: false,
     processType: origRuntime.processType,
+    uniqueProcessID: origRuntime.uniqueProcessID,
 
     // nsIWinAppHelper
     get userCanElevate() {
       return false;
     },
   };
 
   let interfaces = [Ci.nsIXULAppInfo,
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -373750,28 +373750,28 @@
     ]
    ],
    "webdriver/tests/element_retrieval/find_element_from_element.py": [
     [
      "/webdriver/tests/element_retrieval/find_element_from_element.py",
      {}
     ]
    ],
-   "webdriver/tests/element_retrieval/find_element_from_elements.py": [
-    [
-     "/webdriver/tests/element_retrieval/find_element_from_elements.py",
-     {}
-    ]
-   ],
    "webdriver/tests/element_retrieval/find_elements.py": [
     [
      "/webdriver/tests/element_retrieval/find_elements.py",
      {}
     ]
    ],
+   "webdriver/tests/element_retrieval/find_elements_from_element.py": [
+    [
+     "/webdriver/tests/element_retrieval/find_elements_from_element.py",
+     {}
+    ]
+   ],
    "webdriver/tests/element_retrieval/get_active_element.py": [
     [
      "/webdriver/tests/element_retrieval/get_active_element.py",
      {}
     ]
    ],
    "webdriver/tests/element_send_keys/interactability.py": [
     [
@@ -404018,17 +404018,17 @@
    "01d4ce834d175d13eb0d9c80bbe4a7be614d687f",
    "testharness"
   ],
   "content-security-policy/securitypolicyviolation/blockeduri-inline.html": [
    "8e7326101e28ec65c6c834f7711b261917f93218",
    "testharness"
   ],
   "content-security-policy/securitypolicyviolation/idl.html": [
-   "5f2ff4a87aa476168cf3d13b10a8d81a387b8e42",
+   "fb8f2938d76a29cc68c46fb49a12feebc0031e54",
    "testharness"
   ],
   "content-security-policy/securitypolicyviolation/img-src-redirect-upgrade-reporting.https.html": [
    "e338e94ea726419db64ed5b98c95b862c394409e",
    "testharness"
   ],
   "content-security-policy/securitypolicyviolation/img-src-redirect-upgrade-reporting.https.html.headers": [
    "960ee8a9f7ccf33ea435890e2eae0e68399f32ed",
@@ -404174,17 +404174,17 @@
    "e7701f6321aa4097abd88639897da5c195e2a7c1",
    "testharness"
   ],
   "content-security-policy/style-src/style-src-imported-style-allowed.sub.html": [
    "2ae5cad18d02c571c116f8bc5701c0738f23146c",
    "testharness"
   ],
   "content-security-policy/style-src/style-src-imported-style-blocked.html": [
-   "e59517d75d3fbc29b701ffa296b7dd007a05c79d",
+   "a7d3453f54478b773e4d5702a7d83f0a38664f19",
    "testharness"
   ],
   "content-security-policy/style-src/style-src-injected-inline-style-allowed.html": [
    "7812c54f33440a2499286cdef2541af364ebf270",
    "testharness"
   ],
   "content-security-policy/style-src/style-src-injected-inline-style-blocked.html": [
    "15457d092bbf319ad9cc664ad47cbb5c2ef4af44",
@@ -576549,24 +576549,24 @@
   "webdriver/tests/element_retrieval/find_element.py": [
    "2a4cdf4c703493f7c90fc3473daa27660ac61e11",
    "wdspec"
   ],
   "webdriver/tests/element_retrieval/find_element_from_element.py": [
    "f036ef93adff21a7c83eeb8b131c96b6553b9fcb",
    "wdspec"
   ],
-  "webdriver/tests/element_retrieval/find_element_from_elements.py": [
-   "131c25ffbde611f98e29b778d7c861ae9619b2f6",
-   "wdspec"
-  ],
   "webdriver/tests/element_retrieval/find_elements.py": [
    "2d5c3c98b00e21a36f91e5797bb97835a8b63f2e",
    "wdspec"
   ],
+  "webdriver/tests/element_retrieval/find_elements_from_element.py": [
+   "131c25ffbde611f98e29b778d7c861ae9619b2f6",
+   "wdspec"
+  ],
   "webdriver/tests/element_retrieval/get_active_element.py": [
    "918c6e48047f31a088ec44e9b0d070b0ae3d6077",
    "wdspec"
   ],
   "webdriver/tests/element_send_keys/__init__.py": [
    "da39a3ee5e6b4b0d3255bfef95601890afd80709",
    "support"
   ],
rename from testing/web-platform/tests/webdriver/tests/element_retrieval/find_element_from_elements.py
rename to testing/web-platform/tests/webdriver/tests/element_retrieval/find_elements_from_element.py