Fix generate bug on empty commands
This commit is contained in:
parent
46047f2a88
commit
4e137ab35e
1 changed files with 11 additions and 8 deletions
|
|
@ -316,18 +316,21 @@ std::string cmd::generate(int ind)
|
||||||
for(auto it: var_assigns)
|
for(auto it: var_assigns)
|
||||||
ret += it.first + '=' + it.second->generate(ind) + ' ';
|
ret += it.first + '=' + it.second->generate(ind) + ' ';
|
||||||
|
|
||||||
if(args==nullptr || args->size()<=0)
|
if(args!=nullptr && args->size()>0)
|
||||||
{
|
{
|
||||||
ret.pop_back();
|
// command
|
||||||
|
ret += args->generate(ind);
|
||||||
|
// delete potential trailing space
|
||||||
|
if(ret[ret.size()-1] == ' ')
|
||||||
|
ret.pop_back();
|
||||||
|
}
|
||||||
|
else if(opt_minimize) // minimize: empty command: don't put redirects
|
||||||
|
{
|
||||||
|
if(ret.size()>0)
|
||||||
|
ret.pop_back();
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
// command
|
|
||||||
ret += args->generate(ind);
|
|
||||||
// delete potential trailing space
|
|
||||||
if(ret[ret.size()-1] == ' ')
|
|
||||||
ret.pop_back();
|
|
||||||
|
|
||||||
ret += generate_redirs(ind, ret);
|
ret += generate_redirs(ind, ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue