Граф коммитов

2198 Коммитов

Автор SHA1 Сообщение Дата
Milan Sreckovic e0b2b9e425 Bug 1259513: Make gfxContext constructor private, use a utility function that can return nullptr. r=bas,lsalzman
MozReview-Commit-ID: rHhLEDZEQt

--HG--
extra : rebase_source : 4988f3f488c19dd35a9979e96f78a5511ee8f3d2
2016-04-12 15:18:11 -04:00
Timothy Nikkel 30e1d4989f Bug 1263474. Convert three tests image/test/mochitest/chrome.ini to mochitest-plain. r=kats 2016-04-11 20:52:40 -05:00
Chris Manchester 52083635d3 Bug 1261456 - Combine support-files listed in [DEFAULT] with any listed per-test rather than overriding. r=gps
This requires a change to how we process test manifests in the build system:
now, whenever we see a support file mentioned in a manifest, we require that
file isn't already in that test's support files, but if we see a support file
that was already seen in some other test, the entry is ignored, but it is not
an error. As a result of this change, several duplicate support-files entries
needed to be removed.

MozReview-Commit-ID: G0juyxzcaB8

--HG--
rename : testing/mozbase/manifestparser/tests/test_default_skipif.py => testing/mozbase/manifestparser/tests/test_default_overrides.py
2016-04-11 11:21:20 -07:00
Christoph Kerschbaumer 563d5a0864 Bug 1256999 - Use nsIDocument for ImageCacheKey. r=bz r=seth 2016-04-11 11:00:03 +02:00
Christoph Kerschbaumer 52a7f283b3 Bug 1256999 - Pass the right context to new channels for image loads. r=bz r=seth 2016-04-11 10:58:03 +02:00
Timothy Nikkel 28a90df677 Bug 1262269. Re-enable some imagelib tests that are passing. 2016-04-10 19:21:48 -05:00
Ryan VanderMeulen f2ae6bedc6 Backed out changeset 98aa2df1a69f (bug 1262269) for frequent Linux failures in the re-enabled tests. 2016-04-10 21:52:07 -04:00
Timothy Nikkel 7bd583a54c Bug 1262269. Re-enable some imagelib tests that are passing. 2016-04-10 19:21:48 -05:00
Timothy Nikkel 909b97b554 Bug 1263058. Fix image/test/mochitest/test_animation2.html to test what it is intending to test. r=mstange
opacity >= 0.999 gets interpreted as 1 for painting purposes, so does not serve the purpose of creating a container layer. Use will-change instead.
2016-04-08 01:13:53 -05:00
Kartikaya Gupta 76e300e3c3 Bug 1261158 - Convert test_bug1132427.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 4NXUjL4uGEP
2016-04-04 16:28:13 -04:00
Kartikaya Gupta 146d7600ec Bug 1261158 - Convert test_xultree_animation.xhtml to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: BDanrpo7ES
2016-04-04 16:28:13 -04:00
Kartikaya Gupta 372512629b Bug 1261158 - Convert test_synchronized_animation.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: LrftftKDGn6
2016-04-04 16:28:12 -04:00
Kartikaya Gupta e19f2b345c Bug 1261158 - Convert test_svg_filter_animation.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: K5ZxnkhR6nE
2016-04-04 16:28:12 -04:00
Kartikaya Gupta e13c70fd27 Bug 1261158 - Convert test_svg_animatedGIF.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: IIJT4178POO
2016-04-04 16:28:12 -04:00
Kartikaya Gupta e2bbe3839c Bug 1261158 - Convert test_staticClone.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 8CUzA0EzM2G
2016-04-04 16:28:12 -04:00
Kartikaya Gupta a11b57dc20 Bug 1261158 - Convert test_removal_onload.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: DL4IQaUl7t5
2016-04-04 16:28:12 -04:00
Kartikaya Gupta f3c53ca5e1 Bug 1261158 - Convert test_removal_ondecode.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 6YOHnVhRqkY
2016-04-04 16:27:59 -04:00
Kartikaya Gupta 9a87fbceec Bug 1261158 - Convert test_net_failedtoprocess.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: HO1BMl760MQ
2016-04-04 16:27:58 -04:00
Kartikaya Gupta d278cd5ea7 Bug 1261158 - Convert test_has_transparency.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 9tR3LH4wg4U
2016-04-04 16:27:58 -04:00
Kartikaya Gupta 4f6713a578 Bug 1261158 - Convert test_changeOfSource2.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 9mdR16WzTkU
2016-04-04 16:27:58 -04:00
Kartikaya Gupta c11fae07bc Bug 1261158 - Convert test_changeOfSource.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: BqYNvBW06ko
2016-04-04 16:27:58 -04:00
Kartikaya Gupta c79e0934bb Bug 1261158 - Convert test_bullet_animation.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 8kgi3p2DMkw
2016-04-04 16:27:58 -04:00
Kartikaya Gupta 91f2e806c0 Bug 1261158 - Convert test_background_image_anim.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: 5RJwrm5RKiU
2016-04-04 16:27:58 -04:00
Kartikaya Gupta 32f3c750d7 Bug 1261158 - Convert test_animSVGImage2.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: JT02zkq1JJm
2016-04-04 16:27:58 -04:00
Kartikaya Gupta 637d1ef3d8 Bug 1261158 - Convert test_animSVGImage.html to a mochitest-plain. r=tnikkel
MozReview-Commit-ID: E2n2JM0PjzR
2016-04-04 16:27:57 -04:00
Timothy Nikkel 6aeb6d5d05 Bug 1260247. In chaos mode randomly decide to start a new image load even if the image is in the image cache when allowed by spec. r=seth
If the image load is from the same document that cached the image we are required to use the cached version. Otherwise we should be free to ignore the cached version.
2016-04-02 13:53:12 -05:00
Timothy Nikkel b0b9bfd047 Bug 1222596. If RasterImage::LookupFrame does (some) sync decoding and encouters an error we don't want to return the surface with an error. r=seth
If the sync decoding the LookupFrame does encounters an error it will set mError on the RasterImage, which LookupFrame callers check before calling LookupFrame. But they've called LookupFrame before the error was encountered, so we check if the frame has had Abort called on it to determine if we should return it at all.

