aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/ftp.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/ftp.c b/lib/ftp.c
index aa96871cb..43ea99801 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -2126,8 +2126,9 @@ CURLcode Curl_ftp(struct connectdata *conn)
}
else {
cur_pos = slash_pos + 1; /* jump to the rest of the string */
- if(++path_part >= CURL_MAX_FTP_DIRDEPTH) {
- /* too deep */
+ if(++path_part >= (CURL_MAX_FTP_DIRDEPTH-1)) {
+ /* too deep, we need the last entry to be kept NULL at all
+ times to signal end of list */
failf(data, "too deep dir hierarchy");
retcode = CURLE_URL_MALFORMAT;
}