From xemacs-m  Wed May  7 09:52:49 1997
Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id JAA23219
	for <xemacs-beta@xemacs.org>; Wed, 7 May 1997 09:52:46 -0500 (CDT)
Received: from mr1.exu.ericsson.se (mr1.exu.ericsson.com [138.85.147.11]) by gwa.ericsson.com (8.8.2/8.8.2) with ESMTP id JAA07006 for <xemacs-beta@xemacs.org>; Wed, 7 May 1997 09:17:48 -0500 (CDT)
Received: from screamer.rtp.ericsson.se (screamer.rtp.ericsson.se [147.117.133.13]) by mr1.exu.ericsson.se (8.7.1/NAHUB-MR1.1) with SMTP id JAA27493 for <xemacs-beta@xemacs.org>; Wed, 7 May 1997 09:17:47 -0500 (CDT)
Received: from rcur (rcur18.rtp.ericsson.se [147.117.133.138]) by screamer.rtp.ericsson.se (8.6.12/8.6.4) with ESMTP id KAA13937 for <xemacs-beta@xemacs.org>; Wed, 7 May 1997 10:17:46 -0400
To: XEmacs Beta Mailing List <xemacs-beta@xemacs.org>
Subject: VC bug and 20.2-b4 crash
Mime-Version: 1.0 (generated by tm-edit 7.106)
Content-Type: text/plain; charset=US-ASCII
Date: Wed, 07 May 1997 10:17:45 -0400
Message-ID: <22324.863014665@rtp.ericsson.se>
From: Raymond Toy <toy@rtp.ericsson.se>


The specifics:  20.2-b4, Solaris 2.5.1, gcc 2.7.2, X11R6.1.

While tracking down a bug in VC, I somehow caused xemacs to crash.

First, the VC bug.  I was trying to list files locked by any user (via 
the Tools->VC->List Files...).  This sometimes fails because bogus
file names were introduced.  The following patch works around this bug 
which is caused by stripping off the directory name without first
doing an expand-file-name.  I think this patch takes care of this
problem.


--- vc.el~	Thu Apr 24 00:00:02 1997
+++ vc.el	Wed May  7 10:11:02 1997
@@ -1145,7 +1145,7 @@
 scan the entire tree of subdirectories of the current directory."
   (interactive "DVC status of directory: \nP")
   (let* (nonempty
-	 (dl (length dir))
+	 (dl (+ 1 (length (directory-file-name (expand-file-name dir)))))
 	 (filelist nil) (userlist nil)
 	 dired-buf
 	 (subfunction
@@ -1155,7 +1155,7 @@
 			    (and (or verbose user)
 				 (setq filelist (cons (substring f dl) filelist))
 				 (setq userlist (cons user userlist)))))))))
-    (let ((default-directory dir))
+    (let ((default-directory (expand-file-name dir)))
       (if nested
 	  (vc-file-tree-walk subfunction)
 	(vc-dir-all-files subfunction)))


Now the crash, the first one for me in a very long time. :-) I had
invoked edebug to help me find the above bug.  Don't know exactly what
happened because I was holding down the space key to step through the
code.  Here is the traceback:

#0  0xee8740d8 in kill ()
#1  0x6d094 in fatal_error_signal (sig=6)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/emacs.c:204
#2  <signal handler called>
#3  0xee8740d8 in kill ()
#4  0x6efd0 in assert_failed (
    file=0x16d330 "/home/unix/toy/apps/xemacs-20.2-b4/src/insdel.c", 
    line=1548, 
    expr=0x16d360 "bytpos >= BI_BUF_BEGV (buf) && bytpos <= BI_BUF_ZV (buf)")
    at /home/unix/toy/apps/xemacs-20.2-b4/src/emacs.c:2190
#5  0xb2a4c in set_buffer_point (buf=0x6ccc00, bufpos=55, bytpos=55)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/insdel.c:1548
#6  0x59908 in Fforward_char (arg=55, buffer=7130112)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/cmds.c:88
#7  0x738d8 in primitive_funcall (fn=0x59714 <Fforward_char>, nargs=2, 
    args=0xefffad98) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3462
#8  0x73a48 in funcall_subr (subr=0x191410, args=0xefffad98)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3486
#9  0x72cb4 in Feval (form=544549324)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3037
#10 0x73ae8 in apply_lambda (fun=276524452, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3509
#11 0x72d9c in Feval (form=544549236)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#12 0x6fc5c in Fprogn (args=544549228)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:750
#13 0x73d98 in funcall_lambda (fun=544323500, nargs=0, arg_vector=0xefffb69c)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3588
#14 0x73168 in funcall_recording_as (recorded_as=544323500, nargs=0, 
    args=0xefffb698) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3194
#15 0x731c0 in Ffuncall (nargs=1, args=0xefffb698)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3222
#16 0x4fcc0 in Fbyte_code (bytestr=812733236, vector=1081639168, 
    maxdepth=-268455104)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/bytecode.c:418
#17 0x73e00 in funcall_lambda (fun=276524228, nargs=3, arg_vector=0xefffb868)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3596
#18 0x73b30 in apply_lambda (fun=276524228, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3519
#19 0x72d9c in Feval (form=544323436)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#20 0x6fc5c in Fprogn (args=544323428)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:750
#21 0x73d98 in funcall_lambda (fun=544550212, nargs=1, arg_vector=0xefffbd04)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3588
#22 0x73168 in funcall_recording_as (recorded_as=544550212, nargs=1, 
    args=0xefffbd00) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3194
