Commit Graph

370 Commits

Author SHA1 Message Date
Yoshi Huang
027c3bd555 Bug 1165466 - Fix up docshell and loadcontext inheriting code in nsIScriptSecurityManager. r=bholley 2015-09-23 16:10:21 +08:00
Daniel Holbert
b15f8441aa Bug 1205923: Make VectorImage::GetWidth/GetHeight set outparam to 0 (not -1) on failure, to accomodate callers that don't check error codes. r=seth 2015-09-18 15:33:43 -07:00
Seth Fowler
40c407a01f Bug 1146663 (Part 1) - Remove HQ scaling, which is now dead code. r=tn 2015-09-19 16:20:56 -07:00
Seth Fowler
305c7e057b Bug 1191347 - Explicitly release surfaces on the main thread in TestDecodeToSurface. r=me 2015-09-19 15:47:36 -07:00
Seth Fowler
2ca93b2012 Bug 1201796 (Part 4) - Add downscale-during-decode support for the ICO decoder. r=tn 2015-09-19 13:34:14 -07:00
Seth Fowler
3c18be2def Bug 1201796 (Part 3) - Enable downscale-during-decode for imgITools::EncodeScaledImage(). r=tn 2015-09-19 13:34:12 -07:00
Seth Fowler
3a7ad009ae Bug 1201796 (Part 1) - Treat ICOs with wrong widths and heights as corrupt. r=tn 2015-09-19 13:34:06 -07:00
Seth Fowler
7b3d492906 Bug 1196066 (Part 4) - Enable the ICOMultiChunk test, which now passes. r=tn 2015-09-18 23:12:32 -07:00
Seth Fowler
c64cb66f1f Bug 1196066 (Part 2) - Add a streaming lexing framework to ImageLib. r=tn 2015-09-18 23:12:27 -07:00
Seth Fowler
31e9b1d5ee Bug 1196066 (Part 1) - Fix bad directory entries in two of our ICO reftests. r=tn 2015-09-18 23:12:24 -07:00
Daniel Holbert
161cb21d25 backout 757560ab8de1 (bug 1205923) due to linux64 & winXP reftest failures 2015-09-18 18:57:38 -07:00
Daniel Holbert
5360001677 Bug 1205923: Make VectorImage::GetWidth/GetHeight leave outparam untouched on failure, to avoid returning -1 to callers that don't check error codes. r=seth 2015-09-18 15:33:43 -07:00
Wes Kocher
bb201c69bf Backed out 8 changesets (bug 1201796, bug 1196066) for mulet gij(28) failures CLOSED TREE
Backed out changeset 159d5d2946d3 (bug 1201796)
Backed out changeset 958988218976 (bug 1201796)
Backed out changeset 494e7553d641 (bug 1201796)
Backed out changeset d58149411b7d (bug 1201796)
Backed out changeset 35bd769b49f8 (bug 1196066)
Backed out changeset e4f3d4279b4c (bug 1196066)
Backed out changeset ca467297fa07 (bug 1196066)
Backed out changeset b4851ce6637d (bug 1196066)
2015-09-18 13:01:25 -07:00
Seth Fowler
687c6ed1b5 Bug 1201796 (Part 4) - Add downscale-during-decode support for the ICO decoder. r=tn 2015-09-18 10:54:40 -07:00
Seth Fowler
53d201df26 Bug 1201796 (Part 3) - Enable downscale-during-decode for imgITools::EncodeScaledImage(). r=tn 2015-09-18 10:54:38 -07:00
Seth Fowler
d919167ec8 Bug 1201796 (Part 1) - Treat ICOs with wrong widths and heights as corrupt. r=tn 2015-09-18 10:54:32 -07:00
Seth Fowler
382d1e6e99 Bug 1196066 (Part 4) - Enable the ICOMultiChunk test, which now passes. r=tn 2015-09-18 10:54:30 -07:00
Seth Fowler
c689ff08ee Bug 1196066 (Part 2) - Add a streaming lexing framework to ImageLib. r=tn 2015-09-18 10:54:24 -07:00
Seth Fowler
bb51dd275a Bug 1196066 (Part 1) - Fix bad directory entries in two of our ICO reftests. r=tn 2015-09-18 10:54:21 -07:00
Shu-yu Guo
45211869c8 Bug 1202902 - Mass replace toplevel 'let' with 'var' in preparation for global lexical scope. (rs=jorendorff) 2015-09-15 11:19:45 -07:00
Seth Fowler
8240b88170 Bug 1060609 (Part 3) - Add tests that interlaced and non-interlaced PNGs have the same downscaling behavior. r=tn 2015-09-01 14:13:20 -07:00
Nicholas Nethercote
69d088e45f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.
2015-08-27 20:44:53 -07:00
Ryan VanderMeulen
8f8d05680f Merge m-c to fx-team. a=merge 2015-08-26 14:34:15 -04:00
Gijs Kruitbosch
4b384a2add Bug 1173214, r=seth,bz 2015-08-26 10:24:04 +01:00
Seth Fowler
59622789d0 Bug 1196065 - Add sanity tests for image decoders. r=tn 2015-08-19 14:04:01 -07:00
Justin Wood
e7b55fa917 Bug 1195499 - Adjust fuzz and skips for win10. r=Bas 2015-08-18 13:19:05 -04:00
Sebastian Hengst
8055f85934 Backed out changeset 3cafd6b3967b (bug 1196065) for OSX 10.7 static build failure. r=backout 2015-08-19 11:15:57 +02:00
Seth Fowler
5fcb7ff34d Bug 1196065 - Add sanity tests for image decoders. r=tn 2015-08-19 00:41:30 -07:00
Seth Fowler
f3261cccb4 Bug 1185800 - Add DecoderFlags and SurfaceFlags enum classes and use them instead of imgIContainer flags in all decoder-related code. r=tn 2015-08-14 17:56:44 -07:00
Seth Fowler
3566f109af Bug 1194059 (Part 4) - Add tests that we detect IS_ANIMATED during the metadata decode. r=tn 2015-08-14 00:37:19 -07:00
Seth Fowler
5a1fea4fd4 Bug 1194059 (Part 3) - Ensure the nsIInputStream LoadImage() returns is always buffered. r=tn 2015-08-14 00:37:16 -07:00
Seth Fowler
6a2b326a41 Bug 1191114 (Part 4) - Add tests for metadata decoding, including that we always deliver HAS_TRANSPARENCY during the metadata decode. r=tn 2015-08-12 10:41:11 -07:00
Seth Fowler
15e076ac81 Bug 1191114 (Part 3) - Add flags to image test cases. r=tn 2015-08-12 10:41:08 -07:00
Seth Fowler
2facec6512 Bug 1191114 (Part 1) - Always detect HAS_TRANSPARENCY during the metadata decode. r=tn 2015-08-12 10:41:02 -07:00
Kyle Huey
0a62d4d460 Bug 1179909: Refactor stable state handling. r=smaug
This is motivated by three separate but related problems:

