diff --git a/src/core/transport/chttp2_transport.c b/src/core/transport/chttp2_transport.c
index 39297c37a39683dcda6e29709339211240194463..995d64015a24276aa55fd0d4882b7dc8ecbf48cd 100644
--- a/src/core/transport/chttp2_transport.c
+++ b/src/core/transport/chttp2_transport.c
@@ -868,7 +868,7 @@ static int prepare_write(transport *t) {
 
     /* if there are still writes to do and the stream still has window
        available, then schedule a further write */
-    if (s->outgoing_sopb.nops && s->outgoing_window > 0) {
+    if (s->outgoing_sopb.nops > 0 && s->outgoing_window > 0) {
       GPR_ASSERT(!t->outgoing_window);
       stream_list_add_tail(t, s, WRITABLE);
     }