diff --git a/lib/picotls.c b/lib/picotls.c
index aedaf4d..d1c9523 100644
--- a/lib/picotls.c
+++ b/lib/picotls.c
@@ -3311,7 +3311,8 @@
             ptls_decode_block(src, end, 1, {
                 int found = 0;
                 for (size_t i = 0; i < end - src; i++) {
-                    if ((*src == PTLS_CERTIFICATE_TYPE_X509 && !tls->ctx->cert0_is_raw_certificate) || (*src == PTLS_CERTIFICATE_TYPE_RAW_PUBLIC_KEY && tls->ctx->cert0_is_raw_certificate)) {
+                    if ((*src == PTLS_CERTIFICATE_TYPE_X509 && !tls->ctx->cert0_is_raw_certificate) ||
+                        (*src == PTLS_CERTIFICATE_TYPE_RAW_PUBLIC_KEY && tls->ctx->cert0_is_raw_certificate)) {
                         found = 1;
                         break;
                     }
@@ -3673,7 +3674,7 @@
         goto Exit;
     }
 
-    *ch = (struct st_ptls_client_hello_t){0,      NULL,   {NULL},     {NULL}, 0,     {NULL},   {NULL}, {NULL}, {{0}},
+    *ch = (struct st_ptls_client_hello_t){0,      NULL,   {NULL},     {NULL}, 0,     {NULL},   {NULL}, {NULL},        {{0}},
                                           {NULL}, {NULL}, {{{NULL}}}, {{0}},  {{0}}, {{NULL}}, {NULL}, {{UINT16_MAX}}};
 
     /* decode ClientHello */
diff --git a/t/cli.c b/t/cli.c
index ec4c353..ff60590 100644
--- a/t/cli.c
+++ b/t/cli.c
@@ -402,7 +402,8 @@
         ptls_key_exchange_context_t *elements[16];
         size_t count;
     } esni_key_exchanges;
-    int is_server = 0, use_early_data = 0, request_key_update = 0, keep_sender_open = 0, ch, use_raw_public_keys = 0, verify_certificate = 0;
+    int is_server = 0, use_early_data = 0, request_key_update = 0, keep_sender_open = 0, ch, use_raw_public_keys = 0,
+        verify_certificate = 0;
     struct sockaddr_storage sa;
     socklen_t salen;
     int family = 0;