We only does this if one of the sync decode flags was passed in because IsAborted needs to get the imgFrame's monitor, so we don't want to block consumers that haven't asked for decoding.
2016-04-01 12:44:17 -05:00
Seth Fowler 603db7a389 Bug 1209780 (Part 1) - Mark DrawResult MOZ_MUST_USE. r=tn 2015-10-25 13:20:13 -07:00
Timothy Nikkel 5afe8e5453 Bug 1257101. imgFrame::IsImageComplete says whether we've had pixels decoded to the whole image rect, but it's used to check if the frame is finished decoding. These are different things when the image has more than one progress pass. r=seth
This means that in RasterImage::LookupFrame when we are asked to do a sync decode (if needed) we use WaitUntilComplete to wait until the frame is finished decoding.  But we would actually return after the next progressive pass notified the monitor to wake up. Thus, we would draw a not-fully-decoded image even though the sync decode flag was passed.

The change in FrameAnimator means that we won't draw the next frame in an animated image until all progressive passes of that image are complete. This seems like what we want anyways.

There is one real use of IsImageComplete left, in imgFrame::Draw, where we need to know if the decoded image data covers the whole image frame. (There are a couple of uses of IsImageComplete in asserts.)
2016-03-23 19:31:42 -05:00
Timothy Nikkel 28d73a34c5 Backed out changeset bc854d1c6ab7 (bug 1209780) for statis analysis failures on OS X. 2016-03-21 16:29:15 -05:00
Timothy Nikkel 417ecff3c2 Bug 1210745. Change image progress asserts to allow transparency to be posted after the size is posted. r=seth
The PNG decoder posts the size almost immediately, and later posts transparency (even for non-animated images).

It would be nice to still assert what this assert is intending (that transparency of non-animated images is posted during the metadata decode) but we don't have any easy way of telling when a metadata finishes here.
2016-03-21 16:15:20 -05:00
Seth Fowler 3822e4c6c4 Bug 1210745 - Update CheckProgressConsistency() to match current ImageLib behavior. r=tn 2016-02-25 13:12:58 -06:00
Timothy Nikkel 393d0a8b07 Bug 1225934. Better describe the effect of the flag FLAG_HIGH_QUALITY_SCALING. Comment only change. 2016-03-21 16:15:20 -05:00
Seth Fowler 8b46f4d5f2 Bug 1209780 (Part 1) - Mark DrawResult MOZ_MUST_USE. r=tn 2015-10-25 13:20:13 -07:00
Geoff Brown f8b671c940 Bug 1251013 - Update AndroidVersion annotations in test manifests - xpcshell; r=jmaher 2016-03-17 10:00:50 -06:00
Geoff Brown 29977660c0 Bug 1251013 - Update android_version annotations in test manifests - mochitest; r=jmaher 2016-03-17 10:00:48 -06:00
Mike Hommey 0a771514a8 Bug 1256988 - Replace tests on MOZ_WIDGET_GTK with tests on MOZ_WIDGET_TOOLKIT containing gtk. r=chmanchester
But only do that for the AC_SUBST. The AC_DEFINE is still useful.
2016-03-17 06:49:44 +09:00
Timothy Nikkel cc2e20ef2c Bug 1255675. Add very basic reftests that test our downscale during decode code for every image format we support.
Some fuzz is necessary of course, but these tests catch this bug, so they should be successful in ensuring basically functionality isn't regressed.
2016-03-16 14:10:31 -05:00
Edwin Flores 0d5d29eb98 Bug 1234077 - Test that GIFs are still drawn correctly when their frame rects are truncated - r=seth 2016-03-15 10:31:31 +00:00
Sebastian Hengst 17ed0683ac Backed out changeset e7b960c2c8e9 (bug 1234077) for reftest failures. r=backout 2016-03-14 21:08:53 +01:00
Timothy Nikkel ce9ddc5a29 Bug 1255675. SurfacePipe handles removing the frame rect, so pass the frame rect directly.
This is left over from the pre-SurfacePipe code that interacted directly with the Downscaler. It was calculating the size of the surface for the Downscaler to use, and then the Downscaler would handle putting transparent pixels inside that surface (and outside the framerect).

