[gcalctool] Fix inactive random button



commit f6dd2f423b05a3724e9d5d42541dfe3052d30c37
Author: Robert Ancell <robert ancell gmail com>
Date:   Fri Oct 9 18:41:20 2009 +1100

    Fix inactive random button

 ChangeLog               |    4 ++++
 src/display.c           |    6 ++++--
 src/mp-equation-lexer.l |    3 ++-
 3 files changed, 10 insertions(+), 3 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 7f72c04..7e3f295 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,10 @@
 gcalctool change history.
 =========================
 
+2009-10-09 Robert Ancell <robert ancell gmail com>
+
+    * Fix inactive random button
+
 2009-10-06 Robin Sonefors <ozamosi flukkost nu>
 
     * Add (rough) currency conversion (Bug #533690)
diff --git a/src/display.c b/src/display.c
index a1a35ea..64cb266 100644
--- a/src/display.c
+++ b/src/display.c
@@ -728,8 +728,10 @@ get_variable(const char *name, MPNumber *z, void *data)
     for (c = lower_name; *c; c++)
         *c = tolower(*c);
 
-    if (lower_name[0] == 'r')
-        mp_set_from_mp(register_get_value(sub_atoi(name+1)), z);
+    if (strcmp(lower_name, "rand") == 0)
+        mp_set_from_random(z);
+    else if (lower_name[0] == 'r')
+        mp_set_from_mp(register_get_value(atoi(name+1)), z);
     else if (strcmp(lower_name, "ans") == 0)
         mp_set_from_mp(display_get_answer(display), z);
     else
diff --git a/src/mp-equation-lexer.l b/src/mp-equation-lexer.l
index 172cce6..66dfdd4 100644
--- a/src/mp-equation-lexer.l
+++ b/src/mp-equation-lexer.l
@@ -70,7 +70,8 @@ NUMBER   {BIN_NUM}|{OCT_NUM}|{DEC_NUM}|{HEX_NUM}
 GREEKS   "α"|"β"|"γ"|"δ"|"ε"|"ζ"|"η"|"θ"|"ι"|"κ"|"λ"|"μ"|"ν"|"ξ"|"ο"|"Ï?"|"Ï?"|"Ï?"|"Ï?"|"Ï?"|"Ï?"|"Ï?"|"Ï?"|"Ï?"|"Ï?"
 REGISTERS "Râ??"|"Râ??"|"Râ??"|"Râ??"|"Râ??"|"Râ??"|"Râ??"|"Râ??"|"Râ??"|"Râ??"
 ANS      [aA][nN][sS]
-VARIABLE {REGISTERS}|{GREEKS}|"e"|{ANS}
+RAND     [rR][aA][nN][dD]
+VARIABLE {REGISTERS}|{GREEKS}|"e"|{ANS}|{RAND}
 VARIABLE_NAME [a-zA-Z]+
 FUNCTION {VARIABLE_NAME}|{VARIABLE_NAME}{INVERSE}|{VARIABLE_NAME}{SUB_NUM}
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]