From beb08eb751fa8e1f72042f263316ab5e5ddb596d Mon Sep 17 00:00:00 2001 From: Unit 193 Date: Wed, 10 Nov 2021 00:54:13 -0500 Subject: New upstream version 2.4.0+dfsg. --- src/lib/barrier/ArgParser.h | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'src/lib/barrier/ArgParser.h') diff --git a/src/lib/barrier/ArgParser.h b/src/lib/barrier/ArgParser.h index 32300c6..472d93a 100644 --- a/src/lib/barrier/ArgParser.h +++ b/src/lib/barrier/ArgParser.h @@ -1,11 +1,11 @@ /* * barrier -- mouse and keyboard sharing utility * Copyright (C) 2014-2016 Symless Ltd. - * + * * This package is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * found in the file LICENSE that should have accompanied this file. - * + * * This package is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the @@ -14,7 +14,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ - + #pragma once #include "base/String.h" @@ -41,21 +41,27 @@ public: const char* name1, const char* name2, int minRequiredParameters = 0); static void splitCommandString(String& command, std::vector& argv); - static bool searchDoubleQuotes(String& command, size_t& left, + static bool searchDoubleQuotes(String& command, size_t& left, size_t& right, size_t startPos = 0); static void removeDoubleQuotes(String& arg); static const char** getArgv(std::vector& argsArray); - static String assembleCommand(std::vector& argsArray, + static String assembleCommand(std::vector& argsArray, String ignoreArg = "", int parametersRequired = 0); + static std::string parse_exename(const char* arg); + private: void updateCommonArgs(const char* const* argv); bool checkUnexpectedArgs(); - + static ArgsBase& argsBase() { return *m_argsBase; } + bool parseMSWindowsArg(ArgsBase& argsBase, const int& argc, const char* const* argv, int& i); + bool parseCarbonArg(ArgsBase& argsBase, const int& argc, const char* const* argv, int& i); + bool parseXWindowsArg(ArgsBase& argsBase, const int& argc, const char* const* argv, int& i); + private: App* m_app; - + static ArgsBase* m_argsBase; }; -- cgit v1.2.3