]> source.dussan.org Git - tigervnc.git/commitdiff
Call Fl::args() to properly parse the "hidden" arguments that FLTK understands. ...
authorDRC <dcommander@users.sourceforge.net>
Thu, 23 Jun 2011 22:04:46 +0000 (22:04 +0000)
committerDRC <dcommander@users.sourceforge.net>
Thu, 23 Jun 2011 22:04:46 +0000 (22:04 +0000)
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4525 3789f03b-4d11-0410-bbf8-ca57d06f2519

vncviewer/vncviewer.cxx

index aa742ce29864ec03f8607f08f9265a156de34c08..b9e8ab5626994b2a3899962cf0a7c8566257c993 100644 (file)
@@ -1,5 +1,6 @@
 /* Copyright (C) 2002-2005 RealVNC Ltd.  All Rights Reserved.
  * Copyright 2011 Pierre Ossman <ossman@cendio.se> for Cendio AB
+ * Copyright (C) 2011 D. R. Commander
  * 
  * This is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -214,22 +215,24 @@ int main(int argc, char** argv)
 
   Configuration::enableViewerParams();
 
-  for (int i = 1; i < argc; i++) {
-    if (Configuration::setParam(argv[i]))
-      continue;
-
-    if (argv[i][0] == '-') {
-      if (i+1 < argc) {
-        if (Configuration::setParam(&argv[i][1], argv[i+1])) {
-          i++;
-          continue;
+  int i = 1;
+  if (!Fl::args(argc, argv, i) || i < argc)
+    for (; i < argc; i++) {
+      if (Configuration::setParam(argv[i]))
+        continue;
+
+      if (argv[i][0] == '-') {
+        if (i+1 < argc) {
+          if (Configuration::setParam(&argv[i][1], argv[i+1])) {
+            i++;
+            continue;
+          }
         }
+        usage(argv[0]);
       }
-      usage(argv[0]);
-    }
 
-    vncServerName = argv[i];
-  }
+      vncServerName = argv[i];
+    }
 
   if (!::autoSelect.hasBeenSet()) {
     // Default to AutoSelect=0 if -PreferredEncoding or -FullColor is used