zsh-workers
 help / color / mirror / code / Atom feed
From: "Bart Schaefer" <schaefer@candle.brasslantern.com>
To: andreas.koenig@franz.ww.tu-berlin.de
Cc: zsh-workers@math.gatech.edu
Subject: Re: zsh-3.0-pre2 cores on irix 5.3 (?)
Date: Sun, 7 Jul 1996 09:16:34 -0700	[thread overview]
Message-ID: <960707091640.ZM4171@candle.brasslantern.com> (raw)
In-Reply-To: Andreas Koenig <k@anna.in-berlin.de> "Re: zsh-3.0-pre2 cores on irix 5.3 (?)" (Jul  7, 12:50pm)

On Jul 7, 12:50pm, Andreas Koenig wrote:
} Subject: Re: zsh-3.0-pre2 cores on irix 5.3 (?)
}
} I started investigating, and reduced the bug (see below)
} 
}   > 1. Do you start getting the `alloc_stackp != 0' error immediately upon
}   >    starting zsh?  Or only after doing some completions?  Or only after
}   >    the periodic function starts firing?
} 
} Immediately after starting and then every $PERIOD seconds.
} 
} Here's my current .zshrc:
} 
} PERIOD=1800
} periodic () { . $HOME/.zlogout }
} 
} Here's my .zlogout:
} 
} echo "In .zprofile 1"
} #dirs >! $HOME/.zdirhistory
} #echo -n ^[]1\;$USERNAME@$HOST\a^[]2\;$USERNAME@$HOST $$\a
} 
} You see the lines it had before commented out. It turns out that ANY
} command in the file triggers _one_ alloc_stackp message.

Turns out that "source" or "." inside any shell function will trigger
that BUG warning, which isn't really a bug at all -- it's doshfunc()
calling loop() recursively, so the allocation stack depth reflects the
depth of recursion.

zagzig<3> echo echo foo > foo
zagzig<4> blat() { . foo }
zagzig<5> blat
foo
BUG: alloc_stackp != 0 in loop()
zagzig<6>

The for(;;) in loop() continues before reaching the DPUTS() call on any
blank or commented line, which is why I didn't see it when I first tried
to reproduce it, and which is why you see it once for each command.

Try this patch.

*** Src/init.c.orig	Fri Jul  5 10:57:45 1996
--- Src/init.c	Sun Jul  7 09:07:57 1996
***************
*** 128,134 ****
  	    if (toplevel)
  		noexitct = 0;
  	}
! 	DPUTS(alloc_stackp, "BUG: alloc_stackp != 0 in loop()");
  	if (ferror(stderr)) {
  	    zerr("write error", NULL, 0);
  	    clearerr(stderr);
--- 128,134 ----
  	    if (toplevel)
  		noexitct = 0;
  	}
! 	DPUTS(alloc_stackp > locallevel, "BUG: alloc_stackp > locallevel in loop()");
  	if (ferror(stderr)) {
  	    zerr("write error", NULL, 0);
  	    clearerr(stderr);

-- 
Bart Schaefer                             Brass Lantern Enterprises
http://www.well.com/user/barts            http://www.nbn.com/people/lantern

New male in /home/schaefer:
>N  2 Justin William Schaefer  Sat May 11 03:43  53/4040  "Happy Birthday"



  parent reply	other threads:[~1996-07-07 16:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-07-06 11:52 Andreas Koenig
     [not found] ` <k@anna.in-berlin.de>
1996-07-06 16:24   ` Bart Schaefer
1996-07-06 17:29     ` Zoltan Hidvegi
1996-07-06 21:32       ` Andreas Koenig
1996-07-07 16:16   ` Bart Schaefer [this message]
1996-07-07 17:28     ` Andreas Koenig
1996-07-08  0:57     ` Zoltan Hidvegi
1996-07-08  7:37       ` Zefram
1996-07-08 14:54         ` Zoltan Hidvegi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=960707091640.ZM4171@candle.brasslantern.com \
    --to=schaefer@candle.brasslantern.com \
    --cc=andreas.koenig@franz.ww.tu-berlin.de \
    --cc=schaefer@nbn.com \
    --cc=zsh-workers@math.gatech.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).