bug-guile
[Top][All Lists]
Advanced

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

bug#19540: repeated ./././ in compiled modules


From: Andy Wingo
Subject: bug#19540: repeated ./././ in compiled modules
Date: Thu, 23 Jun 2016 18:03:15 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Hi :)

On Thu 23 Jun 2016 15:06, address@hidden (Ludovic Courtès) writes:

> Andy Wingo <address@hidden> skribis:
>
>> commit 9a951678713557b548415d32eae6d63d039bf652
>> Author: Andy Wingo <address@hidden>
>> Date:   Thu Jun 23 10:03:10 2016 +0200
>>
>>     Fix relative file name canonicalization on paths with "."
>>     
>>     * libguile/filesys.c (scm_i_relativize_path): Canonicalize the file
>>       names elements that we will be using as prefixes.  Fixes the case
>>       where a load path contains a relative file name: #19540.
>>     * test-suite/tests/ports.test ("%file-port-name-canonicalization"): Add
>>       tests that elements of the load path are canonicalized.
>>
> ‘canonicalize_file_name’ is costly: roughly one syscall per file name
> component.
>
> IIUC, ‘canonicalize_file_name’ is now called once for each ‘%load-path’
> entry and file name that we canonicalize.  Is this correct?

That's correct, but only for relative canonicalization, which is in
practive only when loading Scheme files from source.  Seems out of the
hot path; what do you think?

Andy





reply via email to

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