From a5ed5bd942e9a1d554fd39fc3fb0b4fe162825d5 Mon Sep 17 00:00:00 2001
From: ondrej <ondrej@idefix.freepascal.org>
Date: Mon, 17 Feb 2020 08:35:15 +0000
Subject: [PATCH] TFileStream: use SysErrorMessage in exception message if
 available

git-svn-id: trunk@44200 -
---
 rtl/objpas/classes/streams.inc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/rtl/objpas/classes/streams.inc b/rtl/objpas/classes/streams.inc
index bfb482912e..ca4835586f 100644
--- a/rtl/objpas/classes/streams.inc
+++ b/rtl/objpas/classes/streams.inc
@@ -1276,9 +1276,21 @@ begin
 
   If (THandle(FHandle)=feInvalidHandle) then
     If Mode=fmcreate then
+    begin
+      {$if declared(GetLastOSError)}
+      raise EFCreateError.createfmt(SFCreateErrorEx,[AFileName, SysErrorMessage(GetLastOSError)])
+      {$else}
       raise EFCreateError.createfmt(SFCreateError,[AFileName])
+      {$endif}
+    end
     else
+    begin
+      {$if declared(GetLastOSError)}
+      raise EFOpenError.Createfmt(SFOpenErrorEx,[AFilename, SysErrorMessage(GetLastOSError)]);
+      {$else}
       raise EFOpenError.Createfmt(SFOpenError,[AFilename]);
+      {$endif}
+    end;
 end;