@@ -1725,7 +1725,7 @@ void CVT_move_common(const dsc* from, dsc* to, DecimalStatus decSt, Callbacks* c
1725
1725
intermediate.makeText (static_cast <USHORT>(strlen (text)), CS_ASCII,
1726
1726
reinterpret_cast <UCHAR*>(text));
1727
1727
1728
- CVT_move_common (&intermediate, to, 0 , cb);
1728
+ CVT_move_common (&intermediate, to, decSt , cb);
1729
1729
return ;
1730
1730
}
1731
1731
@@ -1760,7 +1760,7 @@ void CVT_move_common(const dsc* from, dsc* to, DecimalStatus decSt, Callbacks* c
1760
1760
1761
1761
case dtype_short:
1762
1762
{
1763
- ULONG lval = CVT_get_long (from, (SSHORT) to->dsc_scale , 0 , cb->err );
1763
+ ULONG lval = CVT_get_long (from, (SSHORT) to->dsc_scale , decSt , cb->err );
1764
1764
// TMN: Here we should really have the following fb_assert
1765
1765
// fb_assert(lval <= MAX_SSHORT);
1766
1766
*(SSHORT*) p = (SSHORT) lval;
@@ -1770,11 +1770,11 @@ void CVT_move_common(const dsc* from, dsc* to, DecimalStatus decSt, Callbacks* c
1770
1770
return ;
1771
1771
1772
1772
case dtype_long:
1773
- *(SLONG *) p = CVT_get_long (from, (SSHORT) to->dsc_scale , 0 , cb->err );
1773
+ *(SLONG *) p = CVT_get_long (from, (SSHORT) to->dsc_scale , decSt , cb->err );
1774
1774
return ;
1775
1775
1776
1776
case dtype_int64:
1777
- *(SINT64 *) p = CVT_get_int64 (from, (SSHORT) to->dsc_scale , 0 , cb->err );
1777
+ *(SINT64 *) p = CVT_get_int64 (from, (SSHORT) to->dsc_scale , decSt , cb->err );
1778
1778
return ;
1779
1779
1780
1780
case dtype_quad:
@@ -1784,12 +1784,12 @@ void CVT_move_common(const dsc* from, dsc* to, DecimalStatus decSt, Callbacks* c
1784
1784
((SLONG *) p)[1 ] = ((SLONG *) q)[1 ];
1785
1785
return ;
1786
1786
}
1787
- *(SQUAD *) p = CVT_get_quad (from, (SSHORT) to->dsc_scale , 0 , cb->err );
1787
+ *(SQUAD *) p = CVT_get_quad (from, (SSHORT) to->dsc_scale , decSt , cb->err );
1788
1788
return ;
1789
1789
1790
1790
case dtype_real:
1791
1791
{
1792
- double d_value = CVT_get_double (from, 0 , cb->err );
1792
+ double d_value = CVT_get_double (from, decSt , cb->err );
1793
1793
if (ABSOLUT (d_value) > FLOAT_MAX)
1794
1794
cb->err (Arg::Gds (isc_arith_except) << Arg::Gds (isc_numeric_out_of_range));
1795
1795
*(float *) p = (float ) d_value;
@@ -1801,7 +1801,7 @@ void CVT_move_common(const dsc* from, dsc* to, DecimalStatus decSt, Callbacks* c
1801
1801
{
1802
1802
USHORT strtype_unused;
1803
1803
UCHAR* ptr;
1804
- USHORT len = CVT_get_string_ptr_common (from, &strtype_unused, &ptr, NULL , 0 , 0 , cb);
1804
+ USHORT len = CVT_get_string_ptr_common (from, &strtype_unused, &ptr, NULL , 0 , decSt , cb);
1805
1805
1806
1806
if (len == to->dsc_length )
1807
1807
{
@@ -2503,7 +2503,7 @@ Decimal64 CVT_get_dec64(const dsc* desc, DecimalStatus decSt, ErrorFunction err)
2503
2503
case dtype_varying:
2504
2504
case dtype_cstring:
2505
2505
case dtype_text:
2506
- CVT_make_string (desc, ttype_ascii, &p, &buffer, sizeof (buffer) - 1 , 0 , err);
2506
+ CVT_make_string (desc, ttype_ascii, &p, &buffer, sizeof (buffer) - 1 , decSt , err);
2507
2507
buffer.vary_string [buffer.vary_length ] = 0 ;
2508
2508
return d64.set (buffer.vary_string , decSt);
2509
2509
@@ -2588,7 +2588,7 @@ Decimal128 CVT_get_dec128(const dsc* desc, DecimalStatus decSt, ErrorFunction er
2588
2588
case dtype_varying:
2589
2589
case dtype_cstring:
2590
2590
case dtype_text:
2591
- CVT_make_string (desc, ttype_ascii, &p, &buffer, sizeof (buffer) - 1 , 0 , err);
2591
+ CVT_make_string (desc, ttype_ascii, &p, &buffer, sizeof (buffer) - 1 , decSt , err);
2592
2592
buffer.vary_string [buffer.vary_length ] = 0 ;
2593
2593
return d128.set (buffer.vary_string , decSt);
2594
2594
@@ -2680,7 +2680,7 @@ SQUAD CVT_get_quad(const dsc* desc, SSHORT scale, DecimalStatus decSt, ErrorFunc
2680
2680
case dtype_text:
2681
2681
{
2682
2682
USHORT length =
2683
- CVT_make_string (desc, ttype_ascii, &p, &buffer, sizeof (buffer), 0 , err);
2683
+ CVT_make_string (desc, ttype_ascii, &p, &buffer, sizeof (buffer), decSt , err);
2684
2684
scale -= CVT_decompose (p, length, dtype_quad, &value.gds_quad_high , err);
2685
2685
}
2686
2686
break ;
0 commit comments