diff --git a/dlls/msi/format.c b/dlls/msi/format.c index 128f159da4a..8c5b246a095 100644 --- a/dlls/msi/format.c +++ b/dlls/msi/format.c @@ -544,6 +544,10 @@ static FORMSTR *format_replace(FORMAT *format, BOOL propfound, BOOL nonprop, format->deformatted = str; format->len = size - 1; + /* don't reformat the NULL */ + if (replace && !*replace) + format->n++; + if (!replace) return NULL; @@ -727,9 +731,6 @@ static UINT replace_stack(FORMAT *format, STACK *stack, STACK *values) msi_free(replaced); format->n = beg->n + beg->len; - if (type == FORMAT_PROPNULL) - format->n++; - top = stack_peek(stack); if (top) {