| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2008, 2009, Google Inc. All rights reserved. | 2 * Copyright (c) 2008, 2009, Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 286 SkDebugf("%s last char is high-surrogate", __FUNCTION__); | 286 SkDebugf("%s last char is high-surrogate", __FUNCTION__); |
| 287 return false; | 287 return false; |
| 288 } | 288 } |
| 289 | 289 |
| 290 SkAutoSTMalloc<GlyphPage::size, uint16_t> glyphStorage(length); | 290 SkAutoSTMalloc<GlyphPage::size, uint16_t> glyphStorage(length); |
| 291 | 291 |
| 292 uint16_t* glyphs = glyphStorage.get(); | 292 uint16_t* glyphs = glyphStorage.get(); |
| 293 SkTypeface* typeface = platformData().typeface(); | 293 SkTypeface* typeface = platformData().typeface(); |
| 294 typeface->charsToGlyphs(buffer, SkTypeface::kUTF16_Encoding, glyphs, length)
; | 294 typeface->charsToGlyphs(buffer, SkTypeface::kUTF16_Encoding, glyphs, length)
; |
| 295 | 295 |
| 296 unsigned allGlyphs = 0; // track if any of the glyphIDs are non-zero | 296 bool haveGlyphs = false; |
| 297 for (unsigned i = 0; i < length; i++) { | 297 for (unsigned i = 0; i < length; i++) { |
| 298 pageToFill->setGlyphDataForIndex(offset + i, glyphs[i], glyphs[i] ? this
: 0); | 298 if (glyphs[i]) { |
| 299 allGlyphs |= glyphs[i]; | 299 pageToFill->setGlyphDataForIndex(offset + i, glyphs[i], this); |
| 300 haveGlyphs = true; |
| 301 } |
| 300 } | 302 } |
| 301 | 303 |
| 302 return allGlyphs; | 304 return haveGlyphs; |
| 303 } | 305 } |
| 304 | 306 |
| 305 } // namespace WebCore | 307 } // namespace WebCore |
| OLD | NEW |