comparison container.c @ 8:fe254ba0818d

Add missing frees
author Louis Opter <louis@dotcloud.com>
date Sun, 02 Jan 2011 01:14:56 +0100
parents 8339ab15527d
children
comparison
equal deleted inserted replaced
7:8339ab15527d 8:fe254ba0818d
39 39
40 return (c); 40 return (c);
41 41
42 free_container: 42 free_container:
43 free(c->name); 43 free(c->name);
44 free(c->cgroup_dir);
44 free(c); 45 free(c);
45 return (NULL); 46 return (NULL);
46 } 47 }
47 48
48 void 49 void
119 if (c && _lxcst_container_read_infos(c) == 0 120 if (c && _lxcst_container_read_infos(c) == 0
120 && cb(ctx, c)) { 121 && cb(ctx, c)) {
121 errno = EINTR; 122 errno = EINTR;
122 goto abort_by_cb; 123 goto abort_by_cb;
123 } 124 }
125 _lxcst_container_delete(c);
124 } 126 }
125 free(c_vec[n]); 127 free(c_vec[n]);
126 } 128 }
127 free(c_vec); 129 free(c_vec);
128 } else if (n < 0) { 130 } else if (n < 0) {
138 _lxcst_globals.stopped_containers = n - _lxcst_globals.running_containers; 140 _lxcst_globals.stopped_containers = n - _lxcst_globals.running_containers;
139 141
140 return (0); 142 return (0);
141 143
142 abort_by_cb: 144 abort_by_cb:
145 _lxcst_container_delete(c);
143 free(c_vec[n + 1]); 146 free(c_vec[n + 1]);
144 while (n--) 147 while (n--)
145 free(c_vec[n]); 148 free(c_vec[n]);
146 free(c_vec); 149 free(c_vec);
147 return (-1); 150 return (-1);