After we determine that we can't parse the array value as an integer, we need to restore the square brackets to the field name, so that we can find a match with block[IND], block[DIND], and block[TIND] in the inode field table. Reported-by: Jun He <jhe@xxxxxxxxxxx> Signed-off-by: Theodore Ts'o <tytso@xxxxxxx> --- debugfs/set_fields.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/debugfs/set_fields.c b/debugfs/set_fields.c index 40dc5e7..6104b2b 100644 --- a/debugfs/set_fields.c +++ b/debugfs/set_fields.c @@ -321,8 +321,11 @@ static struct field_set_info *find_field(struct field_set_info *fields, */ if (idx) { array_idx = strtol(idx, &tmp, 0); - if (*tmp) + if (*tmp) { + *(--idx) = '['; + *delim = ']'; idx = 0; + } } /* -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html