diff options
Diffstat (limited to 'www/seamonkey/files/patch-bug1322112')
-rw-r--r-- | www/seamonkey/files/patch-bug1322112 | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/www/seamonkey/files/patch-bug1322112 b/www/seamonkey/files/patch-bug1322112 new file mode 100644 index 000000000000..684a79556518 --- /dev/null +++ b/www/seamonkey/files/patch-bug1322112 @@ -0,0 +1,23 @@ +--- mozilla/image/decoders/nsIconDecoder.cpp ++++ mozilla/image/decoders/nsIconDecoder.cpp +@@ -89,17 +89,18 @@ nsIconDecoder::ReadRowOfPixels(const cha + { + MOZ_ASSERT(aLength % 4 == 0, "Rows should contain a multiple of four bytes"); + + auto result = mPipe.WritePixels<uint32_t>([&]() -> NextPixel<uint32_t> { + if (aLength == 0) { + return AsVariant(WriteState::NEED_MORE_DATA); // Done with this row. + } + +- uint32_t pixel = *reinterpret_cast<const uint32_t*>(aData); ++ uint32_t pixel; ++ memcpy(&pixel, aData, 4); + aData += 4; + aLength -= 4; + + return AsVariant(pixel); + }); + + MOZ_ASSERT(result != WriteState::FAILURE); + + |