|
0 |
Description: FTBFS with java7
|
|
1 |
* Replace use of com.sun.image.codec.jpeg.* with ImageIO.
|
|
2 |
* Extend class-path for javah
|
|
3 |
|
|
4 |
--- java3d-1.5.2+dfsg.orig/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java
|
|
5 |
+++ java3d-1.5.2+dfsg/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java
|
|
6 |
@@ -61,10 +61,7 @@ import com.sun.j3d.utils.scenegraph.io.r
|
|
7 |
import com.sun.j3d.utils.scenegraph.io.retained.SGIORuntimeException;
|
|
8 |
import java.awt.color.ColorSpace;
|
|
9 |
import java.awt.image.DataBuffer;
|
|
10 |
-import com.sun.image.codec.jpeg.JPEGImageEncoder;
|
|
11 |
-import com.sun.image.codec.jpeg.JPEGImageDecoder;
|
|
12 |
-import com.sun.image.codec.jpeg.JPEGCodec;
|
|
13 |
-import com.sun.image.codec.jpeg.JPEGEncodeParam;
|
|
14 |
+import javax.imageio.ImageIO;
|
|
15 |
|
|
16 |
public abstract class ImageComponentState extends NodeComponentState {
|
|
17 |
|
|
18 |
@@ -203,10 +200,9 @@ public abstract class ImageComponentStat
|
|
19 |
|
|
20 |
private void writeBufferedImageJpegCompression( DataOutput out, BufferedImage image ) throws IOException {
|
|
21 |
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
|
|
22 |
- JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( byteStream );
|
|
23 |
-
|
|
24 |
- encoder.encode( image );
|
|
25 |
- byteStream.close();
|
|
26 |
+ if (!ImageIO.write(image, "jpeg", byteStream)) {
|
|
27 |
+ throw new AssertionError("No JPEG encoder available");
|
|
28 |
+ }
|
|
29 |
|
|
30 |
byte[] buffer = byteStream.toByteArray();
|
|
31 |
out.writeInt( buffer.length );
|
|
32 |
@@ -261,11 +257,15 @@ public abstract class ImageComponentStat
|
|
33 |
byte[] buffer = new byte[ size ];
|
|
34 |
in.readFully( buffer );
|
|
35 |
ByteArrayInputStream byteStream = new ByteArrayInputStream( buffer );
|
|
36 |
-
|
|
37 |
- JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder( byteStream );
|
|
38 |
- byteStream.close();
|
|
39 |
-
|
|
40 |
- return decoder.decodeAsBufferedImage();
|
|
41 |
+ try {
|
|
42 |
+ BufferedImage img = ImageIO.read(byteStream);
|
|
43 |
+ if (img == null) {
|
|
44 |
+ throw new AssertionError("No ImageReader available.");
|
|
45 |
+ }
|
|
46 |
+ return img;
|
|
47 |
+ } finally {
|
|
48 |
+ byteStream.close();
|
|
49 |
+ }
|
|
50 |
}
|
|
51 |
|
|
52 |
private void writeColorModel( DataOutput out, ColorModel colorModel ) throws IOException {
|
|
53 |
--- java3d-1.5.2+dfsg.orig/j3d-core/src/native/build.xml
|
|
54 |
+++ java3d-1.5.2+dfsg/j3d-core/src/native/build.xml
|
|
55 |
@@ -361,6 +361,7 @@
|
|
56 |
<javah destdir="${javahCoreTarget}" force="yes">
|
|
57 |
<classpath>
|
|
58 |
<pathelement path="${build}/${platform}/${bldType}/classes"/>
|
|
59 |
+ <pathelement path="/usr/share/java/vecmath.jar" />
|
|
60 |
</classpath>
|
|
61 |
|
|
62 |
<class name="javax.media.j3d.Background"/>
|