--HG--
extra : rebase_source : aad384fa8589f291254f0a18537a5d6674487182
2016-03-13 15:56:00 -07:00
Edwin Flores 3a94cf4328 Bug 1234077 - Test that GIFs are still drawn correctly when their frame rects are truncated - r=seth 2016-03-14 18:26:38 +00:00
Bogdan Postelnicu c9c042d934 Bug 1230907 - mPixelRowSize added to constructor with 0 value. r=seth 2016-03-14 10:36:36 +02:00
Seth Fowler c987885db6 Bug 1255104 - Use SurfacePipe in nsIconDecoder. r=njn 2016-03-10 18:45:29 -08:00
Seth Fowler 3978c77cb6 Bug 1247152 (Part 2) - Remove even more code from the GIF decoder. r=edwin 2016-03-09 15:39:02 -08:00
Seth Fowler 875464424a Bug 1247152 (Part 1) - Use SurfacePipe in the GIF decoder. r=njn 2016-03-09 15:39:02 -08:00
CJKu 1c893a0ddf Bug 619500: Part 4. Remove one unused data member in SVGDrawingParameters; r=dholbert
MozReview-Commit-ID: EN3HVuwTm7y
2016-03-08 15:54:14 +08:00
CJKu d57efebb5f Bug 619500: Part 2. When drawing an SVG image as a CSS border-image, use preverveAspectRatio="none"; r=dholbert
MozReview-Commit-ID: JH5E3An4opJ
2016-03-08 15:54:13 +08:00
CJKu 19414f3998 Bug 619500: Part 1. Default sizing for specified size of SVG images which have no constraints; r=dholbert r=seth
MozReview-Commit-ID: 8DI86w6Ni8T
2016-03-08 15:54:13 +08:00
Seth Fowler b935d483a8 Bug 1225934 - Never allow surface substitution when FLAG_HIGH_QUALITY_SCALING is disabled. r=tn 2016-03-07 17:17:16 -08:00
Seth Fowler 5a675c9ccb Bug 1251806 - In RasterImage::GetFrameInternal(), check if the frame covers the actual surface size rather than the requested surface size. r=tn 2016-03-07 17:17:16 -08:00
Seth Fowler 6451b96c1d Bug 1251807 - Use the surface's size, not the intrinsic size, in CopyFrame. r=tn 2016-03-07 17:15:25 -08:00
Timothy Nikkel c2cd155669 Bug 1253362. SVGDocumentWrapper::IsAnimated can be called after SVGDocumentWrapper::DestroyViewer so null check mViewer. r=dholbert
The testcase has an svg-as-image inside an svg-as-image. At shutdown the viewer of the inner svg-as-image is destroyed (via the shutdown observer) first. Then the outer svg-as-image destroys its viewer which tries to unregister all image requests from the refresh driver. So it unregisters the inner svg-as-image, which calls GetAnimated.
2016-03-06 14:59:19 -06:00
Timothy Nikkel 931f4f6e1d Bug 1251405. Part 2. Use 64 bit ints to hold the delay between the current time and the last animation time. r=edwin
When storing ms, 32 bit ints can hold 2^32/1000/60/60/24 ~= 49 days. It's quite conceivable that someone would leave a tab in the background for 50 days.
2016-03-04 21:54:03 -06:00
Timothy Nikkel 01190b0b2c Bug 1251405. Part 1. Fix a significant signed/unsigned mismatch in handling the return value of FrameAnimator::GetSingleLoopTime. r=edwin
GetSingleLoopTime returns -1 on exceptional cases but we used an unsigned int to hold the return value in AdvanceFrame. So the |loopTime > 0| check would succeed. Fortunately the |delay.ToMilliseconds() > loopTime| check would fail because loopTime was MAX_UNIT32, so we didn't do anything incorrect.

http://hg.mozilla.org/mozilla-central/rev/263980931d1b (bug 890743) changed GetSingleLoopTime from returning 0 (and uint32_t) to -1 (and int32_t) on exceptional cases. But the caller of GetSingleLoopTime wasn't updated.
2016-03-04 21:54:00 -06:00
Matt Woodrow 4dcfda62de Bug 1220082 - Assign frame ids to animated images so that they get invalidated correctly. r=seth 2016-01-12 17:14:09 +13:00
Sebastian Hengst 1e69d4c08b Backed out changeset a5d2e586777c (bug 1220082) for bustage. r=bustage on CLOSED TREE 2016-03-03 17:19:22 +01:00
Martijn Wargers 5c4ab36d15 Bug 1252444 - Rewrite some dom mochitests to use pushPrefEnv instead of setCharPref. r=jmaher
--HG--
extra : rebase_source : 7b61270760aa225f8c087ea190aaeb49670ca900
2016-03-03 09:41:14 -05:00
Matt Woodrow 6350413d1b Bug 1220082 - Assign frame ids to animated images so that they get invalidated correctly. r=seth 2016-01-12 17:14:09 +13:00
Timothy Nikkel 0676b70928 Bug 1251403. Determine the correct index of the next frame before getting the next frame. r=edwin
With the addition of the mDoneDecoding check to this code it is now safe to move it before the canDisplay check.
2016-03-02 21:52:36 -06:00
Jonathan Watt 1c0c9bcf8a Bug 763784 - Make VectorImage::GetAnimated check for CSS animations. r=dholbert 2016-02-22 13:05:20 +00:00
Timothy Nikkel fbd3ebdb6d Bug 926048. Part 4. Update the current animation frame time if we hit the end of decoded frames before all frames are decoded. r=edwin
Before the previous patch we would (wrongly) loop through the decoded frames even though we didn't have all of the frames of the animation. This had the beneficial side effect of advancing mCurrentAnimationFrameTime to aTime (the current time). With the previous patch we stop at the last decoded frame and don't advance mCurrentAnimationFrameTime, so it can lag behind. The problem with this is that when we have finished decoding we will then try to catch mCurrentAnimationFrameTime up, and this will jump us to a random point in the animation. So we need to advance mCurrentAnimationFrameTime ourselves.

