James M Snell
17e7b68996
stream: do not miss 'drain' in fromWritable()
...
When a write filled the classic Writable, fromWritable() recorded that
it needed to drain, but only listened for 'drain' once a later write
was queued or something waited for drain. If the Writable emitted
'drain' before that, for example because its write callback ran on a
microtask or with process.nextTick(), the event was missed and the flag
was never cleared: the next write() or writev() never settled, canWrite
stayed false and ondrain() never resolved.
Listen for 'drain' as soon as a write returns false, and keep listening
until it is emitted.
Assisted-by: OpenCode
Signed-off-by: James M Snell <jasnell@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/66648
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: Gürgün Dayıoğlu <hey@gurgun.day >
2026-10-15 13:26:50 +00:00
..
2026-10-12 06:41:16 +00:00
2026-10-15 00:52:34 +00:00
2026-10-07 15:38:44 -03:00
2026-10-08 09:58:29 +00:00
2026-10-07 15:39:57 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:39:57 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:39:57 -03:00
2026-10-07 15:39:57 -03:00
2026-10-07 15:39:57 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-07 15:38:44 -03:00
2026-10-14 21:09:57 +00:00
2026-10-07 13:36:48 +00:00
2026-10-15 09:46:38 +00:00
2026-10-15 07:52:41 +00:00
2026-10-11 07:07:49 +00:00
2026-10-10 11:21:51 +00:00
2026-10-10 11:21:51 +00:00
2026-10-10 11:21:51 +00:00
2026-10-10 11:21:51 +00:00
2026-10-10 17:56:05 +00:00
2026-10-10 17:56:05 +00:00
2026-10-10 17:56:04 +00:00
2026-10-13 18:55:52 +00:00
2026-10-10 08:29:37 +00:00
2026-10-10 13:02:45 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-12 09:13:52 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 00:52:34 +00:00
2026-10-10 08:29:51 +00:00
2026-10-08 20:58:31 +00:00
2026-10-15 07:53:03 +00:00
2026-10-13 13:33:55 +00:00
2026-10-13 07:48:55 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-10 17:56:22 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-11 16:10:53 +00:00
2026-10-15 07:53:03 +00:00
2026-10-08 03:54:07 +00:00
2026-10-10 14:36:38 +00:00
2026-10-09 15:53:53 +00:00
2026-10-14 18:50:29 +00:00
2026-10-15 13:26:46 +00:00
2026-10-15 13:26:46 +00:00
2026-10-07 20:01:29 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-10 17:56:14 +00:00
2026-10-10 17:56:23 +00:00
2026-10-15 13:26:50 +00:00
2026-10-15 13:26:46 +00:00
2026-10-07 20:01:29 +00:00
2026-10-15 13:26:45 +00:00
2026-10-15 13:26:49 +00:00
2026-10-10 17:56:19 +00:00
2026-10-07 20:01:31 +00:00
2026-10-15 13:26:46 +00:00
2026-10-10 17:56:18 +00:00
2026-10-10 17:56:09 +00:00
2026-10-15 13:26:46 +00:00
2026-10-10 17:56:10 +00:00
2026-10-07 20:01:31 +00:00
2026-10-07 20:01:31 +00:00
2026-10-10 17:56:19 +00:00
2026-10-10 17:56:21 +00:00
2026-10-13 15:25:12 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 07:53:03 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-15 00:52:34 +00:00
2026-10-13 10:10:59 +02:00
2026-10-14 08:51:58 +00:00
2026-10-15 07:53:03 +00:00