git: 95bf75895ddc - main - join(1): Fix ordering in case of missing fields
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 24 Jan 2024 10:05:58 UTC
The branch main has been updated by tijl:
URL: https://cgit.FreeBSD.org/src/commit/?id=95bf75895ddcf17402b1f69dce26cb821c922476
commit 95bf75895ddcf17402b1f69dce26cb821c922476
Author: Tijl Coosemans <tijl@FreeBSD.org>
AuthorDate: 2024-01-22 10:35:31 +0000
Commit: Tijl Coosemans <tijl@FreeBSD.org>
CommitDate: 2024-01-24 09:58:00 +0000
join(1): Fix ordering in case of missing fields
The comparison function had the ordering reversed causing join(1) to
miss some matching lines.
PR: 232405
Submitted by: Martijn van Duren <martijn@openbsd.org>
MFC after: 1 week
---
usr.bin/join/join.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/usr.bin/join/join.c b/usr.bin/join/join.c
index 09263ea16c22..b1be8cd81690 100644
--- a/usr.bin/join/join.c
+++ b/usr.bin/join/join.c
@@ -380,9 +380,9 @@ static int
cmp(LINE *lp1, u_long fieldno1, LINE *lp2, u_long fieldno2)
{
if (lp1->fieldcnt <= fieldno1)
- return (lp2->fieldcnt <= fieldno2 ? 0 : 1);
+ return (lp2->fieldcnt <= fieldno2 ? 0 : -1);
if (lp2->fieldcnt <= fieldno2)
- return (-1);
+ return (1);
return (mbscoll(lp1->fields[fieldno1], lp2->fields[fieldno2]));
}