better result handling of calculation functions

This commit is contained in:
Linus Dierheimer
2021-04-22 21:41:42 +02:00
parent c12484ec6b
commit e28126f40e
23 changed files with 520 additions and 407 deletions
+10 -10
View File
@@ -5,26 +5,26 @@
void ffPrintTerminal(FFinstance* instance)
{
ffCalculateTerminal(instance);
const FFTerminalResult* result = ffCalculateTerminal(instance);
if(instance->state.terminal.error.length > 0)
if(result->error.length > 0)
{
ffPrintError(instance, FF_TERMINAL_MODULE_NAME, 0, &instance->config.terminalKey, &instance->config.terminalFormat, FF_TERMINAL_NUM_FORMAT_ARGS, instance->state.terminal.error.chars);
ffPrintError(instance, FF_TERMINAL_MODULE_NAME, 0, &instance->config.terminalKey, &instance->config.terminalFormat, FF_TERMINAL_NUM_FORMAT_ARGS, result->error.chars);
return;
}
if(instance->state.terminal.exeName.length == 0 && instance->state.terminal.processName.length == 0)
if(result->exeName.length == 0 && result->processName.length == 0)
{
ffPrintError(instance, FF_TERMINAL_MODULE_NAME, 0, &instance->config.terminalKey, &instance->config.terminalFormat, FF_TERMINAL_NUM_FORMAT_ARGS, "Terminal names not set");
return;
}
FFstrbuf* name;
const FFstrbuf* name;
if(ffStrbufStartsWith(&instance->state.terminal.exeName, &instance->state.terminal.processName))
name = &instance->state.terminal.exeName;
if(ffStrbufStartsWith(&result->exeName, &result->processName))
name = &result->exeName;
else
name = &instance->state.terminal.processName;
name = &result->processName;
if(instance->config.terminalFormat.length == 0)
{
@@ -34,8 +34,8 @@ void ffPrintTerminal(FFinstance* instance)
else
{
ffPrintFormatString(instance, FF_TERMINAL_MODULE_NAME, 0, &instance->config.terminalKey, &instance->config.terminalFormat, NULL, FF_TERMINAL_NUM_FORMAT_ARGS, (FFformatarg[]){
{FF_FORMAT_ARG_TYPE_STRBUF, &instance->state.terminal.exeName},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance->state.terminal.processName},
{FF_FORMAT_ARG_TYPE_STRBUF, &result->exeName},
{FF_FORMAT_ARG_TYPE_STRBUF, &result->processName},
{FF_FORMAT_ARG_TYPE_STRBUF, name}
});
}