Author: hbelusca
Date: Sun Dec 14 17:30:38 2014
New Revision: 65643

URL: http://svn.reactos.org/svn/reactos?rev=65643&view=rev
Log:
[CONSRV]: Move all references to VDM screenbuffers from condrv back to consrv 
(only ConDrvWriteConsoleOutputVDM remains in condrv for now...)

Modified:
    branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/conoutput.c
    branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/text.c
    branches/condrv_restructure/win32ss/user/winsrv/consrv/conoutput.c
    branches/condrv_restructure/win32ss/user/winsrv/consrv/include/conio.h

Modified: 
branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/conoutput.c
URL: 
http://svn.reactos.org/svn/reactos/branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/conoutput.c?rev=65643&r1=65642&r2=65643&view=diff
==============================================================================
--- branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/conoutput.c   
[iso-8859-1] (original)
+++ branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/conoutput.c   
[iso-8859-1] Sun Dec 14 17:30:38 2014
@@ -215,13 +215,6 @@
 /* PUBLIC DRIVER APIS 
*********************************************************/
 
 NTSTATUS NTAPI
-ConDrvWriteConsoleOutputVDM(IN PCONSOLE Console,
-                            IN PTEXTMODE_SCREEN_BUFFER Buffer,
-                            IN PCHAR_CELL CharInfo/*Buffer*/,
-                            IN COORD CharInfoSize,
-                            IN OUT PSMALL_RECT WriteRegion,
-                            IN BOOLEAN DrawRegion);
-NTSTATUS NTAPI
 ConDrvInvalidateBitMapRect(IN PCONSOLE Console,
                            IN PCONSOLE_SCREEN_BUFFER Buffer,
                            IN PSMALL_RECT Region)
@@ -231,19 +224,6 @@
 
     /* Validity check */
     ASSERT(Console == Buffer->Header.Console);
-
-    /* In text-mode only, draw the VDM buffer if present */
-    if (GetType(Buffer) == TEXTMODE_BUFFER)
-    {
-        PTEXTMODE_SCREEN_BUFFER TextBuffer = (PTEXTMODE_SCREEN_BUFFER)Buffer;
-
-        /*Status =*/ ConDrvWriteConsoleOutputVDM(Buffer->Header.Console,
-                                                 TextBuffer,
-                                                 Console->VDMBuffer,
-                                                 Console->VDMBufferSize,
-                                                 Region,
-                                                 FALSE);
-    }
 
     /* If the output buffer is the current one, redraw the correct portion of 
the screen */
     if (Buffer == Console->ActiveBuffer) TermDrawRegion(Console, Region);

Modified: branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/text.c
URL: 
http://svn.reactos.org/svn/reactos/branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/text.c?rev=65643&r1=65642&r2=65643&view=diff
==============================================================================
--- branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/text.c        
[iso-8859-1] (original)
+++ branches/condrv_restructure/win32ss/user/winsrv/consrv/condrv/text.c        
[iso-8859-1] Sun Dec 14 17:30:38 2014
@@ -597,14 +597,15 @@
 
 /*
  * NOTE: This function is strongly inspired by ConDrvWriteConsoleOutput...
+ * FIXME: This function MUST be moved into consrv/conoutput.c because only
+ * consrv knows how to manipulate VDM screenbuffers.
  */
 NTSTATUS NTAPI
 ConDrvWriteConsoleOutputVDM(IN PCONSOLE Console,
                             IN PTEXTMODE_SCREEN_BUFFER Buffer,
                             IN PCHAR_CELL CharInfo/*Buffer*/,
                             IN COORD CharInfoSize,
-                            IN OUT PSMALL_RECT WriteRegion,
-                            IN BOOLEAN DrawRegion)
+                            IN PSMALL_RECT WriteRegion)
 {
     SHORT X, Y;
     SMALL_RECT ScreenBuffer;
@@ -649,10 +650,6 @@
             ++CurCharInfo;
         }
     }
