silverstripe/sapphire — pull request #1886 by halkyon (2013-05-13 06:15:29+00:00)
Title: BUG Fixing Filesystem::sync breaking subsite pages with same URLSegments

Filesystem::sync() tries to run through all pages, without caring
which subsite the page came from. The problem with this is
code in SiteTree::validURLSegment() will return invalid information,
as it will check if the page exists, thinking it does, return false,
then the page will get a new URLSegment written, e.g. "home-2".

Instead of disabling the subsite filter in Filesystem::sync(), this
fix will just loop through each subsite and sync each subsite's pages
individually before doing the main site.