|
@@ -121,6 +121,9 @@ make_user_filename(Filename filename) {
|
|
|
// caches the operation so that repeated calls to
|
|
// caches the operation so that repeated calls to
|
|
|
// filenames in the same directory will tend to be
|
|
// filenames in the same directory will tend to be
|
|
|
// faster.
|
|
// faster.
|
|
|
|
|
+//
|
|
|
|
|
+// Also guarantees that the directory containing the
|
|
|
|
|
+// filename exists by making it if it does not.
|
|
|
////////////////////////////////////////////////////////////////////
|
|
////////////////////////////////////////////////////////////////////
|
|
|
void FilenameUnifier::
|
|
void FilenameUnifier::
|
|
|
make_canonical(Filename &filename) {
|
|
make_canonical(Filename &filename) {
|
|
@@ -137,6 +140,7 @@ make_canonical(Filename &filename) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ filename.make_dir();
|
|
|
filename.make_canonical();
|
|
filename.make_canonical();
|
|
|
_canonical_filenames.insert(CanonicalFilenames::value_type(dirname, filename.get_dirname()));
|
|
_canonical_filenames.insert(CanonicalFilenames::value_type(dirname, filename.get_dirname()));
|
|
|
}
|
|
}
|