| 392 | */ |
| 393 | |
| 394 | static bool_t xdr_decfloat_hyper(xdr_t* xdrs, void* dec) |
| 395 | { |
| 396 | SLONG temp_long[2]; |
| 397 | |
| 398 | switch (xdrs->x_op) |
| 399 | { |
| 400 | case XDR_ENCODE: |
| 401 | memcpy(temp_long, dec, sizeof temp_long); |
| 402 | if (PUTLONG(xdrs, &temp_long[1]) && |
| 403 | PUTLONG(xdrs, &temp_long[0])) |
| 404 | { |
| 405 | return TRUE; |
| 406 | } |
| 407 | return FALSE; |
| 408 | |
| 409 | case XDR_DECODE: |
| 410 | if (!GETLONG(xdrs, &temp_long[1]) || |
| 411 | !GETLONG(xdrs, &temp_long[0])) |
| 412 | { |
| 413 | return FALSE; |
| 414 | } |
| 415 | memcpy(dec, temp_long, sizeof temp_long); |
| 416 | return TRUE; |
| 417 | |
| 418 | case XDR_FREE: |
| 419 | return TRUE; |
| 420 | } |
| 421 | // TMN: added compiler silencier return FALSE. |
| 422 | return FALSE; |
| 423 | } |
| 424 | |
| 425 | |
| 426 | bool_t xdr_dec64(xdr_t* xdrs, Firebird::Decimal64* ip) |
no test coverage detected