Re: Memory leaks in BufFileOpenShared()
| От | Tatsuo Ishii |
|---|---|
| Тема | Re: Memory leaks in BufFileOpenShared() |
| Дата | |
| Msg-id | 20180615.162003.2258832502225295119.t-ishii@sraoss.co.jp обсуждение исходный текст |
| Ответ на | Memory leaks in BufFileOpenShared() (Antonin Houska <ah@cybertec.at>) |
| Ответы |
Re: Memory leaks in BufFileOpenShared()
|
| Список | pgsql-hackers |
> Memory is allocated twice for "file" and "files" variables. Possible fix:
>
> diff --git a/src/backend/storage/file/buffile.c b/src/backend/storage/file/buffile.c
> index d8a18dd3dc..00f61748b3 100644
> --- a/src/backend/storage/file/buffile.c
> +++ b/src/backend/storage/file/buffile.c
> @@ -277,10 +277,10 @@ BufFileCreateShared(SharedFileSet *fileset, const char *name)
> BufFile *
> BufFileOpenShared(SharedFileSet *fileset, const char *name)
> {
> - BufFile *file = (BufFile *) palloc(sizeof(BufFile));
> + BufFile *file;
> char segment_name[MAXPGPATH];
> Size capacity = 16;
> - File *files = palloc(sizeof(File) * capacity);
> + File *files;
> int nfiles = 0;
>
> file = (BufFile *) palloc(sizeof(BufFile));
Good catch. Thanks.
Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp
В списке pgsql-hackers по дате отправления: