Commit Graph

2004 Commits

Author SHA1 Message Date
Timothy Nikkel
2679542a37 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
346a4bf91c 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
2015-12-24 23:50:32 -07:00
Timothy Nikkel
37f2843999 Bug 1241729. Add crashtest. 2016-01-27 16:19:34 -06:00
Timothy Nikkel
b0c0939414 Bug 1241728. Add crashtest. 2016-01-27 16:19:34 -06:00
Timothy Nikkel
a537ac9678 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
11c746cfa3 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
52c914f25f 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
8dc9509180 Bug 1224374 - Profiler labels for the top 26-100 chrome hangs;r=BenWa 2016-01-15 11:38:03 +01:00
Edwin Flores
b821aae08f Bug 1207958 - Fix heuristic for choosing which ICO sub-image to render - r=tn 2016-01-20 11:00:12 +00:00
Sebastian Hengst
e687c33b0f 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
ad8745d7f6 Bug 1224374 - Profiler labels for the top 26-100 chrome hangs;r=BenWa 2016-01-15 11:38:03 +01:00
Nicholas Nethercote
23d93a8ac7 Bug 1238551 (part 2) - Add a test. r=tn. 2016-01-17 21:13:32 -08:00
Nicholas Nethercote
750b2fc655 Bug 1238551 (part 1) - Reject BITMAPV3INFOHEADER BMP images. r=tn.
This is an obscure BMP variant that's not worth supporting.
2016-01-17 21:12:17 -08:00
Jan de Mooij
615910393e Bug 1237201 part 3 - Handle Vector OOM in StreamingLexer. r=njn 2016-01-14 15:19:21 +01:00
Timothy Nikkel
a5be3141f1 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
01e7ff94f4 Bug 1237171 - Improve a case where ICO and BMP files disagree on an image size. r=tn. 2016-01-07 16:18:22 -08:00
Steve Singer
e7ddc9751d Bug 1235859 - Add FrameSize to non-skia downscaler. r=edwin 2015-12-30 14:46:54 -05:00
Edwin Flores
65b329c2f5 Bug 1235605 - Use CheckedInt in Deinterlacer and make its buffer allocation fallible. r=tn 2015-12-30 17:03:24 -05:00
Edwin Flores
fe6a36addb Bug 1229825 - Make GIF deinterlacer respect the frame rect bounds. r=tn 2015-12-29 18:19:27 -05:00
Morris Tseng
b985b4445c Bug 1215438 - Part 4: Rename CairoImage to SourceSurfaceImage. r=roc 2015-12-18 14:52:16 +08:00
Christoph Kerschbaumer
e0194da0a5 Bug 1229889 - Convert JS callsites to use asyncOpen2 within image/ (r=sicking) 2015-12-06 20:57:08 -08:00
Wes Kocher
748bfe6315 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)
2015-12-04 15:58:40 -08:00
Christoph Kerschbaumer
85e1304cb5 Bug 1229890 - Convert JS callsites to use asyncOpen2 within image/ (r=sicking) 2015-12-04 09:39:05 -08:00
Christoph Kerschbaumer
ed48ca2d92 Bug 1225641 - Change default security flags within NetUtil.newChannel (r=sicking) 2015-11-17 17:35:30 -08:00
Edwin Flores
1600cc22c5 Bug 1223465 - Clamp GIF frame rects to their screen rects - r=seth 2015-11-25 13:50:13 +00:00
Edwin Flores
5249bcdc20 Bug 1224100 - Initialize row buffer to 0 in Downscaler - r=seth 2015-11-24 15:05:01 +00:00
Nicholas Nethercote
385f8fa699 Bug 1220021 (part 2) - Add four reftests. r=seth. 2015-11-23 18:20:21 -08:00
Nicholas Nethercote
39597fd6c7 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
399ecd0ab5 Bug 1223319 (part 1) - Remove unused function nsICODecoder::CalcAlphaRowSize(). r=seth. 2015-11-16 17:54:11 -08:00
Glenn Randers-Pehrson
c434c3bf01 Bug 75077 - Interpolate interlaced PNG images instead of libpng blocky display. r=seth 2015-11-14 11:33:00 +01:00
Mason Chang
78ebc29d9b Bug 1221840. Support repeating images in 1 axis. r=seth 2015-11-23 08:17:35 -08:00
sajitk
444d20588b Bug 1219474 - Replace PRLogModuleInfo w/ LazyLogModule in the 'image/' directory. r=seth 2015-11-16 18:21:00 +01:00
David Anderson
f64d767dfe Decouple CairoImage from ImageContainer. (bug 1222910, r=roc) 2015-11-17 00:09:00 -08:00
Nicholas Nethercote
28bfe1d2d9 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|.
2015-10-28 01:30:20 -07:00
Nicholas Nethercote
abd6a66edd 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.
2015-11-15 20:31:07 -08:00
Phil Ringnalda
61e0022d38 Bug 1182951 - skip test_bug399925.html on b2g debug for constant timeouts 2015-11-14 18:28:40 -08:00
Nathan Froyd
70563b2178 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
4ce3d974a8 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()
2015-11-11 14:23:14 -08:00
Sotaro Ikeda
e9fb4b338e Bug 1186796 - Replace nsBaseHashtable::EnumerateRead() calls in image/ with iterators r=njn 2015-11-10 23:07:09 -08:00
Sotaro Ikeda
716ba038a6 Bug 1187149 - Replace nsBaseHashtable::Enumerate() calls in image/ with iterators r=njn 2015-11-10 21:30:02 -08:00
Nathan Froyd
2258a5261d Bug 1216611 - add mozilla::MakeUniqueFallible and convert uses throughout the tree; r=Waldo 2015-11-05 16:24:24 -05:00
Ryan VanderMeulen
4fc00d639a Bug 1123195 - Re-enable 694165-1.xhtml on OSX. 2015-11-01 12:58:53 -05:00
Ryan VanderMeulen
a46beb2ec9 No bug - Various crashtest manifest cleanups. 2015-10-31 19:35:27 -04:00
Timothy Nikkel
da523f7bb7 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
fc7808deb0 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
00fdbd8336 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
f18e8fa26b 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
35f1afe8c9 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
94e1c22d9d Bug 1202085 - Part 2: Add an optional document argument to imgICache::FindEntryProperties(); r=seth 2015-10-30 16:03:09 -04:00
Ehsan Akhgari
0473e2063b Bug 1202085 - Part 1: Remove imgICache::RemoveEntry(); r=seth 2015-10-30 16:03:08 -04:00