Commit graph

56574 commits

Author SHA1 Message Date
Thomas Faber afac85a42b [NTOS:CC]
- Remove unused CACHE_BITMAP feature that adds unnecessary complexity

svn path=/trunk/; revision=62643
2014-04-06 10:52:17 +00:00
Timo Kreuzer 4d99280429 [ACPI]
Add some DPRINTs on failure

svn path=/trunk/; revision=62642
2014-04-06 08:55:44 +00:00
Thomas Faber f3d151acd3 [NPFS]
- Fix some uninitialized and over-initialized variables and some DPRINTs. CID 1102515

svn path=/trunk/; revision=62641
2014-04-06 07:54:57 +00:00
Hermès Bélusca-Maïto df6836cce4 [NTDLL_APITEST]
Add/refine RtlDoesFileExists* and RtlDosSearchPath_U APIs tests.
CORE-6373 #comment Tests for RtlDoesFileExists* and RtlDosSearchPath_U APIs added in revision 62640.

svn path=/trunk/; revision=62640
2014-04-05 23:58:54 +00:00
Pierre Schweitzer 9483e8b29c [RAPPS]
Don't pass structures by copy, give a pointer instead

CID #502621
CID #502622
CID #502623

svn path=/trunk/; revision=62639
2014-04-05 22:49:18 +00:00
Pierre Schweitzer 9300d44ca7 [SERVMAN]
- Call LocalFree() to free memory allocated with LocalAlloc()
- Fix leak

CID #716291
CID #1101891
CID #1101892
CID #1101893
CID #1101894
CID #1101895
CID #1101896

svn path=/trunk/; revision=62638
2014-04-05 22:31:19 +00:00
Pierre Schweitzer 28313aeb0c [KBSWITCH]
Fix buffer overflow. Static strings are already \0 terminated.

CID #515202

svn path=/trunk/; revision=62637
2014-04-05 22:14:53 +00:00
Pierre Schweitzer 76c78c7e26 [CHARMAP]
Remove useless checks

CID #1102274

svn path=/trunk/; revision=62636
2014-04-05 22:08:57 +00:00
Pierre Schweitzer 5ce3089b36 [ROSAUTOTEST]
Use matching delete operator

CID #1102027
CID #1102028

svn path=/trunk/; revision=62635
2014-04-05 21:56:15 +00:00
Pierre Schweitzer 8e01ed0bd8 [WIN32SS]
Don't dereference an object that wasn't referenced

CID #1102086

svn path=/trunk/; revision=62634
2014-04-05 21:42:48 +00:00
Pierre Schweitzer 849f7cf1d1 [SVCHOST]
Fix buffer overruns in LanaFlagIsSet() and SetLanaFlag().
Normally, i shouldn't be > 7, MAX_LANA is set to 254.

CID #1102306
CID #1102305

svn path=/trunk/; revision=62633
2014-04-05 21:27:12 +00:00
Pierre Schweitzer ece6628139 [MMEBUDDY]
Fix use after free.

CID #716804

svn path=/trunk/; revision=62632
2014-04-05 21:08:10 +00:00
Thomas Faber 3bf3d743b5 [NDK][DDK][XDK]
- Move BITMAP_RANGE structure to NDK where it belongs

svn path=/trunk/; revision=62631
2014-04-05 17:17:47 +00:00
Timo Kreuzer 913e1ed8b9 [PSEH3]
Make sure _abnormal_termination() returns the correct result and make sure the compiler does not rely on register values in the finally and filter function.
The C++ PSEH tests now all pass.
=> We now have PSEH support for C++.

svn path=/trunk/; revision=62630
2014-04-05 16:56:00 +00:00
Timo Kreuzer 73512e7ad4 [PSEH_TEST]
#if out a test for C++. This test only shows the limitations of PSEH and does not provide a satisfying result anyway.

svn path=/trunk/; revision=62629
2014-04-05 16:49:17 +00:00
Thomas Faber e76390da3e [NTOS:INVB]
- Do not use KeDelayExecutionThread while holding a spin lock
CORE-8052 #resolve

svn path=/trunk/; revision=62628
2014-04-05 16:46:40 +00:00
Pierre Schweitzer a370953bd4 [SETUP16]
Fix invalid free

CID #715830

svn path=/trunk/; revision=62627
2014-04-05 15:47:49 +00:00
Timo Kreuzer b938bfc001 [PSEH3]
Implement __finally support for C++

svn path=/trunk/; revision=62626
2014-04-05 15:41:03 +00:00
Pierre Schweitzer 9f2427ba20 [VFATLIB]
--MagicValues;


svn path=/trunk/; revision=62625
2014-04-05 15:39:09 +00:00
Pierre Schweitzer 05e2f0e9db [DISKPART]
Fix leak

CID #716329

svn path=/trunk/; revision=62624
2014-04-05 15:26:12 +00:00
Hermès Bélusca-Maïto e9cd63fb67 [RTL]
Some fixes for RtlGetFullPathName_U(str):
- Start to polish RtlpCollapsePath (Work in progress)
- Correctly zero-out the path destination buffer

