Fixed boolean options in connector/protocol settings
This commit is contained in:
		
							parent
							
								
									200e1e4a1c
								
							
						
					
					
						commit
						28f0f15937
					
				
					 2 changed files with 38 additions and 39 deletions
				
			
		| 
						 | 
					@ -94,36 +94,31 @@ namespace Controller{
 | 
				
			||||||
  static inline void builPipedPart(JSON::Value &p, char *argarr[], int &argnum, const JSON::Value &argset){
 | 
					  static inline void builPipedPart(JSON::Value &p, char *argarr[], int &argnum, const JSON::Value &argset){
 | 
				
			||||||
    jsonForEachConst(argset, it){
 | 
					    jsonForEachConst(argset, it){
 | 
				
			||||||
      if (it->isMember("option") && p.isMember(it.key())){
 | 
					      if (it->isMember("option") && p.isMember(it.key())){
 | 
				
			||||||
        if (it->isMember("type")){
 | 
					        if (!it->isMember("type")){
 | 
				
			||||||
          if ((*it)["type"].asStringRef() == "str" && !p[it.key()].isString()){
 | 
					          if (JSON::Value(p[it.key()]).asBool()){
 | 
				
			||||||
            p[it.key()] = p[it.key()].asString();
 | 
					            argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
          if ((*it)["type"].asStringRef() == "uint" || (*it)["type"].asStringRef() == "int" ||
 | 
					          continue;
 | 
				
			||||||
              (*it)["type"].asStringRef() == "debug"){
 | 
					        }
 | 
				
			||||||
            p[it.key()] = JSON::Value(p[it.key()].asInt()).asString();
 | 
					        if ((*it)["type"].asStringRef() == "str" && !p[it.key()].isString()){
 | 
				
			||||||
          }
 | 
					          p[it.key()] = p[it.key()].asString();
 | 
				
			||||||
          if ((*it)["type"].asStringRef() == "inputlist" && p[it.key()].isArray()){
 | 
					        }
 | 
				
			||||||
            jsonForEach(p[it.key()], iVal){
 | 
					        if ((*it)["type"].asStringRef() == "uint" || (*it)["type"].asStringRef() == "int" ||
 | 
				
			||||||
              (*iVal) = iVal->asString();
 | 
					            (*it)["type"].asStringRef() == "debug"){
 | 
				
			||||||
              argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
					          p[it.key()] = JSON::Value(p[it.key()].asInt()).asString();
 | 
				
			||||||
              argarr[argnum++] = (char *)((*iVal).c_str());
 | 
					        }
 | 
				
			||||||
            }
 | 
					        if ((*it)["type"].asStringRef() == "inputlist" && p[it.key()].isArray()){
 | 
				
			||||||
            continue;
 | 
					          jsonForEach(p[it.key()], iVal){
 | 
				
			||||||
 | 
					            (*iVal) = iVal->asString();
 | 
				
			||||||
 | 
					            argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
 | 
					            argarr[argnum++] = (char *)((*iVal).c_str());
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
 | 
					          continue;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        if (p[it.key()].asStringRef().size() > 0){
 | 
					        if (p[it.key()].asStringRef().size() > 0){
 | 
				
			||||||
          argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
					          argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
          argarr[argnum++] = (char *)(p[it.key()].c_str());
 | 
					          argarr[argnum++] = (char *)(p[it.key()].c_str());
 | 
				
			||||||
        }else{
 | 
					        }else{
 | 
				
			||||||
          if (it.key() == "debug"){
 | 
					 | 
				
			||||||
            if (Util::printDebugLevel != DEBUG){
 | 
					 | 
				
			||||||
              static std::string debugLvlStr;
 | 
					 | 
				
			||||||
              debugLvlStr = JSON::Value(Util::printDebugLevel).asString();
 | 
					 | 
				
			||||||
              argarr[argnum++] = (char *)((*it)["option"].asStringRef().c_str());
 | 
					 | 
				
			||||||
              argarr[argnum++] = (char *)debugLvlStr.c_str();
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            continue;
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
          argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
					          argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -356,25 +356,29 @@ namespace Mist{
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  static inline void builPipedPart(JSON::Value &p, char *argarr[], int &argnum, JSON::Value &argset){
 | 
					  static inline void builPipedPart(JSON::Value &p, char *argarr[], int &argnum, const JSON::Value &argset){
 | 
				
			||||||
    jsonForEach(argset, it){
 | 
					    jsonForEachConst(argset, it){
 | 
				
			||||||
      if (it->isMember("option") && p.isMember(it.key())){
 | 
					      if (it->isMember("option") && p.isMember(it.key())){
 | 
				
			||||||
        if (it->isMember("type")){
 | 
					        if (!it->isMember("type")){
 | 
				
			||||||
          if ((*it)["type"].asStringRef() == "str" && !p[it.key()].isString()){
 | 
					          if (JSON::Value(p[it.key()]).asBool()){
 | 
				
			||||||
            p[it.key()] = p[it.key()].asString();
 | 
					            argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
          if ((*it)["type"].asStringRef() == "uint" || (*it)["type"].asStringRef() == "int" ||
 | 
					          continue;
 | 
				
			||||||
              (*it)["type"].asStringRef() == "debug"){
 | 
					        }
 | 
				
			||||||
            p[it.key()] = JSON::Value(p[it.key()].asInt()).asString();
 | 
					        if ((*it)["type"].asStringRef() == "str" && !p[it.key()].isString()){
 | 
				
			||||||
          }
 | 
					          p[it.key()] = p[it.key()].asString();
 | 
				
			||||||
          if ((*it)["type"].asStringRef() == "inputlist" && p[it.key()].isArray()){
 | 
					        }
 | 
				
			||||||
            jsonForEach(p[it.key()], iVal){
 | 
					        if ((*it)["type"].asStringRef() == "uint" || (*it)["type"].asStringRef() == "int" ||
 | 
				
			||||||
              (*iVal) = iVal->asString();
 | 
					            (*it)["type"].asStringRef() == "debug"){
 | 
				
			||||||
              argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
					          p[it.key()] = JSON::Value(p[it.key()].asInt()).asString();
 | 
				
			||||||
              argarr[argnum++] = (char *)((*iVal).c_str());
 | 
					        }
 | 
				
			||||||
            }
 | 
					        if ((*it)["type"].asStringRef() == "inputlist" && p[it.key()].isArray()){
 | 
				
			||||||
            continue;
 | 
					          jsonForEach(p[it.key()], iVal){
 | 
				
			||||||
 | 
					            (*iVal) = iVal->asString();
 | 
				
			||||||
 | 
					            argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
 | 
					            argarr[argnum++] = (char *)((*iVal).c_str());
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
 | 
					          continue;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        if (p[it.key()].asStringRef().size() > 0){
 | 
					        if (p[it.key()].asStringRef().size() > 0){
 | 
				
			||||||
          argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
					          argarr[argnum++] = (char *)((*it)["option"].c_str());
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue