diff --git a/src/xpdev/ini_file.c b/src/xpdev/ini_file.c
index a4d77c71a6622127c09762f367bc2ec110b0178f..13bd555f0334a6dc78386381e73291a0df7d15b8 100644
--- a/src/xpdev/ini_file.c
+++ b/src/xpdev/ini_file.c
@@ -663,7 +663,7 @@ char* DLLCALL iniSetIp6Address(str_list_t* list, const char* section, const char
 					,ini_style_t* style)
 {
 	char				addrstr[INET6_ADDRSTRLEN];
-	union xp_sockaddr	addr = {0};
+	union xp_sockaddr	addr = {{0}};
 
 	addr.in6.sin6_addr = value;
 	addr.in6.sin6_family = AF_INET6;
@@ -1487,7 +1487,7 @@ static struct in6_addr parseIp6Address(const char* value)
 {
 	struct addrinfo hints = {0};
 	struct addrinfo *res, *cur;
-	struct in6_addr ret = {0};
+	struct in6_addr ret = {{{0}}};
 
 	hints.ai_flags = AI_NUMERICHOST|AI_PASSIVE;
 	if(getaddrinfo(value, NULL, &hints, &res))