diff --git a/src/basic/efivars.c b/src/basic/efivars.c index 86544d1de2..99c47e8ce2 100644 --- a/src/basic/efivars.c +++ b/src/basic/efivars.c @@ -155,9 +155,8 @@ int efi_get_variable( } int efi_get_variable_string(const char *variable, char **ret) { - _cleanup_free_ void *s = NULL; + _cleanup_free_ void *s = NULL, *x = NULL; size_t ss = 0; - char *x; int r; assert(variable); @@ -171,7 +170,7 @@ int efi_get_variable_string(const char *variable, char **ret) { return -ENOMEM; if (ret) - *ret = x; + *ret = TAKE_PTR(x); return 0; }