diff options
Diffstat (limited to 'contrib/btree_gist/btree_numeric.c')
-rw-r--r-- | contrib/btree_gist/btree_numeric.c | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/contrib/btree_gist/btree_numeric.c b/contrib/btree_gist/btree_numeric.c index d43612a8734..d66901680e3 100644 --- a/contrib/btree_gist/btree_numeric.c +++ b/contrib/btree_gist/btree_numeric.c @@ -174,23 +174,17 @@ gbt_numeric_penalty(PG_FUNCTION_ARGS) ok = gbt_var_key_readable(org); uk = gbt_var_key_readable((GBT_VARKEY *) DatumGetPointer(uni)); - us = DatumGetNumeric(DirectFunctionCall2( - numeric_sub, + us = DatumGetNumeric(DirectFunctionCall2(numeric_sub, PointerGetDatum(uk.upper), - PointerGetDatum(uk.lower) - )); + PointerGetDatum(uk.lower))); - os = DatumGetNumeric(DirectFunctionCall2( - numeric_sub, + os = DatumGetNumeric(DirectFunctionCall2(numeric_sub, PointerGetDatum(ok.upper), - PointerGetDatum(ok.lower) - )); + PointerGetDatum(ok.lower))); - ds = DatumGetNumeric(DirectFunctionCall2( - numeric_sub, + ds = DatumGetNumeric(DirectFunctionCall2(numeric_sub, NumericGetDatum(us), - NumericGetDatum(os) - )); + NumericGetDatum(os))); if (numeric_is_nan(us)) { @@ -208,11 +202,9 @@ gbt_numeric_penalty(PG_FUNCTION_ARGS) if (DirectFunctionCall2(numeric_gt, NumericGetDatum(ds), NumericGetDatum(nul))) { *result += FLT_MIN; - os = DatumGetNumeric(DirectFunctionCall2( - numeric_div, + os = DatumGetNumeric(DirectFunctionCall2(numeric_div, NumericGetDatum(ds), - NumericGetDatum(us) - )); + NumericGetDatum(us))); *result += (float4) DatumGetFloat8(DirectFunctionCall1(numeric_float8_no_overflow, NumericGetDatum(os))); } } |