From: Søren Sandmann Pedersen <[email protected]>

The destination buffer was initialized with 32 bit data, so it started
out different on big-endian vs. little endian. Fix that by
initializing the buffer with random bytes instead.
---
 test/glyph-test.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/test/glyph-test.c b/test/glyph-test.c
index 9ff2a2b..0fb6641 100644
--- a/test/glyph-test.c
+++ b/test/glyph-test.c
@@ -150,9 +150,13 @@ create_image (int max_size, const pixman_format_code_t 
*formats, uint32_t flags)
     }
     else
     {
+       uint8_t *d8;
+
        data = malloc (stride * height);
-       for (i = 0; i < height * stride / 4; ++i)
-           data[i] = lcg_rand_u32();
+
+       d8 = (uint8_t *)data;
+       for (i = 0; i < height * stride; ++i)
+           d8[i] = lcg_rand_n (256);
 
        destroy = destroy_malloced;
     }
@@ -326,6 +330,6 @@ int
 main (int argc, const char *argv[])
 {
     return fuzzer_test_main ("glyph", 30000,
-                            0xA2B67F99,
+                            0x1B7696A2,
                             test_glyphs, argc, argv);
 }
-- 
1.7.4

_______________________________________________
Pixman mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pixman

Reply via email to