diff options
author | Richard Jones <rjones@redhat.com> | 2010-06-10 15:25:43 +0100 |
---|---|---|
committer | Richard Jones <rjones@redhat.com> | 2010-06-10 17:52:54 +0100 |
commit | eb566f7dc7974b42ac65729a2e5e5bcee329a0a9 (patch) | |
tree | d28e272f278a6f3cc0e652ed09a88f2b84566a8d /src/guestfs-internal.h | |
parent | dbfd93b72f99ebdded394541a48177c415db8cbf (diff) | |
download | libguestfs-eb566f7dc7974b42ac65729a2e5e5bcee329a0a9.tar.gz libguestfs-eb566f7dc7974b42ac65729a2e5e5bcee329a0a9.tar.xz libguestfs-eb566f7dc7974b42ac65729a2e5e5bcee329a0a9.zip |
perl: Add explicit close() method (RHBZ#602592).
This add an optional explicit $g->close method which may be
used to force the handle to be closed immediately. Note the
provisos about this method in the manual page entry. Callers
should *not* normally use this method.
The implementation of the handle also changes. Before, the
handle was a blessed reference to an integer (the integer
being the pointer to the C guestfs_h handle). Now we change
this to a hashref containing currently the following field:
_g => pointer to C guestfs_h handle (as an integer)
If this field is not present, it means that the handle has been
explicitly closed. This avoids double-freeing the handle.
The user may add their own fields to this hash in order to store
per-handle data. However any fields whose names begin with
an underscore are reserved for use by the Perl bindings.
This commit also adds a regression test.
This commit also changes the existing warning when you call
a method without a Sys::Guestfs handle as the first parameter,
into an error. This is because such cases are always errors.
Diffstat (limited to 'src/guestfs-internal.h')
0 files changed, 0 insertions, 0 deletions