- Fixed incorrect handling of negative first input value in mpi_sub_abs() (found by code coverage tests).

diff --git a/ChangeLog b/ChangeLog
index 34e80d5..4a35a21 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,8 @@
      mpi_read_string() (found by code coverage tests).

    * Fixed incorrect handling of one single negative input

      value in mpi_add_abs() (found by code coverage tests).

+   * Fixed incorrect handling of negative first input

+     value in mpi_sub_abs() (found by code coverage tests).

 

 = Version 0.11.1 released on 2009-05-17

    * Fixed missing functionality for SHA-224, SHA-256, SHA384,

diff --git a/library/bignum.c b/library/bignum.c
index 218e50b..9f11a70 100644
--- a/library/bignum.c
+++ b/library/bignum.c
@@ -762,6 +762,11 @@
     if( X != A )
         MPI_CHK( mpi_copy( X, A ) );
 
+    /*
+     * X should always be positive as a result of unsigned substractions.
+     */
+    X->s = 1;
+
     ret = 0;
 
     for( n = B->n - 1; n >= 0; n-- )