extmod/vfs_lfsx: Fix offset used before range check.
Use of offset 'from' should follow the range check. Signed-off-by: Mingjie Shen <shen497@purdue.edu>
This commit is contained in:
parent
978829fcd6
commit
a9fc0343f0
|
@ -323,7 +323,7 @@ STATIC mp_obj_t MP_VFS_LFSx(chdir)(mp_obj_t self_in, mp_obj_t path_in) {
|
||||||
size_t from = 1;
|
size_t from = 1;
|
||||||
char *cwd = vstr_str(&self->cur_dir);
|
char *cwd = vstr_str(&self->cur_dir);
|
||||||
while (from < CWD_LEN) {
|
while (from < CWD_LEN) {
|
||||||
for (; cwd[from] == '/' && from < CWD_LEN; ++from) {
|
for (; from < CWD_LEN && cwd[from] == '/'; ++from) {
|
||||||
// Scan for the start
|
// Scan for the start
|
||||||
}
|
}
|
||||||
if (from > to) {
|
if (from > to) {
|
||||||
|
@ -331,7 +331,7 @@ STATIC mp_obj_t MP_VFS_LFSx(chdir)(mp_obj_t self_in, mp_obj_t path_in) {
|
||||||
vstr_cut_out_bytes(&self->cur_dir, to, from - to);
|
vstr_cut_out_bytes(&self->cur_dir, to, from - to);
|
||||||
from = to;
|
from = to;
|
||||||
}
|
}
|
||||||
for (; cwd[from] != '/' && from < CWD_LEN; ++from) {
|
for (; from < CWD_LEN && cwd[from] != '/'; ++from) {
|
||||||
// Scan for the next /
|
// Scan for the next /
|
||||||
}
|
}
|
||||||
if ((from - to) == 1 && cwd[to] == '.') {
|
if ((from - to) == 1 && cwd[to] == '.') {
|
||||||
|
|
Loading…
Reference in New Issue