diff --git a/src/sbbs3/js_filebase.c b/src/sbbs3/js_filebase.c index 05d0bcb0f71cf72b8306f57ff34da06682f255a7..44112f6c1e7d1dc412690800318bfb3fed513a0c 100644 --- a/src/sbbs3/js_filebase.c +++ b/src/sbbs3/js_filebase.c @@ -1207,7 +1207,7 @@ js_add_file(JSContext *cx, uintN argc, jsval *arglist) rc=JS_SUSPENDREQUEST(cx); if(file.name != NULL) { if((extdesc == NULL || use_diz_always == true) - && file.dir < scfg->total_dirs + && is_valid_dirnum(scfg, file.dir) && (scfg->dir[file.dir]->misc & DIR_DIZ)) { get_diz(scfg, &file, &extdesc); } @@ -1282,7 +1282,7 @@ js_update_file(JSContext *cx, uintN argc, jsval *arglist) && (p->smb_result = smb_loadfile(&p->smb, filename, &file, file_detail_extdesc)) == SMB_SUCCESS) { p->smb_result = parse_file_properties(cx, fileobj, &file, &extdesc, &metadata); if((extdesc == NULL || use_diz_always == true) - && file.dir < scfg->total_dirs + && is_valid_dirnum(scfg, file.dir) && (scfg->dir[file.dir]->misc & DIR_DIZ)) { get_diz(scfg, &file, &extdesc); } @@ -1820,7 +1820,7 @@ js_filebase_constructor(JSContext *cx, uintN argc, jsval *arglist) #endif p->smb.dirnum = getdirnum(scfg, base); - if(p->smb.dirnum < scfg->total_dirs) { + if(is_valid_dirnum(scfg, p->smb.dirnum)) { safe_snprintf(p->smb.file, sizeof(p->smb.file), "%s%s" ,scfg->dir[p->smb.dirnum]->data_dir, scfg->dir[p->smb.dirnum]->code); } else { /* unknown code */