Commit graph

64690 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto 11df9cf067 Fix build.
svn path=/trunk/; revision=70435
2015-12-27 02:04:09 +00:00
Hermès Bélusca-Maïto ed1b816943 [VFATLIB]
It seems suspicious to directly return the value of fs_close as the NTSTATUS code of the check-disk operation (for FAT32 volumes it happens to return 1 whereas for FAT16 volumes it returns 0).
The documentation of this function says that it "returns a non-zero integer if the file system has been changed since the last fs_open, zero otherwise."
Maybe somebody has a more precise idea on that subject? In the meantime I also add some DPRINTs to attempt to diagnose the conditions where this problem occurs.

svn path=/trunk/; revision=70434
2015-12-27 02:01:52 +00:00
Hermès Bélusca-Maïto c266fd3fb0 [VFATLIB]
- Gather common code in one file instead of duplicating it everywhere.
- Implement full format for FAT12 and FAT16 (using the same function Fat1216WipeSectors), based on similar code for FAT32 implemented by Eric Kohl in revision 63693.

svn path=/trunk/; revision=70433
2015-12-27 00:57:51 +00:00
Hermès Bélusca-Maïto ccda8278da [BOOTSECTORS]
- fat.asm: remove trailing whitespace.
- fat32.asm: backport the fixes from fat32.S introduced a long time ago.
- fat32.S/faty.S: use .space 12, 0 instead of the long .byte array (generates the same code, but is better readable).
- isoboot/btrt: whitespace fix only.

