From 205a7d3e63f796702c9be0859fe7fbb0b56f6673 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Fri, 18 Feb 2011 12:44:30 -0500 Subject: [PATCH] Backported zip/qpak dir fix from dev branch to stable-1.0. --- archivers/qpak.c | 5 ++++- archivers/zip.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/archivers/qpak.c b/archivers/qpak.c index 5cb21906..a03db6a9 100644 --- a/archivers/qpak.c +++ b/archivers/qpak.c @@ -554,8 +554,11 @@ static QPAKentry *qpak_find_entry(QPAKinfo *info, const char *path, int *isDir) if (thispath[pathlen] == '\0') /* found entry? */ return(&a[middle]); + /* adjust search params, try again. */ + else if (thispath[pathlen] > '/') + hi = middle - 1; else - hi = middle - 1; /* adjust search params, try again. */ + lo = middle + 1; } /* if */ } /* while */ diff --git a/archivers/zip.c b/archivers/zip.c index 2aeaf158..c82eb58b 100644 --- a/archivers/zip.c +++ b/archivers/zip.c @@ -586,8 +586,11 @@ static ZIPentry *zip_find_entry(ZIPinfo *info, const char *path, int *isDir) if (thispath[pathlen] == '\0') /* found entry? */ return(&a[middle]); + /* adjust search params, try again. */ + else if (thispath[pathlen] > '/') + hi = middle - 1; else - hi = middle - 1; /* adjust search params, try again. */ + lo = middle + 1; } /* if */ } /* while */