From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: zsh-workers-request@euclid.skiles.gatech.edu Received: from euclid.skiles.gatech.edu (list@euclid.skiles.gatech.edu [130.207.146.50]) by coral.primenet.com.au (8.7.6/8.7.3) with ESMTP id DAA09487 for ; Tue, 26 Nov 1996 03:23:51 +1100 (EST) Received: (from list@localhost) by euclid.skiles.gatech.edu (8.7.3/8.7.3) id LAA21138; Mon, 25 Nov 1996 11:02:25 -0500 (EST) Resent-Date: Mon, 25 Nov 1996 11:02:25 -0500 (EST) From: Zefram Message-Id: <24676.199611251602@stone.dcs.warwick.ac.uk> Subject: Re: big key binding patch To: pws@ifh.de (Peter Stephenson) Date: Mon, 25 Nov 1996 16:02:40 +0000 (GMT) Cc: zsh-workers@math.gatech.edu In-Reply-To: <199611251322.OAA26377@hydra.ifh.de> from "Peter Stephenson" at Nov 25, 96 02:22:20 pm X-Loop: zefram@dcs.warwick.ac.uk X-Stardate: [-31]8478.34 X-US-Congress: Moronic fuckers Content-Type: text Resent-Message-ID: <"V-5Rl3.0.9A5.GCSco"@euclid> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/2472 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu >This key binding overhaul was certainly necessary. It certainly was, Stanley. >the str Key element doesn't get set to null in addkeybindentry(), >causing `already free' error messages later. However, is the >zfree(cur->str) immediately after the addkeybindentry() in >bin_bindkey() still required? It's not quite clear to me since the >test at the end of addkeybindentry() is different (and so is the free, >but that must be essentially cosmetic). Urgh. I'm planning another patch, after the next release, which among other things will clean up this area of bin_bindkey() quite a bit. >There's also some not-bugs with uninitialized variables that gcc complains >about which I've fixed anyway (that's the current policy, not clear >how necessary it really is but it eliminates a source of complaints). Yes, I wonder why those didn't show up when I first compiled the new code. >I still had -pedantic turned on when I first compiled this and gcc >doesn't like having to initialise the keybindtab elements of list[] in >unbindzlefunc() at load time. That probably needs fixing (if there >are any genuinely pedantic compilers around) but I couldn't think of a >portable fix without more verbose code. That'll teach me to assume that someone else was mistaken. The code I replaced had HashTable *'s in that list, and extra dereferences. -zefram