summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dix/dispatch.c7
-rw-r--r--dix/dixfonts.c7
-rw-r--r--hw/dmx/dmxfont.c16
-rw-r--r--include/dixfont.h3
4 files changed, 11 insertions, 22 deletions
diff --git a/dix/dispatch.c b/dix/dispatch.c
index 63c978c12..4dc9ecd9d 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -3406,7 +3406,6 @@ ProcSetFontPath(ClientPtr client)
unsigned long nbytes, total;
long nfonts;
int n, result;
- int error;
REQUEST(xSetFontPathReq);
REQUEST_AT_LEAST_SIZE(xSetFontPathReq);
@@ -3424,13 +3423,9 @@ ProcSetFontPath(ClientPtr client)
}
if (total >= 4)
return(BadLength);
- result = SetFontPath(client, stuff->nFonts, (unsigned char *)&stuff[1],
- &error);
+ result = SetFontPath(client, stuff->nFonts, (unsigned char *)&stuff[1]);
if (!result)
- {
result = client->noClientException;
- client->errorValue = error;
- }
return (result);
}
diff --git a/dix/dixfonts.c b/dix/dixfonts.c
index aaa992b4d..e145254b9 100644
--- a/dix/dixfonts.c
+++ b/dix/dixfonts.c
@@ -1789,9 +1789,8 @@ bail:
return FontToXError(err);
}
-/* XXX -- do we need to pass error down to each renderer? */
int
-SetFontPath(ClientPtr client, int npaths, unsigned char *paths, int *error)
+SetFontPath(ClientPtr client, int npaths, unsigned char *paths)
{
int err = XaceHook(XACE_SERVER_ACCESS, client, DixManageAccess);
if (err != Success)
@@ -1801,7 +1800,9 @@ SetFontPath(ClientPtr client, int npaths, unsigned char *paths, int *error)
if (SetDefaultFontPath(defaultFontPath) != Success)
return BadValue;
} else {
- err = SetFontPathElements(npaths, paths, error, FALSE);
+ int bad;
+ err = SetFontPathElements(npaths, paths, &bad, FALSE);
+ client->errorValue = bad;
}
return err;
}
diff --git a/hw/dmx/dmxfont.c b/hw/dmx/dmxfont.c
index 8e4a17e50..b6b2e3111 100644
--- a/hw/dmx/dmxfont.c
+++ b/hw/dmx/dmxfont.c
@@ -172,7 +172,6 @@ static int dmxProcSetFontPath(ClientPtr client)
unsigned long nbytes, total, n;
long nfonts;
int i, result;
- int error;
unsigned char *oldFontPath, *tmpFontPath;
int nOldPaths;
int lenOldPaths;
@@ -198,22 +197,19 @@ static int dmxProcSetFontPath(ClientPtr client)
oldFontPath = malloc(nOldPaths + lenOldPaths);
memmove(oldFontPath, tmpFontPath, nOldPaths + lenOldPaths);
- result = SetFontPath(client, stuff->nFonts, (unsigned char *)&stuff[1],
- &error);
+ result = SetFontPath(client, stuff->nFonts, (unsigned char *)&stuff[1]);
if (!result) {
+ int error = 0;
for (i = 0; i < dmxNumScreens; i++)
if ((result = dmxCheckFontPath(&dmxScreens[i], &error)))
break;
if (result) {
- int ignoreresult, ignoreerror;
-
/* Restore old fontpath in the DMX server */
- ignoreresult = SetFontPath(client, nOldPaths, oldFontPath,
- &ignoreerror);
+ SetFontPath(client, nOldPaths, oldFontPath);
+ client->errorValue = error;
} else {
result = client->noClientException;
- client->errorValue = error;
}
}
@@ -315,7 +311,6 @@ Bool dmxBELoadFont(ScreenPtr pScreen, FontPtr pFont)
int newnpaths = 0;
int len = 0;
int j = 0;
- int error;
dmxLog(dmxError,
"These font paths will not be used because the "
@@ -361,8 +356,7 @@ Bool dmxBELoadFont(ScreenPtr pScreen, FontPtr pFont)
}
}
- if (SetFontPath(serverClient, newnpaths, (unsigned char *)newfp,
- &error)) {
+ if (SetFontPath(serverClient, newnpaths, (unsigned char *)newfp)) {
/* Note that this should never happen since all of the
* FPEs were previously valid. */
dmxLog(dmxError, "Cannot reset the default font path.\n");
diff --git a/include/dixfont.h b/include/dixfont.h
index e444a2024..cf86f5467 100644
--- a/include/dixfont.h
+++ b/include/dixfont.h
@@ -96,8 +96,7 @@ extern _X_EXPORT int ImageText(ClientPtr /*client*/,
extern _X_EXPORT int SetFontPath(ClientPtr /*client*/,
int /*npaths*/,
- unsigned char * /*paths*/,
- int * /*error*/);
+ unsigned char * /*paths*/);
extern _X_EXPORT int SetDefaultFontPath(char * /*path*/);