Changeset 1814 for trunk/src/user32
- Timestamp:
- Nov 22, 1999, 10:42:06 PM (26 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/win32wbase.cpp
r1809 r1814 1 /* $Id: win32wbase.cpp,v 1.9 1 1999-11-22 18:06:46 cbratschi Exp $ */1 /* $Id: win32wbase.cpp,v 1.92 1999-11-22 21:42:06 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 Window Base Class for OS/2 … … 147 147 windowNameA = NULL; 148 148 windowNameW = NULL; 149 wndNameLength = 1; //CB: right?149 wndNameLength = 0; 150 150 151 151 userWindowLong = NULL;; … … 521 521 if (!isUnicode) 522 522 { 523 windowNameA = (LPSTR)_smalloc(strlen(cs->lpszName)+1); 523 wndNameLength = strlen(cs->lpszName); 524 windowNameA = (LPSTR)_smalloc(wndNameLength+1); 524 525 strcpy(windowNameA,cs->lpszName); 525 windowNameW = (LPWSTR)_smalloc(( strlen(cs->lpszName)+1)*sizeof(WCHAR));526 windowNameW = (LPWSTR)_smalloc((wndNameLength+1)*sizeof(WCHAR)); 526 527 lstrcpyAtoW(windowNameW,windowNameA); 527 wndNameLength = strlen(windowNameA)+1; //including 0 terminator528 528 } else 529 529 { 530 windowNameA = (LPSTR)_smalloc(lstrlenW((LPWSTR)cs->lpszName)+1); 530 wndNameLength = lstrlenW((LPWSTR)cs->lpszName); 531 windowNameA = (LPSTR)_smalloc(wndNameLength+1); 531 532 lstrcpyWtoA(windowNameA,(LPWSTR)cs->lpszName); 532 windowNameW = (LPWSTR)_smalloc(( lstrlenW((LPWSTR)cs->lpszName)+1)*sizeof(WCHAR));533 windowNameW = (LPWSTR)_smalloc((wndNameLength+1)*sizeof(WCHAR)); 533 534 lstrcpyW(windowNameW,(LPWSTR)cs->lpszName); 534 wndNameLength = strlen(windowNameA)+1; //including 0 terminator535 535 } 536 536 } … … 1511 1511 1512 1512 case WM_GETTEXT: 1513 if (!lParam) return 0; 1514 strncpy((LPSTR)lParam, windowNameA, wParam); 1513 if (!lParam || !wParam) return 0; 1514 if (!windowNameA) ((LPSTR)lParam)[0] = 0; 1515 else strncpy((LPSTR)lParam, windowNameA, wParam); 1515 1516 return min(wndNameLength, wParam); 1516 1517 … … 1524 1525 if (lParam) 1525 1526 { 1526 windowNameA = (LPSTR)_smalloc(strlen(lpsz)+1); 1527 wndNameLength = strlen(lpsz); 1528 windowNameA = (LPSTR)_smalloc(wndNameLength+1); 1527 1529 strcpy(windowNameA, lpsz); 1528 windowNameW = (LPWSTR)_smalloc(( strlen(lpsz)+1)*sizeof(WCHAR));1530 windowNameW = (LPWSTR)_smalloc((wndNameLength+1)*sizeof(WCHAR)); 1529 1531 lstrcpyAtoW(windowNameW, windowNameA); 1530 wndNameLength = strlen(windowNameA)+1; //including 0 terminator1531 dprintf(("WM_SETTEXT of %d to %s\n", Win32Hwnd, lParam));1532 1532 } else 1533 1533 { 1534 1534 windowNameA = NULL; 1535 1535 windowNameW = NULL; 1536 wndNameLength = 1; 1537 } 1536 wndNameLength = 0; 1537 } 1538 dprintf(("WM_SETTEXT of %d to %s\n", Win32Hwnd, lParam)); 1538 1539 1539 1540 if(OS2HwndFrame && (dwStyle & WS_CAPTION) == WS_CAPTION) … … 1761 1762 1762 1763 case WM_GETTEXT: 1763 if (!lParam) return 0; 1764 lstrcpynW((LPWSTR)lParam,windowNameW,wParam); 1764 if (!lParam || !wParam) return 0; 1765 if (!windowNameW) ((LPWSTR)lParam)[0] = 0; 1766 else lstrcpynW((LPWSTR)lParam,windowNameW,wParam); 1765 1767 return min(wndNameLength,wParam); 1766 1768 … … 1774 1776 if (lParam) 1775 1777 { 1776 windowNameA = (LPSTR)_smalloc(lstrlenW(lpsz)+1); 1778 wndNameLength = lstrlenW(lpsz); 1779 windowNameA = (LPSTR)_smalloc(wndNameLength+1); 1777 1780 lstrcpyWtoA(windowNameA,lpsz); 1778 windowNameW = (LPWSTR)_smalloc(( lstrlenW(lpsz)+1)*sizeof(WCHAR));1781 windowNameW = (LPWSTR)_smalloc((wndNameLength+1)*sizeof(WCHAR)); 1779 1782 lstrcpyW(windowNameW,lpsz); 1780 wndNameLength = strlen(windowNameA)+1; //including 0 terminator1781 1783 } else 1782 1784 { 1783 1785 windowNameA = NULL; 1784 1786 windowNameW = NULL; 1785 wndNameLength = 1;1787 wndNameLength = 0; 1786 1788 } 1787 1789
Note:
See TracChangeset
for help on using the changeset viewer.