Fixed issue where CLI paramters specified as "-param value" caused
a java.nio.BufferOverflowException while the same parameter specified
as "-param=value" worked fine.
diff --git a/java/com/tigervnc/vncviewer/VncViewer.java b/java/com/tigervnc/vncviewer/VncViewer.java
index e123499..cab1fc5 100644
--- a/java/com/tigervnc/vncviewer/VncViewer.java
+++ b/java/com/tigervnc/vncviewer/VncViewer.java
@@ -173,7 +173,8 @@
}
// Override defaults with command-line options
- for (int i = 0; i < argv.length; i++) {
+ int i = 0;
+ for (; i < argv.length; i++) {
if (argv[i].length() == 0)
continue;
@@ -191,9 +192,6 @@
continue;
}
- if (Configuration.setParam(argv[i]))
- continue;
-
if (argv[i].charAt(0) == '-') {
if (i+1 < argv.length) {
if (Configuration.setParam(argv[i].substring(1), argv[i+1])) {
@@ -201,6 +199,9 @@
continue;
}
}
+ if (Configuration.setParam(argv[i]))
+ continue;
+
usage();
}