From 43ae149495c7799164bdaada163ba1e833cfbce7 Mon Sep 17 00:00:00 2001 From: Ettore Di Giacinto Date: Mon, 10 Nov 2025 15:41:43 +0100 Subject: [PATCH] Minor enhancement Signed-off-by: Ettore Di Giacinto --- core/http/middleware/request.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/core/http/middleware/request.go b/core/http/middleware/request.go index 4ec961371..06647ea57 100644 --- a/core/http/middleware/request.go +++ b/core/http/middleware/request.go @@ -15,6 +15,7 @@ import ( "github.com/mudler/LocalAI/pkg/functions" "github.com/mudler/LocalAI/pkg/model" "github.com/mudler/LocalAI/pkg/utils" + "github.com/valyala/fasthttp" "github.com/gofiber/fiber/v2" "github.com/rs/zerolog/log" @@ -167,11 +168,12 @@ func (re *RequestExtractor) SetOpenAIRequest(ctx *fiber.Ctx) error { c1, cancel := context.WithCancel(re.applicationConfig.Context) // Monitor the Fiber context and cancel our context when it's canceled // This ensures we respect request cancellation without causing panics - go func() { - <-ctx.Context().Done() - // Fiber context was canceled (request completed or client disconnected) - cancel() - }() + go func(fiberCtx *fasthttp.RequestCtx) { + if fiberCtx != nil { + <-fiberCtx.Done() + cancel() + } + }(ctx.Context()) // Add the correlation ID to the new context ctxWithCorrelationID := context.WithValue(c1, CorrelationIDKey, correlationID)