summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-reader/chm_lib.c
Side-by-side diff
Diffstat (limited to 'noncore/apps/opie-reader/chm_lib.c') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-reader/chm_lib.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/noncore/apps/opie-reader/chm_lib.c b/noncore/apps/opie-reader/chm_lib.c
index ecf8278..7acd1d2 100644
--- a/noncore/apps/opie-reader/chm_lib.c
+++ b/noncore/apps/opie-reader/chm_lib.c
@@ -1600,7 +1600,7 @@ int chm_enumerate_dir(struct chmFile *h,
/* the length of the prefix */
char prefixRectified[CHM_MAX_PATHLEN+1];
int prefixLen;
- char lastPath[CHM_MAX_PATHLEN];
+ char lastPath[CHM_MAX_PATHLEN+1];
int lastPathLen;
/* starting page */
@@ -1670,7 +1670,8 @@ int chm_enumerate_dir(struct chmFile *h,
if (strncmp(ui.path, lastPath, lastPathLen) == 0)
continue;
}
- strcpy(lastPath, ui.path);
+ strncpy(lastPath, ui.path, CHM_MAX_PATHLEN);
+ lastPath[CHM_MAX_PATHLEN] = '\0';
lastPathLen = strlen(lastPath);
/* check for DIRS */