Changeset 377 for trunk/dll/newview.c


Ignore:
Timestamp:
Jul 27, 2006, 8:28:31 AM (19 years ago)
Author:
root
Message:

Validate WinCreateWindow

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dll/newview.c

    r368 r377  
    17801780    {
    17811781      HWND temphwnd;
    1782 
    1783       temphwnd = WinCreateWindow(WinQueryWindow(hwnd, QW_PARENT),
     1782      HWND hwndFrame = WinQueryWindow(hwnd, QW_PARENT);
     1783
     1784      temphwnd = WinCreateWindow(hwndFrame,
    17841785                                 WC_BUTTON,
    17851786                                 "<",
     
    17901791                                 0,
    17911792                                 0,
    1792                                  WinQueryWindow(hwnd, QW_PARENT),
     1793                                 hwndFrame,
    17931794                                 HWND_TOP,
    17941795                                 IDM_PREVBLANKLINE,
    17951796                                 NULL,
    17961797                                 NULL);
    1797       WinSetPresParam(temphwnd,
    1798                       PP_FONTNAMESIZE,
    1799                       strlen(GetPString(IDS_8HELVTEXT)) + 1,
    1800                       (PVOID) GetPString(IDS_8HELVTEXT));
    1801       temphwnd = WinCreateWindow(WinQueryWindow(hwnd, QW_PARENT),
     1798      if (!temphwnd)
     1799        Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1800      else {
     1801        WinSetPresParam(temphwnd,
     1802                        PP_FONTNAMESIZE,
     1803                        strlen(GetPString(IDS_8HELVTEXT)) + 1,
     1804                        (PVOID) GetPString(IDS_8HELVTEXT));
     1805      }
     1806      temphwnd = WinCreateWindow(hwndFrame,
    18021807                                 WC_BUTTON,
    18031808                                 ">",
     
    18081813                                 0,
    18091814                                 0,
    1810                                  WinQueryWindow(hwnd, QW_PARENT),
     1815                                 hwndFrame,
    18111816                                 HWND_TOP,
    18121817                                 IDM_NEXTBLANKLINE,
    18131818                                 NULL,
    18141819                                 NULL);
    1815       WinSetPresParam(temphwnd,
    1816                       PP_FONTNAMESIZE,
    1817                       strlen(GetPString(IDS_8HELVTEXT)) + 1,
    1818                       (PVOID) GetPString(IDS_8HELVTEXT));
     1820      if (!temphwnd)
     1821        Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1822      else {
     1823        WinSetPresParam(temphwnd,
     1824                        PP_FONTNAMESIZE,
     1825                        strlen(GetPString(IDS_8HELVTEXT)) + 1,
     1826                        (PVOID)GetPString(IDS_8HELVTEXT));
     1827      }
    18191828      WinStartTimer(WinQueryAnchorBlock(hwnd),
    18201829                    hwnd,
     
    18391848
    18401849  case UM_SETUP:
    1841     if (!ad) {
     1850    if (!ad)
    18421851      Runtime_Error(pszSrcFile, __LINE__, "no data");
    1843     }
    18441852    else {
    18451853      CHAR s[CCHMAXPATH + 8];
     
    18481856      ad -> hvscroll = WinWindowFromID(ad -> hwndFrame, FID_VERTSCROLL);
    18491857      ad -> hhscroll = WinWindowFromID(ad -> hwndFrame, FID_HORZSCROLL);
    1850       WinSendMsg(ad -> hhscroll,
    1851                  SBM_SETTHUMBSIZE,
    1852                  MPFROM2SHORT(1, 1),
    1853                  MPVOID);
    1854       WinSendMsg(ad -> hvscroll,
    1855                  SBM_SETTHUMBSIZE,
    1856                  MPFROM2SHORT(1, 1),
    1857                  MPVOID);
    1858       sprintf(s,
    1859               "%s: %s",
    1860               FM2Str,
    1861               ad -> filename);
    1862       WinSetWindowText(ad -> hwndFrame,
    1863                        s);
     1858      WinSendMsg(ad -> hhscroll,SBM_SETTHUMBSIZE,MPFROM2SHORT(1, 1),MPVOID);
     1859      WinSendMsg(ad -> hvscroll,SBM_SETTHUMBSIZE,MPFROM2SHORT(1, 1),MPVOID);
     1860      sprintf(s,"%s: %s",FM2Str,ad -> filename);
     1861      WinSetWindowText(ad -> hwndFrame,s);
    18641862      rc = DosCreateMutexSem(NULL, &ad -> ScanSem, 0L, FALSE);
    18651863      if (rc)
     
    18671865      else {
    18681866        PFNWP oldproc;
     1867        HWND hwndFrame = ad -> hwndFrame;
    18691868        WinSendMsg(ad -> hvscroll,
    18701869                   SBM_SETSCROLLBAR,
     
    18731872        WinSendMsg(ad -> hhscroll, SBM_SETSCROLLBAR, MPFROMSHORT(1),
    18741873                   MPFROM2SHORT(1, 1));
    1875         ad -> hwndStatus1 = WinCreateWindow(ad -> hwndFrame,
     1874        ad -> hwndStatus1 = WinCreateWindow(hwndFrame,
    18761875                                            GetPString(IDS_WCVIEWSTATUS),
    18771876                                            GetPString(IDS_LOADINGTEXT),
     
    18821881                                            0,
    18831882                                            0,
    1884                                             ad -> hwndFrame,
     1883                                            hwndFrame,
    18851884                                            HWND_TOP,
    18861885                                            NEWVIEW_STATUS1,
    18871886                                            NULL,
    18881887                                            NULL);
    1889         ad -> hwndStatus2 = WinCreateWindow(ad -> hwndFrame,
     1888        if (!ad -> hwndStatus1)
     1889          Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1890
     1891        ad -> hwndStatus2 = WinCreateWindow(hwndFrame,
    18901892                                            GetPString(IDS_WCVIEWSTATUS),
    18911893                                            NULL,
     
    18961898                                            0,
    18971899                                            0,
    1898                                             ad -> hwndFrame,
     1900                                            hwndFrame,
    18991901                                            HWND_TOP,
    19001902                                            NEWVIEW_STATUS2,
    19011903                                            NULL,
    19021904                                            NULL);
    1903         ad -> hwndStatus3 = WinCreateWindow(ad -> hwndFrame,
     1905        if (!ad -> hwndStatus2)
     1906          Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1907
     1908        ad -> hwndStatus3 = WinCreateWindow(hwndFrame,
    19041909                                            GetPString(IDS_WCVIEWSTATUS),
    19051910                                            NULL,
     
    19101915                                            0,
    19111916                                            0,
    1912                                             ad -> hwndFrame,
     1917                                            hwndFrame,
    19131918                                            HWND_TOP,
    19141919                                            NEWVIEW_STATUS3,
    19151920                                            NULL,
    19161921                                            NULL);
    1917         ad -> hwndListbox = WinCreateWindow(ad -> hwndFrame,
     1922        if (!ad -> hwndStatus3)
     1923          Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1924
     1925        ad -> hwndListbox = WinCreateWindow(hwndFrame,
    19181926                                            WC_LISTBOX,
    19191927                                            NULL,
     
    19231931                                            0,
    19241932                                            0,
    1925                                             ad -> hwndFrame,
     1933                                            hwndFrame,
    19261934                                            HWND_TOP,
    19271935                                            NEWVIEW_LISTBOX,
    19281936                                            NULL,
    19291937                                            NULL);
    1930         ad -> hwndDrag = WinCreateWindow(ad -> hwndFrame,
     1938        if (!ad -> hwndListbox)
     1939          Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1940
     1941        ad -> hwndDrag = WinCreateWindow(hwndFrame,
    19311942                                         GetPString(IDS_WCVIEWSTATUS),
    19321943                                         "#100",
     
    19361947                                         0,
    19371948                                         0,
    1938                                          ad -> hwndFrame,
     1949                                         hwndFrame,
    19391950                                         HWND_TOP,
    19401951                                         NEWVIEW_DRAG,
    19411952                                         NULL,
    19421953                                         NULL);
    1943         oldproc = WinSubclassWindow(ad -> hwndFrame, (PFNWP) ViewFrameWndProc);
    1944         if (oldproc)
    1945           WinSetWindowPtr(ad -> hwndFrame, QWL_USER, (PVOID) oldproc);
     1954        if (!ad -> hwndDrag)
     1955          Win_Error2(hwndFrame,hwnd,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);
     1956
     1957        oldproc = WinSubclassWindow(hwndFrame, ViewFrameWndProc);
     1958        WinSetWindowPtr(hwndFrame, QWL_USER, (PVOID)oldproc);
    19461959        ad -> hps = InitWindow(hwnd);
    19471960        if (_beginthread(LoadFile, NULL, 524288, (PVOID) hwnd) == -1)
Note: See TracChangeset for help on using the changeset viewer.