Skip to content

Commit 8a1610f

Browse files
committed
Protect from zero random seeds (#447)
1 parent 874a0db commit 8a1610f

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

playground/umka.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

runtime/std.um

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,9 @@ const randMax* = 0x7FFFFFFF
325325
randSeed := uint(1)
326326

327327
fn srand*(seed: int) {
328-
randSeed = seed
328+
if seed > 0 {
329+
randSeed = seed
330+
}
329331
}
330332

331333
fn rand*(): int {

src/umka_runtime_src.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,9 @@ static const char *runtimeModuleSources[] = {
336336
"randSeed := uint(1)\n"
337337
"\n"
338338
"fn srand*(seed: int) {\n"
339-
" randSeed = seed\n"
339+
" if seed > 0 {\n"
340+
" randSeed = seed\n"
341+
" }\n"
340342
"}\n"
341343
"\n"
342344
"fn rand*(): int {\n"

0 commit comments

Comments
 (0)