changeset 13411:814f11fdc297

1223 catman may modify constant data Reviewed by: Gordon Ross <gwr@nexenta.com> Reviewed by: Albert Lee <trisk@nexenta.com> Approved by: Garret D'Amore <garrett@nexenta.com>
author Richard Lowe <richlowe@richlowe.net>
date Thu, 16 Jun 2011 07:46:34 +0100
parents 16832af22909
children 706f98f17323
files usr/src/cmd/man/src/man.c
diffstat 1 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/cmd/man/src/man.c	Mon Jun 27 18:29:43 2011 +0100
+++ b/usr/src/cmd/man/src/man.c	Thu Jun 16 07:46:34 2011 +0100
@@ -921,7 +921,14 @@
 	int	i;
 	struct dupnode *dnp = NULL;
 	char   **realsecv;
-	char   *fakesecv[2] = { " catman ", NULL };
+	/*
+	 * May be overwritten in dupcheck() so must be kept out of .rodata.
+	 */
+	char	fakename[] = " catman ";
+	char	*fakesecv[2];
+
+	fakesecv[0] = fakename;
+	fakesecv[1] = NULL;
 
 	for (p = manp; p != NULL; p = p->next) {
 		/*