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