threads / discuss / 14

Plug memory leak in update-cache.c

Subject: Plug memory leak in update-cache.c

## tl;dr

4 messages between Apr 14, 2005 and Apr 16, 2005.

replies: 3people: 2as markdown or json

Martin Schlemmer· Apr 14, 2005, 08:53 UTC · lore
Hi,

Might not be that an big an issue as it should be freed on exit, but might cause problems with big trees.

----
Plug memory leak in update-cache.c.
Signed-off-by: Martin Schlemmer <azarah@nosferatu.za.org>

update-cache.c: 22f3ccd47db4f0888901109a8cbf883d272d1cba --- 22f3ccd47db4f0888901109a8cbf883d272d1cba/update-cache.c +++ uncommitted/update-cache.c

@@ -202,6 +202,7 @@
                        printf("%s: needs update\n", ce->name);
                        continue;
                }
+               free(active_cache[i]);
                active_cache[i] = new;
        }
 }
-- 
Martin Schlemmer



update-cache.c:  22f3ccd47db4f0888901109a8cbf883d272d1cba
--- 22f3ccd47db4f0888901109a8cbf883d272d1cba/update-cache.c
+++ uncommitted/update-cache.c
@@ -202,6 +202,7 @@
 			printf("%s: needs update\n", ce->name);
 			continue;
 		}
+		free(active_cache[i]);
 		active_cache[i] = new;
 	}
 }
Petr Baudis· Apr 15, 2005, 23:48 UTC · re: Martin Schlemmer · lore

Re: Plug memory leak in update-cache.c

Dear diary, on Thu, Apr 14, 2005 at 10:53:50AM CEST, I got a letter where Martin Schlemmer <azarah@nosferatu.za.org> told me that...

Show 22 quoted lines
> Hi,
> 
> Might not be that an big an issue as it should be freed on exit, but
> might cause problems with big trees.
> 
> ----
> 
> Plug memory leak in update-cache.c.
> 
> Signed-off-by: Martin Schlemmer <azarah@nosferatu.za.org>
> 
> update-cache.c:  22f3ccd47db4f0888901109a8cbf883d272d1cba
> --- 22f3ccd47db4f0888901109a8cbf883d272d1cba/update-cache.c
> +++ uncommitted/update-cache.c
> @@ -202,6 +202,7 @@
>                         printf("%s: needs update\n", ce->name);
>                         continue;
>                 }
> +               free(active_cache[i]);
>                 active_cache[i] = new;
>         }
>  }

FYI, new could've contained active_cache[i] at that time, so you needed to check for that. Fixed though, thanks for pointing it out.

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor
Martin Schlemmer· Apr 16, 2005, 00:00 UTC · re: Petr Baudis · lore

Re: Plug memory leak in update-cache.c

On Sat, 2005-04-16 at 01:48 +0200, Petr Baudis wrote:
Show 28 quoted lines
> Dear diary, on Thu, Apr 14, 2005 at 10:53:50AM CEST, I got a letter
> where Martin Schlemmer <azarah@nosferatu.za.org> told me that...
> > Hi,
> > 
> > Might not be that an big an issue as it should be freed on exit, but
> > might cause problems with big trees.
> > 
> > ----
> > 
> > Plug memory leak in update-cache.c.
> > 
> > Signed-off-by: Martin Schlemmer <azarah@nosferatu.za.org>
> > 
> > update-cache.c:  22f3ccd47db4f0888901109a8cbf883d272d1cba
> > --- 22f3ccd47db4f0888901109a8cbf883d272d1cba/update-cache.c
> > +++ uncommitted/update-cache.c
> > @@ -202,6 +202,7 @@
> >                         printf("%s: needs update\n", ce->name);
> >                         continue;
> >                 }
> > +               free(active_cache[i]);
> >                 active_cache[i] = new;
> >         }
> >  }
> 
> FYI, new could've contained active_cache[i] at that time, so you needed
> to check for that. Fixed though, thanks for pointing it out.
> 

Urk, no, please drop. As Ingo pointed out, the memory was obtained via mmap ...

-- 
Martin Schlemmer
Petr Baudis· Apr 16, 2005, 00:04 UTC · re: Martin Schlemmer · lore

Re: Re: Plug memory leak in update-cache.c

Dear diary, on Sat, Apr 16, 2005 at 02:00:21AM CEST, I got a letter where Martin Schlemmer <azarah@nosferatu.za.org> told me that...

Show 32 quoted lines
> On Sat, 2005-04-16 at 01:48 +0200, Petr Baudis wrote:
> > Dear diary, on Thu, Apr 14, 2005 at 10:53:50AM CEST, I got a letter
> > where Martin Schlemmer <azarah@nosferatu.za.org> told me that...
> > > Hi,
> > > 
> > > Might not be that an big an issue as it should be freed on exit, but
> > > might cause problems with big trees.
> > > 
> > > ----
> > > 
> > > Plug memory leak in update-cache.c.
> > > 
> > > Signed-off-by: Martin Schlemmer <azarah@nosferatu.za.org>
> > > 
> > > update-cache.c:  22f3ccd47db4f0888901109a8cbf883d272d1cba
> > > --- 22f3ccd47db4f0888901109a8cbf883d272d1cba/update-cache.c
> > > +++ uncommitted/update-cache.c
> > > @@ -202,6 +202,7 @@
> > >                         printf("%s: needs update\n", ce->name);
> > >                         continue;
> > >                 }
> > > +               free(active_cache[i]);
> > >                 active_cache[i] = new;
> > >         }
> > >  }
> > 
> > FYI, new could've contained active_cache[i] at that time, so you needed
> > to check for that. Fixed though, thanks for pointing it out.
> > 
> 
> Urk, no, please drop.  As Ingo pointed out, the memory was obtained via
> mmap ...
Yes, I've just noticed that. ;-)
-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor

← back to recent threads