diff mbox series

selftests/efivarfs: create-read: fix a resource leak

Message ID 20231017023335.7874-1-zhujun2@cmss.chinamobile.com (mailing list archive)
State Superseded
Headers show
Series selftests/efivarfs: create-read: fix a resource leak | expand

Commit Message

Zhu Jun Oct. 17, 2023, 2:33 a.m. UTC
The opened file should be closed in main(), otherwise resource
leak will occur

Signed-off-by: zhujun2 <zhujun2@cmss.chinamobile.com>
---
 tools/testing/selftests/efivarfs/create-read.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Shuah Khan Oct. 17, 2023, 3:46 p.m. UTC | #1
On 10/16/23 20:33, zhujun2 wrote:
> The opened file should be closed in main(), otherwise resource
> leak will occur
> 

Did you find this by code reading or by any other means. Please
add how you found the problem to the change log.

> Signed-off-by: zhujun2 <zhujun2@cmss.chinamobile.com>
> ---
>   tools/testing/selftests/efivarfs/create-read.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/tools/testing/selftests/efivarfs/create-read.c b/tools/testing/selftests/efivarfs/create-read.c
> index 9674a1939..6812104a5 100644
> --- a/tools/testing/selftests/efivarfs/create-read.c
> +++ b/tools/testing/selftests/efivarfs/create-read.c
> @@ -32,8 +32,11 @@ int main(int argc, char **argv)
>   	rc = read(fd, buf, sizeof(buf));
>   	if (rc != 0) {
>   		fprintf(stderr, "Reading a new var should return EOF\n");
> +		close(fd);
>   		return EXIT_FAILURE;
>   	}
>   
> +	close(fd);
> +

No need for this extra line here.

>   	return EXIT_SUCCESS;
>   }

thanks,
-- Shuah
diff mbox series

Patch

diff --git a/tools/testing/selftests/efivarfs/create-read.c b/tools/testing/selftests/efivarfs/create-read.c
index 9674a1939..6812104a5 100644
--- a/tools/testing/selftests/efivarfs/create-read.c
+++ b/tools/testing/selftests/efivarfs/create-read.c
@@ -32,8 +32,11 @@  int main(int argc, char **argv)
 	rc = read(fd, buf, sizeof(buf));
 	if (rc != 0) {
 		fprintf(stderr, "Reading a new var should return EOF\n");
+		close(fd);
 		return EXIT_FAILURE;
 	}
 
+	close(fd);
+
 	return EXIT_SUCCESS;
 }