summaryrefslogtreecommitdiff
path: root/ext/session/mod_files.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/session/mod_files.c')
-rw-r--r--ext/session/mod_files.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/session/mod_files.c b/ext/session/mod_files.c
index af6c1dbf1d..011ec1f770 100644
--- a/ext/session/mod_files.c
+++ b/ext/session/mod_files.c
@@ -239,7 +239,12 @@ PS_OPEN_FUNC(files)
data->fd = -1;
if ((p = strchr(save_path, ';'))) {
+ errno = 0;
data->dirdepth = (size_t) strtol(save_path, NULL, 10);
+ if (errno == ERANGE) {
+ efree(data);
+ return FAILURE;
+ }
save_path = p + 1;
}
data->basedir_len = strlen(save_path);