From 379b849d2b4b558ebf4e4c6a910d9ea65d41f4dd Mon Sep 17 00:00:00 2001 From: prashantsaini1 Date: Wed, 25 Jun 2025 15:58:24 +0530 Subject: [PATCH] fix: apply boundary checks on span start and end range --- .../kotlin/org/wordpress/aztec/util/SpanWrapper.kt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/aztec/src/main/kotlin/org/wordpress/aztec/util/SpanWrapper.kt b/aztec/src/main/kotlin/org/wordpress/aztec/util/SpanWrapper.kt index 208cac8fb..d3e3c9732 100644 --- a/aztec/src/main/kotlin/org/wordpress/aztec/util/SpanWrapper.kt +++ b/aztec/src/main/kotlin/org/wordpress/aztec/util/SpanWrapper.kt @@ -36,6 +36,16 @@ class SpanWrapper(var spannable: Spannable, var span: T) { set(flags) { setSpanOrLogError(span, start, end, flags) } private fun setSpanOrLogError(span: T, start: Int, end: Int, flags: Int) { + if (start < 0 || end < 0) { + AppLog.w(AppLog.T.EDITOR, "span starts/ends before 0") + return + } + + if (end < start) { + AppLog.w(AppLog.T.EDITOR, "span end is before start") + return + } + // Silently ignore invalid PARAGRAPH spans that don't start or end at paragraph boundary if (isInvalidParagraph(spannable, start, end, flags)) return