Skip to content
Permalink
Browse files
If rejecting an archive for not matching a mount point, set an error …
…state,

 otherwise, PHYSFS_openRead could fail with a null error message.
  • Loading branch information
icculus committed Mar 13, 2005
1 parent 67776da commit 38a1c7f5593431ed03bc3b2fc1c85f188150607c
Showing with 5 additions and 5 deletions.
  1. +5 −5 physfs.c
@@ -1241,12 +1241,12 @@ int __PHYSFS_verifySecurity(DirHandle *h, char *fname, int allowMissing)
size_t mntpntlen = strlen(h->mountPoint);
assert(mntpntlen > 1); /* root mount points should be NULL. */
size_t len = strlen(fname);
if (len < mntpntlen)
return(0); /* not under the mountpoint, so skip this archive. */
if (strncmp(h->mountPoint, fname, mntpntlen) != 0)
return(0); /* not under the mountpoint, so skip this archive. */

/* not under the mountpoint, so skip this archive. */
BAIL_IF_MACRO(len < mntpntlen, ERR_NO_SUCH_PATH, 0);
retval = strncmp(h->mountPoint, fname, mntpntlen);
BAIL_IF_MACRO(retval != 0, ERR_NO_SUCH_PATH, 0);
fname += mntpntlen; /* move to start of actual archive path. */
retval = 1;
} /* if */

/* !!! FIXME: Can we ditch this malloc()? */

0 comments on commit 38a1c7f

Please sign in to comment.