Commit graph

15632 commits

Author SHA1 Message Date
Filip Navara 3f77d0e91e #include "rtl.h" -> #include <rtl.h>
svn path=/trunk/; revision=16733
2005-07-26 08:40:02 +00:00
Filip Navara d2bc064abf #include "rtl.h" -> #include <rtl.h>
svn path=/trunk/; revision=16732
2005-07-26 08:39:07 +00:00
Alex Ionescu f3622d33aa - Remove ROSRTL. The era is over. Thanks to Filip for his help during the last month.
svn path=/trunk/; revision=16731
2005-07-26 04:52:11 +00:00
Alex Ionescu 1e8c8e3fe6 - Final ROSRTL removal patch. The next patch will remove the actual library and code.
- Changes:
    - CreateProcess
        * Cleanup creation of the initial thread using new utility functions and remove rosrtl
        * Almost entirely rewrote the function to support features such as:
            - SxS (locally only, patch will follow),
            - SFP (SAFER) (locally only, patch will follow),
            - DllPaths (locally only, patch will follow), 
            - Proper process environment/paramter block creation
            - Proper console handle management (needs more work in kernel32/csr),
            - Tokens/CreateProcessAsUser (locally only, patch will follow), 
            - Simpler code for path lookup, and more robust.
            - Support for "auto-correction" (see Raymond Chen's blog)
            - 16-bit/NE detection
            - A variety of creation flags are now properly supported
            - Added support for an undocumented-yet-known (see comment) shell flag
            - Alert for flags we don't support yet
            - Catch invalid flag combinations and other caller errors
            - Improve and correct path searcing to use documented behaviours
            - Created a multitude of helper functions to make the code easier to read
              and allow them to be used for other apis as time goes on.
    
    - BaseProcessStartup
        * Call NtSetThreadInformation to let the Kernel know of the Thread's Start Address.
        * Correct prototype of Thread Startup function for this case.

This fixes MANY things, some of which may not be evident, and possibly creates regressions which I have not yet seen but will try to correct. Some of these may be caused by the fact that I've seen code send CreateProcessW incorrect flags. Some things of note: DO NOT send partial names as "lpApplicationName". It's not supposed to work unless you're in the same current directory. Also, do NOT send CREATE_UNICODE_ENVIRONMENT if you don't have a unicode environement, and vice-versa. I've seen lots of code doing mistakes related to this. I hope you appreciate this patch and won't all jump on me for possbile regressions :(.

svn path=/trunk/; revision=16730
2005-07-26 04:14:10 +00:00
Alex Ionescu 286cccb1de - Fix compilation if redzone detection is diabled.
svn path=/trunk/; revision=16729
2005-07-26 00:50:17 +00:00
Alex Ionescu 55234f6094 - Don't try to get the length of a possibly empty string. This fixes many menu applications (such as WinRAR). However I'm now getting a bug due to a double-free. It seems a GDI Object is being freed twice. Can anyone check this out please?
svn path=/trunk/; revision=16728
2005-07-26 00:43:19 +00:00
Alex Ionescu e7c2fa1d9c - Message Queue Fix, resolves a number of application regressions (Total Commander works again, for example). Patch by Hartmut Birr. To be commited into 0.2.7 after more testing.
svn path=/trunk/; revision=16727
2005-07-25 23:19:12 +00:00
Aleksey Bragin 663bb3a53e Fix stupid typo-mistake, which lead to allocating only 4 bytes intead of sizeof(struct pci_pool).
svn path=/trunk/; revision=16726
2005-07-25 21:09:21 +00:00
Filip Navara 38cd13eb67 Build Wine DLLs without the UNICODE and _UNICODE definitions. (Note: The Wine DLLs use A/W functions explicitely, so this doesn't have any performance impact.)
svn path=/trunk/; revision=16725
2005-07-25 20:28:29 +00:00
James Tabor f04a4eea8c Added more Wine MDI functions. I've tested these for +4 weeks, with Winefile, mdi(mdi test program), and AbiWord. More work is needed.
svn path=/trunk/; revision=16724
2005-07-25 20:07:19 +00:00
Filip Navara 8bac7925c0 Miscellaneous header fixes (packing and TCHAR stuff).
svn path=/trunk/; revision=16723
2005-07-25 20:03:42 +00:00
James Tabor a2f80d0873 Patch by Robert Shearman rob@codeweavers.com, Use GdiGetCharDimensions Instead of DIALOG_GetCharSize.
svn path=/trunk/; revision=16722
2005-07-25 04:21:29 +00:00
Eric Kohl 971f04ec99 Fix grammar of the size_is attribute so that size_is(*Length) gets accepted.
svn path=/trunk/; revision=16721
2005-07-24 22:17:02 +00:00
Martin Fuchs 66fd6f0880 set eol-style for most xml files
svn path=/trunk/; revision=16720
2005-07-24 21:42:00 +00:00
Martin Fuchs 7944b41ae3 set eol-style for XML files in rosapps
svn path=/trunk/; revision=16719
2005-07-24 21:44:45 +00:00
Martin Fuchs f6815841ae set eol-style to 'native'
svn path=/trunk/; revision=16718
2005-07-24 21:31:13 +00:00
Martin Fuchs 851bb090ac set eol-style to 'native'
svn path=/trunk/; revision=16717
2005-07-24 21:29:01 +00:00
Steven Edwards 7c343c4a57 fix line ending I hope
svn path=/trunk/; revision=16716
2005-07-24 21:17:54 +00:00
Steven Edwards ea5ff9f06e added directory.xml for tests
svn path=/trunk/; revision=16715
2005-07-24 18:32:34 +00:00
Hartmut Birr 0dea0a5836 - Removed R_EXTRA_STACK because R_EXTRA_STACK and R_STACK must have the same size.
- Initialized an allocated block completely before release the lock.

svn path=/trunk/; revision=16714
2005-07-24 17:48:52 +00:00
Hervé Poussineau 8c34b25c71 Don't compare GUID strings with wcsicmp, but compare GUID* with IsEqualIID
Directly use HKEY_LOCAL_MACHINE instead of RegOpenKey(HKEY_LOCAL_MACHINE, NULL, ...).
Remove use of UNICODE_NULL
Replace #ifdef __WINE__ by #ifdef __WINESRC__
Fix SetupDiCallClassInstaller prototype (DWORD -> DI_FUNCTION)

Thanks Usurp for your testing on Wine!

This file works now unmodified in Wine. A patch would be soon sent to wine-patches ML.

svn path=/trunk/; revision=16713
2005-07-24 17:21:26 +00:00
Hartmut Birr 6aeadd25fd Fixed the memory allocation in EngCreateEvent.
svn path=/trunk/; revision=16712
2005-07-24 14:08:20 +00:00
Hervé Poussineau 07d3247011 Patch by Andrey Korotaev <unC0Rr@inbox.ru>: Fix scrolling with mouse
This multiplication was deleted when replacing old psaux driver by i8042prt
Fixes bug #652

svn path=/trunk/; revision=16711
2005-07-24 11:59:28 +00:00
Eric Kohl 2763e3353b Implement CM_Get_Device_ID_List_Size_ExA, CM_Get_Device_ID_ExA and CM_Get_Device_ID_List_ExA.
svn path=/trunk/; revision=16710
2005-07-24 11:48:08 +00:00
Thomas Bluemel 45e2c259ef use ZwQueryInformationFile instead of NtQueryInformationFile in IntGdiAddFontResource because we're passing kernel pointers in UserMode
svn path=/trunk/; revision=16709
2005-07-24 09:20:43 +00:00
Thomas Bluemel 1375ddbb83 use ZwQueryInformationFile and ZwSetInformationFile instead of the Nt version since we're passing kernel pointers to them which cause a probe failure in UserMode. This should fix the 1st stage setup
svn path=/trunk/; revision=16708
2005-07-24 09:11:30 +00:00
Steven Edwards 6bdd4f6993 dont try to buid font.c as its a empty file for now
svn path=/trunk/; revision=16707
2005-07-23 17:47:28 +00:00
Maarten Bosma 56ad48118f Added makefile which tell how to compile rosapps.
svn path=/trunk/; revision=16706
2005-07-23 17:45:41 +00:00
Alex Ionescu 7669e8fd6d - Disable APC Queuing & Flush APC queues during thread shutdown.
- Detect if Kernel APCs were pending during thread shutdown.
 - Call Lego Routine, if registered, during thread shutdown.

svn path=/trunk/; revision=16705
2005-07-23 17:40:48 +00:00
Eric Kohl b244520c5a - Implement CM_Get_Child_Ex, CM_Get_Parent_Ex, CM_Get_Sibling_Ex and CM_Set_DevNode_Problem[_Ex].
- Clean-up indentation.

svn path=/trunk/; revision=16704
2005-07-23 13:43:52 +00:00
Eric Kohl 8b127ceac1 - Fix offset calculation bug in the ProcFormatString.
- Fix offset calculation bug in the marshalling and unmarshalling code.
- Fix typos in the TypeFormatString.
This makes the [string, out, size_is()] parameters work properly.

svn path=/trunk/; revision=16703
2005-07-23 11:55:33 +00:00
Hartmut Birr 95a28ce6c5 Fixed an uninitialized variable error.
svn path=/trunk/; revision=16702
2005-07-23 11:51:47 +00:00
Hartmut Birr 906754b0ed Fixed an uninitialized variable error.
svn path=/trunk/; revision=16701
2005-07-23 11:43:34 +00:00
Hartmut Birr 82cd3d5f80 Split the page fault handler from the trap handler.
svn path=/trunk/; revision=16700
2005-07-23 11:25:12 +00:00
Thomas Bluemel 184ff4dd27 export LsaLookupSids which is required by aclui.dll
svn path=/trunk/; revision=16699
2005-07-23 10:08:15 +00:00
Thomas Bluemel 108b262074 regedit should be installed in %SystemRoot% directly
svn path=/trunk/; revision=16698
2005-07-23 09:58:23 +00:00
Hartmut Birr 683d42211c If a page fault occurs in user mode, we must deliver user mode apc's.
svn path=/trunk/; revision=16697
2005-07-23 08:14:21 +00:00
Magnus Olsen d5ae40868c last mins bug fix frirc nick jjkola, Jyrki Jaakkola <jjkola@email.com> for move. solve some new bugs. I forget menoter multuser is not done yet. But move folder from a vol to another works. Move need really clean up after his patch.
svn path=/trunk/; revision=16696
2005-07-22 23:58:26 +00:00
Magnus Olsen 6af5a6f78f irc nick jjkola, Jyrki Jaakkola <jjkola@email.com> frist patch solv to move file from a vol to another, and move mulite file same time. (not tested in ros) it works in windows with ros cmd. The patch are not very clean , but it fix alot of bugs also in move.
svn path=/trunk/; revision=16695
2005-07-22 23:15:54 +00:00
Thomas Bluemel 7aad44a4f5 - replaced IopCreateUnicodeString with RtlCreateUnicodeString
- allocate the DriverName from paged pool

svn path=/trunk/; revision=16694
2005-07-22 22:40:54 +00:00
Thomas Bluemel 5518114830 declare RtlDuplicateUnicodeString
svn path=/trunk/; revision=16693
2005-07-22 22:25:25 +00:00
Thomas Bluemel 648f859ea2 allocate LogFileName and HiveFileName from paged pool
svn path=/trunk/; revision=16692
2005-07-22 21:10:52 +00:00
Thomas Bluemel 9f2bf70ddb removed MmCopyFromCaller and MmCopyToCaller and depend on SEH instead
svn path=/trunk/; revision=16691
2005-07-22 20:52:31 +00:00
Thomas Bluemel 4bfbd2cfaf probe the pointers in _MmCopyFromCaller and _MmCopyToCaller. There's no need to check the processor mode since it's always just used to copy from/to user memory
svn path=/trunk/; revision=16690
2005-07-22 20:51:36 +00:00
Steven Edwards 8112d02490 some fixes for the host gcc4 on FC4
svn path=/trunk/; revision=16689
2005-07-22 19:45:32 +00:00
Eric Kohl 30f4461f0e Forgot to commit this file.
svn path=/trunk/; revision=16688
2005-07-22 14:53:24 +00:00
James Tabor 0f84d9e6fd Update and implement UnrealizeObject.
svn path=/trunk/; revision=16687
2005-07-22 12:25:02 +00:00
Eric Kohl c85a086e9e Make IoGetDeviceObjectFromDeviceInstance work without using the Registry. (experimental)
svn path=/trunk/; revision=16686
2005-07-21 20:30:55 +00:00
Eric Kohl 446d367792 Add parameter checks.
svn path=/trunk/; revision=16685
2005-07-21 20:10:47 +00:00
Hartmut Birr c5a9d200e8 Initialized all stack related values.
svn path=/trunk/; revision=16684
2005-07-21 18:32:28 +00:00