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-24 09:22:33 +0100 |
commit | 38f8ca3674138cee0a68738cff757cf70486a6f8 (patch) | |
tree | b0a304bfad71331abba6773895fe06ad7c8ad9aa | |
parent | 54f12d3b0b4564c09b4bb9c45790ee97fd4c8e1d (diff) | |
download | libguestfs-38f8ca3674138cee0a68738cff757cf70486a6f8.tar.gz libguestfs-38f8ca3674138cee0a68738cff757cf70486a6f8.tar.xz libguestfs-38f8ca3674138cee0a68738cff757cf70486a6f8.zip |
perl: Decrement refcount in $g->delete_event_callback.
This updates commit bc468c87d04b34faacd208c49cca4a5096e5103c.
(cherry picked from commit 3acf732c2f23d8508f692efb2b222169914bfcdc)
-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) |