@@ -1,116 +0,0 @@
-diff -Nuar virt-manager-0.5.3.orig/src/virtManager/connection.py virt-manager-0.5.3/src/virtManager/connection.py
---- virt-manager-0.5.3.orig/src/virtManager/connection.py 2008-03-31 14:32:40.000000000 -0600
-+++ virt-manager-0.5.3/src/virtManager/connection.py 2008-03-31 15:23:14.000000000 -0600
-@@ -136,6 +136,19 @@
-
- self.detect_network_devices()
-
-+ # A bug in hal/dbus prevents us from calling QueryCapability on devices
-+ # this is a temporary workaround that can be removed when we get
-+ # a newer hald/hald_dbus.c
-+ def _query_capability(self, device_interface, str_capability):
-+ if device_interface == None:
-+ return False
-+ if not device_interface.PropertyExists('info.capabilities'):
-+ return False
-+ cap_set = set(device_interface.GetProperty('info.capabilities'))
-+ if str_capability in cap_set:
-+ return True
-+ return False
-+
- def detect_network_devices(self):
- try:
- # Get a connection to the SYSTEM bus
-@@ -165,9 +178,11 @@
-
- def _device_added(self, path):
- obj = self.bus.get_object("org.freedesktop.Hal", path)
-- if obj.QueryCapability("net"):
-- name = obj.GetPropertyString("net.interface")
-- mac = obj.GetPropertyString("net.address")
-+ iface = dbus.Interface(obj,"org.freedesktop.Hal.Device")
-+ iface.PropertyExists('info.capabilities')
-+ if self._query_capability(iface,"net"):
-+ name = iface.GetPropertyString("net.interface")
-+ mac = iface.GetPropertyString("net.address")
-
- # Now magic to determine if the device is part of a bridge
- shared = False
-@@ -175,7 +190,7 @@
- try:
- # XXX Linux specific - needs porting for other OS - patches
- # welcomed...
-- sysfspath = obj.GetPropertyString("linux.sysfs_path")
-+ sysfspath = iface.GetPropertyString("linux.sysfs_path")
-
- # If running a device in bridged mode, there's a reasonable
- # chance that the actual ethernet device has been renamed to
-diff -Nuar virt-manager-0.5.3.orig/src/virtManager/opticalhelper.py virt-manager-0.5.3/src/virtManager/opticalhelper.py
---- virt-manager-0.5.3.orig/src/virtManager/opticalhelper.py 2008-01-10 18:17:51.000000000 -0700
-+++ virt-manager-0.5.3/src/virtManager/opticalhelper.py 2008-03-31 15:24:16.000000000 -0600
-@@ -41,6 +41,19 @@
- self.hal_iface = None
- raise
-
-+ # A bug in hal prevents us from calling QueryCapability on devices
-+ # this is a temporary workaround that can be removed when we get
-+ # a newer hald/hald_dbus.c
-+ def _query_capability(self, device_interface, str_capability):
-+ if device_interface == None:
-+ return False
-+ if not device_interface.PropertyExists('info.capabilities'):
-+ return False
-+ cap_set = set(device_interface.GetProperty('info.capabilities'))
-+ if str_capability in cap_set:
-+ return True
-+ return False
-+
- def populate_opt_media(self):
- # get a list of optical devices with data discs in, for FV installs
- vollabel = {}
-@@ -52,10 +65,11 @@
- # Find info about all current present media
- for d in self.hal_iface.FindDeviceByCapability("volume"):
- vol = self.bus.get_object("org.freedesktop.Hal", d)
-- if vol.GetPropertyBoolean("volume.is_disc") and \
-- vol.GetPropertyBoolean("volume.disc.has_data"):
-- devnode = vol.GetProperty("block.device")
-- label = vol.GetProperty("volume.label")
-+ iface = dbus.Interface(vol,"org.freedesktop.Hal.Device")
-+ if iface.GetPropertyBoolean("volume.is_disc") and \
-+ iface.GetPropertyBoolean("volume.disc.has_data"):
-+ devnode = iface.GetProperty("block.device")
-+ label = iface.GetProperty("volume.label")
- if label == None or len(label) == 0:
- label = devnode
- vollabel[devnode] = label
-@@ -63,7 +77,9 @@
-
- for d in self.hal_iface.FindDeviceByCapability("storage.cdrom"):
- dev = self.bus.get_object("org.freedesktop.Hal", d)
-- devnode = dev.GetProperty("block.device")
-+ iface = dbus.Interface(dev,"org.freedesktop.Hal.Device")
-+ iface.PropertyExists('info.capabilities')
-+ devnode = iface.GetProperty("block.device")
- if vollabel.has_key(devnode):
- self.model.append([devnode, vollabel[devnode], True, volpath[devnode]])
- else:
-@@ -71,11 +87,13 @@
-
- def _device_added(self, path):
- vol = self.bus.get_object("org.freedesktop.Hal", path)
-- if vol.QueryCapability("volume"):
-- if vol.GetPropertyBoolean("volume.is_disc") and \
-- vol.GetPropertyBoolean("volume.disc.has_data"):
-- devnode = vol.GetProperty("block.device")
-- label = vol.GetProperty("volume.label")
-+ iface = dbus.Interface(vol,"org.freedesktop.Hal.Device")
-+ iface.PropertyExists('info.capabilities')
-+ if self._query_capability(iface,"volume"):
-+ if iface.GetPropertyBoolean("volume.is_disc") and \
-+ iface.GetPropertyBoolean("volume.disc.has_data"):
-+ devnode = iface.GetProperty("block.device")
-+ label = iface.GetProperty("volume.label")
- if label == None or len(label) == 0:
- label = devnode
-
|