...
/* Get a handle to the current in-use snapshot for the domain */
virDomainSnapshotPtr virDomainSnapshotCurrent(virDomainPtr domain,
unsigned int flags);
This call needs to be changed a bit to allow distinguishing between an error
and a domain with no snapshots (i.e., no current snapshot):
int virDomainSnapshotCurrent(virDomainPtr domain,
virDomainSnapshotPtr *snapshot,
unsigned int flags);
Jirka