[ros-diffs] [ion] 53051: [CSRSRV]: CSRSS tries to connect with itself and already has the region mapped, so allow this as a hack.

ion at svn.reactos.org ion at svn.reactos.org
Wed Aug 3 15:45:17 UTC 2011


Author: ion
Date: Wed Aug  3 15:45:16 2011
New Revision: 53051

URL: http://svn.reactos.org/svn/reactos?rev=53051&view=rev
Log:
[CSRSRV]: CSRSS tries to connect with itself and already has the region mapped, so allow this as a hack.

Modified:
    trunk/reactos/subsystems/win32/csrss/csrsrv/api/wapi.c
    trunk/reactos/subsystems/win32/csrss/csrsrv/init.c

Modified: trunk/reactos/subsystems/win32/csrss/csrsrv/api/wapi.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/csrss/csrsrv/api/wapi.c?rev=53051&r1=53050&r2=53051&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/csrss/csrsrv/api/wapi.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/csrss/csrsrv/api/wapi.c [iso-8859-1] Wed Aug  3 15:45:16 2011
@@ -293,6 +293,12 @@
                                     ViewUnmap,
                                     SEC_NO_CHANGE,
                                     PAGE_EXECUTE_READ);
+        if (Status == STATUS_CONFLICTING_ADDRESSES)
+        {
+            /* I Think our csrss tries to connect to itself... */
+            DPRINT1("Multiple mapping hack\n");
+            Status = STATUS_SUCCESS;
+        }
         if (!NT_SUCCESS(Status)) return Status;
     }
     

Modified: trunk/reactos/subsystems/win32/csrss/csrsrv/init.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/csrss/csrsrv/init.c?rev=53051&r1=53050&r2=53051&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/csrss/csrsrv/init.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/csrss/csrsrv/init.c [iso-8859-1] Wed Aug  3 15:45:16 2011
@@ -497,6 +497,7 @@
 static NTSTATUS
 CsrpCreateHeap (int argc, char ** argv, char ** envp)
 {
+    CHAR Value[] = "1024,3072,512";
     NTSTATUS Status;
 	DPRINT("CSR: %s called\n", __FUNCTION__);
 
@@ -512,7 +513,7 @@
 	}
     
     
-    Status = CsrSrvCreateSharedSection("1024,3072,512");
+    Status = CsrSrvCreateSharedSection(Value);
     DPRINT1("Status: %lx\n", Status);
     ASSERT(Status == STATUS_SUCCESS);
     




More information about the Ros-diffs mailing list