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 4e0176ee353c..d8a3874a869a 100644
--- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/internationalization/UnnecessaryUnicodeEscapeInspection.java
+++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/internationalization/UnnecessaryUnicodeEscapeInspection.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -103,7 +103,7 @@ public class UnnecessaryUnicodeEscapeInspection extends BaseInspection {
return new UnnecessaryUnicodeEscapeVisitor();
}
- private static class UnnecessaryUnicodeEscapeVisitor extends BaseInspectionVisitor {
+ private class UnnecessaryUnicodeEscapeVisitor extends BaseInspectionVisitor {
@Override
public void visitFile(PsiFile file) {
@@ -157,6 +157,10 @@ public class UnnecessaryUnicodeEscapeInspection extends BaseInspection {
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));
}
}
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 b258b177cc23..14f8daa04656 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,4 +3,8 @@ package com.siyeh.igtest.internationalization.unnecessary_unicode_escape;
class UnnecessaryUnicodeEscape {
// \uuuuuu0061\u0062
// control char & not representable char: \u0010 \u00e4
+}
+@SuppressWarnings("UnnecessaryUnicodeEscape")
+class Suppress {
+ String s = "\u0062";
}
\ No newline at end of file