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

Side by Side Diff: third_party/WebKit/Source/platform/fonts/shaping/ShapeResultBuffer.cpp

Issue 2807913002: Replace ASSERT, ASSERT_NOT_REACHED, and RELEASE_ASSERT in platform/fonts (Closed)
Patch Set: rebase Created 3 years, 8 months 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "platform/fonts/shaping/ShapeResultBuffer.h" 5 #include "platform/fonts/shaping/ShapeResultBuffer.h"
6 6
7 #include "platform/fonts/CharacterRange.h" 7 #include "platform/fonts/CharacterRange.h"
8 #include "platform/fonts/SimpleFontData.h" 8 #include "platform/fonts/SimpleFontData.h"
9 #include "platform/fonts/shaping/ShapeResultBloberizer.h" 9 #include "platform/fonts/shaping/ShapeResultBloberizer.h"
10 #include "platform/fonts/shaping/ShapeResultInlineHeaders.h" 10 #include "platform/fonts/shaping/ShapeResultInlineHeaders.h"
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 inline unsigned CountGraphemesInCluster(const UChar* str, 66 inline unsigned CountGraphemesInCluster(const UChar* str,
67 unsigned str_length, 67 unsigned str_length,
68 uint16_t start_index, 68 uint16_t start_index,
69 uint16_t end_index) { 69 uint16_t end_index) {
70 if (start_index > end_index) { 70 if (start_index > end_index) {
71 uint16_t temp_index = start_index; 71 uint16_t temp_index = start_index;
72 start_index = end_index; 72 start_index = end_index;
73 end_index = temp_index; 73 end_index = temp_index;
74 } 74 }
75 uint16_t length = end_index - start_index; 75 uint16_t length = end_index - start_index;
76 ASSERT(static_cast<unsigned>(start_index + length) <= str_length); 76 DCHECK_LE(static_cast<unsigned>(start_index + length), str_length);
77 TextBreakIterator* cursor_pos_iterator = 77 TextBreakIterator* cursor_pos_iterator =
78 CursorMovementIterator(&str[start_index], length); 78 CursorMovementIterator(&str[start_index], length);
79 79
80 int cursor_pos = cursor_pos_iterator->current(); 80 int cursor_pos = cursor_pos_iterator->current();
81 int num_graphemes = -1; 81 int num_graphemes = -1;
82 while (0 <= cursor_pos) { 82 while (0 <= cursor_pos) {
83 cursor_pos = cursor_pos_iterator->next(); 83 cursor_pos = cursor_pos_iterator->next();
84 num_graphemes++; 84 num_graphemes++;
85 } 85 }
86 return std::max(0, num_graphemes); 86 return std::max(0, num_graphemes);
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after
461 } 461 }
462 target_x -= word_result->Width(); 462 target_x -= word_result->Width();
463 } 463 }
464 } else { 464 } else {
465 total_offset = 0; 465 total_offset = 0;
466 for (const auto& word_result : results_) { 466 for (const auto& word_result : results_) {
467 if (!word_result) 467 if (!word_result)
468 continue; 468 continue;
469 int offset_for_word = 469 int offset_for_word =
470 word_result->OffsetForPosition(target_x, include_partial_glyphs); 470 word_result->OffsetForPosition(target_x, include_partial_glyphs);
471 ASSERT(offset_for_word >= 0); 471 DCHECK_GE(offset_for_word, 0);
472 total_offset += offset_for_word; 472 total_offset += offset_for_word;
473 if (target_x >= 0 && target_x <= word_result->Width()) 473 if (target_x >= 0 && target_x <= word_result->Width())
474 return total_offset; 474 return total_offset;
475 target_x -= word_result->Width(); 475 target_x -= word_result->Width();
476 } 476 }
477 } 477 }
478 return total_offset; 478 return total_offset;
479 } 479 }
480 480
481 Vector<ShapeResultBuffer::RunFontData> ShapeResultBuffer::GetRunFontData() 481 Vector<ShapeResultBuffer::RunFontData> ShapeResultBuffer::GetRunFontData()
(...skipping 20 matching lines...) Expand all
502 return GlyphData( 502 return GlyphData(
503 run->glyph_data_[0].glyph, 503 run->glyph_data_[0].glyph,
504 run->font_data_->EmphasisMarkFontData(font_description).Get()); 504 run->font_data_->EmphasisMarkFontData(font_description).Get());
505 } 505 }
506 } 506 }
507 507
508 return GlyphData(); 508 return GlyphData();
509 } 509 }
510 510
511 } // namespace blink 511 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698