From 9781b1d42986762c84e49db791591be8e2bc3aef Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Wed, 19 Feb 2014 16:02:47 +0100 Subject: [PATCH] IDEA-119819 (Cannot suppress warnings for inspection "Unnecessary unicode escape sequence") --- .../UnnecessaryUnicodeEscapeInspection.java | 8 ++++++-- .../UnnecessaryUnicodeEscape.java | 4 ++++ 2 files changed, 10 insertions(+), 2 deletions(-) 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