Fixed Windows/PocketPC __PHYSFS_platformEOF() for zero-length files.
(transplanted from e55bbdb69dfd9771a5222b6a406a9c418ffbe53b)
This commit is contained in:
parent
08a15ea0c6
commit
1921be0ddf
|
@ -591,14 +591,18 @@ PHYSFS_sint64 __PHYSFS_platformFileLength(void *opaque)
|
||||||
|
|
||||||
int __PHYSFS_platformEOF(void *opaque)
|
int __PHYSFS_platformEOF(void *opaque)
|
||||||
{
|
{
|
||||||
|
const PHYSFS_sint64 FileLength = __PHYSFS_platformFileLength(opaque);
|
||||||
PHYSFS_sint64 FilePosition;
|
PHYSFS_sint64 FilePosition;
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
|
|
||||||
|
if (FileLength == 0)
|
||||||
|
return 1; /* we're definitely at EOF. */
|
||||||
|
|
||||||
/* Get the current position in the file */
|
/* Get the current position in the file */
|
||||||
if ((FilePosition = __PHYSFS_platformTell(opaque)) != 0)
|
if ((FilePosition = __PHYSFS_platformTell(opaque)) != 0)
|
||||||
{
|
{
|
||||||
/* Non-zero if EOF is equal to the file length */
|
/* Non-zero if EOF is equal to the file length */
|
||||||
retval = FilePosition == __PHYSFS_platformFileLength(opaque);
|
retval = (FilePosition == FileLength);
|
||||||
} /* if */
|
} /* if */
|
||||||
|
|
||||||
return(retval);
|
return(retval);
|
||||||
|
|
|
@ -936,14 +936,18 @@ PHYSFS_sint64 __PHYSFS_platformFileLength(void *opaque)
|
||||||
|
|
||||||
int __PHYSFS_platformEOF(void *opaque)
|
int __PHYSFS_platformEOF(void *opaque)
|
||||||
{
|
{
|
||||||
|
const PHYSFS_sint64 FileLength = __PHYSFS_platformFileLength(opaque);
|
||||||
PHYSFS_sint64 FilePosition;
|
PHYSFS_sint64 FilePosition;
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
|
|
||||||
|
if (FileLength == 0)
|
||||||
|
return 1; /* we're definitely at EOF. */
|
||||||
|
|
||||||
/* Get the current position in the file */
|
/* Get the current position in the file */
|
||||||
if ((FilePosition = __PHYSFS_platformTell(opaque)) != 0)
|
if ((FilePosition = __PHYSFS_platformTell(opaque)) != 0)
|
||||||
{
|
{
|
||||||
/* Non-zero if EOF is equal to the file length */
|
/* Non-zero if EOF is equal to the file length */
|
||||||
retval = FilePosition == __PHYSFS_platformFileLength(opaque);
|
retval = (FilePosition == FileLength);
|
||||||
} /* if */
|
} /* if */
|
||||||
|
|
||||||
return(retval);
|
return(retval);
|
||||||
|
|
Loading…
Reference in New Issue