Changeset 131 for trunk/src


Ignore:
Timestamp:
Jun 20, 1999, 4:02:13 PM (26 years ago)
Author:
sandervl
Message:

Comctl32 crash on exit fix + user32 bugfix for winhlp32 changed to be similar to Wine

Location:
trunk/src
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/comctl32/initterm.cpp

    r120 r131  
    1 /* $Id: initterm.cpp,v 1.3 1999-06-19 10:54:38 sandervl Exp $ */
     1/* $Id: initterm.cpp,v 1.4 1999-06-20 14:02:12 sandervl Exp $ */
    22/*
    33 * COMDLG32 DLL entry point
     
    110110         break;
    111111      case 1 :
    112          /* unregister Win32 window classes */
    113          UnregisterCOMCTL32WindowClasses();
    114112         break;
    115113      default  :
     
    126124static void APIENTRY cleanup(ULONG ulReason)
    127125{
     126   /* unregister Win32 window classes */
     127   UnregisterCOMCTL32WindowClasses();
     128
    128129   _ctordtorTerm();
    129130   CRT_term();
  • trunk/src/peldr/pe.cpp

    r120 r131  
    1 /* $Id: pe.cpp,v 1.3 1999-06-19 10:54:46 sandervl Exp $ */
     1/* $Id: pe.cpp,v 1.4 1999-06-20 14:02:13 sandervl Exp $ */
    22
    33/*
     
    2323#include <string.h>
    2424#include <assert.h>
    25 #include "win32type.h"
    26 #include "misc.h"
    27 #include "winexe.h"
    28 #include "windll.h"
     25#include <win32type.h>
     26#include <misc.h>
     27#include <winexe.h>
     28#include <windll.h>
     29#include <wprocess.h>
    2930
    3031char INFO_BANNER[]      = "Usage: PE winexe commandline";
     
    103104  }
    104105  WinExe->start();
     106
    105107  delete WinExe;
    106108
  • trunk/src/user32/Makefile

    r120 r131  
    1 # $Id: Makefile,v 1.4 1999-06-19 10:54:46 sandervl Exp $
     1# $Id: Makefile,v 1.5 1999-06-20 14:02:13 sandervl Exp $
    22
    33#
     
    3232$(TARGET).dll: $(OBJS) $(TARGET).def
    3333        $(LD) $(LDFLAGS) -Fm -Fe$@ $(OBJS) $(TARGET).def \
    34               $(PDWIN32_LIB)/pmwinx.lib $(PDWIN32_LIB)/gdi32.lib $(PDWIN32_LIB)/kernel32.lib libuls.lib
     34              $(PDWIN32_LIB)/pmwinx.lib $(PDWIN32_LIB)/gdi32.lib $(PDWIN32_LIB)/kernel32.lib $(PDWIN32_LIB)/libuls.lib
    3535        $(CP) $@ $(PDWIN32_BIN)
    3636
  • trunk/src/user32/user32.cpp

    r106 r131  
    1 /* $Id: user32.cpp,v 1.7 1999-06-12 20:44:07 cbratschi Exp $ */
     1/* $Id: user32.cpp,v 1.8 1999-06-20 14:02:13 sandervl Exp $ */
    22
    33/*
     
    545545                                 int       nWidth,
    546546                                 int       nHeight,
    547                                  HWND      arg9,
     547                                 HWND      parent,
    548548                                 HMENU     arg10,
    549549                                 HINSTANCE arg11,
     
    557557        arg3 = (LPCSTR)"CRASH, CRASH";
    558558
    559 //SvL: This break generic.exe & notepad.exe (probably many others too)
    560 //These parameters can be CW_USEDEFAULT, which is 0x80000000
    561 #if 0
    562   if (nWidth < 0) nWidth  = 0;
    563   if (x      < 0) x       = 0;
    564   if (nHeight< 0) nHeight = 0;
    565   if (y      < 0) y       = 0;
    566 #endif
    567 
    568 // 6-12-99 CB: WS_CLIPCHILDREN not set -> controls not redrawn
    569 // Problems with group boxes
    570 
    571 #ifndef WS_CLIPCHILDREN
    572   #define WS_CLIPCHILDREN            0x20000000L
    573 #endif
    574 
    575   dwStyle |= WS_CLIPCHILDREN;
    576 
    577 //SvL: Breaks applications
    578 #if 0
    579   /* @@@PH 98/06/21 redraw problems disappear when WS_SYNCPAINT is on */
    580 #ifndef WS_VISIBLE
    581   #define WS_VISIBLE                 0x80000000L
    582 #endif
    583 
    584 #ifndef WS_SYNCPAINT
    585   #define WS_SYNCPAINT               0x02000000L
    586 #endif
    587 
    588 #ifndef WS_CLIPSYBLINGS
    589   #define WS_CLIPSYBLINGS            0x10000000L
    590 #endif
    591 
    592   dwStyle |= WS_SYNCPAINT;
    593 
    594   /* @@@PH 98/06/21 experimental fix for WinHlp32 */
    595   // SOL.EXE crashes here, but WINHLP32 does not display the
    596   // navigation buttons otherwise.
    597   dwStyle |= WS_VISIBLE;
    598 #endif
     559  // 6-12-99 CB: WS_CLIPCHILDREN not set -> controls not redrawn
     560  // Problems with group boxes
     561
     562  //SvL: Correct window style (like Wine does) instead
     563  if(dwStyle & WS_CHILD) {
     564        dwStyle |= WS_CLIPSIBLINGS;
     565        if(!(dwStyle & WS_POPUP)) {
     566                dwStyle |= WS_CAPTION;
     567        }
     568  }
     569  if(dwExStyle & WS_EX_DLGMODALFRAME)
     570  {
     571        dwStyle &= ~WS_THICKFRAME;
     572  }
    599573
    600574#ifdef DEBUG
    601575    WriteLog("USER32:  CreateWindow: dwExStyle = %X\n", dwExStyle);
    602576    if((int)arg2 >> 16 != 0)
    603      WriteLog("USER32:  CreateWindow: classname = %s\n", arg2);
     577         WriteLog("USER32:  CreateWindow: classname = %s\n", arg2);
    604578    else WriteLog("USER32:  CreateWindow: classname = %X\n", arg2);
    605579    WriteLog("USER32:  CreateWindow: windowname= %s\n", arg3);
     
    609583    WriteLog("USER32:  CreateWindow: nWidth    = %d\n", nWidth);
    610584    WriteLog("USER32:  CreateWindow: nHeight   = %d\n", nHeight);
    611     WriteLog("USER32:  CreateWindow: parent    = %X\n", arg9);
     585    WriteLog("USER32:  CreateWindow: parent    = %X\n", parent);
    612586    WriteLog("USER32:  CreateWindow: hwmenu    = %X\n", arg10);
    613587    WriteLog("USER32:  CreateWindow: hinstance = %X\n", arg11);
     
    640614                          nWidth,
    641615                          nHeight,
    642                           arg9,
     616                          parent,
    643617                          arg10,
    644618                          arg11,
     
    653627        window->SetWindowHandle(hwnd);
    654628    }
     629    //SvL: Taken from Wine
     630    if(dwStyle & WS_CHILD && !(dwExStyle & WS_EX_NOPARENTNOTIFY) )
     631    {
     632        /* Notify the parent window only */
     633        SendMessageA(parent, WM_PARENTNOTIFY, MAKEWPARAM(WM_CREATE, 0), (LPARAM)hwnd );
     634    }
     635
    655636    dprintf(("USER32:  ************CreateWindowExA %s (%d,%d,%d,%d), hwnd = %X\n", arg2, x, y, nWidth, nHeight, hwnd));
    656637    return(hwnd);
  • trunk/src/user32/wndclass.cpp

    r96 r131  
    1 /* $Id: wndclass.cpp,v 1.3 1999-06-10 16:50:37 phaller Exp $ */
     1/* $Id: wndclass.cpp,v 1.4 1999-06-20 14:02:13 sandervl Exp $ */
    22
    33/*
     
    709709 Win32WindowClass     *wclass;
    710710
    711 #ifdef DEBUG1
     711#ifdef DEBUG
    712712  dprintf(("OS2ToWinCallback for message %s", GetMsgText(Msg)));
    713713#endif
  • trunk/src/user32/wndproc.cpp

    r96 r131  
    1 /* $Id: wndproc.cpp,v 1.4 1999-06-10 16:50:37 phaller Exp $ */
    2 
    3 /*
    4  *
    5  * Project Odin Software License can be found in LICENSE.TXT
    6  *
    7  */
     1/* $Id: wndproc.cpp,v 1.5 1999-06-20 14:02:13 sandervl Exp $ */
     2
    83/*
    94 * Win32 window procedure class for OS/2
    105 *
    116 * Copyright 1998 Sander van Leeuwen
     7 *
     8 *
     9 * Project Odin Software License can be found in LICENSE.TXT
    1210 *
    1311 */
Note: See TracChangeset for help on using the changeset viewer.