xorg-server: Changes to 'debian-unstable'
debian/changelog | 8 +
debian/patches/45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff | 56 ++++++++++
debian/patches/series | 1
3 files changed, 65 insertions(+)
New commits:
commit 9ffbe1bc5e1e95774593e28a61093a1e0bdf6913
Author: Brice Goglin <bgoglin@debian.org>
Date: Fri Jan 18 23:33:16 2008 +0100
Add 45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff
diff --git a/debian/changelog b/debian/changelog
index 02175b7..9a073a3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xorg-server (2:1.4.1~git20080118-2) UNRELEASED; urgency=low
+
+ * Add 45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff
+ to prevent XF86_APM_CAPABILITY_CHANGED from being issued for all ACPI
+ events, thanks Sjoerd Simons, closes: #461463.
+
+ -- Brice Goglin <bgoglin@debian.org> Fri, 18 Jan 2008 23:27:43 +0100
+
xorg-server (2:1.4.1~git20080118-1) unstable; urgency=low
[ Brice Goglin ]
diff --git a/debian/patches/45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff b/debian/patches/45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff
new file mode 100644
index 0000000..56d5c98
--- /dev/null
+++ b/debian/patches/45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff
@@ -0,0 +1,56 @@
+commit 74e84b8d891632141a60e2d29463ab46f622df3f
+Author: Matthias Hopf <mhopf@suse.de>
+Date: Fri Oct 19 17:28:15 2007 +0200
+
+ Only issue XF86_APM_CAPABILITY_CHANGED for video change ACPI events (not e.g. brightness etc.).
+
+diff --git a/hw/xfree86/os-support/linux/lnx_acpi.c b/hw/xfree86/os-support/linux/lnx_acpi.c
+index 9808e37..bb975cc 100644
+--- a/hw/xfree86/os-support/linux/lnx_acpi.c
++++ b/hw/xfree86/os-support/linux/lnx_acpi.c
+@@ -69,9 +69,11 @@ lnxACPIGetEventFromOs(int fd, pmEvent *events, int num)
+ TimerSet(NULL, 0, ACPI_REOPEN_DELAY, lnxACPIReopen, NULL);
+ return 0;
+ }
++ /* FIXME: this only processes the first read ACPI event & might break
++ * with interrupted reads. */
+
+ /* Check that we have a video event */
+- if (strstr(ev, "video") == ev) {
++ if (!strncmp(ev, "video", 5)) {
+ char *video = NULL;
+ char *GFX = NULL;
+ char *notify = NULL;
+@@ -97,26 +99,19 @@ lnxACPIGetEventFromOs(int fd, pmEvent *events, int num)
+ ErrorF("data: 0x%lx\n",data_l);
+ #endif
+
+- /* We currently don't differentiate between any event */
++ /* Differentiate between events */
+ switch (notify_l) {
+ case ACPI_VIDEO_NOTIFY_SWITCH:
+- break;
+- case ACPI_VIDEO_NOTIFY_PROBE:
+- break;
+ case ACPI_VIDEO_NOTIFY_CYCLE:
+- break;
+ case ACPI_VIDEO_NOTIFY_NEXT_OUTPUT:
+- break;
+ case ACPI_VIDEO_NOTIFY_PREV_OUTPUT:
+- break;
++ events[0] = XF86_APM_CAPABILITY_CHANGED;
++ return 1;
++ case ACPI_VIDEO_NOTIFY_PROBE:
++ return 0;
+ default:
+- break;
++ return 0;
+ }
+-
+- /* Deal with all ACPI events as a capability change */
+- events[0] = XF86_APM_CAPABILITY_CHANGED;
+-
+- return 1;
+ }
+
+ return 0;
diff --git a/debian/patches/series b/debian/patches/series
index 1612b7e..93b3c1a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -15,6 +15,7 @@
42_dont_break_grab_and_focus_for_window_when_redirecting.diff
43_allow_override_BIOS_EDID_preferred_mode.diff
44_preferredmode_infinite_loop.diff
+45_only_XF86_APM_CAPABILITY_CHANGED_for_video_change_acpi_events.diff
#47_fbdevhw_magic_numbers.diff
#51_xkb-and-loathing.diff
91_ttf2pt1
Reply to: