]> git.lyx.org Git - features.git/commitdiff
Kill warning: string::npos was the wrong type, and does not reflect what
authorRichard Heck <rgheck@comcast.net>
Tue, 5 Jan 2010 15:01:32 +0000 (15:01 +0000)
committerRichard Heck <rgheck@comcast.net>
Tue, 5 Jan 2010 15:01:32 +0000 (15:01 +0000)
max is supposed to be.

JMarc: I assume you are intending to use this new method, getLongArg()?

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32770 a592a061-630c-0410-9148-cb99ea01b6c8

src/FuncRequest.cpp

index eeebca2891c6346a79582809b060aaed1ab4485d..7755a86957f06aaba4c8f8c04c8132d2f4231fad 100644 (file)
@@ -15,6 +15,7 @@
 
 #include "support/lstrings.h"
 
+#include <climits>
 #include <iostream>
 #include <sstream>
 #include <vector>
@@ -76,7 +77,12 @@ mouse_button::state FuncRequest::button() const
 
 namespace {
 
-void splitArg(vector<string> & args, string const & str, unsigned int max)
+// Extracts arguments from str into args. Arguments are delimted by
+// whitespace or by double quotes.
+// We extract at most max arguments, treating the last argument as 
+// continuing to eol.
+void splitArg(vector<string> & args, string const & str, 
+               unsigned int max = UINT_MAX)
 {
        istringstream is(str);
        while (is) {
@@ -92,8 +98,10 @@ void splitArg(vector<string> & args, string const & str, unsigned int max)
                is >> c;
                if (is) {
                        if (c == '"')
+                               // get quote delimited argument
                                getline(is, s, '"');
                        else {
+                               // get whitespace delimited argument
                                is.putback(c);
                                is >> s;
                        }
@@ -107,7 +115,7 @@ void splitArg(vector<string> & args, string const & str, unsigned int max)
 string FuncRequest::getArg(unsigned int i) const
 {
        vector<string> args;
-       splitArg(args, to_utf8(argument_), string::npos);
+       splitArg(args, to_utf8(argument_));
        return i < args.size() ? args[i] : string();
 }