summaryrefslogtreecommitdiff
path: root/Xext
diff options
context:
space:
mode:
authorJamey Sharp <jamey@minilop.net>2010-04-24 23:26:40 -0700
committerJamey Sharp <jamey@minilop.net>2010-05-19 12:32:48 -0700
commite291c561821ae86b7dd74269d5cd29bc31703962 (patch)
tree5b4c5b1448c6b08bd4cb6712eb6314e29f8e591f /Xext
parent90e612dcbe370da095d317fac62c80ac2447fa0b (diff)
Return an appropriately-typed error from dixLookupResourceByType.
Rather than always returning BadValue, associate an error status like BadWindow with a resource type like RT_WINDOW, and return the appropriate one for the requested type. This patch only touches the core protocol resource types. Others still return BadValue and need to be mapped appropriately. dixLookupResourceByType can now return BadImplementation, if the caller asked for a resource type that has not been allocated in the server. Signed-off-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'Xext')
-rw-r--r--Xext/panoramiXprocs.c2
-rw-r--r--Xext/saver.c4
-rw-r--r--Xext/shape.c2
-rw-r--r--Xext/xtest.c2
4 files changed, 3 insertions, 7 deletions
diff --git a/Xext/panoramiXprocs.c b/Xext/panoramiXprocs.c
index a1816958f..dbaae26c4 100644
--- a/Xext/panoramiXprocs.c
+++ b/Xext/panoramiXprocs.c
@@ -457,7 +457,7 @@ int PanoramiXConfigureWindow(ClientPtr client)
result = dixLookupResourceByType((pointer *)&pWin, stuff->window,
RT_WINDOW, client, DixWriteAccess);
if (result != Success)
- return (result == BadValue) ? BadWindow : result;
+ return result;
result = dixLookupResourceByType((pointer *)&win, stuff->window,
XRT_WINDOW, client, DixWriteAccess);
diff --git a/Xext/saver.c b/Xext/saver.c
index 30c4a8c9b..63a41d6d7 100644
--- a/Xext/saver.c
+++ b/Xext/saver.c
@@ -1043,7 +1043,6 @@ ScreenSaverSetAttributes (ClientPtr client)
}
else
{
- ret = (ret == BadValue) ? BadPixmap : ret;
client->errorValue = pixID;
goto PatchUp;
}
@@ -1081,7 +1080,6 @@ ScreenSaverSetAttributes (ClientPtr client)
}
else
{
- ret = (ret == BadValue) ? BadPixmap : ret;
client->errorValue = pixID;
goto PatchUp;
}
@@ -1163,7 +1161,6 @@ ScreenSaverSetAttributes (ClientPtr client)
client, DixUseAccess);
if (ret != Success)
{
- ret = (ret == BadValue) ? BadColor : ret;
client->errorValue = cmap;
goto PatchUp;
}
@@ -1187,7 +1184,6 @@ ScreenSaverSetAttributes (ClientPtr client)
RT_CURSOR, client, DixUseAccess);
if (ret != Success)
{
- ret = (ret == BadValue) ? BadCursor : ret;
client->errorValue = cursorID;
goto PatchUp;
}
diff --git a/Xext/shape.c b/Xext/shape.c
index 10ac2839c..f49e9a02b 100644
--- a/Xext/shape.c
+++ b/Xext/shape.c
@@ -415,7 +415,7 @@ ProcShapeMask (ClientPtr client)
rc = dixLookupResourceByType((pointer *)&pPixmap, stuff->src, RT_PIXMAP,
client, DixReadAccess);
if (rc != Success)
- return (rc == BadValue) ? BadPixmap : rc;
+ return rc;
if (pPixmap->drawable.pScreen != pScreen ||
pPixmap->drawable.depth != 1)
return BadMatch;
diff --git a/Xext/xtest.c b/Xext/xtest.c
index 09c4677a2..263d0c16a 100644
--- a/Xext/xtest.c
+++ b/Xext/xtest.c
@@ -153,7 +153,7 @@ ProcXTestCompareCursor(ClientPtr client)
if (rc != Success)
{
client->errorValue = stuff->cursor;
- return (rc == BadValue) ? BadCursor : rc;
+ return rc;
}
}
rep.type = X_Reply;