void CLogger::log(const wchar_t* text, const wchar_t* hint, ELogLevel logLevel) { if (logLevel < m_logLevel) { return; } BSLib::stringc logText = ToNarrow(text); BSLib::stringc logHint = ToNarrow(hint); return log(logText.c_str(), logHint.c_str(), logLevel); }
static int CoreClrCallback(const char* imageName) { if (!imageName) { return FALSE; } wchar_t* filePart = nullptr; wchar_t fullPath[512]; if (GetFullPathNameW(ToWide(imageName).c_str(), _countof(fullPath), fullPath, &filePart) == 0) { return FALSE; } if (!filePart) { return FALSE; } *(filePart - 1) = '\0'; std::wstring platformPath = MakeRelativeCitPath(L"citizen\\clr2\\lib"); if (_wcsicmp(platformPath.c_str(), fullPath) != 0) { platformPath = MakeRelativeCitPath(L"citizen\\clr2\\lib\\mono\\4.5"); if (_wcsicmp(platformPath.c_str(), fullPath) != 0) { trace("%s %s is not a platform image.\n", ToNarrow(fullPath), ToNarrow(filePart)); return FALSE; } } for (int i = 0; i < _countof(g_platformAssemblies); i++) { if (!_wcsicmp(filePart, g_platformAssemblies[i])) { return TRUE; } } trace("%s %s is not a platform image (even though the dir matches).\n", ToNarrow(fullPath), ToNarrow(filePart)); return FALSE; }
static inline std::string MakeRelativeNarrowPath(const std::string& path) { #ifdef _WIN32 return ToNarrow(MakeRelativeCitPath(ToWide(path))); #else return MakeRelativeCitPath(path); #endif }
void MumbleClient::GetTalkers(std::vector<std::string>* referenceIds) { referenceIds->clear(); std::vector<uint32_t> sessions; m_audioOutput.GetTalkers(&sessions); for (uint32_t session : sessions) { auto user = m_state.GetUser(session); referenceIds->push_back(ToNarrow(user->GetName())); } }