Weird behaviour of trace mode on p5-file-path

Clemens Lang cal at macports.org
Tue Jan 13 02:04:05 PST 2015


Hey,

----- On 13 Jan, 2015, at 10:01, Mojca Miklavec mojca at macports.org wrote:

> If I run
>    sudo port -v test p5.20-file-path
> it succeeds, but if I try
>    sudo port -v -t test p5.20-file-path
> it fails (most probably due to line 24 in t/Path.t). What I don't
> understand is the difference between the normal and the trace mode.
> 
> Does anyone have any ideas?

Can you change DARWINTRACE_DEBUG to 1 in your base's
src/darwintracelib1.0/darwintrace.h, run make clean, make, sudo make
install in this directory, try again and attach the output?

> (Original ticket was https://trac.macports.org/ticket/46455)
> 
> The part that is causing problems:
> 
> for my $perm (0111,0777) {
>    my $path = catdir(curdir(), "mhx", "bar");

What's the value of curdir() here?

>    mkpath($path);
>    chmod $perm, "mhx", $path;
> 
>    my $oct = sprintf('0%o', $perm);
>    ok(-d "mhx", "mkdir parent dir $oct");
>    ok(-d $path, "mkdir child dir $oct");
> 
>    rmtree("mhx");
>    ok(! -e "mhx", "mhx does not exist $oct");
> }

Darwintrace does not modify the behavior of chmod, so I doubt that
causes the problem. It does hook into stat, mkdir, rmdir and unlink,
though.

-- 
Clemens Lang


More information about the macports-dev mailing list