void *LoggerPlugin::processEvent(Event *e) { if (e->type() == EventLog){ LogInfo *li = (LogInfo*)e->param(); if (((li->packet_id == 0) && (li->log_level & getLogLevel())) || (li->packet_id && ((getLogLevel() & L_PACKETS) || isLogType(li->packet_id)))){ string s; s = make_packet_string(li); if (m_file){ #ifdef WIN32 s += "\r\n"; #else s += "\n"; #endif m_file->writeBlock(s.c_str(), s.length()); } #ifdef QT_DLL for (char *p = (char*)(s.c_str()); *p; ){ char *r = strchr(p, '\n'); if (r) *r = 0; if (strlen(p) > 256){ string s = p; while (!s.empty()){ string l; if (s.length() < 256){ l = s; s = ""; }else{ l = s.substr(0, 256); s = s.substr(256); } qWarning("%s", l.c_str()); } }else{ qWarning("%s", p); } if (r == NULL) break; p = r + 1; } #else fprintf(stderr, "%s", s.c_str()); fprintf(stderr, "\n"); #endif } } return NULL; }
void *LoggerPlugin::processEvent(Event *e) { if (e->type() == EventLog) { LogInfo *li = (LogInfo*)e->param(); if (((li->packet_id == 0) && (li->log_level & getLogLevel())) || (li->packet_id && isLogType(li->packet_id))) { string s; s = make_packet_string(li); #ifdef QT_DLL for (char *p = (char*)(s.c_str()); *p; ) { char *r = strchr(p, '\n'); if (r) *r = 0; qWarning("%s", p); if (r == NULL) break; p = r + 1; } #else fprintf(stderr, "%s", s.c_str()); fprintf(stderr, "\n"); #endif } } return NULL; }