Commit graph

44337 commits

Author SHA1 Message Date
Daniel Reimer
1a753c8708 Anti Oracle Movement has begun. Adding go-oo and LibreOffice to rapps.
svn path=/trunk/; revision=48943
2010-09-30 18:47:32 +00:00
Jérôme Gardou
ffeeddd5ee [DOSKEY]
- Fix compilation with msvc by GetProcAddress'ing undocumented functions
  - TCHAR -> WCHAR in the process

svn path=/trunk/; revision=48942
2010-09-30 18:45:58 +00:00
Sir Richard
efefc97901 [NTOS]: This is why you shouldn't let Antoine Dodson commit code.
svn path=/trunk/; revision=48941
2010-09-30 14:48:03 +00:00
Sir Richard
febd117a3b [NTOS]: He's climbing in yo PFN database, he snatching yo pages up, tryin to page em so y'all need to hide your pool hide your cache, and hide your working set cuz they grabbin' all the pages out there. We gonna page you, we gonna page you, so you can run and fault on that, run and fault on that, home boy, homeboy, home homeboy.
Enable ARM3 Paged Pool and remove all related deprecated code. Install tested on several VMs, it might cause new regressions. Let's fix them before 0.3.13 instead of reverting.

svn path=/trunk/; revision=48940
2010-09-30 04:40:31 +00:00
Sir Richard
40ba0f9329 [NTOS]: Use SYSTEM_PD_SIZE instead of assuming that this is PAGE_SIZE, since this is not the case on (future) ARM and (current) AMD64 ports.
[NTOS]: Remove some magic numbers in the pool code, using PTE_COUNT, MiAddressToPde, when needed. Also, the expansion code uses PDEs, not PTEs, so differentiate this, because on some systems (ARM), there are different structures for both.
[NTOS]: Use MI_WRITE_INVALID_PTE.
ARM3 paged pool now works, the expansion bug has been fixed (and the code is more portable). Expect to see it gradually enabled soon.

svn path=/trunk/; revision=48939
2010-09-30 03:26:13 +00:00
Sir Richard
39ab07fe2a [NTOS]: MiSetConsumer no longer achieves anything. Remove it.
svn path=/trunk/; revision=48938
2010-09-30 03:21:02 +00:00
Sir Richard
eaff9c1e8c [NTOS]: Add definition for size of a page directory, and size of all page directories required per process (some architectures have more than one page directory per process/address space).
svn path=/trunk/; revision=48937
2010-09-30 03:18:44 +00:00
Sir Richard
80d5d95d72 [NTOS]: Fix a bug in MiRemoveAnyPage: it was always checking the colored zero page list, instead of checking the colored free page list the second time around.
svn path=/trunk/; revision=48936
2010-09-30 03:17:14 +00:00
Pierre Schweitzer
a14c76d2c8 [PSDK]
Fixed build

