aboutsummaryrefslogtreecommitdiff
path: root/pixman/test/thread-test.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2013-10-16 11:30:08 +0200
committermarha <marha@users.sourceforge.net>2013-10-16 11:30:08 +0200
commit56e12b1310b1b52d00bc27e919d915255af5bf03 (patch)
tree19379a18fe9a678a109397837339820892101e4b /pixman/test/thread-test.c
parentc5883f8af060c0a300a29e732e8bb893bc8e0eca (diff)
parent9e23b44bfe1e6e85231b1c07d945cadf0c868648 (diff)
downloadvcxsrv-56e12b1310b1b52d00bc27e919d915255af5bf03.tar.gz
vcxsrv-56e12b1310b1b52d00bc27e919d915255af5bf03.tar.bz2
vcxsrv-56e12b1310b1b52d00bc27e919d915255af5bf03.zip
Merge remote-tracking branch 'origin/released'
* origin/released: fontconfig libxcb libxcb/xcb-proto xserver mesa pixman xkbcomp git update 16 oct 2013 Conflicts: mesalib/src/mesa/drivers/dri/common/drisw_util.c pixman/pixman/pixman-mmx.c
Diffstat (limited to 'pixman/test/thread-test.c')
-rw-r--r--pixman/test/thread-test.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/pixman/test/thread-test.c b/pixman/test/thread-test.c
index f24c31d06..fa2193302 100644
--- a/pixman/test/thread-test.c
+++ b/pixman/test/thread-test.c
@@ -18,6 +18,7 @@ typedef struct
{
int thread_no;
uint32_t *dst_buf;
+ prng_t prng_state;
} info_t;
static const pixman_op_t operators[] =
@@ -90,7 +91,7 @@ static const pixman_format_code_t formats[] =
#define N_ROUNDS 8192
#define RAND_ELT(arr) \
- arr[prng_rand() % ARRAY_LENGTH (arr)]
+ arr[prng_rand_r(&info->prng_state) % ARRAY_LENGTH (arr)]
#define DEST_WIDTH (7)
@@ -103,15 +104,17 @@ thread (void *data)
pixman_image_t *dst_img, *src_img;
int i;
- prng_srand (info->thread_no);
+ prng_srand_r (&info->prng_state, info->thread_no);
for (i = 0; i < N_ROUNDS; ++i)
{
pixman_op_t op;
int rand1, rand2;
- prng_randmemset (info->dst_buf, DEST_WIDTH * sizeof (uint32_t), 0);
- prng_randmemset (src_buf, sizeof (src_buf), 0);
+ prng_randmemset_r (&info->prng_state, info->dst_buf,
+ DEST_WIDTH * sizeof (uint32_t), 0);
+ prng_randmemset_r (&info->prng_state, src_buf,
+ sizeof (src_buf), 0);
src_img = pixman_image_create_bits (
RAND_ELT (formats), 4, 4, src_buf, 16);
@@ -122,8 +125,8 @@ thread (void *data)
image_endian_swap (src_img);
image_endian_swap (dst_img);
- rand2 = prng_rand() % 4;
- rand1 = prng_rand() % 4;
+ rand2 = prng_rand_r (&info->prng_state) % 4;
+ rand1 = prng_rand_r (&info->prng_state) % 4;
op = RAND_ELT (operators);
pixman_image_composite32 (
@@ -181,7 +184,7 @@ main (void)
crc32 = compute_crc32 (0, crc32s, sizeof crc32s);
-#define EXPECTED 0xFD497D8D
+#define EXPECTED 0xE299B18E
if (crc32 != EXPECTED)
{