Prevent deadlock when reconnecting icq protocol.

Fixed excessive logging for status update, reported by Emil Ivov.
Fix some strings in macosx info.plist.
cusax-fix
Damian Minkov 15 years ago
parent 28db3b1c91
commit 531846e795

@ -126,7 +126,7 @@
<!-- default Ant target does nothing except print helpful options -->
<target name="ant-usage"
description="simply execute 'ant' to discover the most useful targets.">
<echo message="Useful ant commands for the SIP Communicator Build Installer..." />
<echo message="Useful ant commands for the Jitsi Build Installer..." />
<echo message="'ant build-installation-generic' for building generic installator jar" />
<echo message="'ant build-installation-linux' for building linux instalation file" />
<echo message="'ant build-installation-wix' for building Windows MSI instalation file using WiX" />
@ -950,8 +950,8 @@
jvmversion="1.5+"
version="${sip-communicator.version}"
build="${sparkle.build}"
infostring="SIP Communicator"
bundleid="org.sip-communicator"
infostring="${application.name}"
bundleid="org.${package.name}"
stubfile="${macosx.stubfile}"
extraclasspath="/System/Library/Java"
workingdirectory="$APP_PACKAGE/Contents/Resources/Java"

@ -921,8 +921,8 @@ void firePresenceStatusChanged(Presence presence)
String userID
= StringUtils.parseBareAddress(presence.getFrom());
if (logger.isInfoEnabled())
logger.info("Received a status update for buddy=" + userID);
if (logger.isDebugEnabled())
logger.debug("Received a status update for buddy=" + userID);
// all contact statuses that are received from all its resources
// ordered by priority

@ -522,18 +522,24 @@ private void unregister(final ProtocolProviderService pp)
{
unregisteredProviders.add(pp);
if(pp.getRegistrationState().equals(RegistrationState.UNREGISTERING)
|| pp.getRegistrationState().equals(RegistrationState.UNREGISTERED)
|| pp.getRegistrationState().equals(
RegistrationState.CONNECTION_FAILED))
return;
new Thread(new Runnable()
{
public void run()
{
try
{
// getRegistrationState() for some protocols(icq) can trigger
// registrationStateChanged so make checks here
// to prevent synchronize in registrationStateChanged
// and deadlock
if(pp.getRegistrationState().equals(
RegistrationState.UNREGISTERING)
|| pp.getRegistrationState().equals(
RegistrationState.UNREGISTERED)
|| pp.getRegistrationState().equals(
RegistrationState.CONNECTION_FAILED))
return;
pp.unregister();
}
catch(Throwable t)

Loading…
Cancel
Save