X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FConverterCache.cpp;h=972746df162fb6a433f12a3d7fe0bd05080e88b0;hb=027563eec2d2a1b81391b221f9ca40d823713235;hp=cdb8ae20bc34ae6494481a7d48d09fe1614b33b8;hpb=7c392af6eab5e06a4836146859cbd9f2c3764420;p=lyx.git diff --git a/src/ConverterCache.cpp b/src/ConverterCache.cpp index cdb8ae20bc..972746df16 100644 --- a/src/ConverterCache.cpp +++ b/src/ConverterCache.cpp @@ -22,7 +22,6 @@ #include "support/convert.h" #include "support/debug.h" #include "support/filetools.h" -#include "support/lyxlib.h" #include "support/lyxtime.h" #include "support/Package.h" @@ -169,7 +168,7 @@ void ConverterCache::Impl::writeIndex() FileName const index(addName(cache_dir.absFilename(), "index")); ofstream os(index.toFilesystemEncoding().c_str()); os.close(); - if (!chmod(index, 0600)) + if (!index.changePermission(0600)) return; os.open(index.toFilesystemEncoding().c_str()); CacheType::iterator it1 = cache.begin(); @@ -240,7 +239,7 @@ void ConverterCache::init() // initialized after all static variables. cache_dir = FileName(addName(package().user_support().absFilename(), "cache")); if (!cache_dir.exists()) - if (support::mkdir(cache_dir, 0700) != 0) { + if (!cache_dir.createDirectory(0700)) { lyxerr << "Could not create cache directory `" << cache_dir << "'." << endl; exit(EXIT_FAILURE); @@ -289,15 +288,22 @@ void ConverterCache::add(FileName const & orig_from, string const & to_format, } item->checksum = checksum; if (!mover.copy(converted_file, item->cache_name, - onlyFilename(item->cache_name.absFilename()), 0600)) { - LYXERR(Debug::FILES, "ConverterCache::add(" << orig_from << "):\n" - "Could not copy file."); + onlyFilename(item->cache_name.absFilename()))) { + LYXERR(Debug::FILES, "Could not copy file " << orig_from << " to " + << item->cache_name); + } else if (!item->cache_name.changePermission(0600)) { + LYXERR(Debug::FILES, "Could not change file mode" + << item->cache_name); } } else { CacheItem new_item(orig_from, to_format, timestamp, orig_from.checksum()); if (mover.copy(converted_file, new_item.cache_name, - onlyFilename(new_item.cache_name.absFilename()), 0600)) { + onlyFilename(new_item.cache_name.absFilename()))) { + if (!new_item.cache_name.changePermission(0600)) { + LYXERR(Debug::FILES, "Could not change file mode" + << new_item.cache_name); + } FormatCache & format_cache = pimpl_->cache[orig_from]; if (format_cache.from_format.empty()) format_cache.from_format =