diff options
Diffstat (limited to 'xorg-server/test')
-rw-r--r-- | xorg-server/test/Makefile.am | 2 | ||||
-rw-r--r-- | xorg-server/test/input.c | 60 | ||||
-rw-r--r-- | xorg-server/test/os.c | 4 | ||||
-rw-r--r-- | xorg-server/test/signal-logging.c | 4 | ||||
-rw-r--r-- | xorg-server/test/touch.c | 20 | ||||
-rw-r--r-- | xorg-server/test/xkb.c | 18 |
6 files changed, 65 insertions, 43 deletions
diff --git a/xorg-server/test/Makefile.am b/xorg-server/test/Makefile.am index 2852bb3e0..f8aa65950 100644 --- a/xorg-server/test/Makefile.am +++ b/xorg-server/test/Makefile.am @@ -36,7 +36,7 @@ fixes_LDADD=$(TEST_LDADD) xfree86_LDADD=$(TEST_LDADD) touch_LDADD=$(TEST_LDADD) signal_logging_LDADD=$(TEST_LDADD) -hashtabletest_LDADD=$(TEST_LDADD) $(top_srcdir)/Xext/hashtable.c +hashtabletest_LDADD=$(TEST_LDADD) os_LDADD=$(TEST_LDADD) libxservertest_la_LIBADD = $(XSERVER_LIBS) diff --git a/xorg-server/test/input.c b/xorg-server/test/input.c index aaa7a69d3..9b5db8991 100644 --- a/xorg-server/test/input.c +++ b/xorg-server/test/input.c @@ -1101,7 +1101,7 @@ xi_unregister_handlers(void) static void cmp_attr_fields(InputAttributes * attr1, InputAttributes * attr2) { - const char **tags1, **tags2; + char **tags1, **tags2; assert(attr1 && attr2); assert(attr1 != attr2); @@ -1180,50 +1180,54 @@ cmp_attr_fields(InputAttributes * attr1, InputAttributes * attr2) static void dix_input_attributes(void) { - InputAttributes orig = { 0 }; + InputAttributes *orig; InputAttributes *new; - const char *tags[4] = { "tag1", "tag2", "tag2", NULL }; new = DuplicateInputAttributes(NULL); assert(!new); - new = DuplicateInputAttributes(&orig); - assert(memcmp(&orig, new, sizeof(InputAttributes)) == 0); + orig = calloc(1, sizeof(InputAttributes)); + assert(orig); - orig.product = "product name"; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + new = DuplicateInputAttributes(orig); + assert(memcmp(orig, new, sizeof(InputAttributes)) == 0); + + orig->product = xnfstrdup("product name"); + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); - orig.vendor = "vendor name"; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + orig->vendor = xnfstrdup("vendor name"); + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); - orig.device = "device path"; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + orig->device = xnfstrdup("device path"); + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); - orig.pnp_id = "PnPID"; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + orig->pnp_id = xnfstrdup("PnPID"); + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); - orig.usb_id = "USBID"; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + orig->usb_id = xnfstrdup("USBID"); + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); - orig.flags = 0xF0; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + orig->flags = 0xF0; + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); - orig.tags = tags; - new = DuplicateInputAttributes(&orig); - cmp_attr_fields(&orig, new); + orig->tags = xstrtokenize("tag1 tag2 tag3", " "); + new = DuplicateInputAttributes(orig); + cmp_attr_fields(orig, new); FreeInputAttributes(new); + + FreeInputAttributes(orig); } static void @@ -1386,8 +1390,8 @@ dix_valuator_alloc(void) assert(v->numAxes == num_axes); #if !defined(__i386__) && !defined(__m68k__) && !defined(__sh__) /* must be double-aligned on 64 bit */ - assert(((void *) v->axisVal - (void *) v) % sizeof(double) == 0); - assert(((void *) v->axes - (void *) v) % sizeof(double) == 0); + assert(offsetof(struct _ValuatorClassRec, axisVal) % sizeof(double) == 0); + assert(offsetof(struct _ValuatorClassRec, axes) % sizeof(double) == 0); #endif num_axes++; } diff --git a/xorg-server/test/os.c b/xorg-server/test/os.c index 2d005a0d4..d85dcffbe 100644 --- a/xorg-server/test/os.c +++ b/xorg-server/test/os.c @@ -150,10 +150,10 @@ static void block_sigio_test_nested(void) tail guard must be hit. */ void (*old_handler)(int); - old_handler = signal(SIGIO, sighandler); + old_handler = OsSignal(SIGIO, sighandler); expect_signal = 1; assert(raise(SIGIO) == 0); - assert(signal(SIGIO, old_handler) == sighandler); + assert(OsSignal(SIGIO, old_handler) == sighandler); #endif } diff --git a/xorg-server/test/signal-logging.c b/xorg-server/test/signal-logging.c index d894373f0..88b37c14e 100644 --- a/xorg-server/test/signal-logging.c +++ b/xorg-server/test/signal-logging.c @@ -346,7 +346,11 @@ static void logging_format(void) ptr = 1; do { char expected[30]; +#ifdef __sun /* Solaris doesn't autoadd "0x" to %p format */ + sprintf(expected, "(EE) 0x%p\n", (void*)ptr); +#else sprintf(expected, "(EE) %p\n", (void*)ptr); +#endif LogMessageVerbSigSafe(X_ERROR, -1, "%p\n", (void*)ptr); read_log_msg(logmsg); assert(strcmp(logmsg, expected) == 0); diff --git a/xorg-server/test/touch.c b/xorg-server/test/touch.c index df1db11de..981c694b6 100644 --- a/xorg-server/test/touch.c +++ b/xorg-server/test/touch.c @@ -40,7 +40,7 @@ touch_grow_queue(void) int i; memset(&dev, 0, sizeof(dev)); - dev.name = "test device"; + dev.name = xnfstrdup("test device"); dev.id = 2; dev.valuator = &val; val.numAxes = 5; @@ -82,6 +82,8 @@ touch_grow_queue(void) assert(t->client_id == 0); assert(t->ddx_id == 0); } + + free(dev.name); } static void @@ -95,7 +97,7 @@ touch_find_ddxid(void) int i; memset(&dev, 0, sizeof(dev)); - dev.name = "test device"; + dev.name = xnfstrdup("test device"); dev.id = 2; dev.valuator = &val; val.numAxes = 5; @@ -150,6 +152,8 @@ touch_find_ddxid(void) ProcessWorkQueue(); ti = TouchFindByDDXID(&dev, 40, TRUE); assert(ti == &dev.last.touches[size]); + + free(dev.name); } static void @@ -164,7 +168,7 @@ touch_begin_ddxtouch(void) int size = 5; memset(&dev, 0, sizeof(dev)); - dev.name = "test device"; + dev.name = xnfstrdup("test device"); dev.id = 2; dev.valuator = &val; val.numAxes = 5; @@ -195,6 +199,8 @@ touch_begin_ddxtouch(void) assert(ti->client_id > last_client_id); assert(!ti->emulate_pointer); last_client_id = ti->client_id; + + free(dev.name); } static void @@ -212,7 +218,7 @@ touch_begin_touch(void) screenInfo.screens[0] = &screen; memset(&dev, 0, sizeof(dev)); - dev.name = "test device"; + dev.name = xnfstrdup("test device"); dev.id = 2; memset(&sprite, 0, sizeof(sprite)); @@ -237,6 +243,8 @@ touch_begin_touch(void) assert(ti->emulate_pointer); assert(touch.num_touches == 1); + + free(dev.name); } static void @@ -251,7 +259,7 @@ touch_init(void) screenInfo.screens[0] = &screen; memset(&dev, 0, sizeof(dev)); - dev.name = "test device"; + dev.name = xnfstrdup("test device"); memset(&sprite, 0, sizeof(sprite)); dev.spriteInfo = &sprite; @@ -264,6 +272,8 @@ touch_init(void) rc = InitTouchClassDeviceStruct(&dev, 1, XIDirectTouch, 2); assert(rc == TRUE); assert(dev.touch); + + free(dev.name); } int diff --git a/xorg-server/test/xkb.c b/xorg-server/test/xkb.c index 955e72dff..9047f594c 100644 --- a/xorg-server/test/xkb.c +++ b/xorg-server/test/xkb.c @@ -82,15 +82,17 @@ xkb_get_rules_test(void) static void xkb_set_rules_test(void) { - XkbRMLVOSet rmlvo = { - .rules = "test-rules", - .model = "test-model", - .layout = "test-layout", - .variant = "test-variant", - .options = "test-options" - }; + XkbRMLVOSet rmlvo; XkbRMLVOSet rmlvo_new = { NULL }; + XkbInitRules(&rmlvo, "test-rules", "test-model", "test-layout", + "test-variant", "test-options"); + assert(rmlvo.rules); + assert(rmlvo.model); + assert(rmlvo.layout); + assert(rmlvo.variant); + assert(rmlvo.options); + XkbSetRulesDflts(&rmlvo); XkbGetRulesDflts(&rmlvo_new); @@ -106,6 +108,8 @@ xkb_set_rules_test(void) assert(strcmp(rmlvo.layout, rmlvo_new.layout) == 0); assert(strcmp(rmlvo.variant, rmlvo_new.variant) == 0); assert(strcmp(rmlvo.options, rmlvo_new.options) == 0); + + XkbFreeRMLVOSet(&rmlvo, FALSE); } /** |