From bc2573614d40ccf457991223d6727e29486621f4 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Sun, 1 Jan 2023 17:51:27 +0000
Subject: [PATCH] mandb: Fix crash when processing stray cats

Regression introduced in man-db 2.11.0.  Fixes Debian bug #1027487.

* src/straycats.c (check_for_stray): Pass a basic trace list to
`store_descriptions`, since that's required as of commit
d3e4b5522ae8152f10db0bb98e6873c9cc17ed59.
* NEWS.md: Document this.
---
 src/straycats.c | 9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/straycats.c b/src/straycats.c
index 95e8750a..932230b0 100644
--- a/src/straycats.c
+++ b/src/straycats.c
@@ -251,13 +251,18 @@ static int check_for_stray (MYDBM_FILE dbf)
 				if (find_name_decompressed (decomp,
 							    catdir_base,
 							    &lg)) {
-					gl_list_t descs;
+					gl_list_t descs, trace;
 					strays++;
 					descs = parse_descriptions
 						(mandir_base, lg.whatis);
+					trace = new_string_list (GL_ARRAY_LIST,
+								 true);
+					gl_list_add_last (trace,
+							  xstrdup (catdir));
 					store_descriptions (dbf, descs, info,
 							    NULL, mandir_base,
-							    NULL);
+							    trace);
+					gl_list_free (trace);
 					gl_list_free (descs);
 				} else if (quiet < 2)
 					error (0, 0, _("warning: %s: whatis parse for %s(%s) failed"),
-- 
GitLab

