Author: fireball Date: Sat Jul 18 11:39:24 2009 New Revision: 42032
URL: http://svn.reactos.org/svn/reactos?rev=42032&view=rev Log: - Fix Wine-server interface to allow data transfer, first version.
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/init.c branches/arwinss/reactos/subsystems/win32/win32k/include/request.h branches/arwinss/reactos/subsystems/win32/win32k/include/win32.h branches/arwinss/reactos/subsystems/win32/win32k/include/winesup.h branches/arwinss/reactos/subsystems/win32/win32k/wine/main.c branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/init.c URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win32... ============================================================================== --- branches/arwinss/reactos/subsystems/win32/win32k/gre/init.c [iso-8859-1] (original) +++ branches/arwinss/reactos/subsystems/win32/win32k/gre/init.c [iso-8859-1] Sat Jul 18 11:39:24 2009 @@ -82,6 +82,7 @@ Win32Process->HeapMappings.KernelMapping = (PVOID)GlobalUserHeap; Win32Process->HeapMappings.UserMapping = UserBase; Win32Process->HeapMappings.Count = 1; + InitializeListHead(&Win32Process->Classes); } else {
Modified: branches/arwinss/reactos/subsystems/win32/win32k/include/request.h URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win32... ============================================================================== --- branches/arwinss/reactos/subsystems/win32/win32k/include/request.h [iso-8859-1] (original) +++ branches/arwinss/reactos/subsystems/win32/win32k/include/request.h [iso-8859-1] Sat Jul 18 11:39:24 2009 @@ -27,6 +27,20 @@ /* request handler definition */ #define DECL_HANDLER(name) \ void req_##name( const struct name##_request *req, struct name##_reply *reply ) + +/* get the request vararg size */ +static inline data_size_t get_req_data_size(struct __server_request_info *req) +{ + return req->u.req.request_header.request_size; +} + +/* get the request vararg as unicode string */ +static inline void get_req_unicode_str( void *req, struct unicode_str *str ) +{ + struct __server_request_info *serv_req = (struct __server_request_info *)req; + str->str = serv_req->data[0].ptr; + str->len = (get_req_data_size(serv_req) / sizeof(WCHAR)) * sizeof(WCHAR); +}
/* Everything below this line is generated automatically by tools/make_requests */ /* ### make_requests begin ### */
Modified: branches/arwinss/reactos/subsystems/win32/win32k/include/win32.h URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win32... ============================================================================== --- branches/arwinss/reactos/subsystems/win32/win32k/include/win32.h [iso-8859-1] (original) +++ branches/arwinss/reactos/subsystems/win32/win32k/include/win32.h [iso-8859-1] Sat Jul 18 11:39:24 2009 @@ -28,8 +28,9 @@
typedef struct _PROCESSINFO { - PEPROCESS peProcess; + PEPROCESS peProcess; W32HEAP_USER_MAPPING HeapMappings; + LIST_ENTRY Classes; /* window classes owned by the process */ } PROCESSINFO, *PPROCESSINFO;
#endif /* __INCLUDE_NAPI_WIN32_H */
Modified: branches/arwinss/reactos/subsystems/win32/win32k/include/winesup.h URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win32... ============================================================================== --- branches/arwinss/reactos/subsystems/win32/win32k/include/winesup.h [iso-8859-1] (original) +++ branches/arwinss/reactos/subsystems/win32/win32k/include/winesup.h [iso-8859-1] Sat Jul 18 11:39:24 2009 @@ -14,9 +14,11 @@ #define assert ASSERT #define tolowerW(n) towlower((n)) #define strncmpiW(s1,s2,n) _wcsnicmp((const wchar_t *)(s1),(const wchar_t *)(s2),(n)) +#define set_win32_error(x) SetLastWin32Error(x)
void set_error( unsigned int err ); static inline void clear_error(void) { set_error(0); } +struct window_class* get_window_class( user_handle_t window );
/* gets the discretionary access control list from a security descriptor */ static inline const ACL *sd_get_dacl( const struct security_descriptor *sd, int *present ) @@ -63,4 +65,7 @@ int dump_strW( const WCHAR *str, data_size_t len, FILE *f, const char escape[2] ); const SID *token_get_user( void *token );
+// misc stuff, should be moved elsewhere +#define DESKTOP_ATOM ((atom_t)32769) + #endif
Modified: branches/arwinss/reactos/subsystems/win32/win32k/wine/main.c URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win32... ============================================================================== --- branches/arwinss/reactos/subsystems/win32/win32k/wine/main.c [iso-8859-1] (original) +++ branches/arwinss/reactos/subsystems/win32/win32k/wine/main.c [iso-8859-1] Sat Jul 18 11:39:24 2009 @@ -9,6 +9,10 @@ /* INCLUDES ******************************************************************/
#include <win32k.h> + +#undef LIST_FOR_EACH +#undef LIST_FOR_EACH_SAFE +#include "object.h"
#define WANT_REQUEST_HANDLERS #include "request.h"
Modified: branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win32... ============================================================================== --- branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c [iso-8859-1] (original) +++ branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c [iso-8859-1] Sat Jul 18 11:39:24 2009 @@ -24,4 +24,9 @@ return NULL; }
+struct window_class* get_window_class( user_handle_t window ) +{ + return NULL; +} + /* EOF */