Move the warning messages and the OS-specific autoprobing calls into a new
function. This will change the order log messages appear in but functional
changes should be identical.

Signed-off-by: Peter Hutterer <[email protected]>
---
 src/mouse.c |   54 ++++++++++++++++++++++++++----------------------------
 1 files changed, 26 insertions(+), 28 deletions(-)

diff --git a/src/mouse.c b/src/mouse.c
index 341f07f..d098f9d 100644
--- a/src/mouse.c
+++ b/src/mouse.c
@@ -796,13 +796,31 @@ InitProtocols(void)
     return TRUE;
 }
 
+static const char*
+MouseFindDevice(InputInfoPtr pInfo, const char* protocol)
+{
+    const char *device;
+
+    if (!osInfo->FindDevice)
+        return NULL;
+
+    xf86Msg(X_WARNING, "%s: No Device specified, looking for one...\n", 
pInfo->name);
+    device = osInfo->FindDevice(pInfo, protocol, 0);
+    if (!device)
+       xf86Msg(X_ERROR, "%s: Cannot find which device to use.\n", pInfo->name);
+    else
+       xf86Msg(X_PROBED, "%s: Device: \"%s\"\n", pInfo->name, device);
+
+    return device;
+}
+
 static InputInfoPtr
 MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
 {
     InputInfoPtr pInfo;
     MouseDevPtr pMse;
     mousePrivPtr mPriv;
-    MessageType protocolFrom = X_DEFAULT, deviceFrom = X_CONFIG;
+    MessageType protocolFrom = X_DEFAULT;
     const char *protocol, *osProt = NULL;
     const char *device;
     MouseProtocolID protocolID;
@@ -857,6 +875,8 @@ MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
        return pInfo;
     }
 
+    device = xf86SetStrOption(dev->commonOptions, "Device", NULL);
+
     /* Default Mapping: 1 2 3 8 9 10 11 ... */
     for (i = 0; i < MSE_MAXBUTTONS; i++)
        pMse->buttonMap[i] = 1 << (i > 2 && i < MSE_MAXBUTTONS-4 ? i+4 : i);
@@ -882,16 +902,8 @@ MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
             * and call its PreInit. */
            if (osInfo->CheckProtocol
                && osInfo->CheckProtocol(protocol)) {
-               if (!xf86CheckStrOption(dev->commonOptions, "Device", NULL) &&
-                   osInfo->FindDevice) {
-                   xf86Msg(X_WARNING, "%s: No Device specified, "
-                           "looking for one...\n", pInfo->name);
-                   if (!osInfo->FindDevice(pInfo, protocol, 0)) {
-                       xf86Msg(X_ERROR, "%s: Cannot find which device "
-                               "to use.\n", pInfo->name);
-                   } else
-                       deviceFrom = X_PROBED;
-               }
+               if (!device)
+                    MouseFindDevice(pInfo, protocol);
                if (osInfo->PreInit) {
                    osInfo->PreInit(pInfo, protocol, 0);
                }
@@ -912,24 +924,10 @@ MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
            
        }
     } while (!detected);
-    
-    if (!xf86CheckStrOption(dev->commonOptions, "Device", NULL) &&
-       osInfo->FindDevice) {
-       xf86Msg(X_WARNING, "%s: No Device specified, looking for one...\n",
-               pInfo->name);
-       if (!osInfo->FindDevice(pInfo, protocol, 0)) {
-           xf86Msg(X_ERROR, "%s: Cannot find which device to use.\n",
-                   pInfo->name);
-       } else {
-           deviceFrom = X_PROBED;
-           xf86MarkOptionUsedByName(dev->commonOptions, "Device");
-       }
-    }
 
-    device = xf86CheckStrOption(dev->commonOptions, "Device", NULL);
-    if (device)
-       xf86Msg(deviceFrom, "%s: Device: \"%s\"\n", pInfo->name, device);
-       
+    if (!device)
+        MouseFindDevice(pInfo, protocol);
+
     xf86Msg(protocolFrom, "%s: Protocol: \"%s\"\n", pInfo->name, protocol);
     if (!(pProto = GetProtocol(protocolID)))
        return pInfo;
-- 
1.7.2.3

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to