1. Our concept of recursion depth is broken for things that run from AfterProcessNextEvent observers (e.g. Promises). We decrement the recursionDepth counter before firing observers, so a Promise callback running at the lowest event loop depth has a recursion depth of 0 (whereas a regular nsIRunnable would be 1). This is a problem because it's impossible to distinguish a Promise running after a sync XHR's onreadystatechange handler from a top-level event (since the former runs with depth 2 - 1 = 1, and the latter runs with just 1).

2. The nsIThreadObserver mechanism that is used by a lot of code to run "after" the current event is a poor fit for anything that runs script. First, the order the observers fire in is the order they were added, not anything fixed by spec. Additionally, running script can cause the event loop to spin, which is a big source of pain here (bholley has some nasty bug caused by this).

3. We run Promises from different points in the code for workers and main thread. The latter runs from XPConnect's nsIThreadObserver callbacks, while the former runs from a hardcoded call to run Promises in the worker event loop. What workers do is particularly problematic because it means we can't get the right recursion depth no matter what we do to nsThread.

The solve this, this patch does the following:

1. Consolidate some handling of microtasks and all handling of stable state from appshell and WorkerPrivate into CycleCollectedJSRuntime.
2. Make the recursionDepth counter only available to CycleCollectedJSRuntime (and its consumers) and remove it from the nsIThreadInternal and nsIThreadObserver APIs.
3. Adjust the recursionDepth counter so that microtasks run with the recursionDepth of the task they are associated with.
4. Introduce the concept of metastable state to replace appshell's RunBeforeNextEvent. Metastable state is reached after every microtask or task is completed. This provides the semantics that bent and I want for IndexedDB, where transactions autocommit at the end of a microtask and do not "spill" from one microtask into a subsequent microtask. This differs from appshell's RunBeforeNextEvent in two ways:
a) It fires between microtasks, which was the motivation for starting this.
b) It no longer ensures that we're at the same event loop depth in the native event queue. bent decided we don't care about this.
5. Reorder stable state to happen after microtasks such as Promises, per HTML. Right now we call the regular thread observers, including appshell, before the main thread observer (XPConnect), so stable state tasks happen before microtasks.
2015-08-11 06:10:46 -07:00
Ehsan Akhgari
3ae1ec3884 Bug 1181863 - Part 4: Fix the build bustage 2015-08-01 00:07:04 -04:00
Seth Fowler
0102832838 Bug 1181863 (Part 3) - Add tests for DecodeToSurface(). r=tn 2015-07-31 18:10:34 -07:00
Seth Fowler
ca5db71936 Bug 1194912 (Part 1) - Add CopyOnWrite<T> to support automatic copy-on-write for recursive writes to data structures. r=tn 2015-08-25 16:26:39 -07:00
Seth Fowler
25f92aa6d8 Bug 1184804 - Wait for DECODE_COMPLETE to be fired in browser_bug666317.js. r=tn 2015-07-16 20:32:24 -07:00
Seth Fowler
73fa4d67bf Bug 1182545 - Make browser_bug666317.js wait for the discard event instead of expecting it at a precise time. r=tn 2015-07-10 16:37:03 -07:00
Seth Fowler
fb2e37fd12 Bug 1182533 - Sync decode ico-bmp-corrupted images before loading them in the <img> element. r=tn 2015-07-10 16:36:56 -07:00
Geoff Brown
f8e98ea39a Bug 1026290 - Update mochitest-chrome manifests for android; r=jgriffin 2015-07-10 14:41:59 -06:00
Ehsan Akhgari
5bd32283c8 Bug 1180105 - Do not leak the SourceSurface returned from imgIContainer::GetFrame in BlockUntilDecodedAndFinishObserving; r=seth 2015-07-06 21:30:42 -04:00
Seth Fowler
1b44eac300 Bug 1163856 (Part 2) - Fix tests that depended on image load event timing. r=tn 2015-06-30 02:38:01 -07:00
Seth Fowler
6f23b8ee92 Bug 1163856 (Part 1) - Delay the image load event until the size decoder gets finalized. r=tn 2015-06-30 02:37:58 -07:00
Phil Ringnalda
bf15233770 Back out 2 changesets (bug 1163856) for Windows !mSyncLoad assertion failures
CLOSED TREE

Backed out changeset 62c1c616f21c (bug 1163856)
Backed out changeset 04239448fe0b (bug 1163856)
2015-06-25 19:57:00 -07:00
Seth Fowler
520cfef82a Bug 1163856 (Part 2) - Fix tests that depended on image load event timing. r=tn 2015-06-25 17:10:05 -07:00
Seth Fowler
2be19c16ee Bug 1163856 (Part 1) - Delay the image load event until the size decoder gets finalized. r=tn 2015-06-25 17:09:57 -07:00
Seth Fowler
6a25172f59 Bug 1174923 - Stop delaying the document load event until images are decoded. r=tn a=kwierso 2015-06-19 15:55:12 -07:00
Seth Fowler
4ca2f8b1a9 Bug 1169680 - Don't merge image cache entries for blob URIs with different refs. r=tn 2015-06-05 01:52:06 -07:00