Commit graph

70593 commits

Author SHA1 Message Date
Pierre Schweitzer 8294118174
[FASTFAT] Add a wrapper around FsRtlNotifyFullReportChange 2018-01-07 14:16:31 +01:00
Timo Kreuzer 168223aeb8 [DRWTSN32] Fix amd64 build 2018-01-07 13:42:39 +01:00
Pierre Schweitzer 2a36b632ef
[FASTFAT] When a file gets overwritten, notify about the changes 2018-01-07 11:44:25 +01:00
Pierre Schweitzer ffeb3f070b
[FASTFAT] When overwriting a file, also update its write time 2018-01-07 11:34:41 +01:00
Pierre Schweitzer 0eacb0b1ef
[FASTFAT] When dealing with attributes on IRP_MJ_CREATE, filter user input to ensure we have only attributes we can handle.
This applies to files newly created, or for files overwritten where attributes are reset/modified.
2018-01-06 22:02:10 +01:00
Pierre Schweitzer 7bea4ec07e
[NTFS] Apply fix from 52f0726: allow partial info copy on dir enumeration on first entry return.
This is assorted with misc fixes to make this code closer to what we currently have in FastFAT.
This also allows fixing a memory leak in case of single entry return.

CORE-13367
2018-01-06 21:39:25 +01:00
Timo Kreuzer 1014d50a4b [NTOS:MM] Pass FaultCode to MiDispatchFault 2018-01-06 18:20:24 +01:00
Timo Kreuzer 3f426aabde [NTOS:MM] Mark local functions with static 2018-01-06 18:20:24 +01:00
Timo Kreuzer a00378a1a1 [NTOS:MM] Add support for NX page-faults 2018-01-06 18:20:24 +01:00
Timo Kreuzer 4d043aa05e [NTOS:MM] Make use of FaultCode and MI_IS_NOT_PRESENT_FAULT and MI_IS_WRITE_ACCESS macros in MmArmAccessFault. 2018-01-06 18:20:24 +01:00
Timo Kreuzer d5c71429d7 [NTOS:MM] Pass The FaultCode to MmArmAcceessFault as well and translate it there to what was declared as "StoreInstruction"
No functional changes.
2018-01-06 18:20:24 +01:00
Timo Kreuzer 3021c2d571 [NTOS:MM] Pass page fault code to MmAccessFault
Note: before we had a BOOLEAN parameter called StoreInstruction, but in reality it was not specifying whether the fault was from a store store instruction, but whether it was an access violation rather than a page-not-present fault. On x86 without PAE there are only 2 kinds of access violations: (1) Access of a kernel mode page from user mode, which is handled early and (2) access of a read-only (or COW) page with a writing instruction. Therefore we could get away with this, even though it relied on the wrong assumption that a fault, which was not a page-not-present-fault, was automatically a write access. This commit only changes one thing: we pass the full fault-code to MmAccessFault and handle the rest from there in exactly the same way as before. More changes are coming to make things clear.
2018-01-06 18:20:24 +01:00
Luo Yufan fe50c655aa [TRANSLATION] Update Simplified Chinese translations and font settings. (#266) 2018-01-06 18:05:07 +01:00
Timo Kreuzer 690cc9f30b [NDK] Fix some ob types (64 bit) 2018-01-06 17:13:22 +01:00
Timo Kreuzer 5985fe613b ! Fix build of tracert
# Conflicts:
#	sdk/include/psdk/ipexport.h
2018-01-06 17:07:54 +01:00
Pierre Schweitzer 48382d1448
[FLTMGR] Properly allocate CCB in CreatePortCCB()
CID 1427031
2018-01-06 13:54:21 +01:00
Colin Finck f5d366b200
[NTOS:CM] Improve code in cmsysini.c (#216)
Based on an original patch by Timo Kreuzer, with modifications by me to adapt it to latest HEAD and use a single exit path through the Cleanup label. This reliably frees all allocated handles.

The original code returns STATUS_SUCCESS for many cases. This has been preserved.
In the future, it should be checked though whether returning success is appropriate for all these cases.

CORE-6844
2018-01-06 13:27:41 +01:00
Pierre Schweitzer cc8ccc6eb8
[USETUP] When opening the target file for dropping readonly mode only use required access.
This avoids the open failing on certain file systems where GENERIC_WRITE access would be denied
for a readonly file.
This is an addendum to 82f44a2.

CORE-14158
2018-01-06 12:11:02 +01:00
Mark Jansen 280d7a9775
[DRWTSN32] Implement basic crash report functionality
On application crash, drwtsn32 will attach to the application and try to get a dump, consisting of:
- List of loaded modules
- List of loaded threads
- Per thread, a stacktrace
- Per thread, a small hexdump from the stack
- Per thread, a dump of the most common registers

This dump is saved to the desktop, and the user is notified of the dump being dropped there.

CORE-14180
#145
2018-01-06 11:47:54 +01:00
Luo Yufan 59aa6b9e74 [TRANSLATION] Improve Simplified Chinese Translations (#265)
* Update Simplified Chinese translation of SYSSETUP
* Update Simplified Chinese translations and font settings.
* Update Translation of SHELL32.
2018-01-05 14:15:03 +01:00
Giannis Adamopoulos a671923037 [SHELL32] CMenuToolbarBase: Use COLOR_MENUTEXT color for the text color in normal menu items. CORE-13855 2018-01-05 11:53:35 +02:00
Giannis Adamopoulos 695147eaac [COMCTL32] tab: Use DrawThemeText when drawing text with themes. CORE-13855 2018-01-04 23:27:48 +02:00
Pierre Schweitzer 82f44a2107
[USETUP] When overwriting a file, if open fails, it might be because the file is readonly.
In such situation, try to drop the readonly attribute before overwritting the file.

This fixes setup not being able to overwrite FAT bootcode when reusing a FAT partition
already installed without reformatting.

CORE-14158
2018-01-04 21:49:56 +01:00
Timo Kreuzer f555c102b7 [NTOS:EX] Don't dereference ExpCritSecOutOfMemoryEvent when it was never referenced. 2018-01-04 21:05:10 +01:00
David Quintana c32993c672 [PSDK] Change #if to #ifdef, to be more consistent with the majority of our codebase. 2018-01-04 19:15:06 +01:00
David Quintana c8b93430d4 [PSDK] Add ICMP_ECHO_REPLY32 needed by 64-bit code. Fixes x64 build of tracert. 2018-01-04 18:21:16 +01:00
Giannis Adamopoulos 522601d050 [COMCTL32] toolbar: Draw checked and not hot buttons as checked, not hot. CORE-13592
Should be sent to wine.
2018-01-04 14:30:47 +02:00
Katayama Hirofumi MZ a8bd06be98
[NTOS:KDBG] Fix DPRINT format specifier in KdPortInitializeEx. CORE-14174 2018-01-04 11:37:50 +01:00
Timo Kreuzer d17812f933 [NTOS:MM] Use MiResolveDemandZeroFault instead of MiDispatchFault 2018-01-03 23:07:19 +01:00
Timo Kreuzer d4765fe366 [NTOS:MM] Implement resolving PXE/PPE page table demand zero faults 2018-01-03 23:07:19 +01:00
Timo Kreuzer 2eff510074 [NTOS:MM] Increment Prcb->MmDemandZeroCount while holding the Pfn lock 2018-01-03 23:07:19 +01:00
Timo Kreuzer 1240ed9e18 [NTOS/MM] Add Protection parameter to MiResolveDemandZeroFault 2018-01-03 23:07:19 +01:00
Bișoc George 699b8bf857 [DLL][WIN32][NEWDEV] Wrong character in the Romanian translation removed (#259)
Replaced "ú" with "u". Is that letter even a thing? :D
2018-01-03 21:29:44 +01:00
Stanislav Motylkov 6fa16d791a [SYSSETUP] Add marquee progress bar to show setup is alive (#262)
CORE-14163 #resolve
2018-01-03 21:24:26 +01:00
Bișoc George 71899c4290
[RAPPS] Romanian translation update
Quick update covering the latest commit - CORE-13789.
2018-01-03 12:29:13 +02:00
Bișoc George 7e1f4184fe
[RAPPS] Italian translation update
Quick-update covering the latest commit - CORE-13789.
2018-01-03 12:28:37 +02:00
Joachim Henze 1522d1cf67 [RAPPS] update translation de-DE.rc for CORE-13789 2018-01-03 09:48:31 +01:00
Alexander Shaposhnikov 58f8fa9ec8
[RAPPS] Make selection global
- Added a 'Selected for installation' category that shows what was selected.
  Selection is now kept between categories.
- New string is added to resources.
  ru-RU.rc and uk-UA.rc strings are translated.
CORE-13789
2018-01-03 10:18:49 +02:00
Pierre Schweitzer 06abd3b480
[DISKPART] Don't crash on input if user provided no command
CORE-14018
2018-01-03 08:48:36 +01:00
Hermes Belusca-Maito b2be558e61 [NTOS:INBV] Simplify a little bit the BootLogoFadeIn() function
- Use KeDelayExecutionThread() instead of KeStallExecutionProcessor().
- Fix magic values and add comments.
- Fix structure name.
2018-01-03 02:57:28 +01:00
Stanislav Motylkov dd71fb5ec8 [NTOS:INBV] Implement rotation bar for boot screen
CORE-10327 #resolve
2018-01-03 02:57:28 +01:00
Bișoc George 4e2d8956a4 [REACTOS] Italian translation update. #255 2018-01-02 18:41:50 +01:00
Luo Yufan 2524a0b636 [TRANSLATIONS] Simplified Chinese translation update. #251 2018-01-02 18:39:24 +01:00
Ged Murphy 344f367211
[TRACERT] Rewrite tracert
- Full rewrite. This commit replaces the old utility.
- Use the new ICMP APIs instead of manually crafting ping requests using raw sockets.
- Add support for additional languages (the previous utility was hardcoded)
- Add support for IPv6
- Make the icmpapi header C++ compatible. (we don't appear to sync this with wine anymore.)
- Now runs on Win10, is much more reliable, and brings the code somewhat into the 21st century.
(It's currently missing source routing (-j), but as most routers disable this anyway, I'm not sure that it's worth adding)
2018-01-02 09:43:14 +00:00
Alexander Shaposhnikov 8d436d9bb5
[RAPPS] Simplified string creation in CAvailableApps
Created a struct that fills itself upon creation.
This makes it easy to include in CAvailableApps without additional weirdness.
2018-01-02 02:13:55 +02:00
Thomas Faber b20280a0f9
[CMAKE] Allow overriding the .dll extension for delay imports in MSVC builds.
Fixes delay-importing winspool.drv.
2018-01-01 19:05:30 +01:00
Pierre Schweitzer 2b4d5c5cff
[FASTFAT] When overwriting a file with FILE_OVERWRITE*, don't erase previous file attributes, only update them.
Keep erasing them in case the file gets overwritten with FILE_SUPERSEDE.

CORE-14158
2018-01-01 14:29:15 +01:00
Pierre Schweitzer f3fecf92c1
[FASTFAT] On file overwrite, deny it if file as HIDDEN/SYSTEM flag and caller doesn't set them.
CORE-14158
2018-01-01 12:13:46 +01:00
Timo Kreuzer c4d6c2c3f1 [NTOS:KE] Fix pushing of fake error code in KiDoubleFaultAbort (amd64) 2018-01-01 12:09:38 +01:00
Timo Kreuzer f60a9eb7a3 [RTL] Fix amd64 version of DebugService2 2018-01-01 12:09:38 +01:00