gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] /srv/bzr/gnash/trunk r10523: Change the order of retrievi


From: Benjamin Wolsey
Subject: [Gnash-commit] /srv/bzr/gnash/trunk r10523: Change the order of retrieving stack values in mathematical
Date: Thu, 08 Jan 2009 18:37:37 +0100
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 10523
committer: Benjamin Wolsey <address@hidden>
branch nick: trunk
timestamp: Thu 2009-01-08 18:37:37 +0100
message:
  Change the order of retrieving stack values in mathematical
  operations, as this changes the order of valueOf calls. Passes in
  swfdec math-actions.
modified:
  libcore/vm/ASHandlers.cpp
  testsuite/swfdec/PASSING
=== modified file 'libcore/vm/ASHandlers.cpp'
--- a/libcore/vm/ASHandlers.cpp 2009-01-08 16:46:59 +0000
+++ b/libcore/vm/ASHandlers.cpp 2009-01-08 17:37:37 +0000
@@ -720,8 +720,8 @@
 
     as_environment& env = thread.env;
     
+    const double operand2 = env.top(0).to_number();
     const double operand1 = env.top(1).to_number();
-    const double operand2 = env.top(0).to_number();
     env.top(1) = operand1 + operand2;
     env.drop(1);
 }
@@ -730,12 +730,10 @@
 SWFHandlers::ActionSubtract(ActionExec& thread)
 {
 
-    // env.top(1) -= env.top(0); //original version
-
     as_environment& env = thread.env;
     
+    const double operand2 = env.top(0).to_number();
     const double operand1 = env.top(1).to_number();
-    const double operand2 = env.top(0).to_number();
     env.top(1) = operand1 - operand2;
     env.drop(1);
 }
@@ -746,8 +744,8 @@
 
     as_environment& env = thread.env;
     
+    const double operand2 = env.top(0).to_number();
     const double operand1 = env.top(1).to_number();
-    const double operand2 = env.top(0).to_number();
     env.top(1) = operand1 * operand2;
     env.drop(1);
 }
@@ -763,8 +761,8 @@
 
     as_environment& env = thread.env;
     
+    const double operand2 = env.top(0).to_number();
     const double operand1 = env.top(1).to_number();
-    const double operand2 = env.top(0).to_number();
 
     if (operand2 == 0)
     {

=== modified file 'testsuite/swfdec/PASSING'
--- a/testsuite/swfdec/PASSING  2009-01-08 16:46:59 +0000
+++ b/testsuite/swfdec/PASSING  2009-01-08 17:37:37 +0000
@@ -545,6 +545,9 @@
 lots-of-arguments-6.swf:e13d668b96c7c70e96269dab0d56feda
 lots-of-arguments-7.swf:fb4934d4aeac11b313232c373de8e3d8
 lots-of-arguments-8.swf:9f73b7b8265b8e5ece847ff29db6cafc
+math-actions-5.swf:f694e324e1deee9019a6c1549b648def
+math-actions-6.swf:5649d8a5153a9412fc6ae5fad5b19996
+math-actions-7.swf:2ecc75aead5407adc2e3b2495526c709
 math-constants-5.swf:ca9d0fc66667d7c7863e699367176573
 math-constants-6.swf:cc4a6b92d473f57cb5479c97ba77c2e0
 math-constants-7.swf:53df046dd67c331c79c0c939215ac770


reply via email to

[Prev in Thread] Current Thread [Next in Thread]