Changeset 1443
- Timestamp:
- May 16, 2004, 10:31:05 PM (21 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/emx/src/lib/sys/logstrict.c
-
Property cvs2svn:cvs-rev
changed from
1.7
to1.8
r1442 r1443 1421 1421 static int __libc_logVSNPrintf(char *pszBuffer, size_t cchBuffer, const char *pszFormat, va_list args) 1422 1422 { 1423 static const char szHexChars[17] = "0123456789abcdef"; 1423 1424 int rc; 1424 1425 char *pszBufferIn = pszBuffer; … … 1662 1663 } 1663 1664 1665 /* extensions. */ 1666 case 'Z': 1667 { 1668 pszFormat++; 1669 switch (*pszFormat++) 1670 { 1671 /* hex dump */ 1672 case 'd': 1673 { 1674 const char *pb = va_arg(args, const char *); 1675 int cb = cchPrecision; 1676 if (cb <= 0) 1677 cb = cchWidth; 1678 if (cb <= 0) 1679 cb = 4; 1680 if (pb < (const char *)0x10000) 1681 { 1682 if (cb && cchBuffer >= 2) 1683 { 1684 char ch = *pb++; 1685 *pszBuffer++ = szHexChars[(unsigned)ch >> 4]; 1686 *pszBuffer++ = szHexChars[(unsigned)ch & 0xf]; 1687 cb--; 1688 cchBuffer -= 2; 1689 cch += 2; 1690 1691 while (cb && cchBuffer >= 3) 1692 { 1693 ch = *pb++; 1694 cb--; 1695 *pszBuffer++ = ' '; 1696 *pszBuffer++ = szHexChars[(unsigned)ch >> 4]; 1697 *pszBuffer++ = szHexChars[(unsigned)ch & 0xf]; 1698 cchBuffer -= 3; 1699 cch += 3; 1700 } 1701 } 1702 } 1703 else 1704 { 1705 pb = "<NULL>"; 1706 cb = 6; 1707 while (cb && cchBuffer) 1708 { 1709 *pszBuffer++ = *pb++; 1710 cb--; 1711 cchBuffer--; 1712 cch++; 1713 } 1714 } 1715 break; 1716 } 1717 1718 default: 1719 continue; 1720 } 1721 } 1722 1664 1723 1665 1724 default: -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.