mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-08-31 05:47:18 +02:00
Parser
- Restored default.command in ::injectDefaults. - Restored 'information' command when an ID/UUID is provided, but no CMD.
This commit is contained in:
parent
ac73a47f9b
commit
9e3a8e5c82
1 changed files with 12 additions and 22 deletions
|
@ -548,27 +548,23 @@ void Parser::injectDefaults ()
|
||||||
{
|
{
|
||||||
// Scan the top-level branches for evidence of ID, UUID, overrides and other
|
// Scan the top-level branches for evidence of ID, UUID, overrides and other
|
||||||
// arguments.
|
// arguments.
|
||||||
bool found_command = false;
|
bool found_command = false;
|
||||||
bool found_sequence = false;
|
bool found_sequence = false;
|
||||||
bool found_other = false;
|
bool found_terminator = false;
|
||||||
|
|
||||||
std::vector <Tree*> nodes;
|
std::vector <Tree*> nodes;
|
||||||
collect (nodes, collectTerminated);
|
collect (nodes, collectAll);
|
||||||
std::vector <Tree*>::iterator i;
|
std::vector <Tree*>::iterator i;
|
||||||
for (i = nodes.begin (); i != nodes.end (); ++i)
|
for (i = nodes.begin (); i != nodes.end (); ++i)
|
||||||
{
|
{
|
||||||
if ((*i)->hasTag ("BINARY"))
|
if ((*i)->attribute ("raw") == "--")
|
||||||
;
|
found_terminator = true;
|
||||||
|
|
||||||
else if ((*i)->hasTag ("CMD"))
|
if (! found_terminator && (*i)->hasTag ("CMD"))
|
||||||
found_command = true;
|
found_command = true;
|
||||||
|
|
||||||
else if ((*i)->hasTag ("ID") || (*i)->hasTag ("UUID"))
|
else if (! found_terminator && ((*i)->hasTag ("ID") || (*i)->hasTag ("UUID")))
|
||||||
found_sequence = true;
|
found_sequence = true;
|
||||||
|
|
||||||
else if (! (*i)->hasTag ("RC") &&
|
|
||||||
! (*i)->hasTag ("CONFIG"))
|
|
||||||
found_other = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// If no command was specified, then a command will be inserted.
|
// If no command was specified, then a command will be inserted.
|
||||||
|
@ -619,16 +615,10 @@ void Parser::injectDefaults ()
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// TODO There is a problem, in that this block is not run.
|
context.debug ("Sequence but no command found - assuming 'information' command.");
|
||||||
|
context.header (STRING_ASSUME_INFO);
|
||||||
// Information command.
|
Tree* t = captureFirst ("information");
|
||||||
if (! found_other)
|
t->tag ("ASSUMED");
|
||||||
{
|
|
||||||
context.debug ("Sequence but no command found - assuming 'information' command.");
|
|
||||||
context.header (STRING_ASSUME_INFO);
|
|
||||||
Tree* t = captureFirst ("information");
|
|
||||||
t->tag ("ASSUMED");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue