diff --git a/README.md b/README.md index 274d0828..b03e791e 100644 --- a/README.md +++ b/README.md @@ -273,7 +273,8 @@ Unless you add `ImageIO.scanForPlugins()` somewhere in your code, the plugins mi I addition, servlet contexts dynamically loads and unloads classes (using a new class loader per context). If you restart your application, old classes will by default remain in memory forever (because the next time `scanForPlugins` is called, it's another `ClassLoader` that scans/loads classes, and thus they will be new instances -in the registry). +in the registry). If a read is attempted using one of the remaining ("old") readers, weird exceptions +(like `NullPointerException`s when accessing `static final` initialized fields) may occur. To work around both the discovery problem and the resource leak, it is recommended to use the `IIOProviderContextListener` that implements diff --git a/imageio/todo.txt b/imageio/todo.txt index d3fbf082..97c37228 100755 --- a/imageio/todo.txt +++ b/imageio/todo.txt @@ -1,3 +1,8 @@ +- FileChannelImageInputStream/MappedByteBufferImageInputStream +- FileChannelCacheImageInputStream +- FileChannelImageOutputStream +- FileChannelCacheImageOutputStream + - Consider creating a raw ImageReader (or util class?) that can read raw bitmaps: o Interleaved (A)RGB (as in BMP, PICT, IFF PBM etc) -> A1R1G1B1, A2R2G2B2, ..., AnRnGnNn o Channeled (A)RGB (as in Photoshop) -> A1A2...An, R1R2...Rn, G1G2...Gn, B1B2...Bn