diff --git a/src/core/ext/transport/chttp2/client/secure/secure_channel_create.c b/src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
index bceef152be317d97a57e87cc321a0012573154b4..40f575f782150dc8a40142c4fea7ef6fe9bbf8e9 100644
--- a/src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
+++ b/src/core/ext/transport/chttp2/client/secure/secure_channel_create.c
@@ -153,7 +153,7 @@ static void connected(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
     memset(c->result, 0, sizeof(*c->result));
     notify = c->notify;
     c->notify = NULL;
-    notify->cb(exec_ctx, notify->cb_arg, GRPC_ERROR_NONE);
+    notify->cb(exec_ctx, notify->cb_arg, grpc_error_ref(error));
   }
 }