fix string to epicsUInt32 conversion via double
This commit is contained in:
@ -94,7 +94,7 @@ static long cvt_st_UInt32(const char *from, void *pfield, const dbAddr *paddr)
|
||||
status = epicsParseFloat64(from, &dval, &end);
|
||||
if (!status &&
|
||||
dval >=0 &&
|
||||
dval <= ULONG_MAX)
|
||||
dval <= UINT_MAX)
|
||||
*to = dval;
|
||||
}
|
||||
return status;
|
||||
|
@ -302,7 +302,7 @@ static long getStringUlong(const dbAddr *paddr,
|
||||
epicsFloat64 dval;
|
||||
|
||||
status = epicsParseFloat64(psrc, &dval, &end);
|
||||
if (!status && 0 <= dval && dval <= ULONG_MAX)
|
||||
if (!status && 0 <= dval && dval <= UINT_MAX)
|
||||
*pdst = dval;
|
||||
}
|
||||
if (status)
|
||||
@ -1052,7 +1052,7 @@ static long putStringUlong(dbAddr *paddr,
|
||||
epicsFloat64 dval;
|
||||
|
||||
status = epicsParseFloat64(psrc, &dval, &end);
|
||||
if (!status && 0 <= dval && dval <= ULONG_MAX)
|
||||
if (!status && 0 <= dval && dval <= UINT_MAX)
|
||||
*pdst = dval;
|
||||
}
|
||||
if (status)
|
||||
|
@ -181,7 +181,7 @@ static long cvt_st_ul(const void *f, void *t, const dbAddr *paddr)
|
||||
status = epicsParseFloat64(from, &dval, &end);
|
||||
if (!status &&
|
||||
dval >=0 &&
|
||||
dval <= ULONG_MAX)
|
||||
dval <= UINT_MAX)
|
||||
*to = dval;
|
||||
}
|
||||
return status;
|
||||
|
Reference in New Issue
Block a user