Commit 48331e86 authored by jan.koester's avatar jan.koester
Browse files

fxied

parent cbe2a812
Loading
Loading
Loading
Loading
+5 −14
Original line number Diff line number Diff line
@@ -138,8 +138,7 @@ void cmdplus::CmdController::registerCmd(const char *key, const char skey,bool r
    }
    /*set new key*/
    _lastCmd->_Key = new char[strlen(key) + 1];
    memcpy(_lastCmd->_Key,key,strlen(key));
    _lastCmd->_Key[strlen(key)] = '\0';
    memcpy(_lastCmd->_Key,key,strlen(key)+1);
    /*set new shortkey*/
    _lastCmd->_SKey = skey;
    /*set reqirement flag*/
@@ -147,14 +146,11 @@ void cmdplus::CmdController::registerCmd(const char *key, const char skey,bool r
    /*set new value*/
    if (defaultvalue) {
        _lastCmd->_Value = new char[strlen(defaultvalue) + 1];
        memcpy(_lastCmd->_Value,defaultvalue,strlen(defaultvalue));
        _lastCmd->_Value[strlen(defaultvalue)] = '\0';
        memcpy(_lastCmd->_Value,defaultvalue,strlen(defaultvalue)+1);
    }
    /*set new help*/
    _lastCmd->_Help = new char[strlen(help) + 1];
    memcpy(_lastCmd->_Help,help,strlen(help));
    _lastCmd->_Help[strlen(help)] = '\0';
    
    memcpy(_lastCmd->_Help,help,strlen(help)+1);
}

void cmdplus::CmdController::registerCmd(const char *key, const char skey, bool required, unsigned long defaultvalue, const char *help) {
@@ -169,7 +165,7 @@ void cmdplus::CmdController::registerCmd(const char *key, const char skey, bool
    registerCmd(key, skey, required, buf, help);
}

void cmdplus::CmdController::parseCmd(int argc, char** argv){
void cmdplus::CmdController::parseCmd(int argc,const char** argv){
    for (int args = 1; args < argc; args++) {
        int keytype = -1;
        if (argv[args][0]=='-' && argv[args][1] == '-') {
@@ -257,11 +253,6 @@ cmdplus::Cmd *cmdplus::CmdController::getCmdbyKey(const char *key) {
}

cmdplus::CmdController::~CmdController() {
    Cmd *curcmd=_firstCmd;
    while(curcmd) {
        Cmd *nextcmd=curcmd->nextCmd();
        delete curcmd;
        curcmd=nextcmd;
    }
    delete _firstCmd;
    _lastCmd = nullptr;
}
+1 −1
Original line number Diff line number Diff line
@@ -64,7 +64,7 @@ namespace cmdplus {
        void registerCmd(const char *key,char skey,bool required,unsigned long defaultvalue, const char *help);
        void registerCmd(const char *key,char skey,bool required,int defaultvalue, const char *help);
        void printHelp();
        void parseCmd(int argc, char** argv);
        void parseCmd(int argc, const char** argv);
        bool checkRequired();
        Cmd  *getCmdbyKey(const char *key);
    private: