comparison Applications/Wasm/StartupParametersBuilder.cpp @ 672:86930bc676c6

fix
author Alain Mazy <alain@mazy.be>
date Wed, 15 May 2019 18:54:55 +0200
parents 5dd496343fad
children
comparison
equal deleted inserted replaced
671:28dca6cd827b 672:86930bc676c6
1 #include "StartupParametersBuilder.h" 1 #include "StartupParametersBuilder.h"
2 #include <iostream> 2 #include <iostream>
3 #include <cstdio>
4 #include "emscripten/html5.h"
3 5
4 namespace OrthancStone 6 namespace OrthancStone
5 { 7 {
6 void StartupParametersBuilder::Clear() 8 void StartupParametersBuilder::Clear()
7 { 9 {
8 startupParameters_.clear(); 10 startupParameters_.clear();
9 } 11 }
10 12
11 void StartupParametersBuilder::SetStartupParameter( 13 void StartupParametersBuilder::SetStartupParameter(
25 // THIS IS HIGHLY DANGEROUS SO BEWARE!!!!!!!!!!!!!! 27 // THIS IS HIGHLY DANGEROUS SO BEWARE!!!!!!!!!!!!!!
26 // ****************************************************** 28 // ******************************************************
27 std::vector<const char*> argv(startupParameters_.size() + 1); 29 std::vector<const char*> argv(startupParameters_.size() + 1);
28 30
29 int argCounter = 0; 31 int argCounter = 0;
30 argvStrings[argCounter] = "Toto.exe"; 32 argvStrings[argCounter] = "dummy.exe";
31 argv[argCounter] = argvStrings[argCounter].c_str(); 33 argv[argCounter] = argvStrings[argCounter].c_str();
32 34
33 argCounter++; 35 argCounter++;
34 36
35 std::string cmdLine = ""; 37 std::string cmdLine = "";
36 for ( StartupParameters::const_iterator it = startupParameters_.begin(); 38 for ( StartupParameters::const_iterator it = startupParameters_.begin();
37 it != startupParameters_.end(); 39 it != startupParameters_.end();
38 it++) 40 it++)
39 { 41 {
40 std::stringstream argSs; 42 std::stringstream argSs;
41 43
42 argSs << "--" << std::get<0>(*it); 44 argSs << "--" << std::get<0>(*it);
43 if(std::get<1>(*it).length() > 0) 45 if(std::get<1>(*it).length() > 0)
44 argSs << "=" << std::get<1>(*it); 46 argSs << "=" << std::get<1>(*it);
45 47
46 argvStrings[argCounter] = argSs.str(); 48 argvStrings[argCounter] = argSs.str();
47 cmdLine = cmdLine + " " + argvStrings[argCounter]; 49 cmdLine = cmdLine + " " + argvStrings[argCounter];
48 argv[argCounter] = argvStrings[argCounter].c_str(); 50 std::cout << cmdLine << std::endl;
49 argCounter++; 51 argv[argCounter] = argvStrings[argCounter].c_str();
52 argCounter++;
50 } 53 }
51 54
52 55
53 std::cout << "simulated cmdLine = \"" << cmdLine.c_str() << "\"\n"; 56 std::cout << "simulated cmdLine = \"" << cmdLine.c_str() << "\"\n";
54 57