- ::onModify now conforms to design.
This commit is contained in:
Paul Beckingham
2014-05-14 21:44:22 -04:00
parent 0b6e94280e
commit b1c0e67581

View File

@@ -70,35 +70,37 @@ void Hooks::onLaunch ()
{ {
context.timer_hooks.start (); context.timer_hooks.start ();
std::vector <std::string> matchingScripts = scripts ("on-launch");
std::vector <std::string>::iterator i; std::vector <std::string>::iterator i;
for (i = _scripts.begin (); i != _scripts.end (); ++i) for (i = matchingScripts.begin (); i != matchingScripts.end (); ++i)
{ {
if (i->find ("/on-launch") != std::string::npos) std::string output;
int status = execute (*i, "", output);
std::vector <std::string> lines;
split (lines, output, '\n');
std::vector <std::string>::iterator line;
if (status == 0)
{ {
File script (*i); for (line = lines.begin (); line != lines.end (); ++line)
if (script.executable ())
{ {
std::string output; if (line->length () && (*line)[0] == '{')
int status = execute (*i, "", output);
std::vector <std::string> lines;
split (lines, output, '\n');
std::vector <std::string>::iterator line;
if (status == 0)
{ {
for (line = lines.begin (); line != lines.end (); ++line) Task newTask (*line);
context.header (*line); context.tdb2.add (newTask);
} }
else else
{ context.header (*line);
for (line = lines.begin (); line != lines.end (); ++line)
context.error (*line);
throw 0; // This is how hooks silently terminate processing.
}
} }
} }
else
{
for (line = lines.begin (); line != lines.end (); ++line)
context.error (*line);
throw 0; // This is how hooks silently terminate processing.
}
} }
context.timer_hooks.stop (); context.timer_hooks.stop ();