File tree Expand file tree Collapse file tree
packages/server/src/server Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ ---
2+ ' @modelcontextprotocol/server ' : patch
3+ ---
4+
5+ Prevent stack overflow in StreamableHTTPServerTransport.close() with re-entrant guard
Original file line number Diff line number Diff line change @@ -225,6 +225,7 @@ export class WebStandardStreamableHTTPServerTransport implements Transport {
225225 // when sessionId is not set (undefined), it means the transport is in stateless mode
226226 private sessionIdGenerator : ( ( ) => string ) | undefined ;
227227 private _started : boolean = false ;
228+ private _closed : boolean = false ;
228229 private _streamMapping : Map < string , StreamMapping > = new Map ( ) ;
229230 private _requestToStreamMapping : Map < RequestId , string > = new Map ( ) ;
230231 private _requestResponseMap : Map < RequestId , JSONRPCMessage > = new Map ( ) ;
@@ -899,8 +900,6 @@ export class WebStandardStreamableHTTPServerTransport implements Transport {
899900 return undefined ;
900901 }
901902
902- private _closed = false ;
903-
904903 async close ( ) : Promise < void > {
905904 if ( this . _closed ) {
906905 return ;
You can’t perform that action at this time.
0 commit comments