Mail Archives: djgpp-workers/2003/01/30/14:13:26
Richard Dawe wrote:
> Test 3: Solving c:../../../../../../djgpp.204/tests/libc/compat/unistd/test1
>
> __symlink_path:
> "c:../../../../../../djgpp.204/tests/libc/compat/unistd/test1"
>
> __real_path:
> ""
>
> I have plain CVS, plus these diff below. If I don't the diff below applied,
> then it looked like __real_path contained the result of the last
> __solve_symlinks call (__symlink_path ending with file1 instead of test1).
Very interesting, given that the first thing __solve_symlink does is to
copy __symlink_path to __real_path. I don't see how this patch could
make any difference, and it doesn't at my sandbox. The testcase gives
correct results both ways. I strongly suspect that we are testing two
different versions of __solve_symlinks... Maybe you could try copy
somewhere the directory with testsuite sources, copy here up to the date
CVS version of __solve_symlinks and add it to makefile ?
Secondly, the only potential point of failure in this testcase with
current __solve_symlinks version is a call to
__internal_readlink("c:../../../../../djgpp.204/tests/libc/compat/unistd/test1")
from the last repetition of main __solve_symlinks loop (with end pointer
pointing at '\0'). This call works for me, it seems that
__internal_readlink deals with too many /../../ correctly. Could you see
what happens at your side (in the case we have identical
__solve_symlinks() sources)
> Perhaps you could e-mail me your version of the xsymlink.c test sources?
Uhm, maybe after clearing up the first point above. Test sources keep
changing there...
>>>Maybe the test "xsymlink" should take a drive specifier. It could then
>>>create a cross-drive symlink to any file on that disk. E.g. c:/temp/foo
>>>-> d:/whatever.
>>
>>BTW, I wonder if we could do something like SUBST does at runtime...
>
>
> What would you do, if we could?
Then we could create a virtual drive on the fly for the testsuite and
destroy afterwards. No 'insert blank floppy' stuf...
--
Laurynas
- Raw text -