@@ -1043,12 +1043,13 @@ } else { return nonSyncContentEquals((AbstractStringBuilder)cs); } } // Argument is a String - if (cs.equals(this)) - return true; + if (cs instanceof String) { + return equals((String)cs); + } // Argument is a generic CharSequence char v1[] = value; int n = v1.length; if (n != cs.length()) { return false;