diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2010-11-02 09:23:41 +1000 |
---|---|---|
committer | Thomas Hellstrom <thellstrom@vmware.com> | 2010-11-04 08:57:40 +0100 |
commit | 3d97fa1c3a5404ae02ed67eb94a5519394ba2bf5 (patch) | |
tree | bf4009d7e7ea6e46b74eddec4ba57dc7e96d65d0 | |
parent | 4e08974ead62fc50ebbe0190abce78c5de3fcdff (diff) |
Move allocation of mPriv down.
No functional change. If we get to this point, we know it's available.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
-rw-r--r-- | src/vmmouse.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/vmmouse.c b/src/vmmouse.c index 32abd9e..9d366e2 100644 --- a/src/vmmouse.c +++ b/src/vmmouse.c @@ -268,15 +268,6 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags) } #endif - mPriv = calloc (1, sizeof (VMMousePrivRec)); - - - if (!mPriv) { - return NULL; - } - - mPriv->absoluteRequested = FALSE; - /* * try to enable vmmouse here */ @@ -286,13 +277,11 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags) * Fall back to normal mouse module */ xf86Msg(X_ERROR, "VMWARE(0): vmmouse enable failed\n"); - free(mPriv); return VMMouseInitPassthru(drv, dev, flags); } else { /* * vmmouse is available */ - mPriv->vmmouseAvailable = TRUE; xf86Msg(X_INFO, "VMWARE(0): vmmouse is available\n"); /* * Disable the absolute pointing device for now @@ -302,10 +291,19 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags) } if (!(pInfo = xf86AllocateInput(drv, 0))) { - free(mPriv); return NULL; } + mPriv = calloc (1, sizeof (VMMousePrivRec)); + + if (!mPriv) { + xf86DeleteInput(pInfo, 0); + return NULL; + } + + mPriv->absoluteRequested = FALSE; + mPriv->vmmouseAvailable = TRUE; + /* Settup the pInfo */ pInfo->name = dev->identifier; pInfo->type_name = XI_MOUSE; |