From: liuchang0812 Date: Tue, 20 Dec 2016 05:21:40 +0000 (+0800) Subject: os/filestore: fix clang static check warn use-after-free X-Git-Tag: v12.0.0~371^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F12581%2Fhead;p=ceph.git os/filestore: fix clang static check warn use-after-free Signed-off-by: liuchang0812 --- diff --git a/src/os/filestore/FileStore.cc b/src/os/filestore/FileStore.cc index df0c63b89f98..cc3bab89fab9 100644 --- a/src/os/filestore/FileStore.cc +++ b/src/os/filestore/FileStore.cc @@ -3212,13 +3212,16 @@ more: last = extent++; } const bool is_last = last->fe_flags & FIEMAP_EXTENT_LAST; - free(fiemap); if (!is_last) { uint64_t xoffset = last->fe_logical + last->fe_length - offset; offset = last->fe_logical + last->fe_length; len -= xoffset; + free(fiemap); /* fix clang warn: use-after-free */ goto more; } + else { + free(fiemap); + } return r; }