diff --git a/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c b/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c index a61e08c98..1f8718962 100644 --- a/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c +++ b/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c @@ -266,7 +266,7 @@ static array_t *select_signature_schemes(keymat_v2_t *keymat, { INIT(config, .scheme = scheme, - ) + ); array_insert(selected, ARRAY_TAIL, config); } } diff --git a/src/libstrongswan/utils/utils/object.h b/src/libstrongswan/utils/utils/object.h index fc5916804..6ace60041 100644 --- a/src/libstrongswan/utils/utils/object.h +++ b/src/libstrongswan/utils/utils/object.h @@ -41,8 +41,8 @@ /** * Object allocation/initialization macro, using designated initializer. */ -#define INIT(this, ...) { (this) = malloc(sizeof(*(this))); \ - *(this) = (typeof(*(this))){ __VA_ARGS__ }; } +#define INIT(this, ...) ({ (this) = malloc(sizeof(*(this))); \ + *(this) = (typeof(*(this))){ __VA_ARGS__ }; (this); }) /** * Aligning version of INIT(). diff --git a/src/sw-collector/sw_collector_history.c b/src/sw-collector/sw_collector_history.c index 2cecb2c13..5a26ff12b 100644 --- a/src/sw-collector/sw_collector_history.c +++ b/src/sw-collector/sw_collector_history.c @@ -78,7 +78,7 @@ static package_t* create_package(swid_gen_info_t *info, chunk_t package, .package = strndup(package.ptr, package.len), .version = strndup(version.ptr, version.len), .old_version = strndup(old_version.ptr, old_version.len), - ) + ); this->sw_id = info->create_sw_id(info, this->package, this->version); if (old_version.len)