Fedora Account System
Red Hat Associate
Red Hat Customer
If the perl bindings introduce an explicit close API, it will no longer be safe to rely on object destruction to call cleanup code. For example, if a program creates a temporary directory which must persist for the duration of the program but must be cleaned up prior to exit, the program cannot rely on a destructor to do the cleanup as the handle may have been closed before the destructor is executed. A solution to this would be to allow callbacks to be registered and executed immediately prior to close(). For example: $g->pre_close(sub { $g->rmdir($self->{foo}); });
See my reply here: https://www.redhat.com/archives/libguestfs/2010-June/msg00096.html
Matt, what's the current status of this one? If virt-v2v no longer needs it, then we should close it. If there is still pain for virt-v2v then we should leave it open, but see also comment 1 about how hard it is to solve it.
I worked round it with GuestfsHandle, so i don't need this any more.