浏览代码

Fix bug report 34320, about random returning two same values at start

git-svn-id: trunk@35259 -
pierre 8 年之前
父节点
当前提交
d5f2c58d32
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      rtl/inc/system.inc

+ 2 - 1
rtl/inc/system.inc

@@ -643,10 +643,11 @@ begin
       OldRandSeed:=RandSeed;
       OldRandSeed:=RandSeed;
       l_index:=MTWIST_N;
       l_index:=MTWIST_N;
     end;
     end;
-  if mt_index=MTWIST_N then
+  if l_index=MTWIST_N then
     begin
     begin
       mtwist_update_state;
       mtwist_update_state;
       l_index:=0;
       l_index:=0;
+      mt_index:=1;
     end;
     end;
   result:=mt_state[l_index];
   result:=mt_state[l_index];
   result:=result xor (result shr 11);
   result:=result xor (result shr 11);