From 3b367c9232ddda03a219caeba772ce01c7e0ec95 Mon Sep 17 00:00:00 2001 From: Wainer dos Santos Moschetta Date: Tue, 9 Jun 2015 13:54:03 -0300 Subject: Bug 469784 - fix NPE on SyncManager#getSyncService SyncManager throws NPE if sync service Id was invalid. Change-Id: I8e486014c1219caab9d01e79afd645984e4f5f5d Signed-off-by: Wainer dos Santos Moschetta --- .../src/org/eclipse/ptp/rdt/sync/core/SyncManager.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/rdt/org.eclipse.ptp.rdt.sync.core/src/org/eclipse/ptp/rdt/sync/core/SyncManager.java b/rdt/org.eclipse.ptp.rdt.sync.core/src/org/eclipse/ptp/rdt/sync/core/SyncManager.java index 6025b1c46..59d7f5777 100644 --- a/rdt/org.eclipse.ptp.rdt.sync.core/src/org/eclipse/ptp/rdt/sync/core/SyncManager.java +++ b/rdt/org.eclipse.ptp.rdt.sync.core/src/org/eclipse/ptp/rdt/sync/core/SyncManager.java @@ -36,6 +36,7 @@ import org.eclipse.ptp.rdt.sync.core.handlers.ISyncExceptionHandler; import org.eclipse.ptp.rdt.sync.core.listeners.ISyncListener; import org.eclipse.ptp.rdt.sync.core.resources.RemoteSyncNature; import org.eclipse.ptp.rdt.sync.core.services.ISynchronizeService; +import org.eclipse.ptp.rdt.sync.core.services.ISynchronizeServiceDescriptor; import org.eclipse.remote.core.IRemoteConnection; import org.eclipse.remote.core.IRemoteConnectionType; import org.osgi.service.prefs.Preferences; @@ -302,7 +303,11 @@ public class SyncManager { * @since 4.0 */ public static ISynchronizeService getSyncService(String syncServiceId) { - return SynchronizeServiceRegistry.getSynchronizeServiceDescriptor(syncServiceId).getService(); + ISynchronizeServiceDescriptor desc = SynchronizeServiceRegistry.getSynchronizeServiceDescriptor(syncServiceId); + if(desc == null) { + return null; + } + return desc.getService(); } private static void notifySyncListeners(IProject project) { -- cgit v1.2.3