*/
static unsigned empty_status_items(int parser_friendly, char **result)
{
- static char *esi;
- static unsigned len;
-
- if (esi)
- goto out;
+ char *esi;
+ unsigned len;
if (parser_friendly)
len = xasprintf(&esi,
EMPTY_STATUS_ITEMS
#undef ITEM
);
-out:
*result = esi;
return len;
}
{
int i, ret;
struct misc_meta_data tmp, *nmmd = &tmp;
- char *s, *esi = NULL;
+ char *s;
int32_t num = 0;
int parser_friendly = 0;
if (ret < 0)
goto out;
if (nmmd->vss_status_flags & VSS_NEXT) {
+ char *esi;
ret = empty_status_items(parser_friendly, &esi);
if (cc->use_sideband)
ret = send_sb(&cc->scc, esi, ret, SBD_OUTPUT,
- true);
- else
+ false);
+ else {
ret = sc_send_bin_buffer(&cc->scc, esi, ret);
+ free(esi);
+ }
if (ret < 0)
goto out;
} else
goto out;
}
out:
- free(esi);
return ret;
}