#23 0x731c0 in Ffuncall (nargs=2, args=0xefffbd00)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3222
#24 0x74484 in call1 (fn=544550212, arg0=812721692)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3943
#25 0x9f2fc in mapcar1 (leni=2, vals=0xefffbe30, fn=544550212, seq=540267212)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/fns.c:3222
#26 0x9f45c in Fmapcar (fn=544550212, seq=540267212)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/fns.c:3273
#27 0x738d8 in primitive_funcall (fn=0x9f420 <Fmapcar>, nargs=2, 
    args=0xefffc070) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3462
#28 0x73a48 in funcall_subr (subr=0x195744, args=0xefffc070)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3486
#29 0x72cb4 in Feval (form=544322188)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3037
#30 0x73ae8 in apply_lambda (fun=276524452, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3509
#31 0x72d9c in Feval (form=544322084)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#32 0x6fc5c in Fprogn (args=0)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:750
#33 0x72aa0 in Feval (form=544324084)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:2964
#34 0x73ae8 in apply_lambda (fun=276524452, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3509
#35 0x72d9c in Feval (form=544324028)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#36 0x6fb3c in Fif (args=544545828)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:678
#37 0x72aa0 in Feval (form=543383428)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:2964
#38 0x73ae8 in apply_lambda (fun=276524452, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3509
#39 0x72d9c in Feval (form=543383372)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#40 0x6fc5c in Fprogn (args=1345024024)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:750
#41 0x6ffd4 in FletX (args=544466668)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:863
#42 0x72aa0 in Feval (form=543383340)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:2964
#43 0x73ae8 in apply_lambda (fun=276524452, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3509
#44 0x72d9c in Feval (form=543383284)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#45 0x6fc5c in Fprogn (args=543383276)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:750
#46 0x73d98 in funcall_lambda (fun=543383220, nargs=0, arg_vector=0xefffd7ac)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3588
#47 0x73168 in funcall_recording_as (recorded_as=543383220, nargs=0, 
    args=0xefffd7a8) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3194
#48 0x731c0 in Ffuncall (nargs=1, args=0xefffd7a8)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3222
#49 0x4fcc0 in Fbyte_code (bytestr=812733236, vector=1081639168, 
    maxdepth=-268446640)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/bytecode.c:418
#50 0x73e00 in funcall_lambda (fun=276524228, nargs=3, arg_vector=0xefffddec)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3596
#51 0x73168 in funcall_recording_as (recorded_as=276524228, nargs=3, 
    args=0xefffdde8) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3194
#52 0x731c0 in Ffuncall (nargs=4, args=0xefffdde8)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3222
#53 0x4fcc0 in Fbyte_code (bytestr=812733236, vector=1081639168, 
    maxdepth=-268445040)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/bytecode.c:418
#54 0x73e00 in funcall_lambda (fun=276524228, nargs=3, arg_vector=0xefffdfb8)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3596
#55 0x73b30 in apply_lambda (fun=276524228, numargs=3, 
    unevalled_args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3519
#56 0x72d9c in Feval (form=543383172)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3059
#57 0x6fc5c in Fprogn (args=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:750
#58 0x73d98 in funcall_lambda (fun=543382700, nargs=2, arg_vector=0xefffe454)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3588
#59 0x73168 in funcall_recording_as (recorded_as=543382700, nargs=2, 
    args=0xefffe450) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3194
#60 0x731c0 in Ffuncall (nargs=3, args=0xefffe450)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3222
#61 0x52744 in Fcall_interactively (function=1346082840, 
    record_flag=1345024004, keys=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/callint.c:934
#62 0x738f0 in primitive_funcall (fn=0x51400 <Fcall_interactively>, nargs=3, 
    args=0xefffe6d8) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3463
#63 0x73a48 in funcall_subr (subr=0x190da4, args=0xefffe6d8)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3486
#64 0x73094 in funcall_recording_as (recorded_as=270077348, nargs=1, 
    args=0xefffe7f0) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3175
#65 0x731c0 in Ffuncall (nargs=2, args=0xefffe7f0)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3222
#66 0x74484 in call1 (fn=1345099820, arg0=1346082840)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:3943
#67 0x7f288 in execute_command_event (command_builder=0x3cd140, 
    event=273823092)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/event-stream.c:3588
#68 0x7f9bc in Fdispatch_event (event=273823092)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/event-stream.c:3934
#69 0x5958c in Fcommand_loop_1 ()
    at /home/unix/toy/apps/xemacs-20.2-b4/src/cmdloop.c:560
#70 0x593b0 in command_loop_1 (dummy=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/cmdloop.c:480
#71 0x70e34 in condition_case_1 (handlers=1345024084, 
    bfun=0x5938c <command_loop_1>, barg=1345024004, hfun=0x58ca8 <cmd_error>, 
    harg=1345024004) at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:1657
#72 0x58dc4 in command_loop_3 ()
    at /home/unix/toy/apps/xemacs-20.2-b4/src/cmdloop.c:242
#73 0x58dec in command_loop_2 (dummy=1345024004)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/cmdloop.c:253
#74 0x70a94 in internal_catch (tag=1345101180, func=0x58de0 <command_loop_2>, 
    arg=1345024004, threw=0x0)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/eval.c:1334
#75 0x58ff8 in initial_command_loop (load_me=364000)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/cmdloop.c:291
#76 0x6e280 in xemacs_20_2_beta4 (argc=1, argv=0xefffeedc, envp=0xefffeee4)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/emacs.c:1461
#77 0x6e9e4 in main (argc=1, argv=0xefffeedc, envp=0xefffeee4)
    at /home/unix/toy/apps/xemacs-20.2-b4/src/emacs.c:1812

