Skip to content

Commit 071ea1a

Browse files
better solution to same issue
1 parent 4ad4a31 commit 071ea1a

File tree

1 file changed

+1
-13
lines changed

1 file changed

+1
-13
lines changed

src/retrobasic.c

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -754,13 +754,6 @@ static value_t evaluate_expression(expression_t *expression)
754754

755755
// and now for the fun bit, the operators and function list...
756756
case op:
757-
// clear out any values from previous calls
758-
for (int i = 0; i < 3; i++) {
759-
parameters[i].type = NUMBER;
760-
parameters[i].number = 0;
761-
parameters[i].string = NULL;
762-
}
763-
764757
// build a list of values for each of the parameters by recursing
765758
// on them until they return a value
766759
for (int i = 0; i < expression->parms.op.arity; i++)
@@ -781,13 +774,8 @@ static value_t evaluate_expression(expression_t *expression)
781774

782775
case RND:
783776
{
784-
// get a value between 0..<1
777+
// get a value between 0..<1 - no parameters means simple case
785778
result.number = ((double)rand() / (double)RAND_MAX); // don't forget the cast!
786-
787-
// and if the parameter > 1 then multiply it and floor to get 0..x
788-
if (parameters[0].number >= 1.0) {
789-
result.number = floor(result.number * floor(parameters[0].number));
790-
}
791779
}
792780
break;
793781

0 commit comments

Comments
 (0)