Bug#696965: support for HW_SKIP_CONSOLE breaks use by blind people

Samuel Thibault samuel.thibault at ens-lyon.org
Sat Dec 29 16:07:47 PST 2012


Package: xserver-xorg-video-dummy
Version: 1:0.3.3-2
Severity: important
Tags: upstream

Hello,

Unfortunately I've gotten the bug report only now...

In upstream commit e39d9a26

@@ -801,7 +804,7 @@ dummyDriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, pointer ptr)
+           (*flag) = HW_SKIP_CONSOLE;

This has broken the use of Xorg by blind people who don't have a screen:
since drivers tend to abort when no screen is connected, blind people
would use the dummy driver.  But now that the dummy driver itself tells
not to open the console, keypresses are not eaten by the Xorg server,
thus making the whole Xorg session completely unusable.

What was the rationale for the change?  I can understand that in some
situation people would not want to open the console, but I would have
rather made it an option, and have made it not enabled by default,
because the blind people who need the dummy driver do not necessarily
have much technical knowledge beyond "use the dummy driver", while
people who want to use the dummy driver with no VT most probably
understand what that means, and would be able to enable the option.

This was unfortunately actually already shipped in Squeeze.  The attached
patch can be used by people for now to avoid the issue, I'll work on
adding an option upstream.

Samuel
-------------- next part --------------
commit 1ec9d5adaf753715b78377483a3a2d71a323d43e
Author: Samuel Thibault <samuel.thibault at ens-lyon.org>
Date:   Sun Dec 30 00:58:51 2012 +0100

    Revert "Add support for HW_SKIP_CONSOLE"
    
    This reverts commit e39d9a265572c273915f1803a729e7211d7b247b.

diff --git a/src/dummy_driver.c b/src/dummy_driver.c
index 6062c39..566a006 100644
--- a/src/dummy_driver.c
+++ b/src/dummy_driver.c
@@ -801,9 +801,6 @@ DUMMYCreateWindow(WindowPtr pWin)
     return TRUE;
 }
 
-#ifndef HW_SKIP_CONSOLE
-#define HW_SKIP_CONSOLE 4
-#endif
 
 static Bool
 dummyDriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, pointer ptr)
@@ -813,7 +810,7 @@ dummyDriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, pointer ptr)
     switch (op) {
 	case GET_REQUIRED_HW_INTERFACES:
 	    flag = (CARD32*)ptr;
-	    (*flag) = HW_SKIP_CONSOLE;
+	    (*flag) = 0;
 	    return TRUE;
 	default:
 	    return FALSE;


More information about the xorg-devel mailing list