summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stone <daniel@fooishbar.org>2007-07-08 20:48:57 +0300
committerDaniel Stone <daniel@fooishbar.org>2007-08-01 01:53:31 +0300
commit0afeb0241a83796575da827bd81375c99ff10af5 (patch)
tree091937004feb6ebe531afd1c08cee62e5191ef67
parent62ec6d09b3adaea82ff52c8672e6f611c15ec56d (diff)
DIX: Clean up null root cursor handling
Move the null root cursor handling out of main() and into CreateRootCursor.
-rw-r--r--dix/cursor.c22
-rw-r--r--dix/main.c14
2 files changed, 20 insertions, 16 deletions
diff --git a/dix/cursor.c b/dix/cursor.c
index 5ab562ead..d903124c4 100644
--- a/dix/cursor.c
+++ b/dix/cursor.c
@@ -430,25 +430,41 @@ AllocGlyphCursor(Font source, unsigned sourceChar, Font mask, unsigned maskChar,
*************************************************************/
CursorPtr
-CreateRootCursor(char *pfilename, unsigned glyph)
+CreateRootCursor(char *unused1, unsigned int unused2)
{
CursorPtr curs;
+#ifdef NULL_ROOT_CURSOR
+ CursorMetricRec cm;
+#else
FontPtr cursorfont;
int err;
XID fontID;
+#endif
+
+#ifdef NULL_ROOT_CURSOR
+ cm.width = 0;
+ cm.height = 0;
+ cm.xhot = 0;
+ cm.yhot = 0;
+ curs = AllocCursor(NULL, NULL, &cm, 0, 0, 0, 0, 0, 0);
+
+ if (curs == NullCursor)
+ return NullCursor;
+#else
fontID = FakeClientID(0);
err = OpenFont(serverClient, fontID, FontLoadAll | FontOpenSync,
- (unsigned)strlen( pfilename), pfilename);
+ (unsigned)strlen(defaultCursorFont), defaultCursorFont);
if (err != Success)
return NullCursor;
cursorfont = (FontPtr)LookupIDByType(fontID, RT_FONT);
if (!cursorfont)
return NullCursor;
- if (AllocGlyphCursor(fontID, glyph, fontID, glyph + 1,
+ if (AllocGlyphCursor(fontID, 0, fontID, 1,
0, 0, 0, ~0, ~0, ~0, &curs, serverClient) != Success)
return NullCursor;
+#endif
if (!AddResource(FakeClientID(0), RT_CURSOR, (pointer)curs))
return NullCursor;
diff --git a/dix/main.c b/dix/main.c
index c5d3783c8..9fe822b29 100644
--- a/dix/main.c
+++ b/dix/main.c
@@ -411,22 +411,10 @@ main(int argc, char *argv[], char *envp[])
FatalError("could not open default font '%s'", defaultTextFont);
}
-#ifdef NULL_ROOT_CURSOR
- cm.width = 0;
- cm.height = 0;
- cm.xhot = 0;
- cm.yhot = 0;
-
- if (!(rootCursor = AllocCursor(NULL, NULL, &cm, 0, 0, 0, 0, 0, 0))) {
- FatalError("could not create empty root cursor");
- }
- AddResource(FakeClientID(0), RT_CURSOR, (pointer)rootCursor);
-#else
- if (!(rootCursor = CreateRootCursor(defaultCursorFont, 0))) {
+ if (!(rootCursor = CreateRootCursor(NULL, 0))) {
FatalError("could not open default cursor font '%s'",
defaultCursorFont);
}
-#endif
#ifdef DPMSExtension
/* check all screens, looking for DPMS Capabilities */