[Bugfix] Fixed a problem with recursive seeking and unhandled EOFException("[JUMP]").
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2622 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/java/src/com/tightvnc/rfbplayer/FbsInputStream.java b/java/src/com/tightvnc/rfbplayer/FbsInputStream.java
index 2077bc5..f5f4b39 100644
--- a/java/src/com/tightvnc/rfbplayer/FbsInputStream.java
+++ b/java/src/com/tightvnc/rfbplayer/FbsInputStream.java
@@ -167,11 +167,13 @@
return (long)(off * playbackSpeed);
}
- public synchronized void setTimeOffset(long pos) {
+ public synchronized void setTimeOffset(long pos, boolean allowJump) {
seekOffset = (long)(pos / playbackSpeed);
- long minJumpForwardOffset = timeOffset + (long)(10000 / playbackSpeed);
- if (seekOffset < timeOffset || seekOffset > minJumpForwardOffset) {
- farSeeking = true;
+ if (allowJump) {
+ long minJumpForwardOffset = timeOffset + (long)(10000 / playbackSpeed);
+ if (seekOffset < timeOffset || seekOffset > minJumpForwardOffset) {
+ farSeeking = true;
+ }
}
notify();
}