diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/internationalization/UnnecessaryUnicodeEscapeInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/internationalization/UnnecessaryUnicodeEscapeInspection.java
index d8a3874a869a..31f72ad71aa2 100644
--- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/internationalization/UnnecessaryUnicodeEscapeInspection.java
+++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/internationalization/UnnecessaryUnicodeEscapeInspection.java
@@ -156,13 +156,14 @@ public class UnnecessaryUnicodeEscapeInspection extends BaseInspection {
charBuffer.clear();
charBuffer.put(d).rewind();
final CoderResult coderResult = encoder.encode(charBuffer, byteBuffer, true);
- if (!coderResult.isUnmappable()) {
- final PsiElement element = file.findElementAt(i);
- if (element != null && isSuppressedFor(element)) {
- return;
- }
- registerErrorAtOffset(file, i, escapeEnd - i, Character.valueOf(d));
+ if (coderResult.isError()) {
+ continue;
}
+ final PsiElement element = file.findElementAt(i);
+ if (element != null && isSuppressedFor(element)) {
+ return;
+ }
+ registerErrorAtOffset(file, i, escapeEnd - i, Character.valueOf(d));
}
}
}
diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/internationalization/unnecessary_unicode_escape/UnnecessaryUnicodeEscape.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/internationalization/unnecessary_unicode_escape/UnnecessaryUnicodeEscape.java
index 14f8daa04656..20f2ba7a1b19 100644
--- a/plugins/InspectionGadgets/test/com/siyeh/igtest/internationalization/unnecessary_unicode_escape/UnnecessaryUnicodeEscape.java
+++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/internationalization/unnecessary_unicode_escape/UnnecessaryUnicodeEscape.java
@@ -3,6 +3,8 @@ package com.siyeh.igtest.internationalization.unnecessary_unicode_escape;
class UnnecessaryUnicodeEscape {
// \uuuuuu0061\u0062
// control char & not representable char: \u0010 \u00e4
+
+ char[] surrogates = new char[]{'\ud800','\udc00'};
}
@SuppressWarnings("UnnecessaryUnicodeEscape")
class Suppress {