aboutsummaryrefslogtreecommitdiff
path: root/contrib/btree_gist/btree_inet.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/btree_gist/btree_inet.c')
-rw-r--r--contrib/btree_gist/btree_inet.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/contrib/btree_gist/btree_inet.c b/contrib/btree_gist/btree_inet.c
index 86c27ca9556..34308cc6408 100644
--- a/contrib/btree_gist/btree_inet.c
+++ b/contrib/btree_gist/btree_inet.c
@@ -99,9 +99,11 @@ gbt_inet_compress(PG_FUNCTION_ARGS)
if (entry->leafkey)
{
inetKEY *r = (inetKEY *) palloc(sizeof(inetKEY));
+ bool failure = false;
retval = palloc(sizeof(GISTENTRY));
- r->lower = convert_network_to_scalar(entry->key, INETOID);
+ r->lower = convert_network_to_scalar(entry->key, INETOID, &failure);
+ Assert(!failure);
r->upper = r->lower;
gistentryinit(*retval, PointerGetDatum(r),
entry->rel, entry->page,
@@ -118,13 +120,18 @@ Datum
gbt_inet_consistent(PG_FUNCTION_ARGS)
{
GISTENTRY *entry = (GISTENTRY *) PG_GETARG_POINTER(0);
- double query = convert_network_to_scalar(PG_GETARG_DATUM(1), INETOID);
+ Datum dquery = PG_GETARG_DATUM(1);
StrategyNumber strategy = (StrategyNumber) PG_GETARG_UINT16(2);
/* Oid subtype = PG_GETARG_OID(3); */
bool *recheck = (bool *) PG_GETARG_POINTER(4);
inetKEY *kkk = (inetKEY *) DatumGetPointer(entry->key);
GBT_NUMKEY_R key;
+ double query;
+ bool failure = false;
+
+ query = convert_network_to_scalar(dquery, INETOID, &failure);
+ Assert(!failure);
/* All cases served by this function are inexact */
*recheck = true;