diff options
Diffstat (limited to 'fs/btrfs/inode.c')
| -rw-r--r-- | fs/btrfs/inode.c | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 007cf32c160..da2a5e90a1b 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -217,8 +217,12 @@ static u64 __get_parent_inode(struct __btrfs_root *root, u64 inr,  static inline int next_length(const char *path)  {  	int res = 0; -	while (*path != '\0' && *path != '/' && res <= BTRFS_NAME_LEN) -		++res, ++path; +	while (*path != '\0' && *path != '/') { +		++res; +		++path; +		if (res > BTRFS_NAME_LEN) +			break; +	}  	return res;  } | 