They fix the following tests:
* ntdll:RtlGetFullPathName_U (2 failures to full success)
* ntdll:RtlGetFullPathName_UstrEx (2 failures to full success)

svn path=/trunk/; revision=62623
2014-04-05 14:56:41 +00:00
Timo Kreuzer 9ad09cfd87 [PSEH3]
Simplify some code

svn path=/trunk/; revision=62622
2014-04-05 14:38:42 +00:00
Pierre Schweitzer 578a9174d9 [BASESRV]
Properly call RtlFillMemory in BaseSrvNLSInit. This fixes incomplete NlsUserInfo init

CID #1102265

svn path=/trunk/; revision=62621
2014-04-05 14:30:22 +00:00
Timo Kreuzer 2afcfa6dbd [PSEH2_TEST}
Use the tests with C++, too.

svn path=/trunk/; revision=62620
2014-04-05 14:24:16 +00:00
Pierre Schweitzer 34eddff2f1 [ACPI]
Disable PCH as it breaks build (when globally enabled)

svn path=/trunk/; revision=62619
2014-04-05 14:11:03 +00:00
Pierre Schweitzer 283ab16ed6 [RTL]
Properly check for total length in LdrpGetProcedureAddress().
It contains more than just a name.
Fixes a buffer overrun.

CID #716122

svn path=/trunk/; revision=62618
2014-04-05 13:13:01 +00:00
Pierre Schweitzer 9d713d990a [RAPPS]
Don't leak handle

CID #716310

svn path=/trunk/; revision=62617
2014-04-05 12:58:10 +00:00
Pierre Schweitzer f71529c32e [RTL]
Prevent buffer overflow on copy: provide the correct copy size

CID #731655

svn path=/trunk/; revision=62616
2014-04-05 12:44:27 +00:00
Pierre Schweitzer b929ccd22f [RTL]
--MagicValues;

svn path=/trunk/; revision=62615
2014-04-05 10:02:32 +00:00
Pierre Schweitzer a98a284868 [EPSAPI]
Fix double free in PsaCaptureSystemModules()
CID #1106329

svn path=/trunk/; revision=62614
2014-04-05 09:17:21 +00:00
James Tabor 15f4004f9f [Win32k]
- Fix wine win.c test_CreateWindow line 5470, pass all those tests.

svn path=/trunk/; revision=62613
2014-04-05 05:06:48 +00:00
James Tabor 785a8b7ebe [Win32k]
- Notify FIXME HACK Alert! Are we setting parent to early?

svn path=/trunk/; revision=62612
2014-04-04 17:52:23 +00:00
James Tabor 6dfbda58e8 [User32]
- Add more to GetInsideRect NC.
- Sync port from wine with modifications.

svn path=/trunk/; revision=62611
2014-04-04 14:59:19 +00:00
James Tabor 82b5418f45 [User32]
- Patch by Piotr Caban : Make it possible to activate a window with parent and no WS_CHILD flag in WS_NCLBUTTONDOWN function.
- Sync port from wine with modifications and addons.

svn path=/trunk/; revision=62610
2014-04-04 14:49:22 +00:00
James Tabor 2fce3630ab [User32]
- Patch by Javier Cantero : Fix side effect in SubtractRect().
- Sync port from wine with modifications

