diff --git a/src/tsdb/src/tsdbMain.c b/src/tsdb/src/tsdbMain.c index 733bca6af51be9d367219b13b01819811619a90a..e2d7d03edad24eb1d07d928e1ed5802b50327b79 100644 --- a/src/tsdb/src/tsdbMain.c +++ b/src/tsdb/src/tsdbMain.c @@ -249,7 +249,11 @@ uint32_t tsdbGetFileInfo(TSDB_REPO_T *repo, char *name, uint32_t *index, uint32_ } else { // get the named file at the specified index. If not there, return 0 fname = malloc(prefixLen + strlen(name) + 2); sprintf(fname, "%s/%s", prefix, name); - if (access(fname, F_OK) != 0) return 0; + if (access(fname, F_OK) != 0) { + taosFree(fname); + taosFree(sdup) + return 0; + } if (*index == TSDB_META_FILE_INDEX) { // get meta file tsdbGetStoreInfo(fname, &magic, size); } else {