If we were blocked on network/decoding then displaying the last available decoded frame is the correct frame to be displaying. So we are up to date. So we advance mCurrentAnimationFrameTime to the current time.
2016-03-01 22:34:40 -06:00
Timothy Nikkel 9199efb919 Bug 926048. Part 3. Correctly check if we are at the end of an animated image. r=edwin
mImage->GetNumFrames() is the current number of decoded frames (that the RasterImage knows about), so it only represents the last frame of the animation if we are done decoding.

If we are not fully decoded, and we are on the last decoded frame, just stay on the last decoded frame. When more frames get decoded (or we determine that we are the last frame of the animation) we will advance.

One might expect that if |nextFrameIndex == mImage->GetNumFrames()| then |GetRawFrame(nextFrameIndex)| would return a null surface. But that is not the case because the decoding thread can insert frames into the surface cache that the RasterImage hasn't acknowledged yet (because it has to do so on the main thread, which we are currently running on).

This is why moving animated images to the surface cache is likely the cause of this bug.

This introduces an issue that is explained in, and fixed by the next patch.
2016-03-01 22:34:40 -06:00
Timothy Nikkel 4bad8c1f9e Bug 926048. Part 2. Remove useless GetRawFrame call. r=edwin
|nextFrameIndex| is either |currentFrameIndex + 1| or 0, as can be seen from reading the code above this.

Also fix the whitespace on DoBlend call.
2016-03-01 22:34:39 -06:00
Timothy Nikkel 57a929ef04 Bug 926048. Part 1. Simplify FrameAnimator::AdvanceFrame slightly. We don't need a |timeout| variable, we only check it once. r=edwin 2016-03-01 22:34:39 -06:00
Mike Taylor bdd8f0ca83 Bug 1249474. Part 2 - Update tests to handle new default image Accept header value. r=mcmanus 2016-02-29 14:52:12 -06:00
Timothy Nikkel 183fc6e22a Bug 1251091. Add crashtest. 2016-02-29 12:20:50 -06:00
Timothy Nikkel 567c526765 Bug 1251091. Fix surface key comparison in ImageSurfaceCache::LookupBestMatch. r=dholbert
http://hg.mozilla.org/mozilla-central/rev/411f18fdffeb (bug 1186796) had a mistake in it.

It changed ImageSurfaceCache::LookupBestMatch to use a for loop instead of using a callback to iterate each entry of the hashtable. The callback was called with the surface key of its entry, and it used the name |aSurfaceKey| for that key. ImageSurfaceCache::LookupBestMatch uses the name |aSurfaceKey| for the key we are looking for. So when the code from the callback was moved into the for loop in ImageSurfaceCache::LookupBestMatch the meaning of |aSurfaceKey| changed, but the code was not updated.
2016-02-29 12:20:50 -06:00
Seth Fowler 0b454da72c Bug 1251808 - Construct the SourceSurfaceImage with the correct size in RasterImage::GetCurrentImage(). r=seth 2016-02-26 21:01:50 -08:00
Seth Fowler 09c97b5b63 Bug 1250648 - Clean up the style of for loops in TestStreamingLexer. r=njn 2016-02-26 21:01:49 -08:00
Timothy Nikkel d885673df5 Bug 1249576. Add crashtest. 2016-02-26 17:14:32 -06:00
Timothy Nikkel 91dcacc8f5 Bug 1251742. Avoid overflow in computing area of surface sizes in SurfaceCache. r=dholbert
http://hg.mozilla.org/mozilla-central/rev/9727cdebb2ee (bug 1228314) fixed the first instance of this, but missed the next two for some reason.
2016-02-26 17:13:59 -06:00
Bogdan Postelnicu 3627cdff1f Bug 1228314 - added static_cast<int64> in order to avoid overflow. r=seth
MozReview-Commit-ID: KY3qpIlzE5K

--HG--
extra : rebase_source : a716abcb496c9923318f58d21250b6c13182add0
2016-01-18 17:23:23 +02:00
Seth Fowler 618f960cdd Bug 1246851 (Part 4) - Add a test suite for SurfacePipes and SurfaceFilters. r=njn 2016-02-25 16:21:29 -08:00
Seth Fowler d58e9fda35 Bug 1246851 (Part 3) - Add a factory for constructing SurfacePipes. r=njn 2016-02-25 16:21:29 -08:00
Seth Fowler c116948476 Bug 1246851 (Part 2) - Add SurfaceFilter implementations for basic surface output operations. r=njn 2016-02-25 16:21:29 -08:00
Seth Fowler b1ec50b23f Bug 1246851 (Part 1) - Add a new SurfacePipe API for writing to image surfaces in a safe and composable manner. r=njn 2016-02-25 16:21:29 -08:00
Timothy Nikkel c29791aa23 Bug 1249576 - If the first frame of an APNG doesn't cover the whole image mark the image as transparent. r=edwin
In (non-animated) PNGs the image data is contained in IDAT chunks. In APNGs there are IDAT chunks, which contain the default image, and fDAT chunks, which contain frames of the animation. The default image is sometimes part of the animation (as the first frame), and sometimes not (displayed only by non-APNG aware viewers).

