From 6026fef35e106fb8e6c2572ebda5dac4487c25d7 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Fri, 11 Oct 2013 20:39:56 -0700 Subject: [PATCH] Fix two issues with directory searches on Windows First, make sure we actually match /c/windows from the beginning, not if it occurs in the middle of the path. Second, make sure that directories containing the binaries are searched first. Do that by using unshift (prepend) instead of push (append). Signed-off-by: Thiago Macieira Signed-off-by: Dirk Hohndel --- scripts/win-ldd.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/win-ldd.pl b/scripts/win-ldd.pl index 07ea7ea95..e3aa505de 100644 --- a/scripts/win-ldd.pl +++ b/scripts/win-ldd.pl @@ -3,7 +3,7 @@ use strict; my %deploy; my $objdump = $ENV{objdump} ? $ENV{objdump} : "objdump"; my @searchdirs; -my @systemdirs = (qr|^c:/windows|i, qr|^c:/winnt|i, qr|/c/windows|i, qr|/c/winnt|); +my @systemdirs = (qr|^c:/windows|i, qr|^c:/winnt|i, qr|^/c/windows|i, qr|^/c/winnt|); sub addDependenciesFor($) { open OBJDUMP, "-|", $objdump, "-p", $_[0] or die; @@ -50,7 +50,7 @@ for (@ARGV) { # Add $_'s path to the search list too my $dirname = $_; $dirname =~ s,/[^/]+$,,; - push @searchdirs, $dirname; + unshift @searchdirs, $dirname; $deploy{$_} = $_; addDependenciesFor($_);