MCPcopy Create free account
hub / github.com/beefytech/Beef / BfpFindFileData_CheckFilter

Function BfpFindFileData_CheckFilter

BeefySysLib/platform/win/Platform.cpp:3654–3677  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3652#define BFPFINDFILEDATA_TO_HANDLE(findData) ((HANDLE)(findData))
3653
3654static bool BfpFindFileData_CheckFilter(BfpFindFileData* findData)
3655{
3656 bool isDir = (findData->mFindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0;
3657 if (isDir)
3658 {
3659 if ((findData->mFlags & BfpFindFileFlag_Directories) == 0)
3660 return false;
3661
3662 if ((wcscmp(findData->mFindData.cFileName, L".") == 0) || (wcscmp(findData->mFindData.cFileName, L"..") == 0))
3663 return false;
3664 }
3665 else
3666 {
3667 if ((findData->mFlags & BfpFindFileFlag_Files) == 0)
3668 return false;
3669 }
3670
3671 Beefy::String fileName = UTF8Encode(findData->mFindData.cFileName);
3672 Beefy::MakeUpper(fileName);
3673 if (!wc_match(findData->mWildcard.c_str(), fileName.c_str()))
3674 return false;
3675
3676 return true;
3677}
3678
3679BFP_EXPORT BfpFindFileData* BFP_CALLTYPE BfpFindFileData_FindFirstFile(const char* path, BfpFindFileFlags flags, BfpFileResult* outResult)
3680{

Callers 2

Calls 1

c_strMethod · 0.45

Tested by

no test coverage detected