[ros-dev] Re: [ros-diffs] [ion] 16361: PCH for csrss and win32csr, and remove rosrtl usage

Alex Ionescu ionucu at videotron.ca
Sat Jul 2 13:54:13 CEST 2005


Hartmut Birr wrote:

>ion at svn.reactos.com wrote:
>
>  
>
>>PCH for csrss and win32csr, and remove rosrtl usage
>>
>>Modified: trunk/reactos/subsys/csrss/api/wapi.c
>> 
>>
>>*Modified: trunk/reactos/subsys/csrss/api/wapi.c*
>>
>>--- trunk/reactos/subsys/csrss/api/wapi.c	2005-07-01 02:47:15 UTC (rev 16360)
>>+++ trunk/reactos/subsys/csrss/api/wapi.c	2005-07-01 03:03:06 UTC (rev 16361)
>>@@ -10,13 +10,8 @@
>>
>>
>>/* INCLUDES ******************************************************************/
>>
>> 
>>
>>-#include <windows.h>
>>-#define NTOS_MODE_USER
>>-#include <ndk/ntndk.h>
>>-#include <rosrtl/thread.h>
>> 
>>
>>+#include "csrss.h"
>> 
>>
>>
>> 
>>
>>-#include "api.h"
>>-
>> 
>>
>>#define NDEBUG
>>#include <debug.h>
>>
>>@@ -170,7 +165,7 @@
>> 
>>
>>    
>>    /* Close the port and exit the thread */
>>    NtClose(ServerPort);
>> 
>>
>>-    RtlRosExitUserThread(STATUS_SUCCESS);
>> 
>>
>>+    NtTerminateThread(NtCurrentThread(), STATUS_SUCCESS);
>> 
>>
>>}
>>
>> 
>>
>>    
>>
>Hi,
>
>this change is wrong. If you remove RtlRosExitUserThread, you have to
>insert the code from RtlRosExitUserThread. With the current code, the
>user mode stack from the thread isn't freed. Csrss does crash after a
>short time because csrss isn't able to create a stack for a new thread.
>This occurs while compiling ros on ros.
>
>- Hartmut
>  
>
Hi,

Sorry for not noticing this, I have it fixed locally since I 
reimplemented the native code loader to totally kill off rosrtl. I 
didn't know it would be a problem until then.

Best regards,
Alex Ionescu


More information about the Ros-dev mailing list