Merge branch 'master' of /srv/lav/Projects/WINE/eterwine into eterhack
authorVitaly Lipatov <lav@etersoft.ru>
Mon, 12 Jan 2009 10:51:07 +0000 (13:51 +0300)
committerVitaly Lipatov <lav@etersoft.ru>
Mon, 12 Jan 2009 10:51:07 +0000 (13:51 +0300)
Conflicts:
VERSION
configure
dlls/ntoskrnl.exe/ntoskrnl.c
include/wine/server_protocol.h
server/protocol.def
server/trace.c

41 files changed:
1  2 
Make.rules.in
configure
configure.ac
dlls/cabinet/fdi.c
dlls/comctl32/toolbar.c
dlls/comdlg32/filedlg.c
dlls/dinput/device.c
dlls/dinput/mouse.c
dlls/dnsapi/ns_name.c
dlls/gdi32/freetype.c
dlls/kernel32/vxd.c
dlls/msi/package.c
dlls/ntdll/directory.c
dlls/ntdll/file.c
dlls/ntdll/loader.c
dlls/ntdll/server.c
dlls/ntdll/thread.c
dlls/ntdll/virtual.c
dlls/ntoskrnl.exe/ntoskrnl.c
dlls/ntoskrnl.exe/ntoskrnl.exe.spec
dlls/ole32/ole32.spec
dlls/rpcrt4/rpc_server.c
dlls/shell32/shresdef.h
dlls/user32/message.c
dlls/user32/win.c
dlls/wined3d/directx.c
dlls/wined3d/wined3d_private.h
dlls/winex11.drv/window.c
dlls/winex11.drv/xrender.c
dlls/wininet/http.c
dlls/ws2_32/socket.c
include/cfgmgr32.h
include/config.h.in
include/wine/server_protocol.h
include/wine/wine_common_ver.rc
loader/preloader.c
server/device.c
server/fd.c
server/protocol.def
server/trace.c
tools/wine.inf.in

