safeDoubleToFloat: handle 0.0 as special case
This commit is contained in:
+3
-1
@@ -466,7 +466,9 @@ struct dbr_ctrl_double{
|
||||
static void safeDoubleToFloat(double *pd,float *pf)
|
||||
{
|
||||
double abs = fabs(*pd);
|
||||
if(abs>=FLT_MAX) {
|
||||
if(*pd==0.0) {
|
||||
*pf = 0.0;
|
||||
} else if(abs>=FLT_MAX) {
|
||||
if(*pd>0.0) *pf = FLT_MAX; else *pf = -FLT_MAX;
|
||||
} else if(abs<=FLT_MIN) {
|
||||
if(*pd>0.0) *pf = FLT_MIN; else *pf = -FLT_MIN;
|
||||
|
||||
Reference in New Issue
Block a user