Ticket #15709: josm-tracker-early-remove-image.patch

File josm-tracker-early-remove-image.patch, 1.4 KB (added by cmuelle8, 3 weeks ago)

call removeImage(img) right after the MediaTracker has finished loading img

  • src/org/openstreetmap/josm/gui/layer/geoimage/ImageDisplay.java

     
    307307                }
    308308                if (tracker.isErrorID(1)) {
    309309                    // the tracker catches OutOfMemory conditions
     310                    tracker.removeImage(img);
    310311                    img = null;
     312                } else {
     313                    tracker.removeImage(img);
    311314                }
    312315            } else {
    313316                img = null;
     
    316319            synchronized (ImageDisplay.this) {
    317320                if (this.entry != ImageDisplay.this.entry) {
    318321                    // The file has changed
    319                     tracker.removeImage(img);
    320322                    return;
    321323                }
    322324
     
    336338                        final Graphics2D g = rot.createGraphics();
    337339                        g.drawImage(img, xform, null);
    338340                        g.dispose();
    339                         tracker.removeImage(img);
    340341                        img = rot;
    341342                    }
    342343
     
    350351                selectedRect = null;
    351352                errorLoading = (img == null);
    352353            }
    353             tracker.removeImage(img);
    354354            ImageDisplay.this.repaint();
    355355        }
    356356    }