Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-10221 Resorce leak problems in JBossTools
  3. JBIDE-10245

org.jboss.tools.common.model.ui has 8 places with Image leaks

    XMLWordPrintable

Details

    • Sub-task
    • Resolution: Done
    • Major
    • 3.3.0.M5
    • 3.3.0.M4
    • common
    • None

    Description

      XModelObjectAction line 145:

      		item.setImage(eclipseAction.getImageDescriptor().createImage());
      

      LabelDecoratorImpl lines 53, 63:

      			i = d.createImage();
      
      • here is extra strange logic and you use:
        	public static Image emptyImage = ModelUIImages.getImage("empty_co.gif"); //$NON-NLS-1$
        	public static Image errorImage = ModelUIImages.getImage("error_co.gif"); //$NON-NLS-1$
        	public static Image warningImage = ModelUIImages.getImage("warning_co.gif"); //$NON-NLS-1$
        
        	List<ILabelProviderListener> listeners = new ArrayList<ILabelProviderListener>();
        	static Map<Image,Image> errorImages = new HashMap<Image,Image>();
        	static Map<Image,Image> warningImages = new HashMap<Image,Image>();
        
      • which are never disposed.

      AbstractQueryDialog line 46:

      		setTitleImage(ModelUIImages.getImageDescriptor(ModelUIImages.WIZARD_DEFAULT).createImage(null));
      

      AbstractQueryWizardView line 153:

      			titleDialog.setTitleImage(ModelUIImages.getImageDescriptor(ModelUIImages.WIZARD_DEFAULT).createImage(null));
      

      DefaultSpecialWizardDialog line 56:

      		this.setTitleImage(ModelUIImages.getImageDescriptor(ModelUIImages.WIZARD_DEFAULT).createImage(null));
      

      ModelUIImages lines 58 & 98:

      	public static Image getImage(String key) {                   <------------------ create Image not get
      		if(ModelUIPlugin.isDebugEnabled()) {
      			ModelUIPlugin.getPluginLog().logInfo("Create image for key '"+key+"'."); //$NON-NLS-1$ //$NON-NLS-2$
      		}
      		return INSTANCE.createImageDescriptor(key).createImage();
      	}
      ...
      	public Image getImageByFileName(String key) {                 <------------------ create Image not get
      		return createImageDescriptor(key).createImage();
      	}
      
      • is necessary to check all places where these methods call exist.

      Attachments

        Activity

          People

            scabanovich Viacheslav Kabanovich (Inactive)
            vyemialyanchyk_jira Vitali Yemialyanchyk (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: