[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: No GCPRO in directory-files and directory-files-and-attributes
From: |
Lars Hansen |
Subject: |
Re: No GCPRO in directory-files and directory-files-and-attributes |
Date: |
Wed, 10 Dec 2003 19:45:56 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021130 |
Calling call1 etc. does not GCPRO the variables from which the
argument values are obtained, any more than calling Ffuncall does.
Well, I don't know much about these things, but these lines are from call1:
args[0] = fn;
args[1] = arg1;
GCPRO1 (args[0]);
gcpro1.nvars = 2;
RETURN_UNGCPRO (Ffuncall (2, args));
To me it looks as the arguments are protcted.
I don't think there is a bug. Those values will never be used again,
so they don't need to be GCPRO'd.
In eval.c there is the following comment:
/* NOTE!!! Every function that can call EVAL must protect its args
and temporaries from garbage collection while it needs them.
The definition of `For' shows what you have to do. */
When directory-files and directory-files-and-attributes call file name
handlers I think eval may be called.
So to me it still looks like a bug. Am I missing something?