Allowing relative URLs as values for the "URL" parameter, in the
applet mode.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2524 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/java/src/com/tightvnc/rfbplayer/README b/java/src/com/tightvnc/rfbplayer/README
index a021ca4..5497520 100644
--- a/java/src/com/tightvnc/rfbplayer/README
+++ b/java/src/com/tightvnc/rfbplayer/README
@@ -17,10 +17,11 @@
     Value: URL of the session file to play.
     Default: none (required parameter).
 
-    This parameter tells the player which session file to play. Please note
-    that if the player operates as an unsigned applet, it is able to play
-    only files from the host where the applet was loaded from. It's a usual
-    JVM security limitation.
+    This parameter tells the player which session file to play. The URL can
+    be either a complete one (e.g. "file:/your/path/session.fbs") or relative
+    (e.g. "session.fbs"). Please note that if the player operates as an
+    unsigned applet, it is able to play only files from the host where the
+    applet was loaded from. It's a usual JVM security limitation.
 
 --> "Position"
 
diff --git a/java/src/com/tightvnc/rfbplayer/RfbPlayer.java b/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
index 3256804..0a7838c 100644
--- a/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
+++ b/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
@@ -120,7 +120,11 @@
     }
 
     try {
-      url = new URL(sessionURL);
+      if (inAnApplet) {
+	url = new URL(getCodeBase(), sessionURL);
+      } else {
+	url = new URL(sessionURL);
+      }
       rfb = new RfbProto(url);
 
       vc = new VncCanvas(this);
diff --git a/java/src/com/tightvnc/rfbplayer/index.html b/java/src/com/tightvnc/rfbplayer/index.html
index f5e0eea..303bc5d 100644
--- a/java/src/com/tightvnc/rfbplayer/index.html
+++ b/java/src/com/tightvnc/rfbplayer/index.html
@@ -3,7 +3,7 @@
 <BODY>
 <APPLET CODE=RfbPlayer.class ARCHIVE=RfbPlayer.jar
         WIDTH=800 HEIGHT=640>
-<param name=FILE value="./session.fbs">
+<param name=URL value="session.fbs">
 </APPLET>
 </BODY>
 </HTML>