Changeset 428 for WizardsToolkit/trunk
- Timestamp:
- 10/21/09 12:50:29 (4 weeks ago)
- Files:
-
- 1 modified
-
WizardsToolkit/trunk/wizard/log.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
WizardsToolkit/trunk/wizard/log.c
r415 r428 124 124 WizardBooleanType 125 125 append, 126 exempt, 126 127 stealth; 127 128 … … 149 150 }; 150 151 151 static const char 152 *LogMap = (const char *) 153 "<?xml version=\"1.0\"?>" 154 "<logmap>" 155 " <log events=\"None\" />" 156 " <log output=\"console\" />" 157 " <log filename=\"Wizard-%d.log\" />" 158 " <log format=\"%t %r %u %v %d %c[%p]: %m/%f/%l/%d\n %e\" />" 159 "</logmap>"; 152 typedef struct _LogMapInfo 153 { 154 const LogEventType 155 event_mask; 156 157 const LogHandlerType 158 handler_mask; 159 160 const char 161 *filename, 162 *format; 163 } LogMapInfo; 160 164 161 165 /* 162 166 Static declarations. 163 167 */ 168 static const LogMapInfo 169 LogMap[] = 170 { 171 { NoEvents, ConsoleHandler, "Magick-%d.log", 172 "%t %r %u %v %d %c[%p]: %m/%f/%l/%d\n %e" } 173 }; 174 164 175 static char 165 176 log_name[MaxTextExtent] = "Wizard"; … … 258 269 p->file=(FILE *) NULL; 259 270 } 260 if (p->filename != (char *) NULL) 261 p->filename=DestroyString(p->filename); 262 if (p->path != (char *) NULL) 263 p->path=DestroyString(p->path); 264 if (p->format != (char *) NULL) 265 p->format=DestroyString(p->format); 271 if (p->exempt == WizardFalse) 272 { 273 if (p->format != (char *) NULL) 274 p->format=DestroyString(p->format); 275 if (p->filename != (char *) NULL) 276 p->filename=DestroyString(p->filename); 277 if (p->path != (char *) NULL) 278 p->path=DestroyString(p->path); 279 } 266 280 if (p->timer != (TimerInfo *) NULL) 267 281 p->timer=DestroyTimerInfo(p->timer); … … 1375 1389 log_info->path=ConstantString(filename); 1376 1390 log_info->timer=AcquireTimerInfo(); 1391 log_info->exempt=WizardFalse; 1377 1392 log_info->signature=WizardSignature; 1378 1393 continue; … … 1507 1522 ExceptionInfo *exception) 1508 1523 { 1509 #if defined(WIZARDSTOOLKIT_EMBEDDABLE_SUPPORT)1510 return(LoadLogList(LogMap,"built-in",0,exception));1511 #else1512 1524 const StringInfo 1513 1525 *option; … … 1519 1531 status; 1520 1532 1533 register long 1534 i; 1535 1536 /* 1537 Load built-in log map. 1538 */ 1521 1539 status=WizardFalse; 1540 if (log_list == (LinkedListInfo *) NULL) 1541 { 1542 log_list=NewLinkedList(0); 1543 if (log_list == (LinkedListInfo *) NULL) 1544 { 1545 ThrowFileException(exception,FileError,filename); 1546 return(WizardFalse); 1547 } 1548 } 1549 for (i=0; i < (long) (sizeof(LogMap)/sizeof(*LogMap)); i++) 1550 { 1551 LogInfo 1552 *log_info; 1553 1554 register const LogMapInfo 1555 *p; 1556 1557 p=LogMap+i; 1558 log_info=(LogInfo *) AcquireWizardMemory(sizeof(*log_info)); 1559 if (log_info == (LogInfo *) NULL) 1560 { 1561 (void) ThrowWizardException(exception,GetWizardModule(),ResourceError, 1562 "memory allocation failed `%s'",log_info->name); 1563 continue; 1564 } 1565 (void) ResetWizardMemory(log_info,0,sizeof(*log_info)); 1566 log_info->path=(char *) "[built-in]"; 1567 log_info->timer=AcquireTimerInfo(); 1568 log_info->event_mask=p->event_mask; 1569 log_info->handler_mask=p->handler_mask; 1570 log_info->filename=(char *) p->filename; 1571 log_info->format=(char *) p->format; 1572 log_info->exempt=WizardTrue; 1573 log_info->signature=WizardSignature; 1574 status=AppendValueToLinkedList(log_list,log_info); 1575 if (status == WizardFalse) 1576 (void) ThrowWizardException(exception,GetWizardModule(),ResourceError, 1577 "memory allocation failed `%s'",log_info->name); 1578 } 1579 /* 1580 Load external log map. 1581 */ 1522 1582 options=GetConfigureOptions(filename,exception); 1523 1583 option=(const StringInfo *) GetNextValueInLinkedList(options); … … 1529 1589 } 1530 1590 options=DestroyConfigureOptions(options); 1531 if ((log_list == (LinkedListInfo *) NULL) ||1532 (IsLinkedListEmpty(log_list) != WizardFalse))1533 status|=LoadLogList(LogMap,"built-in",0,exception);1534 1591 return(status != 0 ? WizardTrue : WizardFalse); 1535 #endif1536 1592 } 1537 1593
