Community
Participate
Working Groups
The equals method under Mac looks different from the one on Linux: Mac: @Override public boolean equals (Object object) { if (object == this) return true; if (!(object instanceof Image)) return false; Image image = (Image)object; if (device != image.device || alphaInfo_100.transparentPixel != image.alphaInfo_100.transparentPixel) return false; if (imageDataProvider != null && image.imageDataProvider != null) { return styleFlag == image.styleFlag && imageDataProvider.equals (image.imageDataProvider); } else if (imageFileNameProvider != null && image.imageFileNameProvider != null) { return styleFlag == image.styleFlag && imageFileNameProvider.equals (image.imageFileNameProvider); } else { return handle == image.handle; } } Linux: @Override public boolean equals (Object object) { if (object == this) return true; if (!(object instanceof Image)) return false; Image image = (Image)object; if (device != image.device || transparentPixel != image.transparentPixel) return false; if (imageDataProvider != null && image.imageDataProvider != null) { return (styleFlag == image.styleFlag) && imageDataProvider.equals (image.imageDataProvider); } else if (imageFileNameProvider != null && image.imageFileNameProvider != null) { return (styleFlag == image.styleFlag) && imageFileNameProvider.equals (image.imageFileNameProvider); } else { return surface == image.surface; } } Different equals methods for images on different platforms feels like a bug to me.