The default image must have the same size as in the PNG header chunk. But the fDAT images can be any (smaller) size. So the first frame of a PNG is allowed to be smaller than the whole image size so long as we are in an APNG and the first frame is from an fDAT chunk, not an IDAT chunk.

We post transparency if we encounter this case because we don't draw into those pixels on at least the first frame.
2016-02-23 20:22:00 +01:00
Timothy Nikkel 34fd9a4a11 Bug 1120141. Don't use surface with alpha for first frames of all pngs. r=edwin
It was a hack, not needed anymore.
2016-02-24 09:56:03 -06:00
Nicholas Nethercote b295b3e288 Bug 1249550 (part 2) - Add a test. r=tn.
--HG--
rename : image/test/reftest/downscaling/downscale-ff.html => image/test/reftest/downscaling/downscale-16px.html
extra : rebase_source : 930c391d986d92bc78eb9f97e44b16aa5198beaa
2016-02-23 10:58:05 +11:00
Nicholas Nethercote 034cfd65bb Bug 1249550 (part 1) - Flip BMPs with negative height when downscaling. r=tn.
--HG--
extra : rebase_source : f0eef7233b52ec8e1e368d96b5776ca70e5eb328
2016-02-22 13:38:58 +11:00
Mason Chang b4c228baec Bug 1246213 - Skia reftest fuzzing for Skia content on OS X. r=jmuizelaar 2016-02-16 09:07:52 -08:00
Timothy Nikkel fa7da9c935 Bug 1242093 - Fix assertion in Downscaler::ClearRow. r=njn
The starting column can be the last column, and we handle that correctly.

Also split function into ClearRow and ClearRestOfRow.
2016-02-16 08:04:57 +01:00
ISHIKAWA, Chiaki be2b50a7f8 Bug 1248252 - Improper outdated octal constant syntax in M-C tree. Use '0o' prefix. r=dao
Be warned. Do not attemp to change the .js "test" source code in ./js
They are meant to check

 - the outdated 0666 octal constant is still parsed correctly,
 - the outdated 0666 octal constant raises syntax error flag
   in strict mode, etc.

So leave them alone.
2016-02-15 08:57:00 +01:00
Timothy Nikkel 2f41382fcf Bug 1240629. Add reftest. 2016-02-12 16:58:34 -06:00
Timothy Nikkel d4c4df334e Bug 1240629. Don't buffer image file data that we are never going to look at in the gap between the header and the pixel data for BMP files. r=njn
The length of the gap is computed from the BMP file header, so in a malformed BMP we could needlessly make our input file buffer huge for no reason.
2016-02-12 16:58:34 -06:00
Aidin Gharibnavaz 686438c658 Bug 1164581 - Adding an overload for NS_ProxyRelease that accepts already_AddRefed, and removing all the others. r=bobbyholley 2016-02-10 08:23:00 +01:00
Nicholas Nethercote 774871bbdd Bug 1238558 (part 2) - Add a test. r=tnikkel.
--HG--
extra : rebase_source : f3d89f88873920e6b2c8a4d0c403bf84a5e52d42
2016-02-10 09:55:37 +11:00
Nicholas Nethercote 8c0fc6309a Bug 1238558 (part 1) - Add Decoder::BeforeFinishInternal(). r=tnikkel.
--HG--
extra : rebase_source : 613a2ce0931b8b6c67d93e4d55e965193bbb55d0
2016-01-27 16:15:06 -08:00
Carsten "Tomcat" Book 5b358688b7 Backed out changeset c18e29c1b369 (bug 1164581) for cpp unit tests test failures
--HG--
extra : rebase_source : fb6fd434c8e3f4b5fa53ea645a54c07cab207894
2016-02-08 11:17:38 +01:00
Aidin Gharibnavaz 69cf7e035f Bug 1164581 - Adding an overload for NS_ProxyRelease that accepts already_AddRefed, and removing all the others. r=bobbyholley
--HG--
extra : rebase_source : 3c6bba6613a14e48239d302bdd0f7fe2e322265d
2016-02-07 10:56:00 +01:00
Birunthan Mohanathas d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas 373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Timothy Nikkel cf078d87e6 Bug 1224979. Check if we compute usable filters for the downscaler, and if not put the downscaler in error state so it's not used. r=edwin 2016-01-28 17:30:01 -06:00
Chris Peterson c5cfbed605 Bug 1235297 - Annotate intentional switch fallthroughs to suppress -Wimplicit-fallthrough warnings in image/decoders/. r=tn
image/FrameAnimator.cpp:442:5: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
image/FrameAnimator.cpp:576:7: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]

image/decoders/nsGIFDecoder2.cpp:1110:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels

image/decoders/nsJPEGDecoder.cpp:418:3 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
image/decoders/nsJPEGDecoder.cpp:444:3 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
image/decoders/nsJPEGDecoder.cpp:465:3 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
image/decoders/nsJPEGDecoder.cpp:537:3 [-Wimplicit-fallthrough] unannotated fall-through between switch labels

