Revert of Roll src/third_party/WebKit e0eac24:489c548 (svn 193311:193320) (patchset...
[chromium-blink-merge.git] / skia / ext / skia_utils_base.cc
blob56ca993081059438c22bd24bddf775b720f2e8ff
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "skia/ext/skia_utils_base.h"
7 namespace skia {
9 bool ReadSkString(PickleIterator* iter, SkString* str) {
10 int reply_length;
11 const char* reply_text;
13 if (!iter->ReadData(&reply_text, &reply_length))
14 return false;
16 if (str)
17 str->set(reply_text, reply_length);
18 return true;
21 bool ReadSkFontIdentity(PickleIterator* iter,
22 SkFontConfigInterface::FontIdentity* identity) {
23 uint32_t reply_id;
24 uint32_t reply_ttcIndex;
25 int reply_length;
26 const char* reply_text;
28 if (!iter->ReadUInt32(&reply_id) ||
29 !iter->ReadUInt32(&reply_ttcIndex) ||
30 !iter->ReadData(&reply_text, &reply_length))
31 return false;
33 if (identity) {
34 identity->fID = reply_id;
35 identity->fTTCIndex = reply_ttcIndex;
36 identity->fString.set(reply_text, reply_length);
38 return true;
41 bool WriteSkString(Pickle* pickle, const SkString& str) {
42 return pickle->WriteData(str.c_str(), str.size());
45 bool WriteSkFontIdentity(Pickle* pickle,
46 const SkFontConfigInterface::FontIdentity& identity) {
47 return pickle->WriteUInt32(identity.fID) &&
48 pickle->WriteUInt32(identity.fTTCIndex) &&
49 WriteSkString(pickle, identity.fString);
52 } // namespace skia