Author: mnordell
Date: Sat Oct 20 11:36:17 2007
New Revision: 29702
URL: http://svn.reactos.org/svn/reactos?rev=29702&view=rev
Log:
Don't try to open a harddisk for reading when checking for it to create the PhysicalDriveN links. Instead, request FILE_READ_ATTRIBUTES. This silences a hack-warning in IopParseDevice, that now possibly can be removed.
Modified:
trunk/reactos/ntoskrnl/fstub/disksup.c
trunk/reactos/ntoskrnl/io/iomgr/file.c
Modified: trunk/reactos/ntoskrnl/fstub/disksup.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fstub/disksup.c?r…
==============================================================================
--- trunk/reactos/ntoskrnl/fstub/disksup.c (original)
+++ trunk/reactos/ntoskrnl/fstub/disksup.c Sat Oct 20 11:36:17 2007
@@ -481,7 +481,7 @@
NULL);
Status = ZwOpenFile(&FileHandle,
- FILE_READ_DATA | SYNCHRONIZE,
+ FILE_READ_ATTRIBUTES | SYNCHRONIZE,
&ObjectAttributes,
&StatusBlock,
FILE_SHARE_READ,
Modified: trunk/reactos/ntoskrnl/io/iomgr/file.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/file.c?r…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/file.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/file.c Sat Oct 20 11:36:17 2007
@@ -404,6 +404,9 @@
/* FIXME: Small hack still exists, have to check why...
* This is triggered multiple times by usetup and then once per boot.
+ * TMN: NOTE: It might have been fixed now, by changing the requested
+ * openmode in xHalIoAssignDriveLetters from FILE_READ_DATA to
+ * FILE_READ_ATTRIBUTES. If verified, this hack should be removed.
*/
if (!(DirectOpen) &&
!(RemainingName->Length) &&
Author: peterw
Date: Sat Oct 20 10:37:14 2007
New Revision: 29701
URL: http://svn.reactos.org/svn/reactos?rev=29701&view=rev
Log:
- Fix some typos, bit more cleanup.
Modified:
trunk/tools/RosBE-Windows/Root/Help.cmd
trunk/tools/RosBE-Windows/Root/RosBE.cmd
trunk/tools/RosBE-Windows/Tools/config/options.c
Modified: trunk/tools/RosBE-Windows/Root/Help.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE-Windows/Root/Help.cmd?…
==============================================================================
--- trunk/tools/RosBE-Windows/Root/Help.cmd (original)
+++ trunk/tools/RosBE-Windows/Root/Help.cmd Sat Oct 20 10:37:14 2007
@@ -18,7 +18,7 @@
echo.
echo Available Commands:
echo make [OPTIONS] - Without options it does a standard build of
- echo ReactOS. OPTIONS1 are the standard ReactOS build
+ echo ReactOS. OPTIONS are the standard ReactOS build
echo options ie. "bootcd"
echo makex [OPTIONS] - Same as 'make' but automatically determines the
echo number of CPU Cores in the system and uses -j
@@ -43,16 +43,16 @@
goto :EOF
)
if "%1" == "make" (
- echo Usage: make [OPTIONS1] [OPTIONS2]
- echo Without options it does a standard build of ReactOS. OPTIONS1 are the
+ echo Usage: make [OPTIONS]
+ echo Without options it does a standard build of ReactOS. OPTIONS are the
echo standard ReactOS build options ie. "bootcd", "livecd", etc.
goto :EOF
)
if "%1" == "makex" (
- echo Usage: makex [OPTIONS1] [OPTIONS2]
+ echo Usage: makex [OPTIONS]
echo Same as 'make' but automatically determines the number of CPU Cores in
echo the system and uses "make -j x" with the appropriate number.
- echo NOTE: The number makex uses can be modified by editing Build-Multi.cmd
+ echo NOTE: The number makex uses can be modified by editing Build.cmd
echo located in the RosBE directory, instructions for doing so are
echo contained within the file.
goto :EOF
Modified: trunk/tools/RosBE-Windows/Root/RosBE.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE-Windows/Root/RosBE.cmd…
==============================================================================
--- trunk/tools/RosBE-Windows/Root/RosBE.cmd (original)
+++ trunk/tools/RosBE-Windows/Root/RosBE.cmd Sat Oct 20 10:37:14 2007
@@ -41,7 +41,7 @@
::
if "%1" == "oldmode" (
cls
- set _ROSBE_OLDMODE=
+ set _ROSBE_OLDMODE=""
call :RosBE4
goto :EndCommandParse
)
Modified: trunk/tools/RosBE-Windows/Tools/config/options.c
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE-Windows/Tools/config/o…
==============================================================================
--- trunk/tools/RosBE-Windows/Tools/config/options.c (original)
+++ trunk/tools/RosBE-Windows/Tools/config/options.c Sat Oct 20 10:37:14 2007
@@ -48,7 +48,7 @@
{
int foreground, background;
BOOL showtime, writelog, useccache, strip;
- WCHAR logpath[MAX_PATH], mingwpath[MAX_PATH], checkmgw[MAX_PATH], checklog[MAX_PATH];
+ WCHAR logdir[MAX_PATH], mingwpath[MAX_PATH], checkmgw[MAX_PATH], checklog[MAX_PATH];
WCHAR msgerror[256];
HANDLE hFile;
FILE *pFile;
@@ -59,19 +59,19 @@
strip = SendMessage(GetDlgItem(hwnd, ID_STRIP), BM_GETCHECK, 0, 0);
foreground = SendMessage(GetDlgItem(hwnd, IDC_FONT), CB_GETCURSEL, 0, 0);
background = SendMessage(GetDlgItem(hwnd, IDC_BACK), CB_GETCURSEL, 0, 0);
- GetDlgItemText(hwnd, ID_LOGDIR, logpath, MAX_PATH);
+ GetDlgItemText(hwnd, ID_LOGDIR, logdir, MAX_PATH);
GetDlgItemText(hwnd, ID_MGWDIR, mingwpath, MAX_PATH);
if (writelog)
{
GetCurrentDirectory(MAX_PATH, checklog);
- if (SetCurrentDirectory(logpath))
+ if (SetCurrentDirectory(logdir))
{
SetCurrentDirectory(checklog);
}
else
{
- if (!CreateDirectory(logpath, NULL))
+ if (!CreateDirectory(logdir, NULL))
{
LoadString(hInstance, MSG_DIREFAILED, msgerror, 256);
MessageBox(NULL, msgerror, NULL, MB_ICONERROR);
@@ -106,7 +106,7 @@
fprintf(pFile, "set _ROSBE_USECCACHE=%d\n", useccache);
fprintf(pFile, "set _ROSBE_STRIP=%d\n", strip);
fprintf(pFile, "set _ROSBE_WRITELOG=%d\n", writelog);
- fprintf(pFile, "set _ROSBE_LOGPATH=%S\n", logpath);
+ fprintf(pFile, "set _ROSBE_LOGDIR=%S\n", logdir);
fprintf(pFile, "set _ROSBE_MINGWPATH=%S\n", mingwpath);
fclose(pFile);
return TRUE;
Author: mnordell
Date: Sat Oct 20 09:48:25 2007
New Revision: 29700
URL: http://svn.reactos.org/svn/reactos?rev=29700&view=rev
Log:
[COMMENT] Added comment explaining how this code, which at first glance simply couldn't work, indeed can work. Much code (55 lines to be precise) is hidden inside a macro.
Modified:
trunk/reactos/ntoskrnl/ke/wait.c
Modified: trunk/reactos/ntoskrnl/ke/wait.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/wait.c?rev=297…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/wait.c (original)
+++ trunk/reactos/ntoskrnl/ke/wait.c Sat Oct 20 09:48:25 2007
@@ -544,6 +544,12 @@
/* Otherwise, we already have the lock, so initialize the wait */
Thread->WaitNext = FALSE;
+ /* Note that KxMultiThreadWait is a macro, defined in ke_x.h, that */
+ /* uses (and modifies some of) the following local */
+ /* variables: */
+ /* Thread, Index, WaitBlock, Timer, Timeout, Hand and Swappable. */
+ /* If it looks like this code doesn't actually wait for any objects */
+ /* at all, it's because the setup is done by that macro. */
KxMultiThreadWait();
/* Start wait loop */