summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiarhei Siamashka <siarhei.siamashka@gmail.com>2018-06-12 17:38:57 +0300
committerAdam Jackson <ajax@redhat.com>2018-07-06 14:44:22 -0400
commit018bf2f23033ea0c82df3e4cf48dbb330bec9414 (patch)
tree8c344beb5dbf0b5a21ab7f33ec536d5537eafb88
parentbd2b49185b28c5024597a5e530af9fc25de3193a (diff)
downloadpixman-018bf2f23033ea0c82df3e4cf48dbb330bec9414.tar.gz
test: Fix stride calculation in stress-test
Currently the number of bits per pixel is used instead of the number of bytes per pixel when calculating image strides. This does not cause any real problems, but the gaps between scanlines are excessively large. This patch actually converts bits to bytes and rounds up the result to the nearest byte boundary. Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com> Reviewed-by: soren.sandmann@gmail.com
-rw-r--r--test/stress-test.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/test/stress-test.c b/test/stress-test.c
index 1f03c75..85d1293 100644
--- a/test/stress-test.c
+++ b/test/stress-test.c
@@ -291,7 +291,7 @@ create_random_bits_image (alpha_preference_t alpha_preference)
{
default:
case 0:
- stride = width * PIXMAN_FORMAT_BPP (format) + prng_rand_n (17);
+ stride = (width * PIXMAN_FORMAT_BPP (format) + 7) / 8 + prng_rand_n (17);
stride = (stride + 3) & (~3);
bits = (uint32_t *)make_random_bytes (height * stride);
break;
@@ -302,7 +302,7 @@ create_random_bits_image (alpha_preference_t alpha_preference)
break;
case 2: /* Zero-filled */
- stride = width * PIXMAN_FORMAT_BPP (format) + prng_rand_n (17);
+ stride = (width * PIXMAN_FORMAT_BPP (format) + 7) / 8 + prng_rand_n (17);
stride = (stride + 3) & (~3);
bits = fence_malloc (height * stride);
if (!bits)
@@ -311,7 +311,7 @@ create_random_bits_image (alpha_preference_t alpha_preference)
break;
case 3: /* Filled with 0xFF */
- stride = width * PIXMAN_FORMAT_BPP (format) + prng_rand_n (17);
+ stride = (width * PIXMAN_FORMAT_BPP (format) + 7) / 8 + prng_rand_n (17);
stride = (stride + 3) & (~3);
bits = fence_malloc (height * stride);
if (!bits)
@@ -327,7 +327,7 @@ create_random_bits_image (alpha_preference_t alpha_preference)
break;
case 5: /* bits is a real pointer, has read/write functions */
- stride = width * PIXMAN_FORMAT_BPP (format) + prng_rand_n (17);
+ stride = (width * PIXMAN_FORMAT_BPP (format) + 7) / 8 + prng_rand_n (17);
stride = (stride + 3) & (~3);
bits = fence_malloc (height * stride);
if (!bits)
@@ -338,7 +338,7 @@ create_random_bits_image (alpha_preference_t alpha_preference)
break;
case 6: /* bits is a real pointer, stride is negative */
- stride = (width * PIXMAN_FORMAT_BPP (format) + prng_rand_n (17));
+ stride = (width * PIXMAN_FORMAT_BPP (format) + 7) / 8 + prng_rand_n (17);
stride = (stride + 3) & (~3);
bits = (uint32_t *)make_random_bytes (height * stride);
if (!bits)