Ignore:
Timestamp:
Dec 7, 2001, 3:13:39 PM (24 years ago)
Author:
sandervl
Message:

overlapped io, com, thread & process updates

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/thread.cpp

    r7532 r7567  
    1 /* $Id: thread.cpp,v 1.38 2001-12-03 12:13:10 sandervl Exp $ */
     1/* $Id: thread.cpp,v 1.39 2001-12-07 14:13:38 sandervl Exp $ */
    22
    33/*
     
    325325  rc = AsmCallThreadHandler(winthread, userdata);
    326326
    327   HMSetThreadTerminated(GetCurrentThread());
    328   winteb->o.odin.exceptFrame = 0;
    329   Win32DllBase::detachThreadFromAllDlls();  //send DLL_THREAD_DETACH message to all dlls
    330   Win32DllBase::tlsDetachThreadFromAllDlls(); //destroy TLS structures of all dlls
    331   WinExe->tlsDetachThread();              //destroy TLS structure of main exe
    332   DestroyTIB();
    333   OS2UnsetExceptionHandler((void *)&exceptFrame);
     327  if(fExitProcess) {
     328      OSLibDosExitThread(rc);
     329  }
     330  else {
     331      HMSetThreadTerminated(GetCurrentThread());
     332      winteb->o.odin.exceptFrame = 0;
     333      Win32DllBase::detachThreadFromAllDlls();  //send DLL_THREAD_DETACH message to all dlls
     334      Win32DllBase::tlsDetachThreadFromAllDlls(); //destroy TLS structures of all dlls
     335      if(WinExe) WinExe->tlsDetachThread();               //destroy TLS structure of main exe
     336      DestroyTIB();
     337      OS2UnsetExceptionHandler((void *)&exceptFrame);
     338  }
    334339
    335340  return rc;
Note: See TracChangeset for help on using the changeset viewer.