svn path=/trunk/; revision=70432
2015-12-26 21:28:01 +00:00
Hermès Bélusca-Maïto 631d55b60c [BOOTSECTORS]: Sync the .asm files with their .S counterparts (make easier for diff'ing).
svn path=/trunk/; revision=70431
2015-12-26 20:43:50 +00:00
Timo Kreuzer 654e3f7743 [CRT]
Fix x86 asm implementation of strlen / wcslen.

svn path=/trunk/; revision=70430
2015-12-26 20:34:15 +00:00
Timo Kreuzer 2866514570 [CRT_APITEST]
Add another test for strlen, that tests, whether the direction flag in ELFAGS has been modified. While clearing it is legitimate to do according to the ABI, the native implementation does not change it, so we don't want to do it either.

svn path=/trunk/; revision=70429
2015-12-26 20:32:31 +00:00
Hermès Bélusca-Maïto 6a513178c3 [FATxxx BOOTSECTORS]: Whitespace changes mainly (makes easier for diffing). No code changes.
svn path=/trunk/; revision=70428
2015-12-26 20:13:27 +00:00
Timo Kreuzer 909f7439d0 [CRT_APITEST]
- disable GCC builtins
- Add simple tests for strlen, showing that a NULL pointer will cause an access violation, which is broken in our asm implementation

svn path=/trunk/; revision=70427
2015-12-26 19:20:54 +00:00
Pierre Schweitzer c96de1a139 [BOOTSECT]
fatx.S isn't for the FATX filesystem, it's just a generic naming, so pick up the next variable

svn path=/trunk/; revision=70426
2015-12-26 17:44:07 +00:00
Timo Kreuzer 31adefcf04 [CRT] Add abs and labs to CRT lib
[MSVCRT] Explicitly pull in _vsnprintf, bsearch and strcspn from CRT, to prevent the MS linker from exporting stubs from libntdll instead.
See CORE-10753

svn path=/trunk/; revision=70425
2015-12-26 17:13:08 +00:00
Hermès Bélusca-Maïto 060e447a77 [NTVDM]: Cast all the number-of-sectors computations to DWORD/ULONG to prevent potential overflows. Should fix a strange floppy read/write corruption I noticed.
svn path=/trunk/; revision=70424
2015-12-26 17:08:13 +00:00
Hermès Bélusca-Maïto c6ab198d15 [BOOTSECTORS]
- Use the old fat.S source for compiling the FAT12 boot sector, until FATX.S is completely implemented.
- Fix an assembly error in FATX.S
- In comments I added experimental FAT12/16/32 targets based on Timo's FATX.S.

svn path=/trunk/; revision=70423
2015-12-26 16:57:41 +00:00
Eric Kohl 9d67515773 [MKHIVE]
Fix indentation. No code changes!

svn path=/trunk/; revision=70422
2015-12-26 01:34:49 +00:00
Eric Kohl 4d1ea554c8 [BOOTDATA]
Add missing service groups.

svn path=/trunk/; revision=70421
2015-12-26 01:23:10 +00:00
Eric Kohl f32ee3e8ff [ADVAPI32]
- Implement AbortSystemShutdownW by a call to BaseAbortSystemShutdown.
- Implement InitiateSystemShutdownW by a call to BaseInitiateSystemShutdown.
- Implement InitiateSystemShutdownExW by a call to BaseInitiateSystemShutdownEx.
- Add RPC binding code for the winreg server (in winlogon.exe).

svn path=/trunk/; revision=70420
2015-12-26 01:14:18 +00:00
Eric Kohl 1ce137ac92 [SHUTDOWN][WINLOGON]
SHUTDOWN: Fix the hack be calling InitiateSystemShutdownExW instead of ExitWindowsEx.
WINLOGON: Add a hack by calling ExitWindowsEx in BaseInitiateSystemShutdownEx.

svn path=/trunk/; revision=70419
2015-12-26 00:38:37 +00:00
Hermès Bélusca-Maïto f17fe51f38 [NTOS]
Disable again the DR7 check until we correctly understand why bit 10 of DR7 (reserved) is almost always set (this lead to MSVC-built ReactOS crashing when being starting in non-debugging mode). See also r69244.
CORE-10165 #comment DR7 check again disabled in r70418.

svn path=/trunk/; revision=70418
2015-12-26 00:29:07 +00:00
Hermès Bélusca-Maïto f4e200b907 [KDCOM]
For MSVC builds (using KDCOM kd64 WinDbg protocol): Bail out for droppable packets after a given number of retries, if no debugger is attached (list of droppable packets can be found in http://articles.sysprogs.org/kdvmware/kdcom.shtml section "KDCOM protocol", subsection "Droppable packets").
CORE-10541 #resolve #comment Finally fixed in revision r70417!
CORE-7106

svn path=/trunk/; revision=70417
2015-12-25 18:43:16 +00:00
Timo Kreuzer 385bbababc [NTOS/KDBK]
Fix the value for EIP used by KDBG after an INT3 set by KDBG itself. The address is already fixed by KiDispatchException, but only in the context frame, not in the trap frame and KDBG insists to use the trap frame for a lot of things. Also, after a cont from such an int3, KDBG uses a single step to re-enable the breakpoint (it needs to disable it after it was hit to be able to execute the actual instruction), but it used to dismiss *any* single steps after that. So make sure, that an actual single step, as created by the debugger is not being dismissed, but the break point is still restored after the next single step entry. You might expect that a kernel debugger would at least support setting breakpoints, but this is KDBG.

svn path=/trunk/; revision=70416
2015-12-23 22:38:46 +00:00
Ged Murphy 98a34bceb7 [FLTMGR]
- Change the start type to demand. 
- Should stop free loader from throwing a tantrum because it can't load a non-existant boot driver

svn path=/trunk/; revision=70414
2015-12-23 16:29:33 +00:00
Hermès Bélusca-Maïto 07f2fe8cb5 [XDK]
Correctly fix the definition of DRIVER_FS_NOTIFICATION (done the same way as the other DRIVER_xxx "callback" functions; by the way you'll notice they are all NTAPI aka. __stdcall. This is not explicitely mentioned in the W(D)DK, because MS supposes you compile all your kernel-mode code in stdcall convention, the WDK environment coming with preset default compiler switches enabling that. But if you try changing them, you'll run into big troubles. In our headers on the contrary we explicitely mention the calling conventions).

[FLTMGR]
Fix FltpFsNotification to adhere to the correct DRIVER_FS_NOTIFICATION definition.

Addendum to r70410.

svn path=/trunk/; revision=70413
2015-12-23 16:15:08 +00:00
Timo Kreuzer 88d5b185b0 [WIN32K]
Pass cjMaxBits parameter from GreCreateDIBitmapInternal to IntCreateDIBitmap and check the image size before creating the bitmap.
Should fix crash when hitting about tab in Office2000 WinWord.
CORE-10583 #comment please retest

svn path=/trunk/; revision=70412
2015-12-23 14:55:34 +00:00
Ged Murphy 251805da99 [FLTMGR]
- Add the service key

svn path=/trunk/; revision=70411
2015-12-23 14:55:17 +00:00
Ged Murphy d75c6beffe [XDK]
- hackfix just DRIVER_FS_NOTIFICATION until we decide how we want to declare them
- Should fix build

svn path=/trunk/; revision=70410
2015-12-23 14:45:15 +00:00
Ged Murphy 9b329d580d [FLTMGR]
- Add the beginning of the fltmgr. It's called rosfltmgr for now so I can test in Windows.
- It's currently just base code  which registers for file systems appearing (or disappearing), and attaches itself to them and all other mounted devices in their chain.
- Although it builds (touch wood), don't add it to a running system. The IRPs aren't plugged in yet and it'll just bugcheck lower down the stack.

svn path=/trunk/; revision=70409
2015-12-23 14:41:05 +00:00
Ged Murphy 645acc270a [NTOSKRNL]
- Raise the IRQL when enumerating device lists so it doesn't get edited mid-listing
- Don't hardcode the pointer size when checking the buffer size

svn path=/trunk/; revision=70408
2015-12-23 11:26:28 +00:00
Timo Kreuzer cf2573f733 [FREELDR/AMD64]
Save parameter registers (rcx, rdx) before calling CallRealMode. Patch by andy-123, applied to a secondary location by me.
CORE-10511 #resolve #comment Thanks. I added the same fix to PnpBiosGet below.

svn path=/trunk/; revision=70407
2015-12-21 19:36:10 +00:00
Eric Kohl 03e066f2f1 [USERENV]
Hack, that fixes the "Volatile Environment" bug by deleting the "Volatile Environment" key before the user hive is unloaded.
CORE-10705

svn path=/trunk/; revision=70406
2015-12-20 22:30:51 +00:00
Hermès Bélusca-Maïto 716992c8c7 [KDCOM]
Do not use the "LoaderBlock->u.I386.CommonDataArea;" hack to use FreeLdr's DbgPrint function inside KDCOM, for the simple reason that while it works when KDCOM just initializes, the memory area where FreeLdr's DbgPrint function is, gets erased when ReactOS is running. As a result, all attempts to call the DbgPrint function when tracing something in KDCOM at the end of life of ReactOS, just fails lamentably (it hangs).
We therefore cannot rely on external code to provide us with DbgPrint. Instead, implement a very simple DbgPrint function inside KDCOM, as done by KDGDB.
The KD serial port serving for debugging KDCOM is chosen dynamically amongst the other free COM ports.

This needs to be also fixed in KDVM.

[KDGDB]
Instead of hardcoding the KD serial port number serving for debugging KDGDB, determine it dynamically amongst the other free COM ports.

svn path=/trunk/; revision=70405
2015-12-20 16:21:59 +00:00
Hermès Bélusca-Maïto 38814b24c9 [NTOS:KDBG]: Sync back the code that I copied in FreeLdr (r70403) for COM port selection.
svn path=/trunk/; revision=70404
2015-12-20 02:53:30 +00:00
Hermès Bélusca-Maïto 7642306ded [FREELDR]
- Allow to specify in freeldr.ini the debugging port parameters, similarly to what NTLDR allows to do: http://naesten.blogspot.fr/2010/07/undocumented-debug-section-in-bootini.html
- Update the FREELDR.INI example file to reflect these changes.
- Because some FreeLdr components, that need to be initialized before the debugging port parameters can be read from freeldr.ini, use debugging features, we still need to choose some default parameters. For serial ports, we select the possible port starting from COM4 down to COM1.

CORE-9023 #comment Revision 70403: Allow to specify a debugging port in freeldr.ini .

svn path=/trunk/; revision=70403
2015-12-20 02:06:40 +00:00
Eric Kohl 46c7cd186e [REGEDIT]
When the root item in the treeview is selected, remove all items from the listview and wipe the address bar and status bar.

svn path=/trunk/; revision=70402
2015-12-19 19:18:21 +00:00
Eric Kohl c6356f2a1a [BOOTDATA]
Remove obsolete default user locale values. They are now set by the 2nd stage installer.
#CORE-5989 #resolve

svn path=/trunk/; revision=70400
2015-12-19 08:57:56 +00:00
Hermès Bélusca-Maïto f58cb5b81c [SHELL32]: Tray ToolTips: use the correct buffer size for when calling MultiByteToWideChar. Addendum to r70360. CORE-10497
svn path=/trunk/; revision=70399
2015-12-19 01:08:11 +00:00
Eric Kohl 13fbf3250a [USETUP]
Set the default user locale after registry setup.
#CORE-5989 #comment Please retest!

svn path=/trunk/; revision=70398
2015-12-18 21:36:16 +00:00
Aleksey Bragin 5570ee8746 [RTL]
- Improve implementation of RtlActivateActivationContextUnsafeFast / RtlDeactivateActivationContextUnsafeFast by replace magic numbers by flag values, which are already defined in rtltypes.h, and adding various debugging checks. Two of them are triggered for yet unknown reason:
 * Assert in RtlActivateActivationContextUnsafeFast
 * "Trying to activate already activated activation context"
They are commented out in trunk not to annoy everyone.

svn path=/trunk/; revision=70396
2015-12-18 14:58:32 +00:00
Robert Naumann 4a491c30ab [MSPAINT] Fix some English strings, to match Windows behaviour. Patch by Henry Tang Ih CORE-10716
svn path=/trunk/; revision=70395
2015-12-18 12:31:57 +00:00
Robert Naumann d50e0e8b5d [LOGON.SCR] - improve the bitmaps
- remove the enterprise part (we are ReactOS and only ReactOS)
- Add an Application icon

svn path=/trunk/; revision=70394
2015-12-18 12:29:01 +00:00
Hermès Bélusca-Maïto 7e607b9fb8 [DBGHELP][RTL]
Fix usage of VirtualSize wrt. SizeOfRawData.
CORE-10523
CORE-9548 #comment Please retest with revision >= 70390

svn path=/trunk/; revision=70390
2015-12-17 23:10:56 +00:00
Eric Kohl 382ea14238 [SYSSETUP]
Initialize the defauls users locale settings based on the selected locale Id from first stage setup.
#CORE-5989 #resolve

svn path=/trunk/; revision=70389
2015-12-17 22:22:16 +00:00
Timo Kreuzer fd01add9cf [WIN32K]
Fix bugs in pen implementation:
- Do not use the x coordinate to adjust styles, instead they start where the lines start
- Don't leak allocated styles
- Make sure the PEN fields are initialized correctly, even for BRUSHES, so that the destructor can do it's cleanup work
- Fix numerous parameter checks
gdi32_apitest:pen now shows 0 failures!

svn path=/trunk/; revision=70388
2015-12-17 22:05:06 +00:00
Timo Kreuzer 0f8f2f51ce [WIN32K]
Implement support for styled lines.
CORE-9984 #resolve

svn path=/trunk/; revision=70387
2015-12-17 17:44:42 +00:00
Robert Naumann d91023fb28 [HIVECLS] Add bmp images to the shell "new" menu. Patch by Jared Smudde CORE-10668
svn path=/trunk/; revision=70385
2015-12-17 14:23:21 +00:00
Robert Naumann 647ded523c [RUNDLL32] Add an icon. Patch by Jared Smudde. CORE-10669
svn path=/trunk/; revision=70384
2015-12-17 14:10:18 +00:00
Amine Khaldi d8fcc9875c [TRANSLATIONS] Traditional Chinese translation update by Henry Tang Ih. CORE-10655
svn path=/trunk/; revision=70381
2015-12-17 11:10:00 +00:00
Eric Kohl 93d31d0934 [NETCFGX]
Implement INetCfgPnpReconfigCallback stub.

svn path=/trunk/; revision=70379
2015-12-17 09:32:10 +00:00
Hermès Bélusca-Maïto 01f08ca699 Forgot this one...
svn path=/trunk/; revision=70378
2015-12-17 02:37:34 +00:00
Hermès Bélusca-Maïto 733b02b4ea [SYSDM]: Fix translations.
svn path=/trunk/; revision=70377
2015-12-17 02:36:38 +00:00
Hermès Bélusca-Maïto 5357781bfe [BROWSEUI]
- Add french translation (not complete, but enough for now: only what can be currently displayed is translated).
- Don't hardcode the "History" item in the travel-log, but use the localized string. Use the hardcoded string *only* if loading the translation failed.

svn path=/trunk/; revision=70376
2015-12-17 02:02:16 +00:00