Author: hbelusca
Date: Fri Nov 23 22:39:12 2012
New Revision: 57752
URL:
http://svn.reactos.org/svn/reactos?rev=57752&view=rev
Log:
[FREELDR]
When filling LoadOptions, strip the '/' commutator symbol in front of each option.
Now we fully comply with Windows when holding LoaderBlock->LoadOptions, and the content
of the registry value SystemStartOptions under HKLM\CurrentControlSet\Control display the
options without their / symbol.
[WIN32K]
Now, the SystemStartOptions value doesn't contain / anymore.
Modified:
trunk/reactos/boot/freeldr/freeldr/windows/winldr.c
trunk/reactos/win32ss/user/ntuser/display.c
Modified: trunk/reactos/boot/freeldr/freeldr/windows/winldr.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/windo…
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/windows/winldr.c [iso-8859-1] (original)
+++ trunk/reactos/boot/freeldr/freeldr/windows/winldr.c [iso-8859-1] Fri Nov 23 22:39:12
2012
@@ -85,9 +85,10 @@
//CHAR SystemRoot[] = "\\WINNT\\";
//CHAR ArcBoot[] = "multi(0)disk(0)rdisk(0)partition(1)";
- CHAR HalPath[] = "\\";
- CHAR ArcBoot[256];
- CHAR MiscFiles[256];
+ LPSTR LoadOptions, NewLoadOptions;
+ CHAR HalPath[] = "\\";
+ CHAR ArcBoot[256];
+ CHAR MiscFiles[256];
ULONG i;
ULONG_PTR PathSeparator;
PLOADER_PARAMETER_EXTENSION Extension;
@@ -120,9 +121,18 @@
strncpy(LoaderBlock->NtHalPathName, HalPath, MAX_PATH);
LoaderBlock->NtHalPathName = PaToVa(LoaderBlock->NtHalPathName);
- /* Fill load options */
- LoaderBlock->LoadOptions = WinLdrSystemBlock->LoadOptions;
+ /* Fill LoadOptions and strip the '/' commutator symbol in front of each option
*/
+ NewLoadOptions = LoadOptions = LoaderBlock->LoadOptions =
WinLdrSystemBlock->LoadOptions;
strncpy(LoaderBlock->LoadOptions, Options, MAX_OPTIONS_LENGTH);
+
+ do
+ {
+ while (*LoadOptions == '/')
+ ++LoadOptions;
+
+ *NewLoadOptions++ = *LoadOptions;
+ } while (*LoadOptions++);
+
LoaderBlock->LoadOptions = PaToVa(LoaderBlock->LoadOptions);
/* Arc devices */
@@ -136,8 +146,8 @@
/* Allocate the ARC structure */
ArcDiskSig = HeapAllocate(FrLdrDefaultHeap,
- sizeof(ARC_DISK_SIGNATURE_EX),
- 'giSD');
+ sizeof(ARC_DISK_SIGNATURE_EX),
+ 'giSD');
/* Copy the data over */
ArcDiskSig->DiskSignature.Signature = reactos_arc_disk_info[i].Signature;
Modified: trunk/reactos/win32ss/user/ntuser/display.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/ntuser/displa…
==============================================================================
--- trunk/reactos/win32ss/user/ntuser/display.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/ntuser/display.c [iso-8859-1] Fri Nov 23 22:39:12 2012
@@ -173,7 +173,7 @@
if (NT_SUCCESS(Status))
{
/* Check if VGA mode is requested. */
- if (wcsstr(awcBuffer, L"/BASEVIDEO") != 0)
+ if (wcsstr(awcBuffer, L"BASEVIDEO") != 0)
{
ERR("VGA mode requested.\n");
gbBaseVideo = TRUE;