Update of /cvsroot/fink/fink/perlmod/Fink
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv27182

Modified Files:
        ChangeLog Validation.pm 
Log Message:
Check if .deb contains both foo/bar and fOO/bAr


Index: Validation.pm
===================================================================
RCS file: /cvsroot/fink/fink/perlmod/Fink/Validation.pm,v
retrieving revision 1.299
retrieving revision 1.300
diff -u -d -r1.299 -r1.300
--- Validation.pm       30 Mar 2009 04:29:38 -0000      1.299
+++ Validation.pm       2 Apr 2009 15:11:14 -0000       1.300
@@ -1574,6 +1574,7 @@
        my $msgs = [ [], {} ];  # poor-man's Tie::IxHash
 
        my $dpkg_file_count = 0;
+       my %case_insensitive_filename = (); # keys are lc($fullpathname) for 
all items in .deb
 
        # this sub gets called by File::Find::find for each file in the .deb
        # expects cwd==%d and File::Find::find to be called with no_chdir=1
@@ -1796,6 +1797,16 @@
                lstat $File::Find::name;
                $dpkg_file_count++ if -f _ || -l _;
 
+
+               # check that there won't be collisions on case-insensitive
+               # filesystems. Will only be triggered on pkgs built in
+               # case-sensitive filesystems (if case-insensitive, the files
+               # or dirs would have already over-written or coalesced during
+               # InstallScript)
+               if ($case_insensitive_filename{lc $filename}++) {
+                       &stack_msg($msgs, "Pathname collision on 
case-insensitive filesystems", $filename);
+               }
+
        };  # end of CODE ref block
 
        # check each file in the %d hierarchy according to the above-defined sub

Index: ChangeLog
===================================================================
RCS file: /cvsroot/fink/fink/perlmod/Fink/ChangeLog,v
retrieving revision 1.1584
retrieving revision 1.1585
diff -u -d -r1.1584 -r1.1585
--- ChangeLog   1 Apr 2009 15:52:36 -0000       1.1584
+++ ChangeLog   2 Apr 2009 15:11:14 -0000       1.1585
@@ -1,3 +1,8 @@
+2009-04-02  Daniel Macks  <[email protected]>
+
+       * Validation.pm: Check if .deb has pathnames that would collide on
+       case-insensitive FS
+
 2009-04-01  Dave Morrison  <[email protected]>
 
        * Bootstrap.pm: add a warning to developers as a code comment


------------------------------------------------------------------------------
_______________________________________________
Fink-commits mailing list
[email protected]
http://news.gmane.org/gmane.os.apple.fink.cvs

Reply via email to