Signal WRITE_COMPLETE regardless of transmission progress (#7062)

diff --git a/proxy/http3/Http3Transaction.cc b/proxy/http3/Http3Transaction.cc
index fc9d066..6ffb895 100644
--- a/proxy/http3/Http3Transaction.cc
+++ b/proxy/http3/Http3Transaction.cc
@@ -379,21 +379,25 @@
     Http3TransVDebug("%s (%d)", get_vc_event_name(event), event);
     this->_process_read_vio();
     this->_data_handler->finalize();
+    // always signal regardless of progress
     this->_signal_read_event();
     this->_stream_io->read_reenable();
     break;
   case VC_EVENT_WRITE_READY:
-  case VC_EVENT_WRITE_COMPLETE: {
     Http3TransVDebug("%s (%d)", get_vc_event_name(event), event);
-    int64_t len = this->_process_write_vio();
     // if no progress, don't need to signal
-    if (len > 0) {
+    if (this->_process_write_vio() > 0) {
       this->_signal_write_event();
     }
     this->_stream_io->write_reenable();
-
     break;
-  }
+  case VC_EVENT_WRITE_COMPLETE:
+    Http3TransVDebug("%s (%d)", get_vc_event_name(event), event);
+    this->_process_write_vio();
+    // always signal regardless of progress
+    this->_signal_write_event();
+    this->_stream_io->write_reenable();
+    break;
   case VC_EVENT_EOS:
   case VC_EVENT_ERROR:
   case VC_EVENT_INACTIVITY_TIMEOUT: