示例#1
0
文件: consolemenu.cpp 项目: fix8/fix8
//-------------------------------------------------------------------------------------------------
int ConsoleMenu::DeleteAllMsgs(tty_save_state& tty, MsgList& lst) const
{
	if (lst.size() && get_yn("Delete all msgs? (y/n):", true))
	{
		for_each(lst.begin(), lst.end(), [](const Message *pp){ delete pp; pp = nullptr; });
		lst.clear();
	}

	return 0;
}
示例#2
0
CCrypto::~CCrypto()
{

	eMsgList.clear();

	if ( Encrypt_Detour )
	{
		Encrypt_Detour->Detach();
		delete Encrypt_Detour;
	}

	if ( Decrypt_Detour )
	{
		Decrypt_Detour->Detach();
		delete Decrypt_Detour;
	}
}
示例#3
0
文件: log.cpp 项目: ruleless/cill
void Log::_flushOutlist()
{
    MsgList *outlist = mOutlist;
    if (!outlist->empty())
    {
        char timeStr[32] = {0};
        const char *pTimeStr = 0;
        for (MsgList::iterator i = outlist->begin(); i != outlist->end(); ++i)
        {
            _MSG &msgnode = *i;

            if (msgnode.time)
            {
                struct tm *timeinfo = localtime(&msgnode.time);
                snprintf(timeStr, sizeof(timeStr), "[%04d/%02d/%d %02d:%02d:%02d]",
                         timeinfo->tm_year + 1900, timeinfo->tm_mon + 1, timeinfo->tm_mday, timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec);
                pTimeStr = timeStr;
            }
            else
            {
                pTimeStr = 0;
            }

            for (PrinterList::iterator it = mLogPrinter.begin(); it != mLogPrinter.end(); ++it)
            {
                ILogPrinter *obj = *it;
                if (obj->getLevel() & msgnode.level)
                {
                    obj->onPrint(msgnode.level, msgnode.time, pTimeStr, msgnode.msg.c_str());
                }
            }
        }

        outlist->clear();
    }
}