Browse Source

log_flush bin exact (#922)

pull/88/head
qndel 7 years ago committed by Anders Jenbo
parent
commit
8f5ff5207c
  1. 18
      Source/logging.cpp
  2. 2
      Source/logging.h

18
Source/logging.cpp

@ -41,28 +41,26 @@ void __cdecl log_cleanup_mutex(void)
DeleteCriticalSection(&sgMemCrit);
}
void __cdecl log_flush(BOOLEAN force_close)
void __cdecl log_flush(BOOL force_close)
{
HANDLE v1; // eax
DWORD NumberOfBytesWritten; // [esp+8h] [ebp-4h]
DWORD NumberOfBytesWritten;
EnterCriticalSection(&sgMemCrit);
if (nNumberOfBytesToWrite) {
if (log_file == (HANDLE)-1) {
v1 = log_create();
log_file = v1;
if (v1 == (HANDLE)-1) {
if (log_file == INVALID_HANDLE_VALUE) {
log_file = log_create();
if (log_file == INVALID_HANDLE_VALUE) {
nNumberOfBytesToWrite = 0;
return;
}
SetFilePointer(v1, 0, NULL, FILE_END);
SetFilePointer(log_file, 0, NULL, FILE_END);
}
WriteFile(log_file, lpAddress, nNumberOfBytesToWrite, &NumberOfBytesWritten, 0);
nNumberOfBytesToWrite = 0;
}
if (force_close && log_file != (HANDLE)-1) {
if (force_close && log_file != INVALID_HANDLE_VALUE) {
CloseHandle(log_file);
log_file = (HANDLE)-1;
log_file = INVALID_HANDLE_VALUE;
}
LeaveCriticalSection(&sgMemCrit);
}

2
Source/logging.h

@ -10,7 +10,7 @@ extern DWORD nNumberOfBytesToWrite; // idb
void log_init_mutex();
void j_log_cleanup_mutex();
void __cdecl log_cleanup_mutex(void);
void __cdecl log_flush(BOOLEAN force_close);
void __cdecl log_flush(BOOL force_close);
HANDLE log_create(); // should be HANDLE
void log_get_version(VS_FIXEDFILEINFO *file_info);
void __cdecl log_printf(const char *pszFmt, ...); // LogMessage

Loading…
Cancel
Save