Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: src/pdf/SkPDFFont.cpp

Issue 800993002: Even more win64 warning fixes (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: more Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/opts/SkTextureCompression_opts_neon.cpp ('k') | src/utils/SkTextureCompressor.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include <ctype.h> 8 #include <ctype.h>
9 9
10 #include "SkData.h" 10 #include "SkData.h"
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 227
228 // A PFA has to be converted for PDF. 228 // A PFA has to be converted for PDF.
229 size_t hexDataLen; 229 size_t hexDataLen;
230 if (parsePFA((const char*)src, srcLen, headerLen, &hexDataLen, dataLen, 230 if (parsePFA((const char*)src, srcLen, headerLen, &hexDataLen, dataLen,
231 trailerLen)) { 231 trailerLen)) {
232 const size_t length = *headerLen + *dataLen + *trailerLen; 232 const size_t length = *headerLen + *dataLen + *trailerLen;
233 SkASSERT(length > 0); 233 SkASSERT(length > 0);
234 SkAutoTMalloc<uint8_t> buffer(length); 234 SkAutoTMalloc<uint8_t> buffer(length);
235 235
236 memcpy(buffer.get(), src, *headerLen); 236 memcpy(buffer.get(), src, *headerLen);
237 uint8_t* const resultData = &(buffer[*headerLen]); 237 uint8_t* const resultData = &(buffer[SkToInt(*headerLen)]);
238 238
239 const uint8_t* hexData = src + *headerLen; 239 const uint8_t* hexData = src + *headerLen;
240 const uint8_t* trailer = hexData + hexDataLen; 240 const uint8_t* trailer = hexData + hexDataLen;
241 size_t outputOffset = 0; 241 size_t outputOffset = 0;
242 uint8_t dataByte = 0; // To hush compiler. 242 uint8_t dataByte = 0; // To hush compiler.
243 bool highNibble = true; 243 bool highNibble = true;
244 for (; hexData < trailer; hexData++) { 244 for (; hexData < trailer; hexData++) {
245 int8_t curNibble = hexToBin(*hexData); 245 int8_t curNibble = hexToBin(*hexData);
246 if (curNibble < 0) { 246 if (curNibble < 0) {
247 continue; 247 continue;
248 } 248 }
249 if (highNibble) { 249 if (highNibble) {
250 dataByte = curNibble << 4; 250 dataByte = curNibble << 4;
251 highNibble = false; 251 highNibble = false;
252 } else { 252 } else {
253 dataByte |= curNibble; 253 dataByte |= curNibble;
254 highNibble = true; 254 highNibble = true;
255 resultData[outputOffset++] = dataByte; 255 resultData[outputOffset++] = dataByte;
256 } 256 }
257 } 257 }
258 if (!highNibble) { 258 if (!highNibble) {
259 resultData[outputOffset++] = dataByte; 259 resultData[outputOffset++] = dataByte;
260 } 260 }
261 SkASSERT(outputOffset == *dataLen); 261 SkASSERT(outputOffset == *dataLen);
262 262
263 uint8_t* const resultTrailer = &(buffer[*headerLen + outputOffset]); 263 uint8_t* const resultTrailer = &(buffer[SkToInt(*headerLen + outputOffse t)]);
264 memcpy(resultTrailer, src + *headerLen + hexDataLen, *trailerLen); 264 memcpy(resultTrailer, src + *headerLen + hexDataLen, *trailerLen);
265 265
266 return SkData::NewFromMalloc(buffer.detach(), length); 266 return SkData::NewFromMalloc(buffer.detach(), length);
267 } 267 }
268 return NULL; 268 return NULL;
269 } 269 }
270 270
271 // scale from em-units to base-1000, returning as a SkScalar 271 // scale from em-units to base-1000, returning as a SkScalar
272 SkScalar scaleFromFontUnits(int16_t val, uint16_t emSize) { 272 SkScalar scaleFromFontUnits(int16_t val, uint16_t emSize) {
273 SkScalar scaled = SkIntToScalar(val); 273 SkScalar scaled = SkIntToScalar(val);
(...skipping 1215 matching lines...) Expand 10 before | Expand all | Expand 10 after
1489 1489
1490 insert("FontBBox", makeFontBBox(bbox, 1000))->unref(); 1490 insert("FontBBox", makeFontBBox(bbox, 1000))->unref();
1491 insertInt("FirstChar", 1); 1491 insertInt("FirstChar", 1);
1492 insertInt("LastChar", lastGlyphID() - firstGlyphID() + 1); 1492 insertInt("LastChar", lastGlyphID() - firstGlyphID() + 1);
1493 insert("Widths", widthArray.get()); 1493 insert("Widths", widthArray.get());
1494 insertName("CIDToGIDMap", "Identity"); 1494 insertName("CIDToGIDMap", "Identity");
1495 1495
1496 populateToUnicodeTable(NULL); 1496 populateToUnicodeTable(NULL);
1497 return true; 1497 return true;
1498 } 1498 }
OLDNEW
« no previous file with comments | « src/opts/SkTextureCompression_opts_neon.cpp ('k') | src/utils/SkTextureCompressor.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698