(Matrix) Fixing matrix multiply by quaternion 68/17868/1
authorDavid Steele <david.steele@partner.samsung.com>
Thu, 6 Mar 2014 15:50:50 +0000 (15:50 +0000)
committerDavid Steele <david.steele@partner.samsung.com>
Tue, 11 Mar 2014 17:31:27 +0000 (17:31 +0000)
[Issue#]       N/A
[Problem]      Last row of matrix has random values
[Cause]        It's not being initialized or written to
[Solution]     Ensure the last row is set appropriately

Change-Id: I1b5d3da3d970b7c311ead4203eb197d11d52ccd7
Signed-off-by: David Steele <david.steele@partner.samsung.com>
dali/public-api/math/matrix.cpp

index 9fa0778..9812052 100644 (file)
@@ -416,10 +416,10 @@ void Matrix::Multiply( Matrix& result, const Matrix& lhs, const Quaternion& rhs
                  : "r"(temp), "r"(lhsPtr), "r" (rhsPtr)
                  : "%r0", "%q0", "%q1", "%q2", "%q4", "%q5", "%q6", "%q7", "memory" );
 
-  rhsPtr[ 12 ] = 0.0f;
-  rhsPtr[ 13 ] = 0.0f;
-  rhsPtr[ 14 ] = 0.0f;
-  rhsPtr[ 15 ] = 1.0f;
+  temp[ 12 ] = 0.0f;
+  temp[ 13 ] = 0.0f;
+  temp[ 14 ] = 0.0f;
+  temp[ 15 ] = 1.0f;
 #endif
 }