-
-    if (DrawRegion) TermDrawRegion(Console, &CapturedWriteRegion);
-
-    *WriteRegion = CapturedWriteRegion;
 
     return STATUS_SUCCESS;
 }

Modified: branches/condrv_restructure/win32ss/user/winsrv/consrv/conoutput.c
URL: 
http://svn.reactos.org/svn/reactos/branches/condrv_restructure/win32ss/user/winsrv/consrv/conoutput.c?rev=65643&r1=65642&r2=65643&view=diff
==============================================================================
--- branches/condrv_restructure/win32ss/user/winsrv/consrv/conoutput.c  
[iso-8859-1] (original)
+++ branches/condrv_restructure/win32ss/user/winsrv/consrv/conoutput.c  
[iso-8859-1] Sun Dec 14 17:30:38 2014
@@ -16,6 +16,16 @@
 
 /* PUBLIC SERVER APIS 
*********************************************************/
 
+/*
+ * FIXME: This function MUST be moved fro condrv/conoutput.c because only
+ * consrv knows how to manipulate VDM screenbuffers.
+ */
+NTSTATUS NTAPI
+ConDrvWriteConsoleOutputVDM(IN PCONSOLE Console,
+                            IN PTEXTMODE_SCREEN_BUFFER Buffer,
+                            IN PCHAR_CELL CharInfo/*Buffer*/,
+                            IN COORD CharInfoSize,
+                            IN PSMALL_RECT WriteRegion);
 NTSTATUS NTAPI
 ConDrvInvalidateBitMapRect(IN PCONSOLE Console,
                            IN PCONSOLE_SCREEN_BUFFER Buffer,
@@ -32,6 +42,18 @@
                                    InvalidateDIBitsRequest->OutputHandle,
                                    &Buffer, GENERIC_READ, TRUE);
     if (!NT_SUCCESS(Status)) return Status;
+
+    /* In text-mode only, draw the VDM buffer if present */
+    if (GetType(Buffer) == TEXTMODE_BUFFER)
+    {
+        PTEXTMODE_SCREEN_BUFFER TextBuffer = (PTEXTMODE_SCREEN_BUFFER)Buffer;
+
+        /*Status =*/ ConDrvWriteConsoleOutputVDM(Buffer->Header.Console,
+                                                 TextBuffer,
+                                                 
Buffer->Header.Console->VDMBuffer,
+                                                 
Buffer->Header.Console->VDMBufferSize,
+                                                 
&InvalidateDIBitsRequest->Region);
+    }
 
     Status = ConDrvInvalidateBitMapRect(Buffer->Header.Console,
                                         Buffer,

Modified: branches/condrv_restructure/win32ss/user/winsrv/consrv/include/conio.h
URL: 
http://svn.reactos.org/svn/reactos/branches/condrv_restructure/win32ss/user/winsrv/consrv/include/conio.h?rev=65643&r1=65642&r2=65643&view=diff
==============================================================================
--- branches/condrv_restructure/win32ss/user/winsrv/consrv/include/conio.h      
[iso-8859-1] (original)
+++ branches/condrv_restructure/win32ss/user/winsrv/consrv/include/conio.h      
[iso-8859-1] Sun Dec 14 17:30:38 2014
@@ -307,11 +307,11 @@
     LONG ReferenceCount;                    /* Is incremented each time a 
handle to something in the console (a screen-buffer or the input buffer of this 
console) gets referenced */
     CRITICAL_SECTION Lock;
 
-    CONSOLE_STATE State;                    /* State of the console */
-    TERMINAL TermIFace;                     /* Frontend-specific interface */
-
     ULONG ConsoleID;                        /* The ID of the console */
     LIST_ENTRY ListEntry;                   /* Entry in the list of consoles */
+
+    CONSOLE_STATE State;                    /* State of the console */
+    TERMINAL TermIFace;                     /* Terminal-specific interface */
 
     HANDLE UnpauseEvent;                    /* When != NULL, event for pausing 
the console */
 


Reply via email to