diff options
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | src/util.cc | 8 |
2 files changed, 6 insertions, 7 deletions
@@ -1,5 +1,10 @@ 2010-10-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net> + Rewritten util::mkdirs() + * src/util.cc + +2010-10-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net> + Rewritten File::mkdirs() * src/File.cc diff --git a/src/util.cc b/src/util.cc index 5f0eef94..e984de25 100644 --- a/src/util.cc +++ b/src/util.cc @@ -1120,13 +1120,7 @@ unsigned int alphaToNum(const std::string& alphabets) void mkdirs(const std::string& dirpath) { File dir(dirpath); - if(dir.isDir()) { - // do nothing - } else if(dir.exists()) { - throw DL_ABORT_EX - (StringFormat(EX_MAKE_DIR, dir.getPath().c_str(), - "File already exists.").str()); - } else if(!dir.mkdirs()) { + if(!dir.mkdirs() &&!dir.isDir()) { throw DL_ABORT_EX (StringFormat(EX_MAKE_DIR, dir.getPath().c_str(), strerror(errno)).str()); |
