diff --git a/packages/fcl-web/src/base/fphttp.pp b/packages/fcl-web/src/base/fphttp.pp index e160477fb6..f2cf5929b7 100644 --- a/packages/fcl-web/src/base/fphttp.pp +++ b/packages/fcl-web/src/base/fphttp.pp @@ -630,7 +630,9 @@ end; procedure TSessionHTTPModule.DoneSession; begin // Session manager may or may not destroy the session. - SessionFactory.DoneSession(FSession); + // Check if we actually have + if Assigned(FSession) then + SessionFactory.DoneSession(FSession); // In each case, our reference is no longer valid. FSession:=Nil; end; @@ -638,8 +640,7 @@ end; destructor TSessionHTTPModule.destroy; begin // Prevent memory leaks. - If Assigned(FSession) then - DoneSession; + DoneSession; inherited destroy; end;