diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2011-04-22 21:34:08 +0100 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2011-04-22 21:50:15 +0100 |
commit | 3acf732c2f23d8508f692efb2b222169914bfcdc (patch) | |
tree | d8fd7aa95f3b6ed804e6bd6ad77b0a866fa8ed18 /generator | |
parent | 0da6f55a6745686ca056c6bc8ebf647f111cb8e8 (diff) | |
download | libguestfs-3acf732c2f23d8508f692efb2b222169914bfcdc.tar.gz libguestfs-3acf732c2f23d8508f692efb2b222169914bfcdc.tar.xz libguestfs-3acf732c2f23d8508f692efb2b222169914bfcdc.zip |
perl: Decrement refcount in $g->delete_event_callback.
This updates commit bc468c87d04b34faacd208c49cca4a5096e5103c.
Diffstat (limited to 'generator')
-rw-r--r-- | generator/generator_perl.ml | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/generator/generator_perl.ml b/generator/generator_perl.ml index c8324693..e2ec254b 100644 --- a/generator/generator_perl.ml +++ b/generator/generator_perl.ml @@ -256,11 +256,15 @@ delete_event_callback (g, event_handle) int event_handle; PREINIT: char key[64]; + SV *cb; CODE: snprintf (key, sizeof key, \"_perl_event_%%d\", event_handle); - guestfs_set_private (g, key, NULL); - - guestfs_delete_event_callback (g, event_handle); + cb = guestfs_get_private (g, key); + if (cb) { + SvREFCNT_dec (cb); + guestfs_set_private (g, key, NULL); + guestfs_delete_event_callback (g, event_handle); + } SV * last_errno (g) |