>From 7fcfbf715644d2268236b8a19d1f2f83c952d72b Mon Sep 17 00:00:00 2001
From: Pauli Nieminen <suok...@gmail.com>
Date: Mon, 20 Jul 2009 16:25:59 +0300
Subject: [PATCH 07/15] libdrm: Fix random number generator to use unsigned seed.

This fixes wanring about unsigned/signed comparision.
Also make it easier to compile test program using -D switch.
---
 libdrm/xf86drmRandom.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/libdrm/xf86drmRandom.c b/libdrm/xf86drmRandom.c
index ecab9e2..f488630 100644
--- a/libdrm/xf86drmRandom.c
+++ b/libdrm/xf86drmRandom.c
@@ -74,7 +74,9 @@
 #include <stdio.h>
 #include <stdlib.h>

+#ifndef RANDOM_MAIN
 #define RANDOM_MAIN 0
+#endif

 #if !RANDOM_MAIN
 # include "xf86drm.h"
@@ -98,7 +100,7 @@ typedef struct RandomState {
     unsigned long q;           /* m div a */
     unsigned long r;           /* m mod a */
     unsigned long check;
-    long          seed;
+    unsigned long seed;
 } RandomState;

 #if RANDOM_MAIN
@@ -153,7 +155,7 @@ unsigned long drmRandom(void *state)
     hi      = s->seed / s->q;
     lo      = s->seed % s->q;
     s->seed = s->a * lo - s->r * hi;
-    if (s->seed <= 0) s->seed += s->m;
+    if (s->seed > s->m) s->seed += s->m;

     return s->seed;
 }
-- 
1.6.3.3

------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to