In ManagedEntityWrapper.java in the method switchToConversationContextOfComponent, the conditional if (residentCid != currentCid) is comparing strings using !=, but it should be comparing them using equals: if (!residentCid.equals(currentCid))... Unless both strings are either constants in a source file, or have been interned using the String.intern() method, the same string value may be represented by two different String objects... is that the case? Should I submit a JIRA and a patch?
In this case, they should be identical because the current conversion id is placed into that stack and we are looking to see whether it is at the top of the stack. However, using equals() will work too and for good measure I will use it.