summaryrefslogtreecommitdiffstats
path: root/lib/Plugins/SOSreport.cpp
diff options
context:
space:
mode:
authorNikola Pajkovsky <npajkovs@redhat.com>2009-11-12 13:18:27 +0100
committerNikola Pajkovsky <npajkovs@redhat.com>2009-11-12 13:18:27 +0100
commit2707930a0c1a2f4642a0f9371b6674d0b23d1b67 (patch)
treedf10c6c02450c1973a7da74d43b2983fc54f74fa /lib/Plugins/SOSreport.cpp
parent5b3c6da6b19c69611179a98dabd17721db670668 (diff)
downloadabrt-2707930a0c1a2f4642a0f9371b6674d0b23d1b67.tar.gz
abrt-2707930a0c1a2f4642a0f9371b6674d0b23d1b67.tar.xz
abrt-2707930a0c1a2f4642a0f9371b6674d0b23d1b67.zip
Factored ParseArg
Diffstat (limited to 'lib/Plugins/SOSreport.cpp')
-rw-r--r--lib/Plugins/SOSreport.cpp32
1 files changed, 1 insertions, 31 deletions
diff --git a/lib/Plugins/SOSreport.cpp b/lib/Plugins/SOSreport.cpp
index fedc51ab..b949339f 100644
--- a/lib/Plugins/SOSreport.cpp
+++ b/lib/Plugins/SOSreport.cpp
@@ -65,36 +65,6 @@ static std::string ParseFilename(const std::string& pOutput)
return pOutput.substr(filename_start, filename_end - filename_start + 1);
}
-/* TODO: do not duplicate: RunApp.cpp has same function too */
-static void ParseArgs(const char *psArgs, vector_string_t& pArgs)
-{
- unsigned ii;
- bool is_quote = false;
- std::string item;
-
- for (ii = 0; psArgs[ii]; ii++)
- {
- if (psArgs[ii] == '"')
- {
- is_quote = !is_quote;
- }
- else if (psArgs[ii] == ',' && !is_quote)
- {
- pArgs.push_back(item);
- item.clear();
- }
- else
- {
- item += psArgs[ii];
- }
- }
-
- if (item.size() != 0)
- {
- pArgs.push_back(item);
- }
-}
-
void CActionSOSreport::Run(const char *pActionDir, const char *pArgs)
{
update_client(_("Executing SOSreport plugin..."));
@@ -108,7 +78,7 @@ void CActionSOSreport::Run(const char *pActionDir, const char *pArgs)
std::string command;
vector_string_t args;
- ParseArgs(pArgs, args);
+ parse_args(pArgs, args, '"');
if (args.size() == 0 || args[0] == "")
{