From caa9ae32d940fd2f03605afdf171122cf3e0eec6 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Wed, 26 Oct 2022 10:31:57 -0700
Subject: [PROPOSED 1/2] Tune qsort usage slightly
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* zic.c (make_links, associate): Don’t bother to sort size-1 arrays.
Suggested by Jonathan Leffler in:
https://mm.icann.org/pipermail/tz/2022-October/032100.html
---
 zic.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/zic.c b/zic.c
index ad1221c..01dc658 100644
--- a/zic.c
+++ b/zic.c
@@ -690,7 +690,7 @@ static void
 make_links(void)
 {
   ptrdiff_t i, j, nalinks;
-  if (nlinks)
+  if (1 < nlinks)
     qsort(links, nlinks, sizeof *links, qsort_linkcmp);
 
   /* Ignore each link superseded by a later link with the same name.  */
@@ -1496,7 +1496,7 @@ associate(void)
 	register struct rule *	rp;
 	register ptrdiff_t i, j, base, out;
 
-	if (nrules != 0) {
+	if (1 < nrules) {
 		qsort(rules, nrules, sizeof *rules, rcomp);
 		for (i = 0; i < nrules - 1; ++i) {
 			if (strcmp(rules[i].r_name,
-- 
2.37.3

