aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/tsearch2/dict.c4
-rw-r--r--contrib/tsearch2/rank.c4
-rw-r--r--contrib/tsearch2/ts_cfg.c4
-rw-r--r--contrib/tsearch2/tsvector.c2
-rw-r--r--contrib/tsearch2/wparser.c4
5 files changed, 12 insertions, 6 deletions
diff --git a/contrib/tsearch2/dict.c b/contrib/tsearch2/dict.c
index 357097681e5..7bbc996d51f 100644
--- a/contrib/tsearch2/dict.c
+++ b/contrib/tsearch2/dict.c
@@ -92,7 +92,9 @@ reset_dict(void)
static int
comparedict(const void *a, const void *b)
{
- return ((DictInfo *) a)->dict_id - ((DictInfo *) b)->dict_id;
+ if ( ((DictInfo *) a)->dict_id == ((DictInfo *) b)->dict_id )
+ return 0;
+ return ( ((DictInfo *) a)->dict_id < ((DictInfo *) b)->dict_id ) ? -1 : 1;
}
DictInfo *
diff --git a/contrib/tsearch2/rank.c b/contrib/tsearch2/rank.c
index 3c4a3cef089..8dc10e2a426 100644
--- a/contrib/tsearch2/rank.c
+++ b/contrib/tsearch2/rank.c
@@ -386,7 +386,7 @@ static int
compareDocR(const void *a, const void *b)
{
if (((DocRepresentation *) a)->pos == ((DocRepresentation *) b)->pos)
- return 1;
+ return 0;
return (((DocRepresentation *) a)->pos > ((DocRepresentation *) b)->pos) ? 1 : -1;
}
@@ -654,7 +654,7 @@ static int
compareDocWord(const void *a, const void *b)
{
if (((DocWord *) a)->pos == ((DocWord *) b)->pos)
- return 1;
+ return 0;
return (((DocWord *) a)->pos > ((DocWord *) b)->pos) ? 1 : -1;
}
diff --git a/contrib/tsearch2/ts_cfg.c b/contrib/tsearch2/ts_cfg.c
index afebb113199..3c64cb0a932 100644
--- a/contrib/tsearch2/ts_cfg.c
+++ b/contrib/tsearch2/ts_cfg.c
@@ -186,7 +186,9 @@ reset_cfg(void)
static int
comparecfg(const void *a, const void *b)
{
- return ((TSCfgInfo *) a)->id - ((TSCfgInfo *) b)->id;
+ if ( ((TSCfgInfo *) a)->id == ((TSCfgInfo *) b)->id )
+ return 0;
+ return ( ((TSCfgInfo *) a)->id < ((TSCfgInfo *) b)->id ) ? -1 : 1;
}
TSCfgInfo *
diff --git a/contrib/tsearch2/tsvector.c b/contrib/tsearch2/tsvector.c
index a8e1dbfe738..888367c8293 100644
--- a/contrib/tsearch2/tsvector.c
+++ b/contrib/tsearch2/tsvector.c
@@ -51,7 +51,7 @@ static int
comparePos(const void *a, const void *b)
{
if (((WordEntryPos *) a)->pos == ((WordEntryPos *) b)->pos)
- return 1;
+ return 0;
return (((WordEntryPos *) a)->pos > ((WordEntryPos *) b)->pos) ? 1 : -1;
}
diff --git a/contrib/tsearch2/wparser.c b/contrib/tsearch2/wparser.c
index 554c2684b9b..33bfd4d87e8 100644
--- a/contrib/tsearch2/wparser.c
+++ b/contrib/tsearch2/wparser.c
@@ -93,7 +93,9 @@ reset_prs(void)
static int
compareprs(const void *a, const void *b)
{
- return ((WParserInfo *) a)->prs_id - ((WParserInfo *) b)->prs_id;
+ if ( ((WParserInfo *) a)->prs_id == ((WParserInfo *) b)->prs_id )
+ return 0;
+ return ( ((WParserInfo *) a)->prs_id < ((WParserInfo *) b)->prs_id ) ? -1 : 1;
}
WParserInfo *