mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-14 12:35:22 +02:00
[226761] [regression] NPE when expanding filter pools and filters in the Team View
https://bugs.eclipse.org/bugs/show_bug.cgi?id=226761
This commit is contained in:
parent
40913e3cea
commit
a65cf9a39a
3 changed files with 44 additions and 39 deletions
|
@ -21,6 +21,7 @@
|
||||||
* Martin Oberhuber (Wind River) - [190271] Move ISystemViewInputProvider to Core
|
* Martin Oberhuber (Wind River) - [190271] Move ISystemViewInputProvider to Core
|
||||||
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
|
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
|
||||||
* David Dykstal (IBM) - [224671] [api] org.eclipse.rse.core API leaks non-API types
|
* David Dykstal (IBM) - [224671] [api] org.eclipse.rse.core API leaks non-API types
|
||||||
|
* David Dykstal (IBM) - [226761] fix NPE in team view when expanding items
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.rse.internal.ui.view;
|
package org.eclipse.rse.internal.ui.view;
|
||||||
|
@ -120,19 +121,20 @@ public class SystemViewFilterAdapter extends AbstractSystemViewAdapter
|
||||||
/**
|
/**
|
||||||
* Returns an image descriptor for the image. More efficient than getting the image.
|
* Returns an image descriptor for the image. More efficient than getting the image.
|
||||||
* @param element The element for which an image is desired
|
* @param element The element for which an image is desired
|
||||||
|
* @return the desired image descriptor
|
||||||
*/
|
*/
|
||||||
public ImageDescriptor getImageDescriptor(Object element)
|
public ImageDescriptor getImageDescriptor(Object element) {
|
||||||
{
|
|
||||||
//return RSEUIPlugin.getDefault().getImageDescriptor(ISystemConstants.ICON_SYSTEM_FILTER_ID);
|
|
||||||
ImageDescriptor filterImage = null;
|
ImageDescriptor filterImage = null;
|
||||||
ISystemFilter filter = getFilter(element);
|
ISystemFilter filter = getFilter(element);
|
||||||
if (filter.getProvider() != null)
|
if (filter.getProvider() != null) {
|
||||||
{
|
ISubSystemConfigurationAdapter adapter = (ISubSystemConfigurationAdapter) filter.getProvider().getAdapter(ISubSystemConfigurationAdapter.class);
|
||||||
ISubSystemConfigurationAdapter adapter = (ISubSystemConfigurationAdapter)filter.getProvider().getAdapter(ISubSystemConfigurationAdapter.class);
|
if (adapter != null) {
|
||||||
filterImage = adapter.getSystemFilterImage(filter);
|
filterImage = adapter.getSystemFilterImage(filter);
|
||||||
}
|
}
|
||||||
if (filterImage == null)
|
}
|
||||||
|
if (filterImage == null) {
|
||||||
filterImage = RSEUIPlugin.getDefault().getImageDescriptor(ISystemIconConstants.ICON_SYSTEM_FILTER_ID);
|
filterImage = RSEUIPlugin.getDefault().getImageDescriptor(ISystemIconConstants.ICON_SYSTEM_FILTER_ID);
|
||||||
|
}
|
||||||
return filterImage;
|
return filterImage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
* Martin Oberhuber (Wind River) - [186128] Move IProgressMonitor last in all API
|
* Martin Oberhuber (Wind River) - [186128] Move IProgressMonitor last in all API
|
||||||
* Martin Oberhuber (Wind River) - [186748] Move ISubSystemConfigurationAdapter from UI/rse.core.subsystems.util
|
* Martin Oberhuber (Wind River) - [186748] Move ISubSystemConfigurationAdapter from UI/rse.core.subsystems.util
|
||||||
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
|
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
|
||||||
|
* David Dykstal (IBM) - [226761] fix NPE in team view when expanding items
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.rse.internal.ui.view;
|
package org.eclipse.rse.internal.ui.view;
|
||||||
|
@ -90,20 +91,20 @@ public class SystemViewFilterPoolAdapter extends AbstractSystemViewAdapter
|
||||||
/**
|
/**
|
||||||
* Returns an image descriptor for the image. More efficient than getting the image.
|
* Returns an image descriptor for the image. More efficient than getting the image.
|
||||||
* @param element The element for which an image is desired
|
* @param element The element for which an image is desired
|
||||||
|
* @return the desired image descriptor
|
||||||
*/
|
*/
|
||||||
public ImageDescriptor getImageDescriptor(Object element)
|
public ImageDescriptor getImageDescriptor(Object element) {
|
||||||
{
|
|
||||||
//return RSEUIPlugin.getDefault().getImageDescriptor(ISystemConstants.ICON_SYSTEM_FILTERPOOL_ID);
|
|
||||||
ImageDescriptor poolImage = null;
|
ImageDescriptor poolImage = null;
|
||||||
ISystemFilterPool pool = (ISystemFilterPool)element;
|
ISystemFilterPool pool = (ISystemFilterPool) element;
|
||||||
if (pool.getProvider() != null)
|
if (pool.getProvider() != null) {
|
||||||
{
|
ISubSystemConfigurationAdapter adapter = (ISubSystemConfigurationAdapter) pool.getProvider().getAdapter(ISubSystemConfigurationAdapter.class);
|
||||||
|
if (adapter != null) {
|
||||||
ISubSystemConfigurationAdapter adapter = (ISubSystemConfigurationAdapter)pool.getProvider().getAdapter(ISubSystemConfigurationAdapter.class);
|
|
||||||
poolImage = adapter.getSystemFilterPoolImage(pool);
|
poolImage = adapter.getSystemFilterPoolImage(pool);
|
||||||
}
|
}
|
||||||
if (poolImage == null)
|
}
|
||||||
|
if (poolImage == null) {
|
||||||
poolImage = RSEUIPlugin.getDefault().getImageDescriptor(ISystemIconConstants.ICON_SYSTEM_FILTERPOOL_ID);
|
poolImage = RSEUIPlugin.getDefault().getImageDescriptor(ISystemIconConstants.ICON_SYSTEM_FILTERPOOL_ID);
|
||||||
|
}
|
||||||
return poolImage;
|
return poolImage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,12 +16,12 @@
|
||||||
* Martin Oberhuber (Wind River) - [186128] Move IProgressMonitor last in all API
|
* Martin Oberhuber (Wind River) - [186128] Move IProgressMonitor last in all API
|
||||||
* Martin Oberhuber (Wind River) - [186748] Move ISubSystemConfigurationAdapter from UI/rse.core.subsystems.util
|
* Martin Oberhuber (Wind River) - [186748] Move ISubSystemConfigurationAdapter from UI/rse.core.subsystems.util
|
||||||
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
|
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
|
||||||
|
* David Dykstal (IBM) - [226761] fix NPE in team view when expanding items
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.rse.internal.ui.view;
|
package org.eclipse.rse.internal.ui.view;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Vector;
|
|
||||||
|
|
||||||
import org.eclipse.core.runtime.IAdaptable;
|
import org.eclipse.core.runtime.IAdaptable;
|
||||||
import org.eclipse.core.runtime.IProgressMonitor;
|
import org.eclipse.core.runtime.IProgressMonitor;
|
||||||
|
@ -79,18 +79,20 @@ public class SystemViewFilterStringAdapter extends AbstractSystemViewAdapter
|
||||||
/**
|
/**
|
||||||
* Returns an image descriptor for the image. More efficient than getting the image.
|
* Returns an image descriptor for the image. More efficient than getting the image.
|
||||||
* @param element The element for which an image is desired
|
* @param element The element for which an image is desired
|
||||||
|
* @return the desired image descriptor
|
||||||
*/
|
*/
|
||||||
public ImageDescriptor getImageDescriptor(Object element)
|
public ImageDescriptor getImageDescriptor(Object element) {
|
||||||
{
|
|
||||||
ImageDescriptor filterImage = null;
|
ImageDescriptor filterImage = null;
|
||||||
ISystemFilterString filterString = getFilterString(element);
|
ISystemFilterString filterString = getFilterString(element);
|
||||||
if (filterString.getProvider() != null)
|
if (filterString.getProvider() != null) {
|
||||||
{
|
ISubSystemConfigurationAdapter adapter = (ISubSystemConfigurationAdapter) filterString.getProvider().getAdapter(ISubSystemConfigurationAdapter.class);
|
||||||
ISubSystemConfigurationAdapter adapter = (ISubSystemConfigurationAdapter)filterString.getProvider().getAdapter(ISubSystemConfigurationAdapter.class);
|
if (adapter != null) {
|
||||||
filterImage = adapter.getSystemFilterStringImage(filterString);
|
filterImage = adapter.getSystemFilterStringImage(filterString);
|
||||||
}
|
}
|
||||||
if (filterImage == null)
|
}
|
||||||
|
if (filterImage == null) {
|
||||||
filterImage = RSEUIPlugin.getDefault().getImageDescriptor(ISystemIconConstants.ICON_SYSTEM_FILTERSTRING_ID);
|
filterImage = RSEUIPlugin.getDefault().getImageDescriptor(ISystemIconConstants.ICON_SYSTEM_FILTERSTRING_ID);
|
||||||
|
}
|
||||||
return filterImage;
|
return filterImage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue