"Hack-fix" some headers to remove the forward declaration of typedef struct _CONSOLE *PCONSOLE;, which makes GCC 4.4.3 angry, but makes GCC 4.7.2 stay imperturbable.

svn path=/branches/ros-csrss/; revision=58725
This commit is contained in:
Hermès Bélusca-Maïto 2013-04-08 21:03:24 +00:00
parent 3a7f8d36e8
commit 2358a3210f
4 changed files with 22 additions and 26 deletions

View file

@ -10,14 +10,14 @@
VOID WINAPI ConSrvInitConsoleSupport(VOID); VOID WINAPI ConSrvInitConsoleSupport(VOID);
NTSTATUS WINAPI ConSrvInitConsole(OUT PCONSOLE* NewConsole, NTSTATUS WINAPI ConSrvInitConsole(OUT struct _CONSOLE** /* PCONSOLE* */ NewConsole,
IN OUT PCONSOLE_START_INFO ConsoleStartInfo, IN OUT PCONSOLE_START_INFO ConsoleStartInfo,
IN PCSR_PROCESS ConsoleLeaderProcess); IN PCSR_PROCESS ConsoleLeaderProcess);
VOID WINAPI ConSrvDeleteConsole(PCONSOLE Console); VOID WINAPI ConSrvDeleteConsole(struct _CONSOLE* /* PCONSOLE */ Console);
NTSTATUS FASTCALL ConSrvGetConsole(PCONSOLE_PROCESS_DATA ProcessData, NTSTATUS FASTCALL ConSrvGetConsole(PCONSOLE_PROCESS_DATA ProcessData,
PCONSOLE* Console, struct _CONSOLE** /* PCONSOLE* */ Console,
BOOL LockConsole); BOOL LockConsole);
VOID FASTCALL ConSrvReleaseConsole(PCONSOLE Console, VOID FASTCALL ConSrvReleaseConsole(struct _CONSOLE* /* PCONSOLE */ Console,
BOOL WasConsoleLocked); BOOL WasConsoleLocked);
/* EOF */ /* EOF */

View file

@ -49,10 +49,6 @@
extern HINSTANCE ConSrvDllInstance; extern HINSTANCE ConSrvDllInstance;
extern HANDLE ConSrvHeap; extern HANDLE ConSrvHeap;
/* Opaque pointers */
typedef struct _CONSOLE_IO_HANDLE *PCONSOLE_IO_HANDLE;
typedef struct _CONSOLE *PCONSOLE;
#define ConsoleGetPerProcessData(Process) \ #define ConsoleGetPerProcessData(Process) \
((PCONSOLE_PROCESS_DATA)((Process)->ServerData[CONSRV_SERVERDLL_INDEX])) ((PCONSOLE_PROCESS_DATA)((Process)->ServerData[CONSRV_SERVERDLL_INDEX]))
@ -61,14 +57,14 @@ typedef struct _CONSOLE_PROCESS_DATA
LIST_ENTRY ConsoleLink; LIST_ENTRY ConsoleLink;
PCSR_PROCESS Process; // Process owning this structure. PCSR_PROCESS Process; // Process owning this structure.
HANDLE ConsoleEvent; HANDLE ConsoleEvent;
PCONSOLE Console; struct _CONSOLE* /* PCONSOLE */ Console;
PCONSOLE ParentConsole; struct _CONSOLE* /* PCONSOLE */ ParentConsole;
BOOL ConsoleApp; // TRUE if it is a CUI app, FALSE otherwise. BOOL ConsoleApp; // TRUE if it is a CUI app, FALSE otherwise.
RTL_CRITICAL_SECTION HandleTableLock; RTL_CRITICAL_SECTION HandleTableLock;
ULONG HandleTableSize; ULONG HandleTableSize;
PCONSOLE_IO_HANDLE HandleTable; // Length-varying table struct _CONSOLE_IO_HANDLE* /* PCONSOLE_IO_HANDLE */ HandleTable; // Length-varying table
LPTHREAD_START_ROUTINE CtrlDispatcher; LPTHREAD_START_ROUTINE CtrlDispatcher;
LPTHREAD_START_ROUTINE PropDispatcher; // We hold the property dialog handler there, till all the GUI thingie moves out from CSRSS. LPTHREAD_START_ROUTINE PropDispatcher; // We hold the property dialog handler there, till all the GUI thingie moves out from CSRSS.

View file

@ -25,7 +25,7 @@ typedef enum _CONSOLE_IO_OBJECT_TYPE
typedef struct _CONSOLE_IO_OBJECT typedef struct _CONSOLE_IO_OBJECT
{ {
CONSOLE_IO_OBJECT_TYPE Type; CONSOLE_IO_OBJECT_TYPE Type;
PCONSOLE Console; struct _CONSOLE* /* PCONSOLE */ Console;
LONG AccessRead, AccessWrite; LONG AccessRead, AccessWrite;
LONG ExclusiveRead, ExclusiveWrite; LONG ExclusiveRead, ExclusiveWrite;
LONG HandleCount; LONG HandleCount;
@ -88,43 +88,43 @@ typedef struct _FRONTEND_VTBL
/* /*
* Internal interface (functions called by the console server only) * Internal interface (functions called by the console server only)
*/ */
VOID (WINAPI *CleanupConsole)(PCONSOLE Console); VOID (WINAPI *CleanupConsole)(struct _CONSOLE* Console);
VOID (WINAPI *WriteStream)(PCONSOLE Console, VOID (WINAPI *WriteStream)(struct _CONSOLE* Console,
SMALL_RECT* Block, SMALL_RECT* Block,
LONG CursorStartX, LONG CursorStartX,
LONG CursorStartY, LONG CursorStartY,
UINT ScrolledLines, UINT ScrolledLines,
CHAR *Buffer, CHAR *Buffer,
UINT Length); UINT Length);
VOID (WINAPI *DrawRegion)(PCONSOLE Console, VOID (WINAPI *DrawRegion)(struct _CONSOLE* Console,
SMALL_RECT* Region); SMALL_RECT* Region);
BOOL (WINAPI *SetCursorInfo)(PCONSOLE Console, BOOL (WINAPI *SetCursorInfo)(struct _CONSOLE* Console,
PCONSOLE_SCREEN_BUFFER ScreenBuffer); PCONSOLE_SCREEN_BUFFER ScreenBuffer);
BOOL (WINAPI *SetScreenInfo)(PCONSOLE Console, BOOL (WINAPI *SetScreenInfo)(struct _CONSOLE* Console,
PCONSOLE_SCREEN_BUFFER ScreenBuffer, PCONSOLE_SCREEN_BUFFER ScreenBuffer,
UINT OldCursorX, UINT OldCursorX,
UINT OldCursorY); UINT OldCursorY);
BOOL (WINAPI *UpdateScreenInfo)(PCONSOLE Console, BOOL (WINAPI *UpdateScreenInfo)(struct _CONSOLE* Console,
PCONSOLE_SCREEN_BUFFER ScreenBuffer); PCONSOLE_SCREEN_BUFFER ScreenBuffer);
NTSTATUS (WINAPI *ResizeBuffer)(PCONSOLE Console, NTSTATUS (WINAPI *ResizeBuffer)(struct _CONSOLE* Console,
PCONSOLE_SCREEN_BUFFER ScreenBuffer, PCONSOLE_SCREEN_BUFFER ScreenBuffer,
COORD Size); COORD Size);
VOID (WINAPI *ResizeTerminal)(PCONSOLE Console); VOID (WINAPI *ResizeTerminal)(struct _CONSOLE* Console);
BOOL (WINAPI *ProcessKeyCallback)(PCONSOLE Console, BOOL (WINAPI *ProcessKeyCallback)(struct _CONSOLE* Console,
MSG* msg, MSG* msg,
BYTE KeyStateMenu, BYTE KeyStateMenu,
DWORD ShiftState, DWORD ShiftState,
UINT VirtualKeyCode, UINT VirtualKeyCode,
BOOL Down); BOOL Down);
VOID (WINAPI *RefreshInternalInfo)(PCONSOLE Console); VOID (WINAPI *RefreshInternalInfo)(struct _CONSOLE* Console);
/* /*
* External interface (functions corresponding to the Console API) * External interface (functions corresponding to the Console API)
*/ */
VOID (WINAPI *ChangeTitle)(PCONSOLE Console); VOID (WINAPI *ChangeTitle)(struct _CONSOLE* Console);
BOOL (WINAPI *ChangeIcon)(PCONSOLE Console, BOOL (WINAPI *ChangeIcon)(struct _CONSOLE* Console,
HICON hWindowIcon); HICON hWindowIcon);
HWND (WINAPI *GetConsoleWindowHandle)(PCONSOLE Console); HWND (WINAPI *GetConsoleWindowHandle)(struct _CONSOLE* Console);
} FRONTEND_VTBL, *PFRONTEND_VTBL; } FRONTEND_VTBL, *PFRONTEND_VTBL;

View file

@ -14,7 +14,7 @@ NTSTATUS FASTCALL ConSrvAllocateConsole(PCONSOLE_PROCESS_DATA ProcessData,
PHANDLE pErrorHandle, PHANDLE pErrorHandle,
PCONSOLE_START_INFO ConsoleStartInfo); PCONSOLE_START_INFO ConsoleStartInfo);
NTSTATUS FASTCALL ConSrvInheritConsole(PCONSOLE_PROCESS_DATA ProcessData, NTSTATUS FASTCALL ConSrvInheritConsole(PCONSOLE_PROCESS_DATA ProcessData,
PCONSOLE Console, struct _CONSOLE* /* PCONSOLE */ Console,
BOOL CreateNewHandlesTable, BOOL CreateNewHandlesTable,
PHANDLE pInputHandle, PHANDLE pInputHandle,
PHANDLE pOutputHandle, PHANDLE pOutputHandle,