2008-07-07 13:50 UTC+0200 Viktor Szakats (harbour.01 syenar hu)

* source/rtl/hbffind.c
     ! Added workaround for PellesC 5.00.1 hang bug.

   * config/w32/pocc.cf
     % Removed unnecessary '-I' switches.
     ! Removed ws2.lib from liblist to make it link with PellesC 5.00.1 
       (where this lib is not available anymore).
This commit is contained in:
Viktor Szakats
2008-07-07 12:15:57 +00:00
parent 12a91c6e12
commit 47c0fe7abc
2 changed files with 9 additions and 2 deletions

View File

@@ -14,7 +14,7 @@ LIB_EXT = .lib
CC = pocc.exe
CC_IN = -c
CC_OUT = -Fo
CPPFLAGS = -I. -I$(TOP) -I$(TOP)$(ROOT)
CPPFLAGS = -I.
CPPFLAGS += -Ze -Zx -Go
@@ -59,7 +59,7 @@ endif
LDFLAGS = $(LINKPATHS) kernel32.lib user32.lib \
winspool.lib ole32.lib oleaut32.lib uuid.lib \
comctl32.lib mapi32.lib advapi32.lib \
gdi32.lib mpr.lib wsock32.lib ws2.lib ws2_32.lib \
gdi32.lib mpr.lib wsock32.lib ws2_32.lib \
comdlg32.lib
# ws2 ws2_32

View File

@@ -596,8 +596,15 @@ static BOOL hb_fsFindNextLow( PHB_FFIND ffind )
if( info->pFindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
ffind->size = 0;
else
#if defined(__XCC__) || __POCC__ >= 500
/* NOTE: PellesC 5.00.1 will go into an infinite loop if we don't
split this into two operations. [vszakats] */
ffind->size = ( HB_FOFFSET ) info->pFindFileData.nFileSizeLow;
ffind->size += ( HB_FOFFSET ) info->pFindFileData.nFileSizeHigh << 32;
#else
ffind->size = ( HB_FOFFSET ) info->pFindFileData.nFileSizeLow +
( ( HB_FOFFSET ) info->pFindFileData.nFileSizeHigh << 32 );
#endif
raw_attr = ( USHORT ) info->pFindFileData.dwFileAttributes;