diff --cc Make.rules.in
Simple merge
diff --cc configure
Simple merge
diff --cc configure.ac
Simple merge
Simple merge
Simple merge
Simple merge
index 8e80671b817fdae53cbd2b336587f4e7be1da21f,8e226cc2d3ee3cc287a164434ba1610da6d53ce3..0803ad22597cd07e42a079db8e6a792c816b41c3
@@@ -276,10 -274,9 +276,10 @@@ void fill_DataFormat(void *out, DWORD s
      memset(out, 0, size);
      if (df->dt == NULL) {
        /* This means that the app uses Wine's internal data format */
-       memcpy(out, in, df->internal_format_size);
+         memcpy(out, in, min(size, df->internal_format_size));
      } else {
        for (i = 0; i < df->size; i++) {
 +          if (*(in_c + df->dt[i].offset_in) == 0) continue;
            if (df->dt[i].offset_in >= 0) {
                switch (df->dt[i].size) {
                    case 1:
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 70bc7087ae04d6086ed710e22b46ac9bfbb5a8b3,b78528aa2f2cccfb559975f640e5b80d2870432f..02ea02a379f85a7f00a0110ba90455214737b7f7
@@@ -301,8 -229,7 +306,8 @@@ NTSTATUS CDECL wine_ntoskrnl_main_loop
              {
                  code     = reply->code;
                  ioctl    = reply->next;
-                 device   = reply->user_ptr;
 +                pid      = reply->pid;
+                 device   = wine_server_get_ptr( reply->user_ptr );
                  in_size  = reply->in_size;
                  out_size = reply->out_size;
              }
@@@ -1314,106 -866,12 +1319,114 @@@ void WINAPI ExFreePoolWithTag( void *pt
  }
  
  
 +/***********************************************************************
++<<<<<<< HEAD:dlls/ntoskrnl.exe/ntoskrnl.c
 + *           KeGetCurrentThread   (NTOSKRNL.EXE.@)
 + */
 +PKTHREAD WINAPI KeGetCurrentThread(void)
 +{
 +    FIXME( "\n" );
 +    return NULL;
 +}
 +
 +
 +/***********************************************************************
 + *           KeDelayExecutionThread   (NTOSKRNL.EXE.@)
 + */
 +NTSTATUS WINAPI KeDelayExecutionThread ( KPROCESSOR_MODE WaitMode,
 +        BOOLEAN Alertable, PLARGE_INTEGER Interval )
 +{
 +    FIXME( "%d %d %p\n", WaitMode, Alertable, Interval );
 +    return STATUS_SUCCESS;
 +}
 +
 +
  /***********************************************************************
   *           KeInitializeEvent   (NTOSKRNL.EXE.@)
   */
 +void WINAPI KeInitializeEvent( PRKEVENT Event, EVENT_TYPE Type,
 +                               BOOLEAN State )
 +{
 +    TRACE( "%p %u %u\n", Event, Type, State );
 +    RtlZeroMemory( Event, sizeof(KEVENT) );
 +    Event->Header.Type = Type;
 +    Event->Header.Size = 4;
 +    if (State)
 +        Event->Header.SignalState = 1;
 +    InitializeListHead( &Event->Header.WaitListHead );
 +}
 +
 +
 +/***********************************************************************
 + *           KeClearEvent   (NTOSKRNL.EXE.@)
 + */
 +void WINAPI KeClearEvent( PRKEVENT Event )
 +{
 +    TRACE( "%p\n", Event );
 +    Event->Header.SignalState = 0;
 +}
 +
 +
 +/***********************************************************************
 + *           KeResetEvent   (NTOSKRNL.EXE.@)
 + */
 +LONG WINAPI KeResetEvent( PRKEVENT Event )
 +{
 +    LONG ret;
 +
 +    TRACE( "%p\n", Event );
 +
 +    ret = Event->Header.SignalState;
 +    Event->Header.SignalState = 0;
 +    return ret;
 +}
 +
 +
 +/***********************************************************************
 + *           KeSetEvent   (NTOSKRNL.EXE.@)
 + */
 +LONG WINAPI KeSetEvent( PRKEVENT Event, KPRIORITY Increment,
 +                        BOOLEAN Wait )
 +{
 +    LONG ret;
 +
 +    TRACE("%p %d %d\n", Event, Increment, Wait);
 +
 +    ret = Event->Header.SignalState;
 +    Event->Header.SignalState = 1;
 +    return ret;
 +}
 +
 +
 +/***********************************************************************
 + *           KeInitializeMutex   (NTOSKRNL.EXE.@)
 + */
 +void WINAPI KeInitializeMutex( PRKMUTEX Mutex, ULONG Level )
 +{
 +    TRACE( "%p %u\n", Mutex, Level );
 +    RtlZeroMemory( Mutex, sizeof(KMUTEX) );
 +    Mutex->Header.Type = 2;
 +    Mutex->Header.Size = 8;
 +    Mutex->Header.SignalState = 1;
 +    InitializeListHead( &Mutex->Header.WaitListHead );
 +    Mutex->ApcDisable = 1;
 +}
 +
 +
 +/***********************************************************************
 + *           KeReleaseMutex   (NTOSKRNL.EXE.@)
 + */
 +LONG WINAPI KeReleaseMutex( PRKMUTEX Mutex, BOOLEAN Wait )
 +{
 +    TRACE("%p %d\n", Mutex, Wait);
 +    return STATUS_SUCCESS;
++=======
++ *           KeInitializeEvent   (NTOSKRNL.EXE.@)
++ */
+ void WINAPI KeInitializeEvent( PRKEVENT Event, EVENT_TYPE Type, BOOLEAN State )
+ {
+     FIXME( "stub: %p %d %d\n", Event, Type, State );
++>>>>>>> 254f60b985de89a2bd4f5a5aa94aa569684d6732:dlls/ntoskrnl.exe/ntoskrnl.c
  }
  
  
   */
  void WINAPI KeInitializeSpinLock( PKSPIN_LOCK SpinLock )
  {
++<<<<<<< HEAD:dlls/ntoskrnl.exe/ntoskrnl.c
 +    TRACE("%p\n", SpinLock);
 +}
 +
 +
 +/***********************************************************************
 + *           PoSetPowerState   (NTOSKRNL.EXE.@)
 + */
 +UINT WINAPI PoSetPowerState( PDEVICE_OBJECT DeviceObject,
 +                             POWER_STATE_TYPE Type, POWER_STATE State )
 +{
 +    TRACE("%p %u %u\n", DeviceObject, Type, State.DeviceState);
 +    return State.DeviceState;
++=======
+     FIXME( "stub: %p\n", SpinLock );
++>>>>>>> 254f60b985de89a2bd4f5a5aa94aa569684d6732:dlls/ntoskrnl.exe/ntoskrnl.c
  }
  
  
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 1aa63dc236ce01b52ab63b566f261041e61c311d,de80fc2908b75c5de6c0d66632472e03b014d15e..fa7560fd0e4fdf58bfddb081fdf66e6c62e862fd
@@@ -4155,8 -4172,7 +4172,8 @@@ struct get_next_device_request_repl
      struct reply_header __header;
      obj_handle_t next;
      ioctl_code_t code;
-     void*        user_ptr;
 +    process_id_t pid;
+     client_ptr_t user_ptr;
      data_size_t  in_size;
      data_size_t  out_size;
      /* VARARG(next_data,bytes); */
@@@ -5089,6 -5070,6 +5106,6 @@@ union generic_repl
      struct set_window_layered_info_reply set_window_layered_info_reply;
  };
  
- #define SERVER_PROTOCOL_VERSION 10353
 -#define SERVER_PROTOCOL_VERSION 380
++#define SERVER_PROTOCOL_VERSION 10380
  
  #endif /* __WINE_WINE_SERVER_PROTOCOL_H */
Simple merge
Simple merge
diff --cc server/device.c
Simple merge
diff --cc server/fd.c
Simple merge
index a1192317aefaf049ade735a831dd6a8ee4ffe139,6d6be5bdc5c5ebcc3a77c42106bcbf6425ed0c72..a761b2ad883e359a37c9992d8e27b2ecb1ff4551
@@@ -2984,8 -3001,7 +3001,8 @@@ enum message_typ
  @REPLY
      obj_handle_t next;            /* handle to the next ioctl */
      ioctl_code_t code;            /* ioctl code */
-     void*        user_ptr;        /* opaque ptr for the device */
 +    process_id_t pid;             /* process id */
+     client_ptr_t user_ptr;        /* opaque ptr for the device */
      data_size_t  in_size;         /* total needed input size */
      data_size_t  out_size;        /* needed output size */
      VARARG(next_data,bytes);      /* input data of the next ioctl */
diff --cc server/trace.c
index 7090b2edc354f786fe89aeb4ff4d27e61c7a0503,e30517d67f6f3ecc091ababaf5730118a7a2aa15..1b39e772dac1fd5601f49f0529917555c3759c43
@@@ -3724,8 -3861,9 +3861,10 @@@ static void dump_get_next_device_reques
      fprintf( stderr, " code=" );
      dump_ioctl_code( &req->code );
      fprintf( stderr, "," );
-     fprintf( stderr, " user_ptr=%p,", req->user_ptr );
 +    fprintf( stderr, " pid=%04x,", req->pid );
+     fprintf( stderr, " user_ptr=" );
+     dump_uint64( &req->user_ptr );
+     fprintf( stderr, "," );
      fprintf( stderr, " in_size=%u,", req->in_size );
      fprintf( stderr, " out_size=%u,", req->out_size );
      fprintf( stderr, " next_data=" );
Simple merge