From ede78f0a509eccd36ecca9b83b5a6615a7d086c4 Mon Sep 17 00:00:00 2001 From: Maria Bialota Date: Wed, 7 Oct 2020 16:33:40 +0200 Subject: [PATCH] [AT-SPI] Fixed uint underflow risk Change-Id: I7967a7ccf9cfe73beb147f41d2c1850f7ee63da5 --- dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp | 2 +- dali-toolkit/internal/controls/text-controls/text-field-impl.cpp | 2 +- dali-toolkit/internal/controls/text-controls/text-label-impl.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp index 7b4e8a2..4650a6d 100644 --- a/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp @@ -1999,7 +1999,7 @@ Dali::Accessibility::Range TextEditor::AccessibleImpl::GetTextAtOffset( if (boundary == Dali::Accessibility::TextBoundary::LINE) counter++; } - if ((counter - 1) == offset) + if ((counter > 0) && ((counter - 1) == offset)) { range.content = txt.substr(start, index - start + 1); range.startOffset = start; diff --git a/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp index 1d79c5f..312a54e 100644 --- a/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-field-impl.cpp @@ -1936,7 +1936,7 @@ Dali::Accessibility::Range TextField::AccessibleImpl::GetTextAtOffset( if (boundary == Dali::Accessibility::TextBoundary::LINE) counter++; } - if ((counter - 1) == offset) + if ((counter > 0) && ((counter - 1) == offset)) { range.content = txt.substr(start, index - start + 1); range.startOffset = start; diff --git a/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp index d02fd67..3ecb376 100755 --- a/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp @@ -1077,7 +1077,7 @@ Dali::Accessibility::Range TextLabel::AccessibleImpl::GetTextAtOffset( if (boundary == Dali::Accessibility::TextBoundary::LINE) counter++; } - if ((counter - 1) == offset) + if ((counter > 0) && ((counter - 1) == offset)) { range.content = txt.substr(start, index - start + 1); range.startOffset = start; -- 2.7.4