Opened 14 years ago

Closed 8 years ago

#133 closed defect (fixed)

(require 'id) may load executable "id"

Reported by: Jim Ursetto Owned by: evhan
Priority: minor Milestone: 5.0
Component: core libraries Version: 4.3.x
Keywords: Cc:
Estimated difficulty:

Description

There is a problem with (require) that is admittedly rare. If you are in a directory:
$ ls
foo foo.so

attempting to (require 'foo) will load the "foo" executable instead of "foo.so". However, in the case below:
$ ls
foo

attempting to (require 'foo) correctly results in an error.

The reason is that ##sys#find-extension returns "foo" in both cases and then ##sys#load attempts to load the literal path before appending any .so or .scm extension. That works unless an executable is in the way. The root cause is that find-extension knows the exact path but doesn't pass that on to load.

Priority minor because this shouldn't affect installed extensions, just development files in the current directory.

Change History (3)

comment:1 Changed 8 years ago by evhan

Owner: set to evhan
Status: newassigned

comment:2 Changed 8 years ago by evhan

Milestone: 5.0

comment:3 Changed 8 years ago by sjamaan

Resolution: fixed
Status: assignedclosed

Fixed in master with a5374e0 and in chicken-5 with 6a15da5.

Note: See TracTickets for help on using tickets.