aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkRemoteGlyphCache.cpp
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@google.com>2018-05-02 13:53:32 +0000
committerGravatar Mike Klein <mtklein@google.com>2018-05-02 13:54:40 +0000
commit78a9aed075ecb342545d913bc92ef9abc6431b49 (patch)
tree3d1a09a39eef3b2eb46c7940b3d02c96cf35d036 /src/core/SkRemoteGlyphCache.cpp
parent192b18a26164e8e188f8aad0a376c7bee2cea226 (diff)
Revert "fonts: Dont memcpy with nullptr in SkRemoteGlyphCache"
This reverts commit 7e7369f7131d0b00f87cfb94e0fcbf91b02b4ee6. Reason for revert: 3 of 5 Original change's description: > fonts: Dont memcpy with nullptr in SkRemoteGlyphCache > > The behaviour is undefined and causes ASAN bots to complain. > > Bug: skia:7515 > Change-Id: I454714ab9047a6fced5ab7bfdbc12214d728eadf > Reviewed-on: https://skia-review.googlesource.com/125029 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Khusal Sagar <khushalsagar@chromium.org> TBR=herb@google.com,brianosman@google.com,khushalsagar@chromium.org Change-Id: I6548019d7bf34b38f964234034e58af09d0b8508 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7515 Reviewed-on: https://skia-review.googlesource.com/125262 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
Diffstat (limited to 'src/core/SkRemoteGlyphCache.cpp')
-rw-r--r--src/core/SkRemoteGlyphCache.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/core/SkRemoteGlyphCache.cpp b/src/core/SkRemoteGlyphCache.cpp
index 06db562a9f..e45421aa05 100644
--- a/src/core/SkRemoteGlyphCache.cpp
+++ b/src/core/SkRemoteGlyphCache.cpp
@@ -549,8 +549,8 @@ void SkStrikeServer::SkGlyphCacheState::writePendingGlyphs(Serializer* serialize
class SkStrikeClient::DiscardableStrikePinner : public SkStrikePinner {
public:
- DiscardableStrikePinner(
- SkDiscardableHandleId discardableHandleId, sk_sp<DiscardableHandleManager> manager)
+ DiscardableStrikePinner(SkDiscardableHandleId discardableHandleId,
+ sk_sp<DiscardableHandleManager> manager)
: fDiscardableHandleId(discardableHandleId), fManager(std::move(manager)) {}
~DiscardableStrikePinner() override = default;
@@ -635,17 +635,17 @@ bool SkStrikeClient::readStrikeData(const volatile void* memory, size_t memorySi
SkGlyph glyph;
if (!deserializer.read<SkGlyph>(&glyph)) READ_FAILURE
- SkGlyph* allocatedGlyph = strike->getRawGlyphByID(glyph.getPackedID());
- *allocatedGlyph = glyph;
-
ArraySlice<uint8_t> image;
auto imageSize = glyph.computeImageSize();
if (imageSize != 0) {
image = deserializer.readArray<uint8_t>(imageSize);
if (!image.data()) READ_FAILURE
- allocatedGlyph->allocImage(strike->getAlloc());
- memcpy(allocatedGlyph->fImage, image.data(), image.size());
}
+
+ SkGlyph* allocatedGlyph = strike->getRawGlyphByID(glyph.getPackedID());
+ *allocatedGlyph = glyph;
+ allocatedGlyph->allocImage(strike->getAlloc());
+ memcpy(allocatedGlyph->fImage, image.data(), image.size());
}
}