summaryrefslogtreecommitdiff
path: root/btrfs-map-logical.c
diff options
context:
space:
mode:
authorDimitri John Ledkov <xnox@ubuntu.com>2016-08-11 12:47:50 +0100
committerDimitri John Ledkov <xnox@ubuntu.com>2016-08-11 12:47:50 +0100
commit977f95bd164e17520fced5bd3ea1f01175a7f0ea (patch)
treecab3fd3533635deab3459b79f040621b006d33cc /btrfs-map-logical.c
parente056abdf97ee6899e41bd511eaa8d98aa2c45bb8 (diff)
parentffd998be34a1a3d208106d051e85058ff9ac9667 (diff)
New upstream release.
Diffstat (limited to 'btrfs-map-logical.c')
-rw-r--r--btrfs-map-logical.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/btrfs-map-logical.c b/btrfs-map-logical.c
index fd0286d5..f421a50f 100644
--- a/btrfs-map-logical.c
+++ b/btrfs-map-logical.c
@@ -329,6 +329,11 @@ int main(int argc, char **argv)
goto out_close_fd;
if (ret > 0)
break;
+ /* check again if there is overlap. */
+ if (cur_logical + cur_len < logical ||
+ cur_logical >= logical + bytes)
+ break;
+
real_logical = max(logical, cur_logical);
real_len = min(logical + bytes, cur_logical + cur_len) -
real_logical;