[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Recent trunk build crashes a lot under Win32
From: |
YAMAMOTO Mitsuharu |
Subject: |
Re: Recent trunk build crashes a lot under Win32 |
Date: |
Wed, 16 Apr 2008 09:41:23 +0900 |
User-agent: |
Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/23.0.50 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) |
>>>>> On Tue, 15 Apr 2008 13:01:40 -0400, Stefan Monnier <address@hidden> said:
>> recent builds of current Emacs trunk (GNU Emacs 23.0.60.1
>> (i386-mingw-nt5.1.2600) of 2008-04-14) has been crashing a lot for
>> me (under Windows Vista SP1). In yesterdays build I get right after
>> startup upon trying to open any file:
> I fixed a bug recently in this code due to the fact that DECODE_FILE
> can call GC which can relocate Lisp strings's data.
I think you mean this part.
1392 if (!STRING_MULTIBYTE (tem))
1393 {
1394 /* FIXME: DECODE_FILE may GC, which may move SDATA(name),
1395 after which `nm' won't point to the right place any
more. */
1396 int offset = nm - SDATA (name);
1397 hdir = DECODE_FILE (tem);
1398 newdir = SDATA (hdir);
1399 nm = SDATA (name) + offset;
1400 }
But `nm' does not always point to the string data of `name' on some
platforms.
1160 nm = SDATA (name);
1161
1162 #ifdef DOS_NT
1163 /* We will force directory separators to be either all \ or /, so make
1164 a local copy to modify, even if there ends up being no change. */
1165 nm = strcpy (alloca (strlen (nm) + 1), nm);
YAMAMOTO Mitsuharu
address@hidden