File tree Expand file tree Collapse file tree 2 files changed +8
-5
lines changed
Expand file tree Collapse file tree 2 files changed +8
-5
lines changed Original file line number Diff line number Diff line change @@ -692,9 +692,9 @@ QuicConnIndicateEvent(
692692 // MsQuic shouldn't indicate reentrancy to the app when at all possible.
693693 // The general exception to this rule is when the connection is being
694694 // closed because the API MUST block until all work is completed, so we
695- // have to execute the event callbacks inline. Custom executions also
696- // allow reentrancy because set/get param must be executed inline to not
697- // block the thread, and the app is expected to handle reentrancy .
695+ // have to execute the event callbacks inline. Custom executions always
696+ // have InlineApiExecution set, which makes this reentrancy check
697+ // unreliable, so it is skipped for custom executions .
698698 //
699699 CXPLAT_DBG_ASSERT (
700700 !Connection -> State .InlineApiExecution ||
Original file line number Diff line number Diff line change @@ -470,13 +470,16 @@ QuicStreamIndicateEvent(
470470 // or stream is being closed because the API MUST block until all work
471471 // is completed, so we have to execute the event callbacks inline. There
472472 // is also one additional exception for start complete when StreamStart
473- // is called synchronously on an MsQuic thread.
473+ // is called synchronously on an MsQuic thread. Custom executions
474+ // always have InlineApiExecution set, which makes this reentrancy
475+ // check unreliable, so it is skipped for custom executions.
474476 //
475477 CXPLAT_DBG_ASSERT (
476478 !Stream -> Connection -> State .InlineApiExecution ||
477479 Stream -> Connection -> State .HandleClosed ||
478480 Stream -> Flags .HandleClosed ||
479- Event -> Type == QUIC_STREAM_EVENT_START_COMPLETE );
481+ Event -> Type == QUIC_STREAM_EVENT_START_COMPLETE ||
482+ MsQuicLib .CustomExecutions );
480483 Status =
481484 Stream -> ClientCallbackHandler (
482485 (HQUIC )Stream ,
You can’t perform that action at this time.
0 commit comments