diff options
author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-09-26 19:59:56 +0000 |
---|---|---|
committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-09-26 19:59:56 +0000 |
commit | d5c8fad8d1008d4a5fc31cca9c558971e5d50fe4 (patch) | |
tree | 8052669bcc18adae7ef9f0eb86a5e740e8fd05b0 /libjava/java/awt | |
parent | 132cc6f4849ae24539818643a5b4ceacaf27839f (diff) | |
download | ppe42-gcc-d5c8fad8d1008d4a5fc31cca9c558971e5d50fe4.tar.gz ppe42-gcc-d5c8fad8d1008d4a5fc31cca9c558971e5d50fe4.zip |
2003-09-26 Sascha Brawer <brawer@dandelis.ch>
* java/awt/image/SinglePixelPackedSampleModel.java (createDataBuffer):
Save space for some pixels at the buffer end. Added Javadoc.
2003-09-26 Tom Tromey <tromey@redhat.com>
* java/io/ObjectOutputStream.java (writeFields): Fixed
indentation.
(putFields): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71829 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/awt')
-rw-r--r-- | libjava/java/awt/image/SinglePixelPackedSampleModel.java | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/libjava/java/awt/image/SinglePixelPackedSampleModel.java b/libjava/java/awt/image/SinglePixelPackedSampleModel.java index 77edf3d146b..e67353c4615 100644 --- a/libjava/java/awt/image/SinglePixelPackedSampleModel.java +++ b/libjava/java/awt/image/SinglePixelPackedSampleModel.java @@ -1,4 +1,4 @@ -/* Copyright (C) 2000, 2002 Free Software Foundation +/* Copyright (C) 2000, 2002, 2003 Free Software Foundation This file is part of GNU Classpath. @@ -88,13 +88,25 @@ public class SinglePixelPackedSampleModel extends SampleModel return new SinglePixelPackedSampleModel(dataType, w, h, bitMasks); } + + /** + * Creates a DataBuffer for holding pixel data in the format and + * layout described by this SampleModel. The returned buffer will + * consist of one single bank. + */ public DataBuffer createDataBuffer() { - // Important: use scanlineStride here, not width! - int size = scanlineStride*height; + int size; + + // We can save (scanlineStride - width) pixels at the very end of + // the buffer. The Sun reference implementation (J2SE 1.3.1 and + // 1.4.1_01) seems to do this; tested with Mauve test code. + size = scanlineStride * (height - 1) + width; + return Buffers.createBuffer(getDataType(), size); } + public int[] getSampleSize() { return sampleSize; |