aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com/jogamp/opengl/util/glsl
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2014-09-08 13:53:25 +0200
committerSven Gothel <[email protected]>2014-09-08 13:53:25 +0200
commit1bdc495c19d3c8798a56d8476247084f0c870b48 (patch)
treebad6ccdb4faf188c069a0513a494e1a7e3d18c6b /src/jogl/classes/com/jogamp/opengl/util/glsl
parentc0c722b9f479412f27973ba0c4cd4a166dcb00be (diff)
Bug 1063: Uri adoption
- ShaderCode: - Using Uri - Also encode the rel. 'includeFile' (was missing earlier) - GLMediaPlayer - Exposes Uri in API, removed URI
Diffstat (limited to 'src/jogl/classes/com/jogamp/opengl/util/glsl')
-rw-r--r--src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java
index 6c507d209..8eed35ebb 100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java
@@ -35,6 +35,7 @@ import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.StringReader;
+import java.net.URISyntaxException;
import java.net.URLConnection;
import java.nio.Buffer;
import java.nio.ByteBuffer;
@@ -53,6 +54,7 @@ import javax.media.opengl.GLException;
import jogamp.opengl.Debug;
+import com.jogamp.common.net.Uri;
import com.jogamp.common.nio.Buffers;
import com.jogamp.common.util.IOUtil;
import com.jogamp.common.util.VersionNumber;
@@ -832,7 +834,8 @@ public class ShaderCode {
URLConnection nextConn = null;
// Try relative of current shader location
- nextConn = IOUtil.openURL(IOUtil.getRelativeOf(conn.getURL(), includeFile), "ShaderCode.relativeOf ");
+ final Uri relUri = Uri.valueOf( conn.getURL() ).getRelativeOf(new Uri.Encoded( includeFile, Uri.PATH_LEGAL ));
+ nextConn = IOUtil.openURL(relUri.toURL(), "ShaderCode.relativeOf ");
if (nextConn == null) {
// Try relative of class and absolute
nextConn = IOUtil.getResource(context, includeFile);
@@ -846,6 +849,8 @@ public class ShaderCode {
result.append(line + "\n");
}
}
+ } catch (final URISyntaxException e) {
+ throw new IOException(e);
} finally {
IOUtil.close(reader, false);
}