public boolean newInfo(Image img, int info,
int x, int y, int w, int h)
{
// Note tail recursion because items are added LIFO.
boolean ret = next.newInfo(img, info, x, y, w, h);
ImageObserver myiw = myref.get();
if (myiw == null) {
// My referent is null so we must prune in a second pass.
ret = true;
} else if (myiw.imageUpdate(img, info, x, y, w, h) == false) {
// My referent has lost interest so clear it and ask
// for a pruning pass to remove it later.
myref.clear();
ret = true;
}