On Mon, Aug 11, 2008 at 03:58:55PM -0400, Cole Robinson wrote: > In the python bindings, all vir* classes expect to be > passed a virConnect object when instantiated. Before > the storage stuff, these classes were only instantiated > in virConnect methods, so the generator is hardcoded to > pass 'self' as the connection instance to these classes. > > Problem is there are some methods that return pool or vol > instances which aren't called from virConnect: you can > lookup a storage volume's associated pool, and can lookup > volumes from a pool. In these cases passing 'self' doesn't > give the vir* instance a connection, so when it comes time > to raise an exception crap hits the fan. > > Rather than rework the generator to accomodate this edge > case, I just fixed the init functions for virStorage* to > pull the associated connection out of the passed value > if it's not a virConnect instance. I see what you mean. This is actually the fix I would have done anyway - changing the generator in any more complex way is just a huge time sink :-) So ACK Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list