Merge lp:~dandrader/geis/mem_leaks into lp:geis

Proposed by Daniel d'Andrada
Status: Merged
Merged at revision: 284
Proposed branch: lp:~dandrader/geis/mem_leaks
Merge into: lp:geis
Diff against target: 38 lines (+6/-0)
3 files modified
libgeis/backend/grail/geis_grail_backend.c (+3/-0)
libgeis/backend/grail/geis_grail_xsync.c (+1/-0)
libgeis/geis.c (+2/-0)
To merge this branch: bzr merge lp:~dandrader/geis/mem_leaks
Reviewer Review Type Date Requested Status
Chase Douglas (community) Approve
Review via email: mp+122925@code.launchpad.net

Description of the change

Plugs some memory leaks.

To post a comment you must log in.
Revision history for this message
Chase Douglas (chasedouglas) wrote :

Looks good :).

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'libgeis/backend/grail/geis_grail_backend.c'
2--- libgeis/backend/grail/geis_grail_backend.c 2012-09-05 14:59:39 +0000
3+++ libgeis/backend/grail/geis_grail_backend.c 2012-09-05 18:42:58 +0000
4@@ -1013,6 +1013,9 @@
5 geis_register_device(gbe->geis, geis_device, attr_count, attrs);
6 _grail_be_subscribe_new_device(gbe, geis_device);
7
8+ /* We are not going to hold a pointer to this geis_device ourselves */
9+ geis_device_unref(geis_device);
10+
11 final_exit:
12 return;
13 }
14
15=== modified file 'libgeis/backend/grail/geis_grail_xsync.c'
16--- libgeis/backend/grail/geis_grail_xsync.c 2012-06-21 21:17:25 +0000
17+++ libgeis/backend/grail/geis_grail_xsync.c 2012-09-05 18:42:58 +0000
18@@ -112,6 +112,7 @@
19 void
20 geis_grail_xsync_delete(GeisGrailXSync self)
21 {
22+ geis_bag_delete(self->alarms);
23 free(self);
24 }
25
26
27=== modified file 'libgeis/geis.c'
28--- libgeis/geis.c 2012-08-07 14:26:11 +0000
29+++ libgeis/geis.c 2012-09-05 18:42:58 +0000
30@@ -1262,6 +1262,8 @@
31 GeisAttr attr = geis_attr_new(GEIS_EVENT_ATTRIBUTE_DEVICE,
32 GEIS_ATTR_TYPE_POINTER,
33 device);
34+ geis_device_ref(device);
35+ geis_attr_set_destructor(attr, (GeisAttrDestructor)geis_device_unref);
36
37 geis_event_add_attr(event, attr);
38 geis_post_event(geis, event);

Subscribers

People subscribed via source and target branches