File gnome-xgl-settings-hwinfo-primary-display-bno335445.patch of Package compiz
On some systems, `hwinfo --gfxcard` outputs multiple devices that aren't
necessarily 0300 VGA compatible controllers. Without this patch, when
that happened, the array of variables being built would not pick up
the non-VGA items, so when the final "print" statement was called, some
of the variables were set to come from the wrong device.
Added "0*" to the regex also to remove any leading zeros in the device
number since the primary display of < 10 doesn't put a leading zero.
The following bug contains sample output from `hwinfo --gfxcard` where
the problem exists:
https://bugzilla.novell.com/show_bug.cgi?id=335445#c3
Index: gnome-xgl-settings-0.9/xgl-settings/gnome-xgl-info
===================================================================
--- gnome-xgl-settings-0.9.orig/xgl-settings/gnome-xgl-info
+++ gnome-xgl-settings-0.9/xgl-settings/gnome-xgl-info
@@ -20,7 +20,7 @@ xgl_opts=""
card_status=""
card_info=$(/usr/sbin/hwinfo --gfxcard | \
- awk '/0300 VGA compatible controller/ { dev = gensub(/^([^:]*):.*/, "\\1", "g"); } \
+ awk '/03[08]0 .* controller/ { dev = gensub(/^0*([^:]*):.*/, "\\1", "g"); } \
/^ Vendor:/ { vendor[dev] = gensub(/.*pci 0x(....).*/, "\\1", "g"); \
name[dev] = gensub(/^.* "(.*)"$/, "\\1", "g"); } \
/^ Device:/ { device[dev] = gensub(/.*pci 0x(....).*/, "\\1", "g"); \