Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: [bug report] 4.0.2 / 4.0.4 dumps core
- X-seq: zsh-workers 16269
 
- From: Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx>
 
- To: "Wischnowsky, Sven" <Sven.Wischnowsky@xxxxxxxxxxxx>,        zsh-workers@xxxxxxxxxx
 
- Subject: Re: [bug report] 4.0.2 / 4.0.4 dumps core
 
- Date: Wed, 21 Nov 2001 18:35:19 +0000
 
- In-reply-to: <7D865FB0D0A1D5118B6E000347055BBB148483@xxxxxxxxxxxxxxxxxxxxxx>
 
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
 
- References: <7D865FB0D0A1D5118B6E000347055BBB148483@xxxxxxxxxxxxxxxxxxxxxx>
 
On Nov 15,  9:16am, Wischnowsky, Sven wrote:
} 
} > > schaefer[524] Src/zsh -f
} > > zagzig% setopt extendedglob globcomplete nobanghist
} > > zagzig% !^<TAB>zsh: segmentation fault (core dumped)  Src/zsh -f
} 
} Here's that patch.
} 
} Bye
}   Sven
} 
} diff -ur ../oz/Src/hashtable.c ./Src/hashtable.c
} --- ../oz/Src/hashtable.c	Tue Nov 13 19:13:45 2001
} +++ ./Src/hashtable.c	Tue Nov 13 19:26:12 2001
} @@ -975,7 +975,7 @@
}      reswdtab->printnode   = printreswdnode;
}  
}      for (rw = reswds; rw->nam; rw++)
} -	reswdtab->addnode(reswdtab, rw->nam, rw);
} +	reswdtab->addnode(reswdtab, ztrdup(rw->nam), rw);
}  }
}  
}  /* Print a reserved word */
}-- End of excerpt from Wischnowsky, Sven
I'm wondering if it wouldn't be more appropriate to duplicate the strings
in compctl.c:dumphashtable() rather than simply allowing the completion
code to poke bytes into the real reswdtab.
E.g.:
Index: Src/Zle/compctl.c
===================================================================
RCS file: /extra/cvsroot/zsh/zsh-4.0/Src/Zle/compctl.c,v
retrieving revision 1.2
diff -c -r1.2 compctl.c
--- Src/Zle/compctl.c	2001/04/10 16:37:32	1.2
+++ Src/Zle/compctl.c	2001/11/21 17:00:03
@@ -2096,7 +2096,7 @@
 
     for (i = 0; i < ht->hsize; i++)
 	for (hn = ht->nodes[i]; hn; hn = hn->next)
-	    addmatch(hn->nam, (char *) hn);
+	    addmatch(dupstring(hn->nam), (char *) hn);
 }
 
 /* ScanFunc used by maketildelist() et al. */
-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com
Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net   
Messages sorted by:
Reverse Date,
Date,
Thread,
Author