diff --git a/src/net/java/sip/communicator/impl/gui/main/presence/PresenceStatusSelectorBox.java b/src/net/java/sip/communicator/impl/gui/main/presence/PresenceStatusSelectorBox.java index 17649fbfb..7b13f3dd2 100644 --- a/src/net/java/sip/communicator/impl/gui/main/presence/PresenceStatusSelectorBox.java +++ b/src/net/java/sip/communicator/impl/gui/main/presence/PresenceStatusSelectorBox.java @@ -229,7 +229,7 @@ public void updateStatus(Object presenceStatus) if(protocolProvider.isRegistered() && !presence.getPresenceStatus().equals(status)) { - new PublishPresenceStatusThread(status); + new PublishPresenceStatusThread(status).start(); } } diff --git a/src/net/java/sip/communicator/impl/protocol/icq/OperationSetPersistentPresenceIcqImpl.java b/src/net/java/sip/communicator/impl/protocol/icq/OperationSetPersistentPresenceIcqImpl.java index 601cdb999..e413448a5 100644 --- a/src/net/java/sip/communicator/impl/protocol/icq/OperationSetPersistentPresenceIcqImpl.java +++ b/src/net/java/sip/communicator/impl/protocol/icq/OperationSetPersistentPresenceIcqImpl.java @@ -1494,9 +1494,9 @@ public void handleYourInfo(MainBosService service, //that we're very much online so make sure we change accordingly if (currentIcqStatus == -1 ) currentIcqStatus = ICQ_ONLINE_MASK; - + //only notify of an event change if there was really one. - if( oldStatus != userInfo.getIcqStatus() ) + if( oldStatus != currentIcqStatus) fireProviderPresenceStatusChangeEvent(oldStatus, currentIcqStatus); }