svn path=/trunk/; revision=62609
2014-04-04 14:40:51 +00:00
Hermès Bélusca-Maïto 1f753ef84f [ACPICA][ACPI]
Finally...
- Specify that we use MUTEXes instead of binary semaphores,
- Change two interface names in our code: ACPI_DEVICE_ID_LIST --> ACPI_PNP_DEVICE_ID_LIST and acpi_device_id --> acpi_pnp_device_id (only those names were changed in ACPICA).
- Implement AcpiOsPhysicalTableOverride which doesn't any table override (same behaviour as AcpiOsTableOverride).
- Latest ACPICA versions introduce the AcpiOsWaitEventsComplete API, which is used to wait for all asynchronous events to complete. But we do nothing at the moment ("inspired" from the behaviour from http://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/sys/dev/acpi/acpica/OsdSchedule.c , but I'm sure ReactOS ACPI specialists know better than me whether or not it is judicious to do so !!!)
- Extend AcpiOsRead/WriteMemory to be able to read/write 64-bit values, as required by the ACPICA implementation.

Fix the build. Now, only warnings from our code (not ACPICA) need to be fixed.

Real HW testers, please retest your real HW with this revision (or above) !!

CORE-8044 #comment Everything updated in revisions 62604 to 62608.

svn path=/trunk/; revision=62608
2014-04-03 23:44:20 +00:00
Hermès Bélusca-Maïto 97ab12262b [ACPICA]
Addendum to revision 62606 : because of typedefs redefinitions (we, after, include acpi.h and co. together with DDK in other acpi bus drivers), we hackishly needed to disable them in actypes.h, and now we need to include ntddk *inside* acpi.h ...
Everything would be nice only if ACPICA would not have the "clever" (read: dumb) idea to define a ACPI_BIOS_ERROR macro, which is (you guessed it) already defined.... in the DDK via the standard bugcheck code macros.
So we introduce two hacks: the firs one right after the inclusion of ntddk.h *in* acpi.h to first undefine the macro (coming from bugcheck.h), *then*, we re-undefine it *after* the inclusion of acpi.h (in the precompiled header) so that drivers that need to use acpi (via the header) can after, include the ntddk.h ...

What a hack :DD

Part 2bis of our modifications to ACPICA code.
CORE-8044

svn path=/trunk/; revision=62607
2014-04-03 23:32:58 +00:00
Hermès Bélusca-Maïto ba1329cf88 [ACPICA]
Disable redundant typedefs that we already got from the inclusion of ntddk.h from elsewhere (and it was done like that in our old modifications of ACPICA).
Personally I don't like this way to go, but for the moment just apply something that (seemed to) worked before...

Part 2 of our modifications to ACPICA code.
CORE-8044

svn path=/trunk/; revision=62606
2014-04-03 22:09:20 +00:00
Hermès Bélusca-Maïto 7ffce2077e [ACPICA]
Do not assume that, when compiling from Windows, we cannot use GCC. In fact we can, and this is what we did before...
Move asm-specific code to where it should belong.
I've checked that: MSVC_asm_code(old_acpica_version) == MSVC_asm_code(new_acpica_version), so that I took its GCC equivalent from our old version of ACPICA and placed it there.

Part 1 of our modifications to ACPICA code.
CORE-8044

svn path=/trunk/; revision=62605
2014-04-03 22:03:14 +00:00
Hermès Bélusca-Maïto 3661d0d700 [ACPI]
Update ACPICA library from 20110922 to 20140325.
Currently breaks build. Fixes are comming.
CORE-8044

svn path=/trunk/; revision=62604
2014-04-03 21:12:09 +00:00
Dmitry Gorbachev 9062d1b58a Improve config.cmake slightly.
svn path=/trunk/; revision=62599
2014-04-01 08:58:08 +00:00
Dmitry Gorbachev 98c3dfa408 [BUGCODES]
- Add an error message for Proprietary Software Execution Prevention 
feature supported by recent CPUs.
- TODO: Implement this feature in the kernel.

svn path=/trunk/; revision=62598
2014-04-01 08:57:58 +00:00
Hermès Bélusca-Maïto 7f4064a788 Resurrect MSVC 2008 builds.
ACHTUNG! ACHTUNG! Even if you can build ROS with MSVC 2008, you cannot boot it (see the below-mentioned JIRA report) ACHTUNG! ACHTUNG!
CORE-8023 #comment MSVC 2008 build resurrected in revision 62595.

svn path=/trunk/; revision=62595
2014-03-31 20:59:32 +00:00
Hermès Bélusca-Maïto 68f7270ce5 [HOST-TOOLS]
For host-tools, including stdint.h when using MSVC is not reliable, so use a tried-&-tested solution (see mkshelllink & geninf tools): include stdint.h if we don't use MSVC, otherwise define just what's needed.
Another solution would be to create a include/host/stdint.h which does this same job, and in the host-tools, include this file.
CORE-8023

svn path=/trunk/; revision=62594
2014-03-31 20:38:05 +00:00
Thomas Faber 059daa9d85 [ADVAPI32]
- Fix buffer handling in CredMarshalCredential/CredUnmarshalCredential. Fixes stack corruption during advapi32:cred
CORE-7242 #resolve

svn path=/trunk/; revision=62593
2014-03-31 20:11:32 +00:00
Hermès Bélusca-Maïto e2359b3724 [CMLIB][MKHIVE]
Move some defines where they belong (they are used in mkhive because they are employed in cmlib functions, and cmlib itself uses them too).

svn path=/trunk/; revision=62592
2014-03-31 20:05:44 +00:00
Thomas Faber b7737eacf1 [RTL]
- Fix buffer overrun in RtlNumberOfSetBits

svn path=/trunk/; revision=62591
2014-03-31 19:57:42 +00:00
Thomas Faber ba3759fb6b [NTOS:KE]
- Verify valid IRQL in KeDelayExecutionThread, just like in KeWait*
- Return from KeDelayExecutionThread after yielding execution

svn path=/trunk/; revision=62590
2014-03-30 21:10:04 +00:00
Pierre Schweitzer b6aa0990cd [TUNNELTEST]
Reshuffle the test a bit so that it clearly fails on ReactOS:
- Gather creation timestamp right after the first creation and always compare to it. This is to workaround the move = copy + delete hack from ReactOS which is resetting the timestamps (and thus making the test pass ;-)).
- Wait more than 20ms (1s). If Microsoft FastFAT has a creation resolution of 10ms, we don't. So it would hide the thing as well.

With such changes, the test still works on Windows, whereas it fails on ReactOS

CORE-7272 

svn path=/trunk/; revision=62589
2014-03-30 18:25:13 +00:00
Timo Kreuzer f6d147a5e1 [W32KDLL]
Use new macro based syscall mechanism for w32kdll_xpsp2. Fix exports

svn path=/trunk/; revision=62588
2014-03-30 17:34:56 +00:00