diff --git a/src/net/java/sip/communicator/impl/protocol/irc/ChatRoomIrcImpl.java b/src/net/java/sip/communicator/impl/protocol/irc/ChatRoomIrcImpl.java index 0341c5f5b..52ef11979 100644 --- a/src/net/java/sip/communicator/impl/protocol/irc/ChatRoomIrcImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/irc/ChatRoomIrcImpl.java @@ -643,7 +643,22 @@ public String getUserNickname() public void setUserNickname(final String nickName) throws OperationFailedException { - parentProvider.getIrcStack().setUserNickname(nickName); + try + { + parentProvider.getIrcStack().setUserNickname(nickName); + } + catch (RuntimeException e) + { + if (e.getCause() instanceof IOException) + { + throw new OperationFailedException( + "Failed to change nick name.", + OperationFailedException.NETWORK_FAILURE, e.getCause()); + } + + throw new OperationFailedException("Failed to change nick name.", + OperationFailedException.GENERAL_ERROR, e); + } } /**