[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs 22.2.90 pretest

From: Eli Zaretskii
Subject: Re: Emacs 22.2.90 pretest
Date: Wed, 20 Aug 2008 19:07:02 +0300

> Date: Wed, 20 Aug 2008 17:10:07 +0900
> From: YAMAMOTO Mitsuharu <address@hidden>
> 2008-08-02  Eli Zaretskii  <address@hidden>
>       * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
>       multibyte string.
> The above change contains the same problem I pointed out in
> http://lists.gnu.org/archive/html/bug-gnu-emacs/2008-03/msg00026.html.
> I.e., DECODE_FILE may GC, and pointers to Lisp String contents are not
> valid after that because of relocations by compaction.

Please suggest which variables to GCPRO.

The code is convoluted, but I did try to walk through it and see if
any variables need to be protected from GC.  Most of the code that
uses nm[] (the only variable you mentioned back in March) is on
DOS_NT, where the original string is copied to a stack-allocated
buffer right at the beginning, and manipulated there; the original
pointer to a Lisp_Object is forgotten, so GC cannot possibly cause
harm on those platforms.

Perhaps I missed something, but in that case please make specific
suggestions which variables to protect and why, because the general
principle that GC can move strings is obviously not news to me.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]