mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-19 05:29:18 +02:00
Call Errno2noutres if system call to close the handle fails in do_close for win and unix
git-svn-id: trunk@29095 -
This commit is contained in:
parent
260c6583cf
commit
90537e94a0
@ -2197,13 +2197,15 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
|
|||||||
SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
|
SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
|
||||||
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
|
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
|
||||||
$(COMPILER) -Us -Sg $(SYSTEMUNIT).pp $(REDIR)
|
$(COMPILER) -Us -Sg $(SYSTEMUNIT).pp $(REDIR)
|
||||||
uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp
|
uuchar$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp
|
||||||
objpas$(PPUEXT): objpas.pp
|
$(COMPILER) $(INC)/uuchar.pp $(REDIR)
|
||||||
|
objpas$(PPUEXT) : objpas.pp
|
||||||
$(COMPILER) objpas.pp $(REDIR)
|
$(COMPILER) objpas.pp $(REDIR)
|
||||||
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \
|
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \
|
||||||
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc \
|
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc \
|
||||||
$(SYSTEMUNIT)$(PPUEXT)
|
$(SYSTEMUNIT)$(PPUEXT)
|
||||||
jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas
|
$(COMPILER) $(INC)/strings.pp $(REDIR)
|
||||||
|
jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas
|
||||||
dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
|
dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
|
||||||
$(SYSTEMUNIT)$(PPUEXT)
|
$(SYSTEMUNIT)$(PPUEXT)
|
||||||
objects$(PPUEXT) : $(INC)/objects.pp dos$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
|
objects$(PPUEXT) : $(INC)/objects.pp dos$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
|
||||||
|
@ -84,16 +84,18 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
|
|||||||
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
|
$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
|
||||||
$(COMPILER) -Us -Sg $(SYSTEMUNIT).pp $(REDIR)
|
$(COMPILER) -Us -Sg $(SYSTEMUNIT).pp $(REDIR)
|
||||||
|
|
||||||
uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp
|
uuchar$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp
|
||||||
|
$(COMPILER) $(INC)/uuchar.pp $(REDIR)
|
||||||
|
|
||||||
objpas$(PPUEXT): objpas.pp
|
objpas$(PPUEXT) : objpas.pp
|
||||||
$(COMPILER) objpas.pp $(REDIR)
|
$(COMPILER) objpas.pp $(REDIR)
|
||||||
|
|
||||||
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \
|
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \
|
||||||
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc \
|
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc \
|
||||||
$(SYSTEMUNIT)$(PPUEXT)
|
$(SYSTEMUNIT)$(PPUEXT)
|
||||||
|
$(COMPILER) $(INC)/strings.pp $(REDIR)
|
||||||
|
|
||||||
jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas
|
jdk15$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) jdk15.inc jdk15.pas
|
||||||
|
|
||||||
#
|
#
|
||||||
# System Dependent Units
|
# System Dependent Units
|
||||||
|
@ -20,6 +20,8 @@ Begin
|
|||||||
repeat
|
repeat
|
||||||
res:=Fpclose(cint(Handle));
|
res:=Fpclose(cint(Handle));
|
||||||
until (res<>-1) or (geterrno<>ESysEINTR);
|
until (res<>-1) or (geterrno<>ESysEINTR);
|
||||||
|
if res<>0 then
|
||||||
|
Errno2Inoutres;
|
||||||
End;
|
End;
|
||||||
|
|
||||||
Procedure Do_Erase(p: pchar; pchangeable: boolean);
|
Procedure Do_Erase(p: pchar; pchangeable: boolean);
|
||||||
|
@ -28,7 +28,8 @@ procedure do_close(h : thandle);
|
|||||||
begin
|
begin
|
||||||
if do_isdevice(h) then
|
if do_isdevice(h) then
|
||||||
exit;
|
exit;
|
||||||
CloseHandle(h);
|
if CloseHandle(h)=0 then
|
||||||
|
Errno2InOutRes(GetLastError);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user