Here, we calculate the recovery time from two different start points because that when GPU crashes, VideoDecoderChild::ActorDestory() is called, but VideoDecoderChild doesn't dispatch events to trigger decoder recreation immediately.
Instead, it waits until a new VideoDecoderManager has been recreated [1], and then rejects all pending promises to MFR with a NS_ERROR_DOM_MEDIA_NEED_NEW_DECODER, which triggers playback pipeline recreation.
These two probes help us to know the gap between "GPU crash" and "MFR is notified". We don't need to wait for VideoDecoderManager recreation if we're certain that we don't create remote video decoder anymore. And if the gap is large, it might be a significant optimization.
[1] http://searchfox.org/mozilla-central/rev/51b3d67a5ec1758bd2fe7d7b6e75ad6b6b5da223/dom/media/ipc/VideoDecoderChild.cpp#124-145
MozReview-Commit-ID: DcI2CwWORxZ
--HG--
extra : rebase_source : 2f69330b9721cd4d6895f93b3a3cbc740de54e8c
Also reordered strings according to the order they appear in the template.
Unused strings:
* aboutTelemetry.showNewerPing
* aboutTelemetry.showOlderPing
* aboutTelemetry.archiveWeekHeader
* aboutTelemetry.filterText
MozReview-Commit-ID: 4WaKaNGM0xd
--HG--
extra : rebase_source : 205e3dbd724c5c81672a2c424a89a49040323a7c
It doesn't work properly anyways due to a more general coordinate-system
problem on the Print Preview page (see bug 1393494).
MozReview-Commit-ID: D4i2H8z5mtW
--HG--
extra : rebase_source : da241829abf69cd03ef838bea57e1828356f0e00
Also adds a mozilla/ResultExtensions.h header to define the appropriate
conversion functions for nsresult and PRResult. This is in a separate header
since those types are not available in Spidermonkey, and this is the pattern
other *Extensions.h headers follow.
Also removes equivalent NS_TRY macros and WrapNSResult inlines that served the
same purpose in existing code, and are no longer necessary.
MozReview-Commit-ID: A85PCAeyWhx
--HG--
extra : rebase_source : a5988ff770888f901dd0798e7717bcf6254460cd
This allows MOZ_TRY and MOZ_TRY_VAR to be transparently used in XPCOM methods
when compatible Result types are used.
Also removes a compatibility macro in SimpleChannel.cpp, and an identical
specialization in AddonManagerStartup, which are no longer necessary after
this change.
MozReview-Commit-ID: 94iNrPDJEnN
--HG--
extra : rebase_source : 24ad4a54cbd170eb04ded21794530e56b1dfbd82
When there are no updates to write to an xml file just delete the associated xml file
Cleaned up loading of the updates.xml and active-update.xml files so |_ensureUpdates| is no longer needed
Added dirty check for whether to write the update history in updates.xml
Adds errorCode property to nsIUpdatePatch so it is saved to the xml
Adds errorCode for trying to apply an older version or same version with the same build ID
Adds errorCode for when there is a no status file
Adds errorCode for channel change
1. Make nsINamed queriable on WrappedJSHolder.
2. Identify callers via |Cu.generateXPCWrappedJS(aCallback).QueryInterface(Ci.nsINamed).name|.
--HG--
extra : amend_source : 5d4201059f66e46c869c30a963921b6f7b91c389