Eric Pouech
0a9f98b9bd
Removed the no longer user APC_ASYNC kind of APC.
2005-04-18 15:38:44 +00:00
Eric Pouech
5a2591d96d
- moved named pipe creation to ntdll
...
- server now handles the named pipe flags as the NTDLL values (not the
KERNEL32 ones)
- named pipes in server now use the async IO mechanism for
connect/wait ops
2005-04-18 14:57:04 +00:00
Mike McCormack
d6fdac2676
Calculate the size of the next mailslot message correctly.
2005-04-11 16:11:32 +00:00
Raphael Junqueira
962a5e7742
Fix potential region leak.
2005-04-11 12:54:53 +00:00
Alexandre Julliard
bc75f2f6c9
Return the coordinates information needed to setup the DC parameters
...
in the get_visible_region request instead of requiring the client to
compute it again.
2005-03-31 15:36:57 +00:00
Mike McCormack
2ab6a775bd
Implement mailslots.
2005-03-30 19:02:15 +00:00
Alexandre Julliard
eea706948a
The update region passed in WM_NCPAINT and the clipping region passed
...
to GetDCEx have to be in screen coordinates.
2005-03-30 17:11:46 +00:00
Eric Pouech
7001d6ed34
Clean-up async IO internal functions.
2005-03-29 11:40:10 +00:00
James Hawkins
580ded65e7
- Implement NtLoadKey.
...
- Forward RegLoadKey to NtLoadKey.
2005-03-29 11:38:58 +00:00
Alexandre Julliard
4d32a475a8
Replace the link_window request by a set_parent request since that is
...
all link_window is used for at this point.
Get rid of the WIN_LinkWindow/UnlinkWindow functions.
2005-03-25 10:38:56 +00:00
Alexandre Julliard
cb7aa8753c
Added support for xbuttons.
2005-03-24 19:16:54 +00:00
Alexandre Julliard
0bc8377bc2
Create a new server request for accepting hardware messages instead of
...
abusing reply_message.
Allow passing the determined window for a hardware message back to the
server to have it redispatch the message to the correct thread.
2005-03-23 10:33:17 +00:00
Alexandre Julliard
5054c79880
Try to always keep the server window Z-order in sync with the X11 one
...
using a heuristic based on mouse and expose events.
2005-03-21 12:37:00 +00:00
Alexandre Julliard
e3fe68926c
Revert the previous change, this is not working right yet.
2005-03-17 20:51:53 +00:00
Alexandre Julliard
f75609087a
Make the server know about the visible area of a window, which is the
...
window rect minus the caption and borders when they are handled by the
window manager.
2005-03-17 19:10:41 +00:00
Alexandre Julliard
4e47afb36f
Compute the top clipping window directly on the server side.
2005-03-17 14:02:06 +00:00
Alexandre Julliard
073d5f2b79
Queue hardware messages even if we don't find a window for them the
...
first time around.
2005-03-16 20:06:45 +00:00
Alexandre Julliard
705909ac09
Converted the window children lists to standard lists.
2005-03-16 19:54:33 +00:00
Alexandre Julliard
cf2f14212a
Avoid returning hardware messages if they have no chance to match the
...
filter.
2005-03-14 17:17:09 +00:00
Alexandre Julliard
dcab706fa0
Get rid of the registry saving level hack.
...
Make periodic saving the default behavior.
2005-03-14 11:00:43 +00:00
Alexandre Julliard
b9a9de6eb9
Clear the internal paint flag in the server before returning a
...
WM_PAINT message to avoid an extra server round-trip.
2005-03-10 17:19:33 +00:00
Alexandre Julliard
99615021fb
Properly cope with get_message being called recursively while
...
processing a hardware message.
2005-03-10 11:52:25 +00:00
Peter Berg Larsen
514f432031
Tmp was not freed in case of errors in save_branch().
2005-03-10 11:18:31 +00:00
Alexandre Julliard
1bc2caad02
Don't check children of minimized windows in get_update_region.
2005-03-09 11:49:46 +00:00
Ulrich Czekalla
5067909587
Create a thread-specific selection window to make sure we receive the
...
selection events in the correct thread.
2005-03-07 19:31:46 +00:00
Alexandre Julliard
d6885fe7d4
Avoid potential crash when freeing a message queue.
...
Properly initialize newly allocated messages.
2005-03-05 10:51:35 +00:00
Steven Edwards
5727918424
Added a check for poll.h.
2005-03-04 12:38:36 +00:00
Alexandre Julliard
a9e0fb1ba6
Convert the process dll list to a standard list.
2005-03-02 10:20:09 +00:00
Alexandre Julliard
aa34768677
Convert the object wait queue to a standard list.
2005-03-01 11:49:58 +00:00
Francois Gouget
10e3d96617
Fix a race condition in create_dir().
2005-03-01 11:00:06 +00:00
Alexandre Julliard
0502638ee1
Convert the per-process thread list to a standard list.
2005-03-01 10:56:18 +00:00
Alexandre Julliard
efdb4960a2
Converted the debug event queue to a standard list.
2005-02-26 17:45:29 +00:00
Alexandre Julliard
b2eff1ca01
Converted the global screen buffer list to a standard list.
2005-02-25 21:06:11 +00:00
Alexandre Julliard
8e3b072249
Replaced the message_list structure by a standard list.
2005-02-25 21:05:11 +00:00
Alexandre Julliard
73209eb73e
Convert the global thread list to a standard list.
2005-02-25 19:33:35 +00:00
Alexandre Julliard
48c0d51dc3
Convert the global process list to a standard list.
2005-02-25 19:31:26 +00:00
Alexandre Julliard
20894e2ffb
Convert the per-thread mutex list to a standard list.
2005-02-25 16:58:43 +00:00
Alexandre Julliard
b1aad5d86f
Regular files are always ready for I/O, no need to poll on them.
2005-02-25 14:02:20 +00:00
Alexandre Julliard
81b6a1fbe5
Convert the APC queues to use standard lists.
2005-02-25 14:01:40 +00:00
Alexandre Julliard
68abbc86e6
Convert the key notifications list to a standard list.
2005-02-24 19:43:53 +00:00
Alexandre Julliard
dd81ac50a9
Convert async I/O queues to standard lists.
2005-02-24 17:06:31 +00:00
Alexandre Julliard
43b2826714
Removed no longer used create_region function, and directly export
...
create_empty_region instead.
2005-02-22 19:42:35 +00:00
Alexandre Julliard
548c973457
Allow the client rectangle to be of arbitrary size and dimensions,
...
regardless of the window rectangle.
2005-02-22 19:41:43 +00:00
Krzysztof Foltman
b85017223f
Ensure that caret position is not reset to (0, 0) when CreateCaret is
...
called second time with the same window.
2005-02-18 20:02:55 +00:00
Robert Shearman
b0f02b28b9
- Implement AdjustTokenPrivileges, DuplicateTokenEx and
...
GetTokenInformation (for the TokenPrivileges case).
- Return STATUS_NO_TOKEN for OpenThreadToken when there is no token
set for the thread.
2005-02-11 11:52:06 +00:00
Robert Shearman
795e9de806
Support WaitNamedPipe timeouts.
2005-02-08 12:54:23 +00:00
Robert Shearman
04995ce90d
Don't overwrite last byte of the window structure as we might not have
...
allocated the memory for it if extrabytes was 0.
2005-02-08 12:07:48 +00:00
Dmitry Timoshkov
6dba0a7718
Add support for winevent hooks.
2005-02-03 16:40:20 +00:00
Alexandre Julliard
ae661da49c
Properly compute the client area valid rects and pass them to the
...
server in set_window_pos to avoid invalidating areas that remain
valid.
2005-02-03 13:40:12 +00:00
Alexandre Julliard
7c1cf8f009
Fixed refcount handling (waiting clients must not increase the
...
refcount of the pipe).
Converted linked lists to use the standard functions.
Small cleanups.
2005-02-03 10:48:23 +00:00
Alexandre Julliard
52e5ac5e41
Make sure leaked objects are printed even if a file descriptor is
...
still open.
2005-02-03 10:46:15 +00:00
Alexandre Julliard
e432d54fd7
Fixed potential crash in fd_dump function.
2005-02-03 10:45:18 +00:00
Dmitry Timoshkov
ed04d36b5d
Add more tests for old style hooks and winevent hooks, make them pass
...
under Wine.
2005-01-27 11:14:19 +00:00
Eric Pouech
4634447d6b
- got rid of include/async.h
...
- fixed some overlapped issues in socket handling
- moved kernel32.CancelIo implementation to ntdll
2005-01-14 19:54:38 +00:00
Alexandre Julliard
56206376b8
Desktop window is repainted on WM_ERASEBKGND, it must never get a
...
WM_PAINT.
2005-01-11 15:15:11 +00:00
Alexandre Julliard
646ab89f0a
Support mapping non page-aligned binaries for SEC_IMAGE mappings.
2005-01-04 12:04:06 +00:00
Rein Klazes
5dc91e6c08
A starting process must obey the STARTF_USESTDHANDLES flag and use the
...
standard io handles from the StartupInfo structure, even if it is
starting a new console.
2004-12-15 10:47:23 +00:00
Robert Shearman
7572b125b5
Implement NtQueryTimer.
2004-12-13 21:10:58 +00:00
Alexandre Julliard
5defa49979
Moved update region handling to the server.
2004-12-07 17:31:53 +00:00
Eric Pouech
294835a839
Another round of const correctness fixes.
2004-12-06 20:43:55 +00:00
Peter Chapman
505dfdefb5
Fix up several inline assembler blocks so that they produce correct
...
code with the -fomit-frame-pointer gcc flag.
2004-12-02 18:19:25 +00:00
Eric Pouech
44158dd690
- moved event, semaphore, mutex implementation from kernel32 to ntdll
...
- added mutant implementation in ntdll, and use it for mutex
implementation in kernel32
- added access parameter on event, semaphore, timer creation in
wineserver (as ntdll interface requires it)
- added missing definitions in include/winternl.h
2004-12-02 18:05:37 +00:00
Eric Pouech
0a258964c2
Const correctness fixes.
2004-11-30 21:38:57 +00:00
Alexandre Julliard
ff986a5a93
Converted the timer list to use standard list functions.
...
Allocate a timer id when the window is 0 instead of relying on the
client to do it.
Allow setting timers on windows belonging to other threads (found by
Mike McCormack).
2004-11-29 18:08:18 +00:00
Dmitry Timoshkov
93a4e1eed3
Take into account window visibility when searching for a target for a
...
hardware mouse message.
2004-10-27 21:55:00 +00:00
Alexandre Julliard
085ef06bd5
Added is_window_visible function.
2004-10-27 21:54:41 +00:00
Alexandre Julliard
626aa3366f
Added fallback syscalls for epoll functions.
2004-10-27 01:03:30 +00:00
Bill Medland
ec39d65540
Added a version option to the wineserver.
2004-10-19 03:57:41 +00:00
Vincent Béron
1d9df9f9c0
Create the necessary functions for wineserver contexts for Alpha.
2004-10-14 03:05:09 +00:00
Alexandre Julliard
969f57c24a
Added support for epoll() as an alternative to poll() (based on the
...
work of Shachar Shemesh and Mike McCormack).
2004-09-23 04:48:24 +00:00
Hans Leidekker
719a789792
Fix signed/unsigned comparison warnings.
2004-09-22 02:46:38 +00:00
Alexandre Julliard
4949a717c4
Moved timeout processing to a separate function.
2004-09-20 19:14:35 +00:00
Alexandre Julliard
807fe07417
Don't bother to return partial region data in get_window_region and
...
get_visible_region, return STATUS_BUFFER_OVERFLOW instead.
2004-09-17 18:20:11 +00:00
Alexandre Julliard
17c775f13c
Take care to not close the file handle if there are outstanding locks
...
and the directory options don't match.
2004-09-09 00:28:36 +00:00
Alexandre Julliard
15e12daf03
Converted the timeout list to use the standard list functions.
2004-09-08 04:17:31 +00:00
Alexandre Julliard
5e128dd470
Added xor_region, fixed rect_in_region.
2004-09-08 01:34:22 +00:00
Eric Pouech
440ad8ccf2
- ctrl-c enabling flag is now inherited
...
- fixed console-related fields in RTL_USER_PROCESS_PARAMETERS
- various clean-up in kernel32.SetConsoleCtrlHandler
- only send a console event once to a process and not to all the
process' threads
2004-09-08 01:25:05 +00:00
Alexandre Julliard
0a6af13982
Make sure to run through the poll loop once before processing newly
...
added timers (reported by Mike McCormack).
2004-09-07 23:28:14 +00:00
Alexandre Julliard
edc90a9f9c
Added rect_in_region function.
2004-09-01 22:49:14 +00:00
Ulrich Czekalla
342adc93ef
The clipboard owner can be set by the thread that has the clipboard
...
open.
2004-08-23 17:57:03 +00:00
Alexandre Julliard
6a27b48895
Fd type is no longer used, get rid of it.
2004-08-18 00:04:58 +00:00
Eric Pouech
1ffddb4d0c
- better support for non-blocking COMM and socket read/writes:
...
+ added necessary semantics to fd flags
+ no longer uses fd type (but fd flags) read/write semantic behavior
- fixed socket code to use the proper manifest constants
- fixes for kernel32.GetOverlappedResult without hEvent set
- in ntdll.Nt{Read|Write}File
+ always reset the event
+ added support for longlong offsets
+ better object disposal in error handling code paths
2004-08-17 23:37:55 +00:00
Alexandre Julliard
4616dcb9a7
Moved the WindowFromPoint functionality to the server so that we can
...
properly take into account the window region.
2004-07-20 22:17:38 +00:00
Alexandre Julliard
c4ec2108b1
Pass the environment for a child process through the server instead of
...
relying on the Unix environment.
2004-07-16 03:54:35 +00:00
Mike McCormack
99a6efa1af
Fix a double free in the named pipe code.
2004-07-15 18:59:58 +00:00
Alexandre Julliard
3365eb7a2d
get_visible_region: do not clip out siblings of the top-level window.
2004-07-06 23:54:49 +00:00
Mike McCormack
ea782b60d6
Translate ENODEV and ENXIO error codes to NT status codes.
2004-07-06 19:42:09 +00:00
Alexandre Julliard
618a7e5813
Added support for window regions in the server.
2004-06-29 03:53:25 +00:00
Dmitry Timoshkov
b3569e7015
Add a test case for clipboard functionality and fix some bugs revealed
...
by it.
2004-06-25 02:55:37 +00:00
Alexandre Julliard
e8d86b7cd4
Moved visible region calculation to the server.
2004-06-23 20:44:58 +00:00
Alexandre Julliard
15ca8209d6
Properly reset msg_thread when releasing the thread input structure.
2004-06-17 20:00:25 +00:00
Eric Pouech
b0fd2ade62
- Added ProcessBasicInformation class to ntdll.NtQueryInformationProcess.
...
- Make use of it in kernel32.
2004-06-14 17:02:00 +00:00
Alexandre Julliard
ed8a41c7b5
Only allocate even-numbered window handles, MS Project depends on that
...
(found by Dmitry Timoshkov).
2004-05-28 19:35:37 +00:00
Alexandre Julliard
60287d0ac2
Make sure we don't truncate the file on open before we have checked
...
the sharing modes (thanks to Dmitry Timoshkov for the test case).
2004-05-22 03:15:04 +00:00
Alexandre Julliard
8c29b5f0cc
Removed the no longer used SMB file I/O support, we can't do reliable
...
file I/O in user space anyway.
2004-05-14 22:24:48 +00:00
Alexandre Julliard
5b23efc3a2
Make sure to save the registry files even if we failed to load them.
2004-05-14 00:45:11 +00:00
Alexandre Julliard
c07ce0571e
Moved loading of the home registry files to the server, there's no
...
real need to make these configurable.
2004-05-07 04:13:21 +00:00
Alexandre Julliard
7e9757c61d
Removed handling of special root keys, this is done by the client now.
2004-05-06 23:42:04 +00:00
Alexandre Julliard
72f87b8c06
Use pread/pwrite everywhere to avoid changing the file position while
...
the client is using it.
Get rid of the no longer used truncate_file request.
2004-05-01 02:50:06 +00:00
Alexandre Julliard
58447bcd09
Avoid autodetecting the prefix when loading the config file since the
...
first key may be named 'wine'.
2004-04-30 18:35:13 +00:00
Alexandre Julliard
ad9b799324
Reimplemented CreateDirectoryW and RemoveDirectoryW using ntdll
...
functions.
2004-04-27 02:27:09 +00:00
Alexandre Julliard
716878c5b1
Fixed a number of NT status values to be closer to NT behavior.
2004-04-16 23:32:40 +00:00
Alexandre Julliard
dfcfc98ed0
RtlSetCurrentDirectory_U: store a handle to the current directory
...
along with its name.
2004-04-16 05:00:46 +00:00
Alexandre Julliard
684b65cd52
Added support for FILE_DIRECTORY_FILE and FILE_NON_DIRECTORY_FILE open
...
options.
2004-04-16 04:31:35 +00:00
Filip Navara
2392a36370
Get rid of non-standard ERROR_UNKNOWN value.
2004-04-12 23:15:11 +00:00
Alexandre Julliard
18c08d307a
Removed the get_file_info request.
2004-04-08 19:09:04 +00:00
Alexandre Julliard
db4517010b
Handle the set_file_pointer request on the client side.
2004-04-07 22:02:09 +00:00
Alexandre Julliard
49b2f6d964
Get rid of the removable media handling in the server.
2004-04-06 23:41:01 +00:00
Alexandre Julliard
670711ef25
Handle file mappings on removable media entirely inside ntdll.
2004-04-06 23:13:47 +00:00
Alexandre Julliard
9ff78729fa
Moved FILE_DELETE_ON_CLOSE support to the inode object so that we
...
really wait for the last close.
Added FILE_SHARE_DELETE support.
2004-04-02 19:50:49 +00:00
Alexandre Julliard
74bd1e47ed
Check file sharing permissions based on the file inode instead of the
...
file name.
Added regression test for sharing permissions.
2004-03-27 20:48:42 +00:00
Alexandre Julliard
a1fe8b4f24
Use futimes() instead of utime() to implement SetFileTime, so that it
...
can be done on the client side.
2004-03-27 01:48:52 +00:00
Alexandre Julliard
adc0610db7
Make the standard create_file request handle serial ports too, and
...
remove the create_serial request.
2004-03-18 04:08:48 +00:00
Alexandre Julliard
014099caf5
Changed the create_file server request to take NtCreateFile flags
...
instead of CreateFileW ones (based on a patch by Eric Pouech).
2004-03-12 01:56:49 +00:00
Alexandre Julliard
db692c8f39
Open a real file handle for drive devices, and get rid of the server
...
device hacks (based on a patch by Eric Pouech).
2004-03-04 23:00:18 +00:00
Alexandre Julliard
e8a339c1d2
Portability fixes for LSB compatibility.
2004-03-01 21:32:02 +00:00
Uwe Bonnes
9ffce00940
Pass inherit handle flag properly for CreateNamedPipe.
2004-02-24 01:06:30 +00:00
Huw Davies
bdb63eca78
Add the F_NOTIFY defines if we're compiling with linux and they're not
...
in the system header files.
2004-02-10 20:08:24 +00:00
Alexandre Julliard
a5f816c6d3
Do a protocol error instead of crashing if the reply fd has not been
...
set.
2004-02-05 01:48:02 +00:00
Hans Leidekker
ff49652ef6
Improved error reporting.
...
Add some notification types and a test.
2004-02-05 01:45:58 +00:00
Mike McCormack
dc82769e61
Mapping a zero size file should fail.
2004-01-09 00:34:14 +00:00
Mike Hearn
43cb03be3a
Implemented RegFlushKey and NtFlushKey.
2004-01-03 00:38:30 +00:00
Wim Lewis
99a01c03d3
EOVERFLOW does not exist on OpenBSD.
2004-01-02 20:11:35 +00:00
Alexandre Julliard
bd13ab8d78
Store a pointer to the client-side class structure in the server and
...
return it on create_window and destroy_class.
Only create a single instance of the desktop class for the whole
session.
Added some missing locking in the client-side class management.
2003-12-11 05:34:53 +00:00
Alexandre Julliard
bfce151ae5
Added window classes in the server, and support for inter-process
...
GetClassWord/Long (based on a patch by Mike McCormack).
Various fixes to the class instance handling.
2003-12-10 04:08:06 +00:00
Alexandre Julliard
08d01923e5
Print names for Win32 errors too, plus a few more status codes.
2003-12-10 02:14:23 +00:00
Alexandre Julliard
ebf1243ec1
Added support for inter-process GetWindowWord.
...
Do better range checking on the window extra bytes.
2003-12-10 01:34:51 +00:00
Alexandre Julliard
d5b4232a3f
Added set_win32_error() for error codes that don't have an NT status
...
equivalent.
2003-12-10 01:12:18 +00:00
Alexandre Julliard
f3f435ffa1
Added wine_server_release_fd function to release the fd returned by
...
wine_server_handle_to_fd. Fixed a couple of potential fd leaks.
2003-12-01 23:01:12 +00:00
Alexandre Julliard
8eb5e68168
cbthread and cbowner don't need to be exported.
2003-11-28 23:17:56 +00:00
Alexandre Julliard
97903d260b
Added support for inter-process GetWindowLong on the window extra
...
bytes.
2003-11-26 22:15:41 +00:00
Martin Fuchs
76adb1ff0d
- Move shell window into the background.
...
- Add tests for Get/SetShellWindow().
2003-11-18 00:13:34 +00:00
Alexandre Julliard
3c68ab05ca
Make init_thread request deal better with fd allocation errors.
2003-10-27 22:10:22 +00:00
Alexandre Julliard
f9f37beb8a
Added support for the linuxthreads cancel signal as an alternative to
...
SIGCHLD.
2003-10-24 04:29:01 +00:00
Daniel Marmier
7832562ee6
Fixed warnings with gcc option "-Wwrite-strings".
2003-10-21 23:57:25 +00:00
Alexandre Julliard
e55d5937ac
Set or clear the BeingDebugged flag in the PEB when a debugger is
...
attached to or detached from a process.
Don't send exception events to the server unless a debugger is
present.
2003-10-14 01:30:42 +00:00
Alexandre Julliard
af192f83b6
Store a "removable" flag instead of the full drive type in the server
...
file object; this way we don't need to use GetDriveTypeW in the loader
code.
Make sure we always have a valid builtin_load_info pointer.
2003-10-08 00:25:32 +00:00
Alexandre Julliard
8d174d3f47
Store the global shell, progman and taskman windows in the server
...
(based on a patch by Martin Fuchs).
2003-10-07 03:40:23 +00:00
Alexandre Julliard
841f898663
Converted process creation to Unicode.
2003-10-04 04:09:41 +00:00
Gerald Pfeifer
27005516a3
Cast time_t to long for printing.
2003-10-01 03:32:16 +00:00
Alexandre Julliard
c30cefb2d5
Store module names in Unicode in the server.
2003-09-30 01:04:19 +00:00
Eric Pouech
9fd54b2838
- Implemented a few information classes in NtQuerySystemInformation.
...
- Added handle information to (wineserver) process snapshot.
2003-09-16 01:07:21 +00:00
Alexandre Julliard
ef5f6c7fad
Moved list.h to include/wine so that it can be used everywhere.
2003-09-11 20:45:17 +00:00
Alexandre Julliard
e0b5270b4a
Fixed include statements to match server_protocol.h (spotted by Eric
...
Pouech).
2003-09-08 19:04:01 +00:00
Alexandre Julliard
62986a0107
Added a few missing stdarg.h includes.
2003-09-07 05:08:14 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard
de1990f4cf
Cope with wait4 being interrupted by a signal.
2003-08-21 21:35:15 +00:00
Alexandre Julliard
9e9e3a9ce5
We need to ignore STATUS_OBJECT_TYPE_MISMATCH errors too when setting
...
the process console.
2003-08-19 03:46:24 +00:00
Mike McCormack
5ac945c021
Implement registry key unloading.
2003-08-19 03:08:17 +00:00
Eric Pouech
449d10fd79
Fixed regression in process creation (std handle inheritance).
2003-08-19 01:05:17 +00:00