diff --git a/lib/krb5/get_for_creds.c b/lib/krb5/get_for_creds.c index ad8cb6221..ecbbf100c 100644 --- a/lib/krb5/get_for_creds.c +++ b/lib/krb5/get_for_creds.c @@ -62,8 +62,10 @@ add_addrs(krb5_context context, krb5_data_zero(&addr->val[i].address); } for (a = ai; a != NULL; a = a->ai_next) { - ret = krb5_sockaddr2address (a->ai_addr, &addr->val[i++]); - if (ret != 0 && ret != KRB5_PROG_ATYPE_NOSUPP) + ret = krb5_sockaddr2address (a->ai_addr, &addr->val[i]); + if (ret == 0) + ++i; + else if (ret != KRB5_PROG_ATYPE_NOSUPP) goto fail; } addr->len = i;