[paludis-commits] r4624 - in branches/0.26: . paludis

ciaranm at svn.pioto.org ciaranm at svn.pioto.org
Wed Apr 30 20:23:40 UTC 2008


Author: ciaranm
Date: 2008-04-30 20:23:39 +0000 (Wed, 30 Apr 2008)
New Revision: 4624

Modified:
   branches/0.26/ChangeLog
   branches/0.26/paludis/merger.cc
Log:
If we install a directory via rename(), call utime() on all file children


Modified: branches/0.26/ChangeLog
===================================================================
--- branches/0.26/ChangeLog	2008-04-27 10:48:44 UTC (rev 4623)
+++ branches/0.26/ChangeLog	2008-04-30 20:23:39 UTC (rev 4624)
@@ -5,6 +5,11 @@
 only listed in SVN log. For a summary of what has changed between releases,
 see the NEWS file. This file is occasionally pruned to ChangeLog.old.bz2.
 
+2008-04-30 Ciaran McCreesh
+
+	* paludis/merger.cc: Bug fix: if we install a directory via rename(),
+	call utime() on all file children.
+
 2008-04-25 Ciaran McCreesh
 
 	* NEWS, configure.ac: Preparation for 0.26.0.

Modified: branches/0.26/paludis/merger.cc
===================================================================
--- branches/0.26/paludis/merger.cc	2008-04-27 10:48:44 UTC (rev 4623)
+++ branches/0.26/paludis/merger.cc	2008-04-30 20:23:39 UTC (rev 4624)
@@ -818,6 +818,8 @@
                 continue;
 
             case et_file:
+                if (! FSEntry(*d).utime())
+                    throw MergerError("utime(" + stringify(*d) + ", 0) failed: " + stringify(::strerror(errno)));
                 record_install_file(*d, dst, stringify(d->basename()), MergeStatusFlags() + msi_parent_rename);
                 _merged_ids.insert(make_pair(d->lowlevel_id(), stringify(*d)));
                 continue;



More information about the paludis-commits mailing list