Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <3C0C0AF0.18CC293E@ece.gatech.edu> Date: Mon, 03 Dec 2001 18:29:52 -0500 From: Charles Wilson X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.8 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: [Fwd: xemacs 21.4 crashes with cygwin 1.3.6-1] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-milter (http://amavis.org/) The following was reported to xemacs-nt: Tom Howland wrote: > > The cygwin release of xemacs 21.4 crashes with cygwin 1.3.6-1. The > problem is can be worked around by reverting back to the earlier release > of cygwin, cygwin 1.3.5-3 > > What is happening is that the assert on line 81 of xemacs/src/realpath.c > is reached with a null pointer. This happens only when I attempt to open > a file that has something to do with /cygdrive. That is, I can open > files unless I am using drive letter tricks like /c/temp/foo or > /cygdrive/d/baz > > This is probably related to the changes in cygwin enabling treating > /cygdrive as a directory. Q: Is the above behavior a problem with xemacs, or cygwin? (e.g. should we add some extra null checking to *our* stuff?) From xemacs/src/realpath.c: ... static int win32_readlink (const char * name, char * buf, int size) { WIN32_FIND_DATA find_data; HANDLE dir_handle = NULL; int len = 0; int err = 0; const char* lastname; int count = 0; const char* tmp; char* res = NULL; assert (*name); // LINE 81! /* Sort of check we have a valid filename. */ ... I don't know where win32_readlink is called from, or how where the surrounding context gets the char* that it uses as the first arg when it calls win32_readlink. To me, this looks like an xemacs problem, but I just wanted to check... --Chuck -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/