libclamunrar/log.cpp
01eebc13
 #include "rar.hpp"
 
 
 static wchar LogName[NM];
 static RAR_CHARSET LogCharset=RCH_DEFAULT;
 
 void InitLogOptions(const wchar *LogFileName,RAR_CHARSET CSet)
 {
   wcsncpyz(LogName,LogFileName,ASIZE(LogName));
   LogCharset=CSet;
 }
 
 
 #ifndef SILENT
 void Log(const wchar *ArcName,const wchar *fmt,...)
 {
   // Preserve the error code for possible following system error message.
   int Code=ErrHandler.GetSystemErrorCode();
 
   uiAlarm(UIALARM_ERROR);
 
   // This buffer is for format string only, not for entire output,
   // so it can be short enough.
   wchar fmtw[1024];
   PrintfPrepareFmt(fmt,fmtw,ASIZE(fmtw));
 
   safebuf wchar Msg[2*NM+1024];
   va_list arglist;
   va_start(arglist,fmt);
   vswprintf(Msg,ASIZE(Msg),fmtw,arglist);
   va_end(arglist);
   eprintf(L"%ls",Msg);
   ErrHandler.SetSystemErrorCode(Code);
 }
 #endif