8 #define WIN32_NO_STATUS 15 #define SHIM_NS IgnoreFreeLibrary 16 #include <setup_shim.inl> 76 if (!CommandLine || !*CommandLine)
99 SHIM_WARN(
"Unable to allocate %u bytes\n",
cur - prev + 2);
108 SHIM_WARN(
"Unable to allocate last string\n");
132 SHIM_MSG(
"IgnoreFreeLibrary(%s)\n", SHIM_OBJ_NAME(g_szCommandLine));
139 #define SHIM_NOTIFY_FN SHIM_OBJ_NAME(Notify) 140 #define SHIM_NUM_HOOKS 1 141 #define SHIM_SETUP_HOOKS \ 142 SHIM_HOOK(0, "KERNEL32.DLL", "FreeLibrary", SHIM_OBJ_NAME(FreeLibrary)) 144 #include <implement_shim.inl> BOOL WINAPI SHIM_OBJ_NAME() Notify(DWORD fdwReason, PVOID ptr)
IN BOOLEAN OUT PSTR Buffer
GLuint GLuint GLsizei count
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char * ModuleName
BOOL(WINAPI * FREELIBRARYPROC)(HMODULE)
DWORD WINAPI GetModuleFileNameA(HINSTANCE hModule, LPSTR lpFilename, DWORD nSize)
PCSTR ShimLib_StringDuplicateA(PCSTR szString)
PCSTR ShimLib_StringNDuplicateA(PCSTR szString, SIZE_T stringLengthIncludingNullTerm)
#define SHIM_NOTIFY_ATTACH
_Check_return_ _CRTIMP int __cdecl stricmp(_In_z_ const char *_Str1, _In_z_ const char *_Str2)
#define SHIM_MSG(fmt,...)
BOOL WINAPI SHIM_OBJ_NAME() FreeLibrary(HMODULE hModule)
PVOID ShimLib_ShimMalloc(SIZE_T dwSize)
static VOID InitIgnoreFreeLibrary(PCSTR CommandLine)
char * strchr(const char *String, int ch)
void ShimLib_ShimFree(PVOID pData)