Andrew Osmond
ca5d0ac0fd
Bug 1290293 - Part 2a. Make nsPNGDecoder clear on which surface format is being used. r=tnikkel
2016-08-18 09:55:45 -04:00
Andrew Osmond
6679005d2a
Bug 1290293 - Part 2e. Make SurfacePipe users clear unwritten pixels if the image is truncated. r=tnikkel
2016-08-18 09:55:45 -04:00
Andrew Osmond
57499ffb90
Bug 1320684 - Start metadata decoding when the first data chunk has been received. r=tnikkel
2016-11-28 08:42:55 -05:00
Andrew Osmond
ef3aee28a1
Bug 1332005 - Remove opaque BGRA8 image surface optimization. r=tnikkel
2017-01-18 12:52:42 -05:00
Florian Quèze
2cf30507bd
Bug 1334261 - script-generated patch to remove more newURI null parameters, r=jaws.
2017-01-27 10:51:02 +01:00
Andrew Osmond
f6a09f3997
Bug 1290293 - Part 2d. Make nsJPEGDecoder clear unwritten pixels if the image is truncated. r=tnikkel
2016-08-18 09:55:45 -04:00
Andrew Osmond
bd54fc7365
Bug 1290293 - Part 2b. Make nsBMPDecoder explicitly write transparent pixels for those skipped by delta encoding. r=tnikkel
2017-02-13 19:51:40 -05:00
Sebastian Hengst
3ce82bcd4f
Backed out changeset 45dd83a63162 (bug 1339202) for crashing in image processing related tests, e.g. xpcshell test test_imgtools.js. r=backout
2017-02-13 22:34:54 +01:00
Andrew Osmond
1683b602b4
Bug 1339202 - Decode images to shared surfaces for WebRender. r=tnikkel
2017-02-08 15:48:59 -05:00
Timothy Nikkel
748db52939
Bug 1325297. Create a variant of imgIContainer::StartDecoding that returns if the current image frame is complete. r=aosmond
...
During painting we do some image decoding, but we want to send the image progress notifications from that decoding async. The CSS image renderer checks if the image is complete before painting it. So if the decoding we did during painting resulted in the images becoming complete there is no way to tell that during the same paint. Thus making that decoding a waste of time.
So we add a limited way of telling if the result of a StartDecoding call has resulting in an image that is ready to paint so we can get that result during the same paint.
I would have prefered to change StartDecoding to just return a bool but that would have made the bool an outparam, which would make every StartDecoding call uglier with extra code. Changing it to a notxpcom function would have fixed that, but I'm not sure if that is safe.
2016-12-23 01:07:45 -06:00
Timothy Nikkel
b46e1a9d16
Bug 1325296. RasterImage::LookupFrame does not return a surface if it was created as a result of a sync decode from with the FLAG_SYNC_DECODE_IF_FAST flag. r=aosmond
...
The Decode call may result in synchronously creating the surface, but we only check again if the surface is there for FLAG_SYNC_DECODE, not FLAG_SYNC_DECODE_IF_FAST.
All of the decoding we do during painting is of the type FLAG_SYNC_DECODE_IF_FAST, which means it would be useless to do that decoding synchronously during painting because the paint doesn't benefit from the result of that decoding.
Looking at the history of this code it looks like https://hg.mozilla.org/mozilla-central/rev/435df926eb10 (part 6 of bug 1119774) was where this bug was introduced. Before that changeset we always did another LookupFrameInternal call after the Decode (called WantDecodedFrames back then). But that changeset changed it to only be done for standard sync decodes, not "sync decode if fast".
2016-12-22 13:15:41 -06:00
Yoshi Huang
2ceecc22f5
Bug 1324115 - Part 2: replace the callers to use C++ helper. r=smaug
2016-12-21 14:59:21 +08:00
Timothy Nikkel
3428a70b8d
Bug 1324642. Move assert from bug 1323207 from nsImageLoadingContent::Notify to ScriptedNotificationObserver. r=continuation
...
nsImageLoadingContent::Notify is where all image notifications for things like <img> elements go through. The vast majority being implemented in C++. Any image observers implemented in JS must go through ScriptedNotificationObserver.
We only use ScriptedNotificationObserver in tests. The addon repository only has six hits, and four of them seem to be different versions of the same addon. And they don't seem to be among the more popular addons.
The original location of the assert only caught some images anyway. Things like CSS background images don't go through nsImageLoadingContent. ProgressTracker is the origin of all image notifications.
2016-12-20 13:49:31 -06:00
Cameron McCormack
366f6eb24d
Bug 1323892
- Disable currently crashing stylo crashtests. r=xidorn
...
MozReview-Commit-ID: 2BNjdBWdT5V
2016-12-16 18:54:41 +08:00
Andrew Osmond
f978bf206a
Bug 1319025 - Fix how animated images disposal method should use frame rect size instead of the image size as its bounds. r=tnikkel
2016-11-25 10:38:37 -05:00
Martin Husemann
6a9a8c76b3
Bug 1322112. Use memcpy() instead of dereferencing a casted pointer where the cast would increase alignement requirements on some architectures in nsIconDecoder. r=tnikkel
2016-12-08 14:10:58 -06:00
Timothy Nikkel
04b319ae6d
Bug 1322435. Limit the number of image decoding threads we use in the parent process. r=aosmond
...
There aren't as many images in chrome to decode, and they aren't as big, so we don't need as many threads.
2016-12-08 18:20:13 -06:00
a13d957952
Bug 1321877
. Fix compiler warnings in Downscaler.h when skia is not enabled. r=tnikkel
2016-12-08 18:20:12 -06:00
Timothy Nikkel
9ba87d3afb
Bug 1321946. Adjust asserts about the progress of an image to deal with how multipart images are handled. r=aosmond
...
For multipart images we create a MultipartImage which contains each part. Each part in turn is a VectorImage or RasterImage. The MultipartImage and each part image all have their own ProgressTracker. The ProgressTracker for the MultipartImage observes the notifications of each part image via the IProgressObserver interface. This interfaces notably has no way to notify about an image error. So when a part image has an error it never gets propagated to the MultipartImage's ProgressTracker. This confuses our assertions about consistency of progress notifications. In this case we expect that when we get the load complete notification then we either have the size of the image or we encountered an error. So if the first part of a multipart image is broken and we are unable to get a size from it we will trigger this assertion.
There are two ways to fix this. One would be to propagate errors to the MultipartImage's ProgressTracker. This would put the ProgressTracker for the MultipartImage permanently into error state and prevent showing the images from the remaining parts if one part image had an error.
So in this patch I create a way to tell a ProgressTracker that is is for a multipart image, and use that to relax the assertions. As far as I can tell our code should be able to handle "ignoring" an error in a bad part image.
Addtionaly there is a way that an error flag can get propagated to the MultipartImage's tracker: in MultipartImage::FinishTransition we get the progress directly from the part image and notify for it. This seems like an oversight as the comment at
https://dxr.mozilla.org/mozilla-central/rev/bfa85d23df57c8a1db17c99b267667becc1c4afd/image/imgRequest.cpp#989
indicates that we don't want one bad part to prevent later parts from displaying. So we add the error flag to the ones we filter out when we propagate progress.
2016-12-03 16:07:10 -06:00
Timothy Nikkel
3027ea82cf
Bug 1317837. RasterImage::RequestDecodeForSize should set mWantFullDecode just like StartDecoding if we don't have our size yet. r=aosmond
2016-12-01 15:52:06 -06:00
Ryan VanderMeulen
9bd4ab78e6
Merge m-c to inbound. a=merge
2016-12-01 09:33:46 -05:00
Andrea Marchesini
8bbeee69cf
Bug 1321261 - create dom/file for File APIs, r=qdot
...
--HG--
rename : dom/base/BlobSet.cpp => dom/file/BlobSet.cpp
rename : dom/base/BlobSet.h => dom/file/BlobSet.h
rename : dom/base/File.cpp => dom/file/File.cpp
rename : dom/base/File.h => dom/file/File.h
rename : dom/base/FileList.cpp => dom/file/FileList.cpp
rename : dom/base/FileList.h => dom/file/FileList.h
rename : dom/base/FileReader.cpp => dom/file/FileReader.cpp
rename : dom/base/FileReader.h => dom/file/FileReader.h
rename : dom/base/MultipartBlobImpl.cpp => dom/file/MultipartBlobImpl.cpp
rename : dom/base/MultipartBlobImpl.h => dom/file/MultipartBlobImpl.h
rename : dom/base/MutableBlobStorage.cpp => dom/file/MutableBlobStorage.cpp
rename : dom/base/MutableBlobStorage.h => dom/file/MutableBlobStorage.h
rename : dom/base/MutableBlobStreamListener.cpp => dom/file/MutableBlobStreamListener.cpp
rename : dom/base/MutableBlobStreamListener.h => dom/file/MutableBlobStreamListener.h
rename : dom/ipc/Blob.cpp => dom/file/ipc/Blob.cpp
rename : dom/ipc/BlobChild.h => dom/file/ipc/BlobChild.h
rename : dom/ipc/BlobParent.h => dom/file/ipc/BlobParent.h
rename : dom/ipc/BlobTypes.ipdlh => dom/file/ipc/BlobTypes.ipdlh
rename : dom/ipc/PBlob.ipdl => dom/file/ipc/PBlob.ipdl
rename : dom/ipc/PBlobStream.ipdl => dom/file/ipc/PBlobStream.ipdl
rename : dom/ipc/nsIRemoteBlob.h => dom/file/ipc/nsIRemoteBlob.h
rename : dom/base/nsHostObjectProtocolHandler.cpp => dom/file/nsHostObjectProtocolHandler.cpp
rename : dom/base/nsHostObjectProtocolHandler.h => dom/file/nsHostObjectProtocolHandler.h
rename : dom/base/nsHostObjectURI.cpp => dom/file/nsHostObjectURI.cpp
rename : dom/base/nsHostObjectURI.h => dom/file/nsHostObjectURI.h
rename : dom/base/nsIDOMBlob.idl => dom/file/nsIDOMBlob.idl
rename : dom/base/nsIDOMFileList.idl => dom/file/nsIDOMFileList.idl
rename : dom/base/test/create_file_objects.js => dom/file/tests/create_file_objects.js
rename : dom/base/test/file_blobURL_expiring.html => dom/file/tests/file_blobURL_expiring.html
rename : dom/base/test/file_mozfiledataurl_audio.ogg => dom/file/tests/file_mozfiledataurl_audio.ogg
rename : dom/base/test/file_mozfiledataurl_doc.html => dom/file/tests/file_mozfiledataurl_doc.html
rename : dom/base/test/file_mozfiledataurl_img.jpg => dom/file/tests/file_mozfiledataurl_img.jpg
rename : dom/base/test/file_mozfiledataurl_inner.html => dom/file/tests/file_mozfiledataurl_inner.html
rename : dom/base/test/file_mozfiledataurl_text.txt => dom/file/tests/file_mozfiledataurl_text.txt
rename : dom/base/test/file_nonascii_blob_url.html => dom/file/tests/file_nonascii_blob_url.html
rename : dom/base/test/fileapi_chromeScript.js => dom/file/tests/fileapi_chromeScript.js
rename : dom/base/test/fileutils.js => dom/file/tests/fileutils.js
rename : dom/base/test/test_blobURL_expiring.html => dom/file/tests/test_blobURL_expiring.html
rename : dom/base/test/test_blob_fragment_and_query.html => dom/file/tests/test_blob_fragment_and_query.html
rename : dom/base/test/test_blobconstructor.html => dom/file/tests/test_blobconstructor.html
rename : dom/base/test/test_file_from_blob.html => dom/file/tests/test_file_from_blob.html
rename : dom/base/test/test_file_negative_date.html => dom/file/tests/test_file_negative_date.html
rename : dom/base/test/test_fileapi.html => dom/file/tests/test_fileapi.html
rename : dom/base/test/test_fileapi_slice.html => dom/file/tests/test_fileapi_slice.html
rename : dom/base/test/test_ipc_messagemanager_blob.html => dom/file/tests/test_ipc_messagemanager_blob.html
rename : dom/base/test/test_mozfiledataurl.html => dom/file/tests/test_mozfiledataurl.html
rename : dom/base/test/test_nonascii_blob_url.html => dom/file/tests/test_nonascii_blob_url.html
2016-12-01 15:12:42 +01:00
Shih-Chiang Chien
ad4d822074
Bug 1320256 - use PR_GetThreadName as the register name in profiler. r=cyu
...
MozReview-Commit-ID: Hybb1zElpSO
--HG--
extra : rebase_source : 7bd2485eba40e9c80810e8e844ecfc8f91600ced
2016-11-29 19:00:04 +08:00
Sebastian Hengst
2fff66aaac
Backed out changeset d3ef6f3e9193 (bug 1321261) for build bustage (calling missing file BlobParent.h from dom/ipc/TabParent.cpp). r=backout on a CLOSED TREE
...
--HG--
rename : dom/file/BlobSet.cpp => dom/base/BlobSet.cpp
rename : dom/file/BlobSet.h => dom/base/BlobSet.h
rename : dom/file/File.cpp => dom/base/File.cpp
rename : dom/file/File.h => dom/base/File.h
rename : dom/file/FileList.cpp => dom/base/FileList.cpp
rename : dom/file/FileList.h => dom/base/FileList.h
rename : dom/file/FileReader.cpp => dom/base/FileReader.cpp
rename : dom/file/FileReader.h => dom/base/FileReader.h
rename : dom/file/MultipartBlobImpl.cpp => dom/base/MultipartBlobImpl.cpp
rename : dom/file/MultipartBlobImpl.h => dom/base/MultipartBlobImpl.h
rename : dom/file/MutableBlobStorage.cpp => dom/base/MutableBlobStorage.cpp
rename : dom/file/MutableBlobStorage.h => dom/base/MutableBlobStorage.h
rename : dom/file/MutableBlobStreamListener.cpp => dom/base/MutableBlobStreamListener.cpp
rename : dom/file/MutableBlobStreamListener.h => dom/base/MutableBlobStreamListener.h
rename : dom/file/nsHostObjectProtocolHandler.cpp => dom/base/nsHostObjectProtocolHandler.cpp
rename : dom/file/nsHostObjectProtocolHandler.h => dom/base/nsHostObjectProtocolHandler.h
rename : dom/file/nsHostObjectURI.cpp => dom/base/nsHostObjectURI.cpp
rename : dom/file/nsHostObjectURI.h => dom/base/nsHostObjectURI.h
rename : dom/file/nsIDOMBlob.idl => dom/base/nsIDOMBlob.idl
rename : dom/file/nsIDOMFileList.idl => dom/base/nsIDOMFileList.idl
rename : dom/file/tests/create_file_objects.js => dom/base/test/create_file_objects.js
rename : dom/file/tests/file_blobURL_expiring.html => dom/base/test/file_blobURL_expiring.html
rename : dom/file/tests/file_mozfiledataurl_audio.ogg => dom/base/test/file_mozfiledataurl_audio.ogg
rename : dom/file/tests/file_mozfiledataurl_doc.html => dom/base/test/file_mozfiledataurl_doc.html
rename : dom/file/tests/file_mozfiledataurl_inner.html => dom/base/test/file_mozfiledataurl_inner.html
rename : dom/file/tests/file_mozfiledataurl_text.txt => dom/base/test/file_mozfiledataurl_text.txt
rename : dom/file/tests/file_nonascii_blob_url.html => dom/base/test/file_nonascii_blob_url.html
rename : dom/file/tests/fileapi_chromeScript.js => dom/base/test/fileapi_chromeScript.js
rename : dom/file/tests/fileutils.js => dom/base/test/fileutils.js
rename : dom/file/tests/test_blobURL_expiring.html => dom/base/test/test_blobURL_expiring.html
rename : dom/file/tests/test_blob_fragment_and_query.html => dom/base/test/test_blob_fragment_and_query.html
rename : dom/file/tests/test_blobconstructor.html => dom/base/test/test_blobconstructor.html
rename : dom/file/tests/test_file_from_blob.html => dom/base/test/test_file_from_blob.html
rename : dom/file/tests/test_file_negative_date.html => dom/base/test/test_file_negative_date.html
rename : dom/file/tests/test_fileapi.html => dom/base/test/test_fileapi.html
rename : dom/file/tests/test_fileapi_slice.html => dom/base/test/test_fileapi_slice.html
rename : dom/file/tests/test_ipc_messagemanager_blob.html => dom/base/test/test_ipc_messagemanager_blob.html
rename : dom/file/tests/test_nonascii_blob_url.html => dom/base/test/test_nonascii_blob_url.html
rename : dom/file/ipc/Blob.cpp => dom/ipc/Blob.cpp
rename : dom/file/ipc/BlobChild.h => dom/ipc/BlobChild.h
rename : dom/file/ipc/BlobParent.h => dom/ipc/BlobParent.h
rename : dom/file/ipc/BlobTypes.ipdlh => dom/ipc/BlobTypes.ipdlh
rename : dom/file/ipc/PBlob.ipdl => dom/ipc/PBlob.ipdl
rename : dom/file/ipc/PBlobStream.ipdl => dom/ipc/PBlobStream.ipdl
rename : dom/file/ipc/nsIRemoteBlob.h => dom/ipc/nsIRemoteBlob.h
2016-12-01 12:27:28 +01:00
Andrea Marchesini
5fa67a1046
Bug 1321261 - create dom/file for File APIs, r=qdot
...
--HG--
rename : dom/base/BlobSet.cpp => dom/file/BlobSet.cpp
rename : dom/base/BlobSet.h => dom/file/BlobSet.h
rename : dom/base/File.cpp => dom/file/File.cpp
rename : dom/base/File.h => dom/file/File.h
rename : dom/base/FileList.cpp => dom/file/FileList.cpp
rename : dom/base/FileList.h => dom/file/FileList.h
rename : dom/base/FileReader.cpp => dom/file/FileReader.cpp
rename : dom/base/FileReader.h => dom/file/FileReader.h
rename : dom/base/MultipartBlobImpl.cpp => dom/file/MultipartBlobImpl.cpp
rename : dom/base/MultipartBlobImpl.h => dom/file/MultipartBlobImpl.h
rename : dom/base/MutableBlobStorage.cpp => dom/file/MutableBlobStorage.cpp
rename : dom/base/MutableBlobStorage.h => dom/file/MutableBlobStorage.h
rename : dom/base/MutableBlobStreamListener.cpp => dom/file/MutableBlobStreamListener.cpp
rename : dom/base/MutableBlobStreamListener.h => dom/file/MutableBlobStreamListener.h
rename : dom/ipc/Blob.cpp => dom/file/ipc/Blob.cpp
rename : dom/ipc/BlobChild.h => dom/file/ipc/BlobChild.h
rename : dom/ipc/BlobParent.h => dom/file/ipc/BlobParent.h
rename : dom/ipc/BlobTypes.ipdlh => dom/file/ipc/BlobTypes.ipdlh
rename : dom/ipc/PBlob.ipdl => dom/file/ipc/PBlob.ipdl
rename : dom/ipc/PBlobStream.ipdl => dom/file/ipc/PBlobStream.ipdl
rename : dom/ipc/nsIRemoteBlob.h => dom/file/ipc/nsIRemoteBlob.h
rename : dom/base/nsHostObjectProtocolHandler.cpp => dom/file/nsHostObjectProtocolHandler.cpp
rename : dom/base/nsHostObjectProtocolHandler.h => dom/file/nsHostObjectProtocolHandler.h
rename : dom/base/nsHostObjectURI.cpp => dom/file/nsHostObjectURI.cpp
rename : dom/base/nsHostObjectURI.h => dom/file/nsHostObjectURI.h
rename : dom/base/nsIDOMBlob.idl => dom/file/nsIDOMBlob.idl
rename : dom/base/nsIDOMFileList.idl => dom/file/nsIDOMFileList.idl
rename : dom/base/test/create_file_objects.js => dom/file/tests/create_file_objects.js
rename : dom/base/test/file_blobURL_expiring.html => dom/file/tests/file_blobURL_expiring.html
rename : dom/base/test/file_mozfiledataurl_audio.ogg => dom/file/tests/file_mozfiledataurl_audio.ogg
rename : dom/base/test/file_mozfiledataurl_doc.html => dom/file/tests/file_mozfiledataurl_doc.html
rename : dom/base/test/file_mozfiledataurl_img.jpg => dom/file/tests/file_mozfiledataurl_img.jpg
rename : dom/base/test/file_mozfiledataurl_inner.html => dom/file/tests/file_mozfiledataurl_inner.html
rename : dom/base/test/file_mozfiledataurl_text.txt => dom/file/tests/file_mozfiledataurl_text.txt
rename : dom/base/test/file_nonascii_blob_url.html => dom/file/tests/file_nonascii_blob_url.html
rename : dom/base/test/fileapi_chromeScript.js => dom/file/tests/fileapi_chromeScript.js
rename : dom/base/test/fileutils.js => dom/file/tests/fileutils.js
rename : dom/base/test/test_blobURL_expiring.html => dom/file/tests/test_blobURL_expiring.html
rename : dom/base/test/test_blob_fragment_and_query.html => dom/file/tests/test_blob_fragment_and_query.html
rename : dom/base/test/test_blobconstructor.html => dom/file/tests/test_blobconstructor.html
rename : dom/base/test/test_file_from_blob.html => dom/file/tests/test_file_from_blob.html
rename : dom/base/test/test_file_negative_date.html => dom/file/tests/test_file_negative_date.html
rename : dom/base/test/test_fileapi.html => dom/file/tests/test_fileapi.html
rename : dom/base/test/test_fileapi_slice.html => dom/file/tests/test_fileapi_slice.html
rename : dom/base/test/test_ipc_messagemanager_blob.html => dom/file/tests/test_ipc_messagemanager_blob.html
rename : dom/base/test/test_nonascii_blob_url.html => dom/file/tests/test_nonascii_blob_url.html
2016-12-01 11:43:18 +01:00
Sebastian Hengst
3d3ca51d8d
Backed out changeset 806c3d121dd4 (bug 1321261) for timing out in test_fileapi.html, test_mozfiledataurl.html and test_nonascii_blob_url.html on Linux x64 asan and debug. r=backout
...
--HG--
rename : dom/file/BlobSet.cpp => dom/base/BlobSet.cpp
rename : dom/file/BlobSet.h => dom/base/BlobSet.h
rename : dom/file/File.cpp => dom/base/File.cpp
rename : dom/file/File.h => dom/base/File.h
rename : dom/file/FileList.cpp => dom/base/FileList.cpp
rename : dom/file/FileList.h => dom/base/FileList.h
rename : dom/file/FileReader.cpp => dom/base/FileReader.cpp
rename : dom/file/FileReader.h => dom/base/FileReader.h
rename : dom/file/MultipartBlobImpl.cpp => dom/base/MultipartBlobImpl.cpp
rename : dom/file/MultipartBlobImpl.h => dom/base/MultipartBlobImpl.h
rename : dom/file/MutableBlobStorage.cpp => dom/base/MutableBlobStorage.cpp
rename : dom/file/MutableBlobStorage.h => dom/base/MutableBlobStorage.h
rename : dom/file/MutableBlobStreamListener.cpp => dom/base/MutableBlobStreamListener.cpp
rename : dom/file/MutableBlobStreamListener.h => dom/base/MutableBlobStreamListener.h
rename : dom/file/nsHostObjectProtocolHandler.cpp => dom/base/nsHostObjectProtocolHandler.cpp
rename : dom/file/nsHostObjectProtocolHandler.h => dom/base/nsHostObjectProtocolHandler.h
rename : dom/file/nsHostObjectURI.cpp => dom/base/nsHostObjectURI.cpp
rename : dom/file/nsHostObjectURI.h => dom/base/nsHostObjectURI.h
rename : dom/file/nsIDOMBlob.idl => dom/base/nsIDOMBlob.idl
rename : dom/file/nsIDOMFileList.idl => dom/base/nsIDOMFileList.idl
rename : dom/file/tests/file_blobURL_expiring.html => dom/base/test/file_blobURL_expiring.html
rename : dom/file/tests/file_nonascii_blob_url.html => dom/base/test/file_nonascii_blob_url.html
rename : dom/file/tests/fileutils.js => dom/base/test/fileutils.js
rename : dom/file/tests/test_blobURL_expiring.html => dom/base/test/test_blobURL_expiring.html
rename : dom/file/tests/test_blob_fragment_and_query.html => dom/base/test/test_blob_fragment_and_query.html
rename : dom/file/tests/test_blobconstructor.html => dom/base/test/test_blobconstructor.html
rename : dom/file/tests/test_file_from_blob.html => dom/base/test/test_file_from_blob.html
rename : dom/file/tests/test_file_negative_date.html => dom/base/test/test_file_negative_date.html
rename : dom/file/tests/test_fileapi.html => dom/base/test/test_fileapi.html
rename : dom/file/tests/test_fileapi_slice.html => dom/base/test/test_fileapi_slice.html
rename : dom/file/tests/test_ipc_messagemanager_blob.html => dom/base/test/test_ipc_messagemanager_blob.html
rename : dom/file/tests/test_mozfiledataurl.html => dom/base/test/test_mozfiledataurl.html
rename : dom/file/tests/test_nonascii_blob_url.html => dom/base/test/test_nonascii_blob_url.html
rename : dom/file/ipc/Blob.cpp => dom/ipc/Blob.cpp
rename : dom/file/ipc/BlobChild.h => dom/ipc/BlobChild.h
rename : dom/file/ipc/BlobParent.h => dom/ipc/BlobParent.h
rename : dom/file/ipc/BlobTypes.ipdlh => dom/ipc/BlobTypes.ipdlh
rename : dom/file/ipc/PBlob.ipdl => dom/ipc/PBlob.ipdl
rename : dom/file/ipc/PBlobStream.ipdl => dom/ipc/PBlobStream.ipdl
rename : dom/file/ipc/nsIRemoteBlob.h => dom/ipc/nsIRemoteBlob.h
2016-12-01 11:05:56 +01:00
Tooru Fujisawa
5931477b72
Bug 1321220 - Remove legacy generator from image/. r=aosmond
2016-12-01 18:12:14 +09:00
Andrea Marchesini
0606c6006d
Bug 1321261 - create dom/file for File APIs, r=qdot
...
--HG--
rename : dom/base/BlobSet.cpp => dom/file/BlobSet.cpp
rename : dom/base/BlobSet.h => dom/file/BlobSet.h
rename : dom/base/File.cpp => dom/file/File.cpp
rename : dom/base/File.h => dom/file/File.h
rename : dom/base/FileList.cpp => dom/file/FileList.cpp
rename : dom/base/FileList.h => dom/file/FileList.h
rename : dom/base/FileReader.cpp => dom/file/FileReader.cpp
rename : dom/base/FileReader.h => dom/file/FileReader.h
rename : dom/base/MultipartBlobImpl.cpp => dom/file/MultipartBlobImpl.cpp
rename : dom/base/MultipartBlobImpl.h => dom/file/MultipartBlobImpl.h
rename : dom/base/MutableBlobStorage.cpp => dom/file/MutableBlobStorage.cpp
rename : dom/base/MutableBlobStorage.h => dom/file/MutableBlobStorage.h
rename : dom/base/MutableBlobStreamListener.cpp => dom/file/MutableBlobStreamListener.cpp
rename : dom/base/MutableBlobStreamListener.h => dom/file/MutableBlobStreamListener.h
rename : dom/ipc/Blob.cpp => dom/file/ipc/Blob.cpp
rename : dom/ipc/BlobChild.h => dom/file/ipc/BlobChild.h
rename : dom/ipc/BlobParent.h => dom/file/ipc/BlobParent.h
rename : dom/ipc/BlobTypes.ipdlh => dom/file/ipc/BlobTypes.ipdlh
rename : dom/ipc/PBlob.ipdl => dom/file/ipc/PBlob.ipdl
rename : dom/ipc/PBlobStream.ipdl => dom/file/ipc/PBlobStream.ipdl
rename : dom/ipc/nsIRemoteBlob.h => dom/file/ipc/nsIRemoteBlob.h
rename : dom/base/nsHostObjectProtocolHandler.cpp => dom/file/nsHostObjectProtocolHandler.cpp
rename : dom/base/nsHostObjectProtocolHandler.h => dom/file/nsHostObjectProtocolHandler.h
rename : dom/base/nsHostObjectURI.cpp => dom/file/nsHostObjectURI.cpp
rename : dom/base/nsHostObjectURI.h => dom/file/nsHostObjectURI.h
rename : dom/base/nsIDOMBlob.idl => dom/file/nsIDOMBlob.idl
rename : dom/base/nsIDOMFileList.idl => dom/file/nsIDOMFileList.idl
rename : dom/base/test/file_blobURL_expiring.html => dom/file/tests/file_blobURL_expiring.html
rename : dom/base/test/file_nonascii_blob_url.html => dom/file/tests/file_nonascii_blob_url.html
rename : dom/base/test/fileutils.js => dom/file/tests/fileutils.js
rename : dom/base/test/test_blobURL_expiring.html => dom/file/tests/test_blobURL_expiring.html
rename : dom/base/test/test_blob_fragment_and_query.html => dom/file/tests/test_blob_fragment_and_query.html
rename : dom/base/test/test_blobconstructor.html => dom/file/tests/test_blobconstructor.html
rename : dom/base/test/test_file_from_blob.html => dom/file/tests/test_file_from_blob.html
rename : dom/base/test/test_file_negative_date.html => dom/file/tests/test_file_negative_date.html
rename : dom/base/test/test_fileapi.html => dom/file/tests/test_fileapi.html
rename : dom/base/test/test_fileapi_slice.html => dom/file/tests/test_fileapi_slice.html
rename : dom/base/test/test_ipc_messagemanager_blob.html => dom/file/tests/test_ipc_messagemanager_blob.html
rename : dom/base/test/test_mozfiledataurl.html => dom/file/tests/test_mozfiledataurl.html
rename : dom/base/test/test_nonascii_blob_url.html => dom/file/tests/test_nonascii_blob_url.html
2016-12-01 09:21:54 +01:00
Carsten "Tomcat" Book
06069f9b3c
Merge mozilla-central to mozilla-inbound
2016-11-29 16:49:35 +01:00
Carsten "Tomcat" Book
68202ee27c
merge mozilla-inbound to mozilla-central a=merge
2016-11-29 16:47:18 +01:00
Andrew Osmond
1f7abbe2a9
Bug 1299498 - Keep a main thread only pointer to the underlying nsIURI for ImageURL. r=tnikkel
2016-11-28 08:40:42 -05:00
Timothy Nikkel
b69c01ee55
Bug 1317907. Refactor FrameAnimator::GetCompositedFrame to be a bit simpler. r=aosmond
...
FrameAnimator::GetCompositedFrame is only ever called with the current animation frame index. This is good because it can return invalid results if it is called for some other frame number.
2016-11-29 01:01:43 -06:00
Shih-Chiang Chien
a48d98cdd6
Bug 1320256 - register decode threads to Gecko profiler. r=cyu,tnikkel
...
MozReview-Commit-ID: CftQ4LwzqmN
--HG--
extra : rebase_source : 7d53aeba6a321a78dbdfaba3d7648e6b852b5431
2016-11-25 15:00:10 +08:00
Timothy Nikkel
501b1c2574
Bug 1317562. Allow flags to be passed to StartDecoding for the sole purpose of allowing async notifications to be requested. r=aosmond
2016-11-26 01:56:26 -06:00
Andrew Osmond
4edea59e7c
Bug 1320196 - Avoid string concatenation when computing the hash for ImageCacheKey. r=tnikkel
2016-11-25 07:28:27 -05:00
Timothy Nikkel
a8ff4ecff5
Bug 1317554. Make the notifications that VectorImage sends on draw async. r=aosmond
2016-11-18 15:59:04 -06:00
Andi-Bogdan Postelnicu
ec3eda24ad
Bug 1318000 - Use C++11's override and remove virtual where applicable in image/. r=jrmuizel
...
MozReview-Commit-ID: B0ZIwPnhAIT
--HG--
extra : rebase_source : c1b9408efe2efb301784ef58489d4cb6e0e0d7b1
2016-11-16 17:41:47 +02:00
Andi-Bogdan Postelnicu
0cfd234e69
Bug 1318000 - Replace default bodies of special member functions with = default; in image/. r=jrmuizel
...
MozReview-Commit-ID: FYzbhclEgyD
--HG--
extra : rebase_source : f9d737670d8c6b963e6c3aff74d8e907b2af45f5
2016-11-16 17:39:43 +02:00
Andi-Bogdan Postelnicu
e1f33061ed
Bug 1318000 - Use auto type specifier where aplicable for variable declarations to improve code readability and maintainability in image/. r=jrmuizel
...
MozReview-Commit-ID: DpS7zsWD75j
--HG--
extra : rebase_source : a7f0d1fd49a2d8084d4da6631d466e01df0c8e5e
2016-11-16 17:39:05 +02:00
Timothy Nikkel
0b046c7ab4
Bug 1317552. Send unlocked draw notifications for images async when asked to. r=aosmond
2016-11-17 00:25:53 -06:00
Andrew Osmond
f944648035
Bug 1315863 - Use PNG_MAXIMUM_INFLATE_WINDOW to ensure maximum compatibility with existing images. r=glennrp
2016-11-16 15:21:33 -05:00
Andrew Osmond
65f399d680
Bug 1315443 - Use the embedded BMPs BPP over the ICOs BPP when available. r=tnikkel
2016-11-16 09:57:35 -05:00
Ehsan Akhgari
ba68896bf9
Bug 1311246 - Remove support for the -moz-samplesize media fragment; r=jrmuizel
...
This removes the feature added in bug 854795 for Tarako b2g devices.
2016-11-16 08:18:56 -05:00
Markus Stange
3994547b42
Bug 1307242 - Add a non-blank paint telemetry probe for foreground root content documents. r=bkelly, f=bsmedberg
...
This adds a probe called TIME_TO_NON_BLANK_PAINT_MS which reports time to
non-blank paint for root content documents whose docshell was active for the
entire time between navigation start and first non-blank paint.
MozReview-Commit-ID: 7JQdk5vHr1O
--HG--
extra : rebase_source : 66be2aab4c4a32d20fb44c88c5270c5b5cfc0b81
extra : histedit_source : 5d6bef86d4a2a2250405d24ce28c6bfd9d654f8d
2016-11-10 14:26:54 -05:00
Sebastian Hengst
dd4c169203
Bug 1310297 - Remove test annotations using b2g, mulet or gonk: image. r=RyanVM
...
MozReview-Commit-ID: QP1u9L6jqp
--HG--
extra : rebase_source : 76a554a1ae43e9e1ed7178afa66a6c1e6b4b6fda
2016-11-05 11:29:19 +01:00
Andrew Osmond
0eb070a4cc
Bug 1311779 - Part 2. Add telemetry to track optimizable opaque images decoded into B8G8R8A8 surfaces. r=tnikkel
2016-10-19 12:34:30 -04:00
Andrew Osmond
cff4a19210
Bug 1311779 - Part 1. Ensure JPEG and BMP image decoders use B8G8R8X8 surfaces when possible. r=tnikkel
2016-10-20 14:43:26 -04:00
Andrew Osmond
f56472c614
Bug 1313102 - Fix crash when calculating sizes for VectorImage memory reports. r=tnikkel
2016-10-26 12:46:00 -04:00
Andrew Osmond
fc8ba03399
Bug 1284117 - Make RasterImage and SourceBuffer handle input stream read errors. r=edwin
2016-10-13 10:09:35 -04:00
Andrew Osmond
46250e2a5e
Bug 1258741 - Part 2. Ensure we consistently render partially decoded images. r=tnikkel
2016-09-26 14:18:37 -04:00
Andrew Osmond
54d6f7e0c4
Bug 1258741 - Part 1. Remove dead/unused image decoder aborted flag. r=tnikkel
2016-09-21 07:13:08 -04:00
Andrew Osmond
be96e28a0f
Bug 1308289 - Hold strong reference to VectorImage when dispatching ProgressTracker::SyncNotifyProgress. r=tnikkel
2016-10-13 08:35:55 -04:00
Ehsan Akhgari
75d4b96af8
Bug 1306800 - Remove support for app theming; r=myk,baku
2016-10-13 13:23:03 -04:00
Tim Huang
aeffcdcbe2
Bug 1277803 - Part 3 : Make the image library uses the correct originAttributes and triggering principal when opening a image channel for favicon loading. r=tnikkel
2016-10-13 15:43:57 +08:00
Cameron McCormack
c1f0ee12ba
Bug 1309082 - Part 2: Rename some ImageTracker members. r=bholley
...
MozReview-Commit-ID: 6yOIKKl8npT
--HG--
extra : rebase_source : 247787a0e18640c878e461c4b600bc36a40bad6d
2016-10-13 15:04:19 +08:00
Cameron McCormack
58c32a9088
Bug 1309082 - Part 1: Extract image tracking from nsDocument into a separate, refcounted object. r=bholley
...
This is refcounted as we'll need to hold strong references to the ImageTracker
from style structs that load images.
MozReview-Commit-ID: 994gE9tOjAn
--HG--
extra : rebase_source : 2d50059e51b42251c89a92a954cef7b49720ceba
2016-10-13 15:04:15 +08:00
Wes Kocher
2142de26c1
Backed out 8 changesets (bug 1277803) for browser-chrome test failures a=backout
...
Backed out changeset 477890efdb88 (bug 1277803)
Backed out changeset 49da326bfe68 (bug 1277803)
Backed out changeset 2d17a40a9077 (bug 1277803)
Backed out changeset b1cb0a195ca1 (bug 1277803)
Backed out changeset c7d82459d152 (bug 1277803)
Backed out changeset 3be9a06248af (bug 1277803)
Backed out changeset 8d119ca96999 (bug 1277803)
Backed out changeset be767a6f7ecd (bug 1277803)
2016-10-12 14:26:00 -07:00
Tim Huang
91878c9769
Bug 1277803 - Part 3 : Make the image library uses the correct originAttributes and triggering principal when opening a image channel for favicon loading. r=tnikkel
2016-10-12 17:32:06 +08:00
Nathan Froyd
19607c3802
Bug 1306625 - fix wonky identation in imgFrame.cpp; r=tnikkel
...
DONTBUILD because whitespace-only fixes are always safe...right?
2016-09-30 23:11:59 -04:00
Andrew Osmond
31ad519348
Bug 1275464 - Part 1. Unregister from handling image memory reports when shutting down. r=njn
2016-09-19 13:29:59 -04:00
James Andreou
a47ce92ac2
Bug 1282124 - Remove nsILoadInfo.usePrivateBrowsing and the SEC_FORCE_PRIVATE_BROWSING flag; r=smaug,jryans
2016-09-27 16:56:44 -04:00
Kate McKinley
c57d400961
Bug 1246540 - HSTS Priming Proof of Concept. r=ckerschb, r=mayhemer, r=jld, r=smaug, r=dkeeler, r=jmaher, p=ally
...
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.
Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.
nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.
MozReview-Commit-ID: ES1JruCtDdX
--HG--
extra : rebase_source : 2ac6c93c49f2862fc0b9e595eb0598cd1ea4bedf
2016-09-27 11:27:00 -04:00
Timothy Nikkel
bb32ac7fbf
Backed out changeset a23edcf5b82a (bug 1343341)
2017-03-15 03:13:51 -05:00
Timothy Nikkel
0f1d7652b6
Backed out changeset 29e2e6dd82d2 (bug 1343341)
2017-03-15 03:13:33 -05:00
Timothy Nikkel
d1b5ed8ea1
Bug 1343341. Only set the animation state as discarded if we discarded the animated frames (and not a static frame from a first-frame-only decode). r=aosmond
...
The SurfaceCache can hold the first frame of a "static" decode as well as the animated frames in two seperate entries. We only care about what happens to the animated frames, so ignore OnSurfaceDiscarded for anything else.
To accomplish this we must pass the SurfaceKey to OnSurfaceDiscarded.
2017-03-15 02:47:40 -05:00
Timothy Nikkel
a2ceaae0b8
Bug 1343341. Create state on the AnimationState object to track whether the image is decoded or not. r=aosmond
...
We end up needing to track a few different things.
The large comment in the patch explains.
2017-03-15 02:47:37 -05:00
Andrew Osmond
1d4866a48f
Bug 1120279 - Always check if the next frame is available before advancing an animation.
2016-09-21 12:55:26 -04:00
Andrew Osmond
1286146b81
Bug 1303427 - Continue parsing buffered LZW codes in GIFs even if input stream is complete. r=tn
2016-09-19 09:16:28 -04:00
Manish Goregaokar
fe560e754d
Bug 1303920 - Update stylo reftest list; r=heycam
...
MozReview-Commit-ID: 6fKFLbTL2gW
--HG--
extra : rebase_source : bf87e02799dc530b7d26b2040071ecd8213d36df
2016-09-19 20:20:03 +05:30
Manish Goregaokar
63e75ca24b
Bug 1302993 - Mark more expectations for stylo tests, make reftest-stylo green; r=heycam
...
MozReview-Commit-ID: 9rKqASXgKZH
--HG--
extra : rebase_source : ea4d2cdc5623673827676e52d255c8b6fa34f7dd
2016-09-12 19:18:10 +05:30
Shing Lyu
74414dd285
Bug 1302993 - Update some stylo reftest expectations; r=heycam
...
MozReview-Commit-ID: 5UUDlAUfBYP
--HG--
extra : rebase_source : c8aff1382e492bc07c59becc697abfb4f7bd8f95
2016-09-12 11:05:21 +05:30
Phil Ringnalda
c58d0d6900
Merge m-i to m-c, a=merge
2016-09-17 13:44:34 -07:00
Phil Ringnalda
ac5e0632ed
Backed out changeset c0021d576b3a (bug 1120279) for multiple reftest failures
2016-09-17 09:54:25 -07:00
Andrew Osmond
834a37825b
Bug 1120279 - Ensure the animated image state is consistent if redecoding fails or is asynchronous. r=edwin
2016-09-15 15:13:48 -04:00
Nicolas Silva
79bb9f5c0e
Bug 1284837 - Disallow implicit conversions from float to integer when creating. r=botond
2016-09-16 17:49:39 +02:00
Bas Schouten
77e2a32f4a
Bug 1296657: Attempt to create an mOptSurface of the correct type for the DT we're drawing to. r=tnikkel
...
MozReview-Commit-ID: 2LIQWUPAuaF
2016-09-15 13:53:12 +02:00
Carsten "Tomcat" Book
0f2c669a48
merge mozilla-inbound to mozilla-central a=merge
2016-09-09 12:02:43 +02:00
Shing Lyu
db11558e50
Bug 1288350 - Temporary reftest list for Stylo vs Gecko test r=heycam,manishearth
...
--HG--
extra : rebase_source : 4772418bd2813d4e79643a833eb09e47fe893d84
2016-09-05 11:45:39 +08:00
Nicholas Nethercote
3ac8aee67f
Bug 1297300 - Add missing checks to GetSpec() calls in image/. r=tnikkel.
2016-08-29 15:34:32 +10:00
Glenn Randers-Pehrson
d0f907ce9b
Bug 1297907 - Wrap long lines in nsPNGDecoder.cpp. r=tn
...
--HG--
extra : rebase_source : 01aba31d91a42a3afe30ea2ddc21118ae779ef79
2016-09-07 09:03:00 -04:00
Michael Layzell
36e08437d0
Bug 1018486 - Part 8: Various other changes, r=smaug
...
MozReview-Commit-ID: B0dsomkWgEk
2016-09-07 10:50:45 -04:00
Nicholas Nethercote
34dcc7b852
Bug 1299384 - Use MOZ_MUST_USE with NS_warn_if_impl(). r=erahm.
...
This change avoids lots of false positives for Coverity's CHECKED_RETURN
warning, caused by NS_WARN_IF's current use in both statement-style and
expression-style.
In the case where the code within the NS_WARN_IF has side-effects, I made the
following change.
> NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));
> -->
> Unused << NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));
In the case where the code within the NS_WARN_IF lacks side-effects, I made the
following change.
> NS_WARN_IF(!condWithoutSideEffects);
> -->
> NS_WARNING_ASSERTION(condWithoutSideEffects, "msg");
This has two improvements.
- The condition is not evaluated in non-debug builds.
- The sense of the condition is inverted to the familiar "this condition should
be true" sense used in assertions.
A common variation on the side-effect-free case is the following.
> nsresult rv = Fn();
> NS_WARN_IF_(NS_FAILED(rv));
> -->
> DebugOnly<nsresult rv> = Fn();
> NS_WARNING_ASSERTION(NS_SUCCEEDED(rv), "Fn failed");
--HG--
extra : rebase_source : 58788245021096efa8372a9dc1d597a611d45611
2016-09-02 17:12:24 +10:00
Glenn Randers-Pehrson
7cd996e732
Bug 1295671 - Detect use of system libpng in nsPNGDecoder.cpp. r=tn
...
--HG--
extra : histedit_source : d6ce06bff319953f2abfa9b3d3acad3386b0a654
2016-08-27 01:23:00 -04:00
cku
5963e84e5a
Bug 1190881 - Part 3. mochitest for svg css animation. r=dholbert
...
MozReview-Commit-ID: JchZk3FrZce
--HG--
extra : rebase_source : 3344b0d77537bf315784a452983b3440c1c385e6
2016-08-25 23:15:04 +08:00
cku
48f9993c70
Bug 1190881 - Part 2. Trigger pending animation for SVG-as-image docs. r=birtles
...
MozReview-Commit-ID: BOrdKoIDCGX
--HG--
extra : rebase_source : 92f41aae5b9f70e5bfd6760f80302e90d148bd93
2016-08-25 22:58:50 +08:00
cku
4395bfbe1c
Bug 1190881 - Part 1. Create and pass a navigation timing object to the wrapped SVG document. r=dholbert
...
MozReview-Commit-ID: DTtTudlJ52d
--HG--
extra : rebase_source : b0a9c8e79e290f51bf433d0f94b1de7db99e933a
2016-09-02 18:53:36 +08:00
Nicholas Nethercote
742fc7eb48
Bug 1297961 (part 1) - Introduce nsURI::GetSpecOrDefault(). r=hurley.
...
This function is an infallible alternative to nsIURI::GetSpec(). It's useful
when it's appropriate to handle a GetSpec() failure with a failure string, e.g.
for log/warning/error messages. It allows code like this:
nsAutoCString spec;
uri->GetSpec(spec);
printf("uri: %s", spec.get());
to be changed to this:
printf("uri: %s", uri->GetSpecOrDefault().get());
This introduces a slight behavioural change. Previously, if GetSpec() failed,
an empty string would be used here. Now, "[nsIURI::GetSpec failed]" will be
produced instead. In most cases this failure string will make for a clearer
log/warning/error message than the empty string.
* * *
Bug 1297961 (part 1b) - More GetSpecOrDefault() additions. r=hurley.
I will fold this into part 1 before landing.
--HG--
extra : rebase_source : ddc19a5624354ac098be019ca13cc24b99b80ddc
2016-08-26 16:02:31 +10:00
Nicholas Nethercote
819433bae0
Bug 1299389 - Replace some raw pointers in nsThreadManager. r=froydnj.
...
nsThreadManager::get() can return a reference. This lets us remove some
redundant assertions.
nsThreadArray elements can be NotNull<>s.
--HG--
extra : rebase_source : fd49010167101bc15f7f6d01bf95fd63b81d60fb
2016-06-10 16:04:49 +10:00
Benjamin Smedberg
d5f9ba36f4
Bug 1299545 - stop exporting imgLoader::SupportImageWithMimeType, r=tnikkel
...
MozReview-Commit-ID: CFmUXAGeFIO
--HG--
extra : rebase_source : 9008a537fce0d2d649a00b04b07e9873024edafc
2016-08-30 13:28:16 -04:00
Lee Salzman
642347dba7
Bug 725119 - fuzz for reftests with Skia content on Android. r=mchang
...
MozReview-Commit-ID: 9p8ntO7YLQ4
2016-08-31 15:53:33 -04:00
Seth Fowler
a5b5245612
Bug 1298551 - Respect CachedSurface::SetLocked() even if the underlying ISurfaceProvider is always locked. r=dholbert
2016-08-26 17:03:25 -07:00
Seth Fowler
f8818933fa
Bug 1296828
(Part 3) - Update SurfaceCache API to rely on ImageKeys and SurfaceKeys stored on ISurfaceProviders. r=dholbert
2016-08-26 17:03:19 -07:00
Seth Fowler
f9e85bafb2
Bug 1296828
(Part 2) - Store ImageKeys and SurfaceKeys directly on ISurfaceProviders. r=dholbert,edwin
2016-08-26 17:03:17 -07:00
Seth Fowler
8f4ebfcf90
Bug 1296828
(Part 1) - Use ImageKey consistently in SurfaceCache. r=dholbert
2016-08-26 17:03:15 -07:00
Mason Chang
43e77092c9
Bug 1007702. Enable skia on unaccelerated windows. r=lsalzman
2016-08-25 12:35:41 -07:00
Seth Fowler
fd83d4ee88
Bug 1296762 (Part 3) - Use NotNull for all CachedSurfaces in SurfaceCache. r=dholbert
2016-08-25 11:42:00 -07:00
Seth Fowler
6006fb4945
Bug 1296762 (Part 2) - Forbid null ISurfaceProviders in SurfaceCache. r=dholbert
2016-08-25 11:41:58 -07:00
Seth Fowler
dda03690ef
Bug 1296762 (Part 1) - Remove SurfaceCache::InsertPlaceholder(). r=dholbert
2016-08-25 11:41:57 -07:00
Nicholas Nethercote
c2306345d5
Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
...
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.
The patch also does some associated clean-up.
- Replaces some uses of nsIMemoryReporterCallback with the preferred
nsIHandleReportCallback typedef.
- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
parameter names, for consistency.
- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.
- Uses the MOZ_COLLECT_REPORT macro in all suitable places.
Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.
--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Kan-Ru Chen
b6d880aca1
Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
...
The patch is generated from following command:
rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,
MozReview-Commit-ID: AtLcWApZfES
--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
Timothy Nikkel
05dc5b9ede
Bug 1260324. Don't draw garbage to the screen if an image doesn't happen to be decoded. r=seth
...
Layout has been using imgIContainer::IsOpaque to determine if the image will draw opaquely to all pixels it covers, and doing culling based on this.
However imgIContainer::IsOpaque doesn't guarantee anything. It only describes if the image, when in a decoded state, has all opaque pixels. So if the image doesn't have fully decoded frames around (because they got discarded) it may not draw opaquely to all of its pixels.
So we create a new function that first checks if there is a fully decoded frame.
2016-08-22 21:15:38 -05:00
Phil Ringnalda
62d1bf1089
Merge m-c to a CLOSED TREE m-i
2016-08-23 22:57:10 -07:00
Wes Kocher
3de1ea925a
Backed out changeset 54933b5b96f1 (bug 1260324) for frequent windows reftest failures a=backout CLOSED TREE
2016-08-23 13:50:14 -07:00
Timothy Nikkel
9e89a17b91
Bug 1260324. Don't draw garbage to the screen if an image doesn't happen to be decoded. r=seth
...
Layout has been using imgIContainer::IsOpaque to determine if the image will draw opaquely to all pixels it covers, and doing culling based on this.
However imgIContainer::IsOpaque doesn't guarantee anything. It only describes if the image, when in a decoded state, has all opaque pixels. So if the image doesn't have fully decoded frames around (because they got discarded) it may not draw opaquely to all of its pixels.
So we create a new function that first checks if there is a fully decoded frame.
2016-08-22 21:15:38 -05:00
GuanWen-Chen
2b403c0acf
Bug 1264809 - (Part 4) Add comment for FLAG_FORCE_UNIFORM_SCALING. r=dholbert
2016-08-22 05:04:00 -04:00
Seth Fowler
90008b4d20
Bug 1293472
(Part 4) - Test that single-frame and animated decodes can coexist for the same image. r=edwin
2016-08-18 15:42:49 -07:00
Seth Fowler
1f92f3a7b9
Bug 1293472
(Part 3) - Store animated images in the surface cache as a sequence of frames, rather than each frame getting its own cache entry. r=dholbert,edwin,njn
2016-08-18 15:42:48 -07:00
Seth Fowler
367e148297
Bug 1293472
(Part 2) - Add AnimationSurfaceProvider. r=dholbert,edwin
2016-08-18 15:39:43 -07:00
Seth Fowler
aef6675e11
Bug 1293472
(Part 1) - Make it possible to seek DecodedSurfaces. r=dholbert
2016-08-18 15:39:40 -07:00
Seth Fowler
ad816b4313
Bug 1296172 - Make VectorImage's interaction with the surface cache cleaner. r=dholbert
2016-08-18 13:03:51 -07:00
Seth Fowler
2977081713
Bug 1296147 (Part 2) - Rename imgFrame::GetSurface() to imgFrame::GetSourceSurface() for clarity. r=edwin
2016-08-18 13:03:49 -07:00
Seth Fowler
8d183cc877
Bug 1296147 (Part 1) - Add a DrawableSurface smart pointer type to allow lazy surface generation. r=dholbert,edwin
2016-08-18 13:03:44 -07:00
Andrew Osmond
e80df3e463
Bug 1293577 - Part 2. Add mutex to MetadataDecodingTask to protect from decoding races. r=seth
2016-08-18 10:23:42 -04:00
Dragana Damjanovic
67635a6600
Bug 1295636 - SetHostPort should reset the port if the host parameter does not have a port number. r=valentin, r=smaug
...
--HG--
extra : rebase_source : 2e63afd5708c55810206f9bc47b6f078a0824400
2016-08-17 23:25:00 -04:00
Seth Fowler
e527c3b511
Bug 1295506 - Don't yield hidden frames in the PNG decoder. r=edwin
2016-08-17 22:19:42 -07:00
Timothy Nikkel
d7a0b010ae
Backed out changeset 37340346a89e (Bug 1289628 - Return ISurfaceProvider objects from SurfaceCache lookup functions. r=dholbert,edwin) for causing bug 1292290.
2016-08-15 19:58:35 -05:00
Seth Fowler
21f89abe61
Bug 1293449 - Stop exposing SurfaceCache implementation code outside of ImageLib. r=dholbert
2016-08-15 18:19:39 -07:00
Seth Fowler
7a29534fe8
Bug 1293794 - Allow imgFrame volatile buffers to be freed on all platforms. r=jrmuizel
2016-08-15 17:42:30 -07:00
Wes Kocher
d602abb016
Merge inbound to central, a=merge
2016-08-15 14:20:38 -07:00
Igor
175543fda8
Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj
2016-08-14 23:43:21 -07:00
Igor
a57972337d
Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj
2016-08-14 23:44:00 -07:00
Ryan Hunt
92206266e3
Bug 1294586 - Remove dependency on gfxPlatform from CreateDrawTargetFromData. r=dvander
...
MozReview-Commit-ID: A355fBJKWP6
--HG--
extra : rebase_source : 85ffd4b9d5f9708a1666bbc8e229ba576cc97680
2016-08-11 14:54:08 -07:00
Nicholas Nethercote
3b0485fcdb
Bug 1294645 - Don't use NS_CALLBACK for callbacks in nsI{Input,Output,UnicharInput},Stream.idl. r=froydnj.
...
Slightly less than half (93 / 210) of the NS_METHOD instances in the codebase
are because of the use of NS_CALLBACK in
nsI{Input,Output,UnicharInput},Stream.idl. The use of __stdcall on Win32 isn't
important for these callbacks because they are only used as arguments to
[noscript] methods.
This patch converts them to vanilla |nsresult| functions. It increases the size
of xul.dll by about ~600 bytes, which is about 0.001%.
--HG--
extra : rebase_source : c15d85298e0975fd030cd8f8f8e54501f453959b
2016-08-12 17:36:22 +10:00
Glenn Randers-Pehrson
dc0ab41166
Bug 1288588 - Exit on bad CRC in fcTL or fdAT chunk in an APNG file. r=jrmuizel
2016-08-12 21:31:31 -04:00
Christoph Kerschbaumer
045a838e10
Bug 1292869 - Fix null deref in imgRequestProxy::GetImagePrincipal. r=jmuizelaar
2016-08-10 10:12:30 +02:00
Marcos Caceres
4b42312a6f
Bug 1160200 - APNG can't be used with type switching. r=mcaceres, r=jrmuizel, r=johns
2016-08-09 22:15:00 +02:00
Andrew Osmond
9d456f9fe3
Bug 1293577 - Protect the image decoding task path with a mutex to avoid race conditions. r=seth
2016-08-10 07:35:07 -04:00
Nicholas Nethercote
e7f10a07fd
Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
...
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.
As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.
--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Seth Fowler
ba8bb5de9d
Bug 1292747 (Part 3) - Clean up some comments in imgFrame related to Optimize()'s behavior. r=edwin
2016-08-08 16:25:50 -07:00
Seth Fowler
ad2f26e773
Bug 1292747 (Part 2) - Remove the 565 optimization from imgFrame. r=edwin
2016-08-08 16:25:48 -07:00
Seth Fowler
55d13bdddf
Bug 1292747 (Part 1) - Remove 565 optimization telemetry. r=edwin
2016-08-08 16:25:46 -07:00
Jonathan Hao
ea61afe035
Bug 1270680 - Part 1: Double-key the image cache by origin attribute. r=jdm
2016-08-04 20:22:00 +02:00
Seth Fowler
ec7c520520
Bug 1291071 (Part 6) - Stop passing a decoder to FinalizeDecoder() and rename it NotifyDecodeComplete(). r=edwin
2016-08-05 18:50:32 -07:00
Seth Fowler
0403b4baba
Bug 1291071 (Part 5) - Pass the decoder's final status explicitly to FinalizeDecoder(). r=edwin
2016-08-05 18:50:31 -07:00
Seth Fowler
98a9fd7db6
Bug 1291071 (Part 4) - Clean up Decoder::SpeedHistogram() and related code. r=edwin
2016-08-05 18:50:29 -07:00
Seth Fowler
baf4983cd8
Bug 1291071 (Part 3) - Pass telemetry explicitly to FinalizeDecoder. r=edwin
2016-08-05 18:50:27 -07:00
Seth Fowler
e3510bdeff
Bug 1291071 (Part 2) - Pass decoder progress explicitly to FinalizeDecoder. r=edwin
2016-08-05 18:50:25 -07:00
Seth Fowler
b765419db3
Bug 1291071 (Part 1) - Pass ImageMetadata explicitly to FinalizeDecoder. r=edwin
2016-08-05 18:50:24 -07:00
Seth Fowler
5eeda4dad6
Bug 1291071 (Part 1) - Move an assertion from RasterImage::FinalizeDecoder() to IDecodingTask::NotifyDecodeComplete(). r=edwin
2016-08-05 18:50:22 -07:00
Seth Fowler
f5495f0fd1
Bug 1291045 (Part 7) - Replace DecodingTask with DecodedSurfaceProvider. r=dholbert,edwin
2016-08-05 18:46:24 -07:00
Seth Fowler
1cd0225e12
Bug 1291045 (Part 6) - Add DecodedSurfaceProvider to handle both decoding and surface ownership for single-frame images. r=dholbert,edwin
2016-08-05 18:46:22 -07:00
Seth Fowler
1324b84fef
Bug 1291045 (Part 5) - Expose the IDecodingTask notification helpers for use in other files. r=edwin
2016-08-05 18:46:19 -07:00
Seth Fowler
981466ae1a
Bug 1291045 (Part 4) - Remove IDecodingTask::GetDecoder(). r=edwin
2016-08-05 18:46:16 -07:00
Seth Fowler
694b00bcd2
Bug 1291045 (Part 3) - Handle interactions with the SurfaceCache in DecodingTask. r=dholbert,edwin
2016-08-05 18:46:13 -07:00
Seth Fowler
ba6bdbca1c
Bug 1291045 (Part 2) - Pass the image into NotifyProgress() and NotifyDecodeComplete() explicitly. r=edwin
2016-08-05 18:46:12 -07:00
Seth Fowler
a604246bfc
Bug 1291045 (Part 1) - Use a different IDecodingTask for animated images. r=dholbert,edwin
2016-08-05 18:46:10 -07:00
Daniel Holbert
2e355bc011
Bug 1292632 part 3: Include <algorithm> in image/SourceBuffer.h, to provide std::min. r=seth
...
MozReview-Commit-ID: DJvb7Sz4efF
2016-08-05 17:09:48 -07:00
Daniel Holbert
19d78aab9b
Bug 1292632 part 2: Add missing "using" decl for IntRect in IDecodingTask.cpp. r=seth
...
MozReview-Commit-ID: 6OeckqKu7k7
2016-08-05 17:09:47 -07:00
Daniel Holbert
ac90698e93
Bug 1292632 part 1: Remove a stale/unused #include from SurfaceCache.cpp. r=seth
...
MozReview-Commit-ID: feZgLQ1R7u
2016-08-05 17:09:45 -07:00
Seth Fowler
cf5f340405
Bug 1292505 (Followup) - Add an assert that we don't create a decoder for an ICO resource during a metadata decode. r=me
2016-08-05 15:04:20 -07:00
Seth Fowler
19dc4aba32
Bug 1292505 (Part 2) - Remove remaining references to Downscaler in the SurfacePipe decoders. r=edwin
2016-08-05 13:44:52 -07:00
Seth Fowler
6a44833af8
Bug 1292505 (Part 1c) - Use ExplicitOutputSize() instead of Downscaler::TargetSize() in nsICODecoder. r=edwin
2016-08-05 13:44:48 -07:00
Seth Fowler
1e04c585b2
Bug 1292505 (Part 1b) - Update DecoderFactory to use SetOutputSize(), and propagate the changes to RasterImage. r=edwin
2016-08-05 13:44:46 -07:00
Seth Fowler
f2c6e25053
Bug 1292505 (Part 1a) - Replace Decoder::SetTargetSize() with Decoder::SetOutputSize(). r=edwin
2016-08-05 13:44:44 -07:00
Igor
4efade90d4
Bug 1197331 - remove PR_snprintf calls in miscellaneous directories. r=nfroyd
...
--HG--
extra : rebase_source : a19f77db06e68bd3d69faf56b8bbdc1825f13249
2016-08-04 16:41:00 +02:00
Yoshi Huang
a520e75a4d
Bug 1264231 - Part 3: remove loadInfo work-around. r=sicking
2016-08-05 19:44:57 +08:00
Seth Fowler
2b78b14657
Bug 1291033 (Part 2) - Ensure atomicity of ISurfaceProvider locking changes. r=dholbert
2016-08-04 18:47:43 -07:00
Seth Fowler
df8d9955b6
Bug 1291033 (Part 1) - Ensure atomicity of ISurfaceProvider availability changes. r=dholbert
2016-08-04 18:47:41 -07:00
Carsten "Tomcat" Book
389a3e0817
merge mozilla-inbound to mozilla-central a=merge
...
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/GeckoAppShell.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/GeckoAppShell.java
rename : mobile/android/base/java/org/mozilla/gecko/gfx/GeckoLayerClient.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/GeckoLayerClient.java
rename : mobile/android/base/java/org/mozilla/gecko/gfx/LayerRenderer.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/LayerRenderer.java
rename : mobile/android/base/java/org/mozilla/gecko/gfx/PanningPerfAPI.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/PanningPerfAPI.java
2016-08-04 15:55:50 +02:00
Alexandre Lissy
0af5b943b6
Bug 1284674 - Remove NUWA r=cyu
...
MozReview-Commit-ID: GyMRNzOBKw6
--HG--
extra : rebase_source : 293af1cd55f2035ce6a99f4ebf144059c32a2b8f
2016-08-02 14:54:00 +02:00
Seth Fowler
9f0a5862e4
Bug 1291059 - Yield in the GIF decoder at the beginning of a new frame, not at the end of the previous frame. r=edwin
2016-08-02 04:10:59 -07:00
Seth Fowler
bef1e68a73
Bug 1291054 (Part 5) - Remove Decoder::AllocateBasicFrame(), which is dead code. r=edwin
2016-08-02 04:10:56 -07:00
Seth Fowler
6ce660afb2
Bug 1291054 (Part 4) - Add Decoder convenience methods for the common case of frame rects that cover the whole image. r=edwin
2016-08-02 04:10:52 -07:00
Seth Fowler
3cca5ff418
Bug 1291054 (Part 3) - Rename Decoder::GetSize() to Decoder::Size() to be consistent with the style guide. r=edwin
2016-08-02 04:10:51 -07:00
Seth Fowler
881c87ebec
Bug 1291054 (Part 2) - Add a Decoder::OutputSize() getter and use it in the decoders. r=edwin
2016-08-02 04:10:49 -07:00
Seth Fowler
1d1a71d4bc
Bug 1291054 (Part 1) - Clean up Decoder's size getters a little bit. r=edwin
2016-08-02 04:10:47 -07:00
Glenn Randers-Pehrson
a5af07b18b
Bug 1240665 - Log all error returns from the PNG decoder. r=tnikkel
...
--HG--
extra : rebase_source : 373eef390fe03a2559e336539ddc6a546d6ec2d7
2016-07-29 05:11:00 +02:00
Seth Fowler
2799864a33
Bug 1290682 (Part 3) - Remove RasterImage::CopyFrame(). r=edwin
2016-08-01 17:51:20 -07:00
Seth Fowler
f09a1b3d95
Bug 1290682 (Part 2) - Clean up imgFrame::Draw() and related code now that we know no non-trivial frame rects will occur. r=edwin
2016-08-01 17:51:18 -07:00
Seth Fowler
94cd474a67
Bug 1290682 (Part 1) - Explicitly forbid non-trivial frame rects in imgFrame::Draw() except for paletted frames. r=edwin
2016-08-01 17:51:16 -07:00
Seth Fowler
e36fc95869
Bug 1290681 (Part 2) - Remove the single color optimization from imgFrame. r=edwin
2016-08-01 17:51:13 -07:00
Seth Fowler
b704f1ab3d
Bug 1290681 (Part 1) - Remove telemetry for the single color optimization. r=edwin
2016-08-01 17:51:11 -07:00
Seth Fowler
4d73b5b868
(No bug) - Improve comment in IDecodingTask.cpp. r=me
2016-08-01 17:51:04 -07:00
Seth Fowler
16cff1aefa
Bug 1290759 - Convert frame number check in Decoder::AllocateFrame() into an assert. r=edwin
2016-08-01 17:40:05 -07:00
Seth Fowler
9371310b88
Bug 1290747 - Fix bad assert in RasterImage::NotifyProgress(). r=edwin
2016-08-01 17:40:03 -07:00
Glenn Randers-Pehrson
e2b623ebe9
Bug 1283961 - Part 2: Remove limits on PNG image dimensions (nsPNGDecoder). r=seth
...
--HG--
extra : rebase_source : 8c138a12011233e320d4e55e95348c4c961b95b6
2016-07-28 07:37:00 -04:00
Seth Fowler
97b4a5d8c7
Bug 1289957 (Part 2) - Notify RasterImage about new frames in NotifyProgress() and remove OnAddedFrame(). r=edwin
2016-07-28 00:12:50 -07:00
Seth Fowler
eb5bac10fc
Bug 1289957 (Part 1) - Fix minor style issues in RasterImage::NotifyProgress. r=edwin
2016-07-28 00:12:49 -07:00
Andrew Osmond
0dc52b5140
Bug 1283462 - Fix race condition when notifying on image decoding progress. r=seth
2016-07-22 11:04:09 -04:00
Seth Fowler
77c1dbccdb
Bug 1289628 - Return ISurfaceProvider objects from SurfaceCache lookup functions. r=dholbert,edwin
2016-07-27 13:54:23 -07:00
Gijs Kruitbosch
61094e5a36
Bug 1280584 - implement cloneWithNewRef and thereby make hash/ref links use a simple unified codepath in the IO service, r=valentin
...
MozReview-Commit-ID: 8FIyclkJPDp
--HG--
extra : rebase_source : 49fb2b12488bd57a5417c7c3bff2211d651c5de7
extra : amend_source : d9940a1d9009930dc2f499417a7e1446d4601c20
2016-07-26 23:38:46 +01:00
Nicolas Silva
48805c9b3e
Bug 1284837 - Disallow implicit conversions from float to integer when creating IntPoint and IntSize objects. r=botond
2016-07-26 16:48:30 +02:00
Carsten "Tomcat" Book
336105a0de
merge mozilla-inbound to mozilla-central a=merge
2016-07-22 11:58:02 +02:00
Seth Fowler
0f56cc072c
(No bug) - Fix a trivial formatting issue in ImageMetadata.h. r=me
2016-07-21 16:42:29 -07:00
Tom Tromey
5538d692d3
Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
...
This removes the unnecessary setting of c-basic-offset from all
python-mode files.
This was automatically generated using
perl -pi -e 's/; *c-basic-offset: *[0-9]+//'
... on the affected files.
The bulk of these files are moz.build files but there a few others as
well.
MozReview-Commit-ID: 2pPf3DEiZqx
--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Chris Peterson
b175c9fdd5
Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo
2016-07-20 22:03:25 -07:00
Seth Fowler
dc9bddc5cd
Bug 1288040 (Part 12) - Use Moz2D types in FrameAnimator code. r=edwin
2016-07-20 16:30:44 -07:00
Seth Fowler
8bb93146a8
Bug 1288040 (Part 11) - Clean up RefreshResult. r=edwin
2016-07-20 16:30:41 -07:00
Seth Fowler
3e8d8d790f
Bug 1288040 (Part 10) - Determine the first frame refresh area of animated images while decoding them. r=edwin
2016-07-20 16:30:39 -07:00
Seth Fowler
642c28d837
Bug 1288040 (Part 9) - Determine the loop length of animated images while decoding them. r=edwin
2016-07-20 16:30:36 -07:00
Seth Fowler
049339870a
Bug 1288040 (Part 8) - Return a FrameTimeout value from FrameAnimator::GetSingleLoopTime(). r=edwin
2016-07-20 16:30:34 -07:00
Seth Fowler
930f26424f
Bug 1288040 (Part 7) - Make FrameAnimator::GetTimeoutForFrame() a private method that doesn't rely on AnimationState. r=edwin
2016-07-20 16:30:32 -07:00
Seth Fowler
aa9b084d09
Bug 1288040 (Part 6) - Don't call GetTimeoutForFrame() in RasterImage. r=edwin
2016-07-20 16:30:30 -07:00
Seth Fowler
78ccdc2e84
Bug 1288040 (Part 5) - Wrap frame timeout values in a FrameTimeout type that ensures they're normalized. r=edwin
2016-07-20 16:30:28 -07:00
Seth Fowler
fc0b1f8b27
Bug 1288040 (Part 4) - We only need to check for infinitely long frames in StartAnimation() for the first frame. r=edwin
2016-07-20 16:30:26 -07:00
Seth Fowler
4306ec9de5
Bug 1288040 (Part 3) - Get rid of RefreshResult.error, a field which nothing cares about. r=edwin
2016-07-20 16:30:24 -07:00
Seth Fowler
4af805ced1
Bug 1288040 (Part 2) - Don't reset the last composited frame index when we reset animation. r=edwin
2016-07-20 16:30:21 -07:00
Seth Fowler
34caf5552c
Bug 1288040 (Part 1) - Separate FrameAnimator's state into a separate class, AnimationState. r=edwin
2016-07-20 16:30:19 -07:00
Seth Fowler
a0b0263e26
Bug 1287691 (Part 4) - Leave notifying decoding progress for each frame to DecodingTask. r=edwin
2016-07-20 02:30:39 -07:00
Seth Fowler
62bf80f260
Bug 1287691 (Part 3) - Yield after each frame in the PNG decoder. r=edwin
2016-07-20 02:30:37 -07:00