diff --git a/platform/lang-api/src/com/intellij/psi/util/PartiallyKnownString.kt b/platform/lang-api/src/com/intellij/psi/util/PartiallyKnownString.kt index 87e50cc1c12f..3ea065153a12 100644 --- a/platform/lang-api/src/com/intellij/psi/util/PartiallyKnownString.kt +++ b/platform/lang-api/src/com/intellij/psi/util/PartiallyKnownString.kt @@ -30,7 +30,7 @@ sealed class StringEntry { if (sourcePsi is PsiLanguageInjectionHost) return sourcePsi to entry.range val parent = sourcePsi.parent if (parent is PsiLanguageInjectionHost) { // Kotlin interpolated string, TODO: encapsulate this logic to range retrieval - return parent to entry.range.shiftRight(sourcePsi.startOffsetInParent - ElementManipulators.getValueTextRange(parent).startOffset) + return parent to entry.range.shiftRight(sourcePsi.startOffsetInParent) } return null } diff --git a/uast/uast-common/src/org/jetbrains/uast/expressions/UStringConcatenationsFacade.kt b/uast/uast-common/src/org/jetbrains/uast/expressions/UStringConcatenationsFacade.kt index 5666aa32e0b0..3c7234361633 100644 --- a/uast/uast-common/src/org/jetbrains/uast/expressions/UStringConcatenationsFacade.kt +++ b/uast/uast-common/src/org/jetbrains/uast/expressions/UStringConcatenationsFacade.kt @@ -90,7 +90,7 @@ class UStringConcatenationsFacade @ApiStatus.Experimental constructor(uContext: val sourcePsi = segment.uExpression.sourcePsi ?: throw IllegalStateException("no sourcePsi for $segment") val sourcePsiTextRange = sourcePsi.textRange val range = segment.range - if (range.startOffset >= sourcePsiTextRange.startOffset) + if (range.startOffset > sourcePsiTextRange.startOffset) return range.shiftLeft(sourcePsiTextRange.startOffset) return ElementManipulators.getValueTextRange(sourcePsi) }