From a375bf5668a5e86e082d0e124b538e423023a259 Mon Sep 17 00:00:00 2001 From: Leon Chan Date: Sat, 18 Sep 2021 15:00:35 +0800 Subject: [PATCH] fix: close file when process interpretor failed close: #I4ATQX Signed-off-by: Leon Chan --- kernel/extended/dynload/src/los_load_elf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/extended/dynload/src/los_load_elf.c b/kernel/extended/dynload/src/los_load_elf.c index 574b7f08..03d83865 100644 --- a/kernel/extended/dynload/src/los_load_elf.c +++ b/kernel/extended/dynload/src/los_load_elf.c @@ -544,8 +544,6 @@ STATIC INT32 OsLoadInterpBinary(ELFLoadInfo *loadInfo, UINTPTR *interpMapBase) PRINT_ERR("%s[%d]\n", __FUNCTION__, __LINE__); } - OsELFClose(loadInfo->interpInfo.procfd); - loadInfo->interpInfo.procfd = INVALID_FD; return ret; } @@ -939,6 +937,8 @@ STATIC INT32 OsLoadELFSegment(ELFLoadInfo *loadInfo) if (loadInfo->interpInfo.procfd != INVALID_FD) { ret = OsLoadInterpBinary(loadInfo, &interpMapBase); + OsELFClose(loadInfo->interpInfo.procfd); + loadInfo->interpInfo.procfd = INVALID_FD; if (ret != LOS_OK) { return ret; } -- GitLab