diff options
| author | Tannin <sherb@gmx.net> | 2016-02-09 20:46:46 +0100 |
|---|---|---|
| committer | Tannin <sherb@gmx.net> | 2016-02-09 20:46:46 +0100 |
| commit | 3202713cffed47611d96845562a0aaad86d5ad33 (patch) | |
| tree | 1cb6e7b77c673f09193d719ac038be16867982fa | |
| parent | ad9d50e5f0b12a75353c0172979ea8165d0d5127 (diff) | |
updated to match current usvfs api
| -rw-r--r-- | src/usvfsconnector.cpp | 52 |
1 files changed, 31 insertions, 21 deletions
diff --git a/src/usvfsconnector.cpp b/src/usvfsconnector.cpp index c56482f4..db20a54f 100644 --- a/src/usvfsconnector.cpp +++ b/src/usvfsconnector.cpp @@ -96,19 +96,27 @@ void LogWorker::exit() LogLevel logLevel(int level) { switch (level) { - case LogLevel::Info: return LogLevel::Info; - case LogLevel::Warning: return LogLevel::Warning; - case LogLevel::Error: return LogLevel::Error; - default: return LogLevel::Debug; + case LogLevel::Info: + return LogLevel::Info; + case LogLevel::Warning: + return LogLevel::Warning; + case LogLevel::Error: + return LogLevel::Error; + default: + return LogLevel::Debug; } } UsvfsConnector::UsvfsConnector() { - usvfs::Parameters params(SHMID, false, logLevel(Settings::instance().logLevel())); + USVFSParameters params; + USVFSInitParameters(¶ms, SHMID, false, + logLevel(Settings::instance().logLevel())); InitLogging(false); ConnectVFS(¶ms); + BlacklistExecutable(L"TSVNCache.exe"); + m_LogWorker.moveToThread(&m_WorkerThread); connect(&m_WorkerThread, SIGNAL(started()), &m_LogWorker, SLOT(process())); @@ -122,37 +130,39 @@ UsvfsConnector::~UsvfsConnector() DisconnectVFS(); m_LogWorker.exit(); m_WorkerThread.quit(); - //m_WorkerThread.wait(); + m_WorkerThread.wait(); } void UsvfsConnector::updateMapping(const MappingType &mapping) { QProgressDialog progress; progress.setLabelText(tr("Preparing vfs")); - progress.setMaximum(mapping.size()); + progress.setMaximum(static_cast<int>(mapping.size())); progress.show(); int value = 0; + + ClearVirtualMappings(); + for (auto map : mapping) { progress.setValue(value++); if (value % 10 == 0) { QCoreApplication::processEvents(); } if (map.isDirectory) { - VirtualLinkDirectoryStatic(map.source.toStdWString().c_str() - , map.destination.toStdWString().c_str() - , (map.createTarget ? LINKFLAG_CREATETARGET : 0) | LINKFLAG_RECURSIVE); + VirtualLinkDirectoryStatic(map.source.toStdWString().c_str(), + map.destination.toStdWString().c_str(), + (map.createTarget ? LINKFLAG_CREATETARGET : 0) + | LINKFLAG_RECURSIVE); } else { - VirtualLinkFile(map.source.toStdWString().c_str() - , map.destination.toStdWString().c_str() - , 0); + VirtualLinkFile(map.source.toStdWString().c_str(), + map.destination.toStdWString().c_str(), 0); } } -/* - size_t dumpSize = 0; - CreateVFSDump(nullptr, &dumpSize); - std::unique_ptr<char[]> buffer(new char[dumpSize]); - CreateVFSDump(buffer.get(), &dumpSize); - qDebug(buffer.get()); -*/ + /* + size_t dumpSize = 0; + CreateVFSDump(nullptr, &dumpSize); + std::unique_ptr<char[]> buffer(new char[dumpSize]); + CreateVFSDump(buffer.get(), &dumpSize); + qDebug(buffer.get()); + */ } - |