--HG--
extra : rebase_source : ec1da93105ef06d156d9d60ae8950d04f3197e38
2015-12-24 23:50:32 -07:00
Timothy Nikkel 5b78f1768d Bug 1241729. Add crashtest. 2016-01-27 16:19:34 -06:00
Timothy Nikkel 7a0d958c9f Bug 1241728. Add crashtest. 2016-01-27 16:19:34 -06:00
Timothy Nikkel 6f2b0a2d2b Bug 1241728. Limit the size of images that we will downscale from to 1048576 pixels. r=edwin
This avoids spending too much cpu/memory downscaling absolutely huge images.
2016-01-27 16:19:33 -06:00
Daniel Holbert 7d7a7ec332 Bug 1242778: Add MOZ_COUNT_CTOR & MOZ_COUNT_DTOR calls to track leaks of imagelib's FrameAnimator class. r=tn
Also add crashtest with a corrupt animated PNG image that causes a leak to be reported (thanks to these MOZ_COUNT calls). This leak is fixed by the patch on separate bug 1237709.
2016-01-26 11:08:26 -08:00
Jeff Muizelaar 1a1b1c6b90 Bug 1237709: During RasterImage error-handling cleanup, set UniquePtr mAnim to null instead of using reset(), to avoid leaking. r=dholbert 2016-01-26 11:08:19 -08:00
David Rajchenbach-Teller 583ca7286d Bug 1224374 - Profiler labels for the top 26-100 chrome hangs;r=BenWa
--HG--
extra : rebase_source : 39e94507c0288863e495322a6899ff009840870d
2016-01-15 11:38:03 +01:00
Edwin Flores 4623e471a3 Bug 1207958 - Fix heuristic for choosing which ICO sub-image to render - r=tn 2016-01-20 11:00:12 +00:00
Sebastian Hengst d8d4a2d1a5 Backed out 2 changesets (bug 1224374) for Windows bustage. r=bustage on a CLOSED TREE
Backed out changeset 5f458e6e4997 (bug 1224374)
Backed out changeset 0dc02cb0b604 (bug 1224374)
2016-01-19 21:30:41 +01:00
David Rajchenbach-Teller 2d53758d08 Bug 1224374 - Profiler labels for the top 26-100 chrome hangs;r=BenWa
--HG--
extra : rebase_source : 51d39d6f88bf58ccb29f5897c3dbbe71007ee842
2016-01-15 11:38:03 +01:00
Nicholas Nethercote cc5a3d081f Bug 1238551 (part 2) - Add a test. r=tn.
--HG--
extra : rebase_source : f44da0e9d84eb2ba88019a1ab857c88fe76ce0a6
2016-01-17 21:13:32 -08:00
Nicholas Nethercote f28cd689c3 Bug 1238551 (part 1) - Reject BITMAPV3INFOHEADER BMP images. r=tn.
This is an obscure BMP variant that's not worth supporting.

--HG--
extra : rebase_source : d4f8180a3e7700490daf4d07685a853c4f122c23
2016-01-17 21:12:17 -08:00
Jan de Mooij 3c3f394c55 Bug 1237201 part 3 - Handle Vector OOM in StreamingLexer. r=njn 2016-01-14 15:19:21 +01:00
Timothy Nikkel e5e2a31836 Bug 1224200. Allow downscaler to get (and ignore) new input lines after it has finished producing all output lines. r=milan 2016-01-13 17:16:32 -06:00
Nicholas Nethercote 02921e7c85 Bug 1237171 - Improve a case where ICO and BMP files disagree on an image size. r=tn.
--HG--
extra : rebase_source : 80701833249881c3022309f6237a3084b61b1881
2016-01-07 16:18:22 -08:00
Steve Singer fe85f2a810 Bug 1235859 - Add FrameSize to non-skia downscaler. r=edwin 2015-12-30 14:46:54 -05:00
Edwin Flores cde8e15ecd Bug 1235605 - Use CheckedInt in Deinterlacer and make its buffer allocation fallible. r=tn 2015-12-30 17:03:24 -05:00
Edwin Flores 3c1a9580ee Bug 1229825 - Make GIF deinterlacer respect the frame rect bounds. r=tn 2015-12-29 18:19:27 -05:00
Morris Tseng ef261c0b38 Bug 1215438 - Part 4: Rename CairoImage to SourceSurfaceImage. r=roc
--HG--
extra : commitid : H9H2n8GsBOK
2015-12-18 14:52:16 +08:00
Christoph Kerschbaumer 972c2231e2 Bug 1229889 - Convert JS callsites to use asyncOpen2 within image/ (r=sicking) 2015-12-06 20:57:08 -08:00
Wes Kocher d2615415f5 Backed out 4 changesets (bug 1230221, bug 1230220, bug 1229890) for m-e10s(2) permafails in test_window_open_close.html CLOSED TREE
Backed out changeset a1cd28ddbfa2 (bug 1230221)
Backed out changeset 7e89f5020ac7 (bug 1230220)
Backed out changeset 91f6e72fa9f4 (bug 1229890)
Backed out changeset 7e717a810420 (bug 1229890)

