| 183 | } |
| 184 | |
| 185 | S32 VirtualMountSystem::findByPattern( const Path &inBasePath, const String &inFilePattern, bool inRecursive, Vector<String> &outList, bool includeDirs/* =false */, bool multiMatch /* = true */ ) |
| 186 | { |
| 187 | if (mUseParentFind) |
| 188 | // use parent version |
| 189 | return Parent::findByPattern(inBasePath, inFilePattern, inRecursive, outList, includeDirs, multiMatch); |
| 190 | |
| 191 | // don't want to re-enter this version |
| 192 | mUseParentFind = true; |
| 193 | |
| 194 | // kind of cheesy, just call find by pattern on each File system mounted on the root |
| 195 | for (Vector<MountFS>::const_iterator itr = mMountList.begin(); itr != mMountList.end(); itr++) |
| 196 | { |
| 197 | if (itr->root.equal( inBasePath.getRoot(), String::NoCase ) ) |
| 198 | { |
| 199 | FileSystemRef fsref = itr->fileSystem; |
| 200 | _setFindByPatternOverrideFS(fsref); |
| 201 | Parent::findByPattern(inBasePath, inFilePattern, inRecursive, outList, includeDirs, multiMatch); |
| 202 | _setFindByPatternOverrideFS(NULL); |
| 203 | } |
| 204 | } |
| 205 | |
| 206 | mUseParentFind = false; |
| 207 | |
| 208 | return outList.size(); |
| 209 | } |
| 210 | |
| 211 | bool VirtualMountSystem::createPath(const Path& path) |
| 212 | { |