Use PhysFS_getErrorByCode instead of PhysFS_getLastError, when available.

--HG--
branch : minor
This commit is contained in:
Alex Szpakowski
2017-09-03 19:47:46 -03:00
parent 737433d157
commit e4e4c6673e
2 changed files with 16 additions and 1 deletions
+8
View File
@@ -72,7 +72,11 @@ bool File::open(Mode mode)
if (file != nullptr)
return false;
#ifdef LOVE_USE_PHYSFS_2_1
PHYSFS_getLastErrorCode();
#else
PHYSFS_getLastError(); // Clear the error buffer.
#endif
PHYSFS_File *handle = nullptr;
switch (mode)
@@ -92,7 +96,11 @@ bool File::open(Mode mode)
if (handle == nullptr)
{
#ifdef LOVE_USE_PHYSFS_2_1
const char *err = PHYSFS_getErrorByCode(PHYSFS_getLastErrorCode());
#else
const char *err = PHYSFS_getLastError();
#endif
if (err == nullptr)
err = "unknown error";
throw love::Exception("Could not open file %s (%s)", filename.c_str(), err);
+8 -1
View File
@@ -124,7 +124,14 @@ const char *Filesystem::getName() const
void Filesystem::init(const char *arg0)
{
if (!PHYSFS_init(arg0))
throw love::Exception("%s", PHYSFS_getLastError());
{
#ifdef LOVE_USE_PHYSFS_2_1
const char *err = PHYSFS_getErrorByCode(PHYSFS_getLastErrorCode());
#else
const char *err = PHYSFS_getLastError();
#endif
throw love::Exception("%s", err);
}
// Enable symlinks by default. Also fixes an issue in PhysFS 2.1-alpha.
setSymlinksEnabled(true);