--HG--
extra : commitid : BinvCloSNFx
extra : amend_source : 94dfb9ebf66c6e73b1b407e93d8475724d2ae7a2
2015-12-04 15:58:40 -08:00
Christoph Kerschbaumer 249b3fc0cf Bug 1229890 - Convert JS callsites to use asyncOpen2 within image/ (r=sicking) 2015-12-04 09:39:05 -08:00
Christoph Kerschbaumer 413a60a063 Bug 1225641 - Change default security flags within NetUtil.newChannel (r=sicking) 2015-11-17 17:35:30 -08:00
Edwin Flores ce990e88c7 Bug 1223465 - Clamp GIF frame rects to their screen rects - r=seth 2015-11-25 13:50:13 +00:00
Edwin Flores 31b349fea0 Bug 1224100 - Initialize row buffer to 0 in Downscaler - r=seth 2015-11-24 15:05:01 +00:00
Nicholas Nethercote 43bbaa0481 Bug 1220021 (part 2) - Add four reftests. r=seth. 2015-11-23 18:20:21 -08:00
Nicholas Nethercote eeb418d47f Bug 1220021 (part 1) - Don't treat 0RGB ICO files as transparent. r=seth.
This approach is much the same as the one we had before bug 1062066 caused the
regression.
2015-11-23 15:32:39 -08:00
Nicholas Nethercote 2c9bfa2dec Bug 1223319 (part 1) - Remove unused function nsICODecoder::CalcAlphaRowSize(). r=seth. 2015-11-16 17:54:11 -08:00
Glenn Randers-Pehrson fde5c53117 Bug 75077 - Interpolate interlaced PNG images instead of libpng blocky display. r=seth 2015-11-14 11:33:00 +01:00
Mason Chang e74c79f0e3 Bug 1221840. Support repeating images in 1 axis. r=seth 2015-11-23 08:17:35 -08:00
sajitk 32ccc4c2b0 Bug 1219474 - Replace PRLogModuleInfo w/ LazyLogModule in the 'image/' directory. r=seth
--HG--
extra : rebase_source : 1ce8c7a9d4ff2610506584e9f58ab9d9a6e92e06
2015-11-16 18:21:00 +01:00
David Anderson 7e9cf5355c Decouple CairoImage from ImageContainer. (bug 1222910, r=roc) 2015-11-17 00:09:00 -08:00
Nicholas Nethercote ce10603db1 Bug 1210291 - Streamline StreamingLexer's handling of terminal states. r=seth.
This patch introduces TerminalState and changes LexerTransition::mNextState to
be a Variant<State, TerminalState>. This means that SUCCESS and FAILURE no
longer need to be part of State.

Some things to note:

- This simplifies the handling of Lex()'s return value, which is nice.

- The patch splits Terminate() into TerminateSuccess() and TerminateFailure().

- |const State& aNextState| wouldn't work for the first arg to
  LexerTransition's ctor due to errors in Variant construction that I didn't
  understand. I had to change it to |State aNextState|.

--HG--
extra : rebase_source : f405a67fdf0f1bb712409eafecb21ac9b59d6db0
2015-10-28 01:30:20 -07:00
Nicholas Nethercote 8b78d5e498 Bug 1217465 - Fill in missing pixels caused by truncated BMP files. r=seth.
This fixes failures for
image/test/reftest/bmp/bmpsuite/b/{badrle.bmp,shortfile.bmp} with the Skia
back-end.

--HG--
extra : rebase_source : 6c5b967cebf43cf5d49d0e532619bdd1c8ccc69e
2015-11-15 20:31:07 -08:00
Phil Ringnalda 3415cdf0fe Bug 1182951 - skip test_bug399925.html on b2g debug for constant timeouts 2015-11-14 18:28:40 -08:00
Nathan Froyd 2d8bae8e40 Bug 1217571 - fix the imagelib cache to work in e10s; r=seth
nsICachingChannel isn't available in the child process; we have to use
nsICacheInfoChannel instead.
2015-11-12 15:09:52 -05:00
Nicholas Nethercote 489c83b1dd Bug 1223690 - Remove implicit Rect conversions. r=jrmuizel.
gfxRect can be implicitly constructed from IntRect, which hides a number of
implicit conversion points, makes Moz2Dification harder, and has some
surprising effects.

This patch removes the implicit constructor and replaces it with an explicit
conversion function:

  gfxRect ThebesRect(const IntRect&)

This is the obvious outcome of removing the constructor.

But there is also a second, less obvious outcome: currently we do a number of
IntRect-to-Rect conversions using ToRect(), which (surprisingly) works because
it turns into an implicit IntRect-to-gfxRect conversion (via the implicit
constructor) combined with an explicit gfxRect-to-Rect conversion (via
ToRect()). I.e. we do two conversions, going from a Moz2D type to a Thebes
type and back to a Moz2D type!

So this patch also changes these conversion. It moves this existing function:

  Rect ToRect(const IntRect&)

from gfx2DGlue.h -- where it doesn't really belong because it doesn't involve
any Thebes types -- to gfx/2d/Rect.h, templatifying and renaming it as
IntRectToRect() in the process.

The rest of the patch deals with fall-out from these changes. The call sites
change as follows:

- IntRect-to-gfxRect conversions:
  - old: implicit
  - new: ThebesRect()

- IntRect-to-Rect conversions:
  - old: ToRect()
  - new: IntRectToRect()