svn path=/trunk/; revision=48935
2010-09-29 22:54:00 +00:00
Aleksey Bragin
24e16c3ff8 [REGE[REGEDIT]
- Katayama Hirofumi: Don't leak open handles to keys.
- Katayama Hirofumi: Misc code changes/ cleanup.
See issue #5547 for more details.

svn path=/trunk/; revision=48934
2010-09-29 21:52:16 +00:00
Aleksey Bragin
26adfda6bd [REGEDIT]
- Katayama Hirofumi: Unicodify regedit, add support for import/export of v5 reg files. Based on Wine regedit.

svn path=/trunk/; revision=48933
2010-09-29 21:43:39 +00:00
Pierre Schweitzer
219137196e [KMTEST]
Added a small testcase for FsRtlIsNameInExpression(). It's quite relevant for daily and simple use of the function. It shouldn't fail on ReactOS given our current implementation.

svn path=/trunk/; revision=48932
2010-09-29 21:42:11 +00:00
Aleksey Bragin
5ea7ca5562 PSDK
- Edison Henrique Andreassy <ehasis@hotmail.com>: Add FILEMUIINFO definition.
See issue #5640 for more details.

svn path=/trunk/; revision=48931
2010-09-29 21:32:56 +00:00
James Tabor
0922c986a4 [Win32k]
- Return the correct complexity, pass all user32 wine test_winregion tests.

svn path=/trunk/; revision=48930
2010-09-29 05:23:15 +00:00
James Tabor
658175b3a0 [Win32k]
- Fix future wine sync user32 win test for get process default layout with null parameter.

svn path=/trunk/; revision=48929
2010-09-29 02:29:33 +00:00
Cameron Gutman
be6788e54b [ACPI]
- Fix ACPI warnings
- Based on a patch by Love Nystrom

svn path=/trunk/; revision=48928
2010-09-29 02:16:18 +00:00
Sir Richard
14f8621042 [NTOS]: Add MiRemoveZeroPageSafe helper function, when a zero page is required, but the inline zeroing of MiRemoveZeroPage is not. This function will only try grabbing a zero page if one exists, otherwise a free page will be grabbed and zeroed with custom code of the caller's choosing.
[NTOS]: Add concept of process color and system color. Compute correct color to use whenever requesting a page.
[NTOS]: Uncondtionally enable the color code when inserting/removing pages.
For now, when requesting a page, colors are still ignored, and the global PFN lists are scanned instead. If there are no regressions, we are one patch away from that.

svn path=/trunk/; revision=48927
2010-09-29 01:10:28 +00:00
Sir Richard
71e8fc824b [NTOS]: Fix straggling bugs in color table algorithms.
[NTOS]: Enable color tables! Right now pages are merely entering and exiting the tables, the tables themselves are never used for allocations. This will change with further commits.

svn path=/trunk/; revision=48926
2010-09-29 00:13:09 +00:00
Sir Richard
f41dde713f [NTOS]: Write missing color code in certain PFN functions, and fix existing code where needed. Add some debugging. For now, turned off until testing succeeds.
[NTOS]: Redocument which MMPFN fields are violated by ReactOS-internal values. This has gotten much better than before.

svn path=/trunk/; revision=48925
2010-09-28 22:41:46 +00:00
Amine Khaldi
119639a212 [FONTS]
- Update RedHat Liberation Fonts to 1.06
- Update Tahoma Fonts To Wine HEAD
- Update DejaVu Fonts Documentation To 2.31
See issue #5632,5633,5634 for more details.

svn path=/trunk/; revision=48924
2010-09-28 17:19:52 +00:00
Amine Khaldi
1e65804aea [USETUP]
- Update Estonian translation by anthrax11.

See issue #5625 for more details.

svn path=/trunk/; revision=48923
2010-09-28 17:12:46 +00:00
Sir Richard
05d3392da9 [NTOS]: Switch to using an ARM3, much more correct MmZeroPageThread. Stub support for discarding sections and listening to the Power Manager Idle Timer.
[NTOS]: Use a synchronization (auto-reset) instead of notification event for the zero page thread, this way we don't have to reset it manually and query its state. Instead, a boolean MmZeroingPageThreadActive is checked instead.
[NTOS]: Once we switch to colored lists, major improvements can be done for speed.

svn path=/trunk/; revision=48922
2010-09-28 16:47:25 +00:00
Sir Richard
6ef328578c [NTOS]: The RMAP entry only has a valid process if the address is in user-space, otherwise process is NULL. Only attempt to acquire the process rundown lock if a process actually exists. Fixes crashes caused by 48905.
svn path=/trunk/; revision=48921
2010-09-28 16:44:18 +00:00
Sir Richard
5b9cd7fcae [NTOS]: Zeroed pages should go at the front, not the back of the zero list. Going to the back is a special boot-only case on MP, which isn't supported. Implement zero-only version of MiInsertPageInList, remove MiInsertZeroPageAtBack.
[NTOS]: Remove many other deprecated functions. Physical memory consistency should now be higher than in the past.

svn path=/trunk/; revision=48919
2010-09-28 14:38:30 +00:00
Sir Richard
354ad6b9eb [NTOS]: One last fix to the zero page thread before we move to ARM3: use MiRemoveAnyPage instead of dangerous MiRemoveHeadList. The code works on the assumption (validated by Windows through a bug check) that MiRemoveAnyPage always returns the first free page, and we also manually grab the first free page, and compare this is true. Nice way to detect PFN database corruption.
[NTOS]: Fix MiInsertZeroAtBack to increment the MmAvailablePage count, since MiRemoveAnyPage decrements it (MiRemoveHeadList did not).

svn path=/trunk/; revision=48918
2010-09-28 14:29:37 +00:00
Aleksey Bragin
66ff3d5774 [KERNEL32]
- Igor Paliychuk: Fix properly showing genitive names from NLS data by applying a missed Wine sync.
See issue #5556 for more details.

svn path=/trunk/; revision=48917
2010-09-28 14:24:17 +00:00
Amine Khaldi
f2afdbbc4a [CMAKE]
- Add csrss, csrsrv and win32csr to build. By Alexey Komarov (IRC: q4a)

svn path=/branches/cmake-bringup/; revision=48916
2010-09-28 13:41:23 +00:00
Amine Khaldi
a6480c90d3 [USETUP]
- Update Ukrainian translation by Igor Paliychuk.
See issue #5536 5540 5604 5614 5617 for more details.

svn path=/trunk/; revision=48915
2010-09-28 13:39:57 +00:00
Amine Khaldi
9a79b1e80d [CMAKE]
- Add typelib support macro and use it with stdole2. By Jerome Gardou.

svn path=/branches/cmake-bringup/; revision=48914
2010-09-28 13:32:41 +00:00
Kamil Hornicek
9856680c43 [KERNEL32]
Winnls.h can be included now.

svn path=/trunk/; revision=48913
2010-09-28 00:02:05 +00:00
Sir Richard
f269313793 - Remove MiZeroPage, use MiZeroPhysicalPage instead. They work pretty much the same except the needless raise to DISPATCH_LEVEL.
- Get rid of the messed up MiMapPageToZeroInHyperSpace which was hacking into MiMapPagesToZeroInHyperSpace. Now MiMapPagesToZeroInHyperSpace is properly implemented to use chained PFNs, and the MmZeroPageThread code has been modified to correctly use the new mechanism.
- Zero page mapping now happens at PASSIVE trough MiMapPAgesToZeroInHyperSpace, not DISPATCH anymore.
- More fixes are coming to remove the remaining MiRemoveHeadList and rewrite the zero page loop. Should fix more possible corruptions.

svn path=/trunk/; revision=48912
2010-09-27 21:58:54 +00:00
Sir Richard
df34e334f0 [NTOS]: Adding colored page lists means we need to start using the OriginalPte field as a forward/back link. This is shared with AweReferenceCount, which ReactOS uses as the RMAP list head. However, RMAPped pages shoudl never be free/zero, and non-free-zero pages will never have a color backlink in OriginalPte, so it should theoretically be safe to do this. However, it's possible for the RMAP "get" function to be called on a free/zero page (which would normally return NULL), but with color chaining enabled, the "get" function would misinterpret the backlink as an RMAP entry. Therefore, we overload the ParityError bit to signify "there is an RMAP". The get/set functions now handle this, and the color linkage will ASSERT this later. This way, a colorlink with ParityError == FALSE is not treated as an rmap list head.
svn path=/trunk/; revision=48910
2010-09-27 17:36:54 +00:00
Sir Richard
05ce063ebc [NTOS]: Don't use dangerous MiRemoveHeadList in MDL page allocation, use MiRemoveAnyPage instead.
[NTOS]: Don't repurpose pages from the zero/free page list without actually unlinking the page first! This should fix even more corruptions.

svn path=/trunk/; revision=48909
2010-09-27 17:09:33 +00:00
Sir Richard
f5f6cee1d0 [NTOS]: Stop using MiInsertInListTail and MiRemoveHeadList in the deprecated ReactOS page functions. Those two functions do not adequately support the semantis needed for page insertion/removal and should've never been used. MmAllocPage now uses MiRemoveAny/ZeroPage, and MmDereferencePage uses MiInsertPageInFreeList. Should help with some corruptions. More is coming.
svn path=/trunk/; revision=48908
2010-09-27 16:00:24 +00:00
Giannis Adamopoulos
3e70fced07 [user32]
- Remove the last reactos-only export from user32 (PrivateCsrssManualGuiCheck)

[win32csr]
- Move PrivateCsrssManualGuiCheck from user32 to win32csr

svn path=/trunk/; revision=48907
2010-09-27 14:31:13 +00:00
Sylvain Petreolle
c0c597d9c6 [CMAKE]
Add a set_rc_compiler macro,
its a workaround for lack of mingw RC support in cmake.
Enable winemine build.
Improve user32 CMakeLists.txt.

Thanks to AmineKhaldi for initial support of resources in user32.

svn path=/branches/cmake-bringup/; revision=48906
2010-09-27 09:14:54 +00:00
Michael Martin
f9692ba22c [ntoskrnl/mm]
- Acquire rundown protection on process to make sure it is not being terminated and before attempting to do anything with the process. Fixed a rare case of PspDeleteProcess being called twice for a process, resulting in bugcheck.


svn path=/trunk/; revision=48905
2010-09-27 08:46:02 +00:00
James Tabor
e4ec568733 [Win32k]
- Implement win32k support functions for Get and Set process default layout.
- Due to changes with wine it will be difficult to sync when RTL support is being added to ComCtl32.

svn path=/trunk/; revision=48904
2010-09-27 02:46:16 +00:00
Sir Richard
de914c19e1 [DDK]: Add misisng MmLockPagableCodeSection.
svn path=/trunk/; revision=48903
2010-09-26 15:01:37 +00:00
Eric Kohl
db53bf24cb [NTOSKRNL]
Implement NtQueryOpenSubKeys.

svn path=/trunk/; revision=48902
2010-09-26 11:37:40 +00:00
Jérôme Gardou
3b92867c2a [CMAKE]
- Add disabled winemine build file

svn path=/branches/cmake-bringup/; revision=48901
2010-09-26 10:09:06 +00:00
Jérôme Gardou
c9dc1e22be [CMAKE]
- add iexplore to build

svn path=/branches/cmake-bringup/; revision=48900
2010-09-26 09:56:28 +00:00
Jérôme Gardou
5cacf14c7f [CMAKE]
- add hh to build

svn path=/branches/cmake-bringup/; revision=48899
2010-09-26 00:37:46 +00:00
Matthias Kupfer
c23c9c81ca disable some locale IDs because they are not supported yet
- 417 Rhaeto-Romanic
- 445 Bengali (India)
or still unknown
- 48f
- 490
this fixes multiple entries (see bug #5636)

svn path=/trunk/; revision=48898
2010-09-25 23:20:23 +00:00
Jérôme Gardou
796d321ba6 [CMAKE]
- add set_unicode macro to msvc toolchain
  - fix win32cui module type for msvc

svn path=/branches/cmake-bringup/; revision=48897
2010-09-25 23:01:09 +00:00
Eric Kohl
1f2f04ed9b [NTOSKRNL]
IoRegisterPlugPlayNotification: Do not fail if no Interface can be found for the given GUID. Just do not call the Callback-Routine in this case. The Interface could be created later.

svn path=/trunk/; revision=48896
2010-09-25 21:49:15 +00:00
Pierre Schweitzer
d695e74a70 [RTL]
Fixed a really stupid (and old) bug in RtlComputeCrc32():
First parameter is initial CRC32 checksum. And it's complete and not partial, thus it needs to be an ULONG and not an USHORT.
This fixes CRC32 checksum computation with initial checksum (tested again Windows 2003 & Seven).

svn path=/trunk/; revision=48895
2010-09-25 21:20:54 +00:00
Amine Khaldi
ced22a087c [PSDK]
- Add missing header's header.

svn path=/trunk/; revision=48894
2010-09-25 20:47:15 +00:00
Amine Khaldi
9ea8827010 [CMAKE]
- Introduce proper set_entrypoint and set_subsystem macros for both mingw and msvc.
- Fix the subsystem for console apps.

svn path=/branches/cmake-bringup/; revision=48893
2010-09-25 20:44:46 +00:00
Christoph von Wittich
355ac9b9dc [bzip2]
update bzip2 library to 2.06

svn path=/trunk/; revision=48892
2010-09-25 20:28:00 +00:00