Blob Blame History Raw
--- ./d_mat/gso.c.orig	2015-08-13 10:16:22.000000000 -0600
+++ ./d_mat/gso.c	2015-09-23 21:24:08.367946615 -0600
@@ -84,7 +84,9 @@ d_mat_gso(d_mat_t B, const d_mat_t A)
             flag = 0;
             if (s < t)
             {
-                if (s * D_EPS == 0)
+                double u = s * D_EPS;
+
+                if (u > -1.0e-308 && u < 1.0e-308)
                     s = 0;
                 else
                     flag = 1;
--- ./d_mat/qr.c.orig	2015-08-13 10:16:22.000000000 -0600
+++ ./d_mat/qr.c	2015-09-23 21:24:16.687286447 -0600
@@ -92,8 +92,10 @@ d_mat_qr(d_mat_t Q, d_mat_t R, const d_m
             flag = 0;
             if (s < t)
             {
+                double u = s * D_EPS;
+
                 orig = 0;
-                if (s * D_EPS == 0)
+                if (u > -1.0e-308 && u < 1.0e-308)
                     s = 0;
                 else
                     flag = 1;