--HG--
extra : rebase_source : e4e4c2ad10b36ecad4d57d1630158f3374e403be
2015-11-11 14:23:14 -08:00
Sotaro Ikeda a835d4a1cf Bug 1186796 - Replace nsBaseHashtable::EnumerateRead() calls in image/ with iterators r=njn 2015-11-10 23:07:09 -08:00
Sotaro Ikeda 7246d92be6 Bug 1187149 - Replace nsBaseHashtable::Enumerate() calls in image/ with iterators r=njn 2015-11-10 21:30:02 -08:00
Nathan Froyd e763192040 Bug 1216611 - add mozilla::MakeUniqueFallible and convert uses throughout the tree; r=Waldo 2015-11-05 16:24:24 -05:00
Ryan VanderMeulen 922927d4f3 Bug 1123195 - Re-enable 694165-1.xhtml on OSX.
--HG--
extra : rebase_source : 8a49022c7ccc2bb5107ef146808febee6dc2d87a
extra : histedit_source : bb95ee7544cebddccbc279f4a2a25c8f0620a59f
2015-11-01 12:58:53 -05:00
Ryan VanderMeulen 028dec7cc8 No bug - Various crashtest manifest cleanups.
--HG--
rename : dom/base/crashtests/713417.html => dom/base/crashtests/713417-1.html
rename : dom/workers/test/1158031.html => dom/workers/test/crashtests/1158031.html
rename : dom/workers/test/779707.html => dom/workers/test/crashtests/779707.html
rename : dom/workers/test/943516.html => dom/workers/test/crashtests/943516.html
rename : dom/workers/test/crashtests.list => dom/workers/test/crashtests/crashtests.list
rename : layout/generic/crashtests/812879.html => layout/generic/crashtests/812879-1.html
rename : layout/generic/crashtests/first-letter-638937.html => layout/generic/crashtests/first-letter-638937-1.html
extra : rebase_source : b9274dc6870030ed62bcee35350d566160502869
2015-10-31 19:35:27 -04:00
Timothy Nikkel 7e4a9059a6 Bug 1219501. Limit total number of image decoding threads to 32 regardless of number asked for. r=seth 2015-11-01 11:45:40 -06:00
Timothy Nikkel fb5eeef36c Bug 1219501. In imagelib, initialize the number of cores to at least 1 in case of error. r=seth
PR_GetNumberOfProcessors returns -1 in case of error, which is MAXUINT32 when turned into an unsigned int like sNumCores.
2015-11-01 11:45:40 -06:00
Nathan Froyd 77af195199 Bug 1219405 - use LazyLogModule for PNG decoder logging; r=seth
This change eliminates some TSan warnings and also eliminates some
boilerplate.
2015-10-28 16:08:06 -04:00
Ehsan Akhgari e5b08c2286 Bug 1202085 - Part 6: Clear the entries in the image cache belonging to a controlled document when it gets destroyed; r=seth 2015-10-30 16:03:13 -04:00
Ehsan Akhgari 3c9fd0e9e1 Bug 1202085 - Part 4: Add an ID for controlled document to the image cache key; r=seth
This ID will be null for non-controlled documents and also for image cache
entries for which a document is not available, and it will be the numerical
value of the document pointer for controlled documents.

This effectively makes sure that a controlled document doesn't share its
image cache entries with anything else.
2015-10-30 16:03:11 -04:00
Ehsan Akhgari 91329749b1 Bug 1202085 - Part 2: Add an optional document argument to imgICache::FindEntryProperties(); r=seth 2015-10-30 16:03:09 -04:00
Ehsan Akhgari 01fcc28c38 Bug 1202085 - Part 1: Remove imgICache::RemoveEntry(); r=seth 2015-10-30 16:03:08 -04:00
Seth Fowler 6598853366 Bug 1207355 (Part 8) - Remove imgIContainer::RequestDecode() and imgIRequest::RequestDecode(). r=tn 2015-10-29 16:37:42 -07:00
Seth Fowler 66fb01aecb Bug 1207355 (Part 7) - Only trigger intrinsic size decode in FinalizeDecoder() if StartDecoding() was called. r=tn 2015-10-29 16:37:42 -07:00
Seth Fowler 66cb1f97aa Bug 1207355 (Part 6) - Only respect StartDecoding() in imgRequest/imgRequestProxy. r=tn 2015-10-29 16:37:42 -07:00
Seth Fowler 1e28176d35 Bug 1207355 (Part 5) - Request decodes intelligently in MultipartImage. r=tn 2015-10-29 16:37:42 -07:00
Phil Ringnalda a727c1fe68 Back out 8 changesets (bug 1207355) for OS X 10.10 reftest failures in generated-content/
CLOSED TREE

Backed out changeset aafd6db2fbb4 (bug 1207355)
Backed out changeset 9dd950b837fb (bug 1207355)
Backed out changeset e941e0e106a1 (bug 1207355)
Backed out changeset ecebca101fcb (bug 1207355)
Backed out changeset 08f2017137e1 (bug 1207355)
Backed out changeset 3dc69e37c9b4 (bug 1207355)
Backed out changeset bcdf51edb121 (bug 1207355)
Backed out changeset 1d4c00dbf49a (bug 1207355)
2015-10-28 22:57:43 -07:00
Nicholas Nethercote a34d272e2b Bug 1209812 (part 3) - Rename SurfaceFormat::R5G6B5 as R5G6B5_UINT16. r=Bas.
--HG--
extra : rebase_source : 1efcfb2522e823e55b5c7b77531a9d2c42c49c8b
2015-10-22 23:01:31 -07:00