Author: greatlrd
Date: Wed May 24 10:35:59 2006
New Revision: 22006
URL: http://svn.reactos.ru/svn/reactos?rev=22006&view=rev
Log:
Fix the regress of livecd, it works now again, some how the palette color are being bigger that 256 color and then the bootvid.sys crash
Modified:
trunk/reactos/drivers/base/bootvid/bootvid.c
Modified: trunk/reactos/drivers/base/bootvid/bootvid.c
URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/drivers/base/bootvid/bootvi…
==============================================================================
--- trunk/reactos/drivers/base/bootvid/bootvid.c (original)
+++ trunk/reactos/drivers/base/bootvid/bootvid.c Wed May 24 10:35:59 2006
@@ -313,7 +313,7 @@
}
}
}
-
+ if ((x>=0) && (x<640) && (479-y>=0) && (479-y<480) && (c>=0) && (c<256))
InbvPutPixels(x, 479 - y, c);
x += 8 * 4;
}
Author: ion
Date: Wed May 24 08:43:50 2006
New Revision: 22005
URL: http://svn.reactos.ru/svn/reactos?rev=22005&view=rev
Log:
[AUDIT] ntobj.c : The Temporary/Permanent object routines are 5-line generic wrappers which call an internal kernel function, which in itself is only a wrapper to set an internal, documented flag. The implementation is therefore trivial. NtQueryObject is only 10% complete.
wait.c: These are simple wrapper routines around the KeWaitForXxx functions which reference the objects and get their pointers, just like any other Nt* function does. Some parts are non-trivial, such as: various failures: these can be tested with the wait regression test however; The usage of THREAD_WAIT_OBJECTS is documented in the DDK; The failure for WaitAll with duplicated objects is documented on MSDN; The check for SYNCHRONIZE object is documented on MSDN.
Modified:
trunk/reactos/ntoskrnl/ob/ntobj.c (props changed)
trunk/reactos/ntoskrnl/ob/wait.c (props changed)
Propchange: trunk/reactos/ntoskrnl/ob/ntobj.c
------------------------------------------------------------------------------
--- svn:needs-lock (original)
+++ svn:needs-lock (removed)
@@ -1,1 +1,0 @@
-*
Propchange: trunk/reactos/ntoskrnl/ob/wait.c
------------------------------------------------------------------------------
--- svn:needs-lock (original)
+++ svn:needs-lock (removed)
@@ -1,1 +1,0 @@
-*
Author: ion
Date: Wed May 24 08:33:18 2006
New Revision: 22004
URL: http://svn.reactos.ru/svn/reactos?rev=22004&view=rev
Log:
[AUDIT] symlink.c : The symbolic link implementation was generic, used different structures from NT (which meant some large NT features of symlinks were unimplemented) and had several bugs which gave different results from NT, so it was most certainly cleanly developed. The most recent update added the NT structure (which is documented) but did not add any functionality, except for fixing bugs which were revealed through a test app called SymlLinkTest.
dirobj.c: The directory object implementation is also generic and currently uses different structures from NT. Object lookup/parsing is entirely different and has nothing in common with NT. The actual Nt* APIs which expose the interface are ultra-generic and trivial.
Modified:
trunk/reactos/ntoskrnl/ob/dirobj.c (props changed)
trunk/reactos/ntoskrnl/ob/symlink.c (props changed)
Propchange: trunk/reactos/ntoskrnl/ob/dirobj.c
------------------------------------------------------------------------------
--- svn:needs-lock (original)
+++ svn:needs-lock (removed)
@@ -1,1 +1,0 @@
-*
Propchange: trunk/reactos/ntoskrnl/ob/symlink.c
------------------------------------------------------------------------------
--- svn:needs-lock (original)
+++ svn:needs-lock (removed)
@@ -1,1 +1,0 @@
-*
Author: fireball
Date: Wed May 24 01:32:04 2006
New Revision: 21997
URL: http://svn.reactos.ru/svn/reactos?rev=21997&view=rev
Log:
- Fix build (forgot to add file) to msvcrt test
Added:
trunk/reactos/regtests/winetests/msvcrt/dir.c
Added: trunk/reactos/regtests/winetests/msvcrt/dir.c
URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/regtests/winetests/msvcrt/d…
==============================================================================
--- trunk/reactos/regtests/winetests/msvcrt/dir.c (added)
+++ trunk/reactos/regtests/winetests/msvcrt/dir.c Wed May 24 01:32:04 2006
@@ -1,0 +1,91 @@
+/*
+ * Unit test suite for dir functions
+ *
+ * Copyright 2006 CodeWeavers, Aric Stewart
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "wine/test.h"
+#include <stdarg.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+#include <io.h>
+#include <windef.h>
+#include <winbase.h>
+#include <winnls.h>
+#include <process.h>
+#include <errno.h>
+
+void test_fullpath(void)
+{
+ char full[MAX_PATH];
+ char tmppath[MAX_PATH];
+ char level1[MAX_PATH];
+ char level2[MAX_PATH];
+ char teststring[MAX_PATH];
+ char *freeme;
+ BOOL rc,free1,free2;
+
+ free1=free2=TRUE;
+ GetTempPath(MAX_PATH,tmppath);
+ strcpy(level1,tmppath);
+ strcat(level1,"msvcrt-test\\");
+
+ rc = CreateDirectory(level1,NULL);
+ if (!rc && GetLastError()==ERROR_ALREADY_EXISTS)
+ free1=FALSE;
+
+ strcpy(level2,level1);
+ strcat(level2,"nextlevel\\");
+ rc = CreateDirectory(level2,NULL);
+ if (!rc && GetLastError()==ERROR_ALREADY_EXISTS)
+ free2=FALSE;
+ SetCurrentDirectory(level2);
+
+ ok(_fullpath(full,"test", MAX_PATH)!=NULL,"_fullpath failed\n");
+ strcpy(teststring,level2);
+ strcat(teststring,"test");
+ ok(strcmp(full,teststring)==0,"Invalid Path returned %s\n",full);
+ ok(_fullpath(full,"\\test", MAX_PATH)!=NULL,"_fullpath failed\n");
+ strncpy(teststring,level2,3);
+ teststring[3]=0;
+ strcat(teststring,"test");
+ ok(strcmp(full,teststring)==0,"Invalid Path returned %s\n",full);
+ ok(_fullpath(full,"..\\test", MAX_PATH)!=NULL,"_fullpath failed\n");
+ strcpy(teststring,level1);
+ strcat(teststring,"test");
+ ok(strcmp(full,teststring)==0,"Invalid Path returned %s\n",full);
+ ok(_fullpath(full,"..\\test", 10)==NULL,"_fullpath failed to generate error\n");
+
+ freeme = _fullpath(NULL,"test", 0);
+ ok(freeme!=NULL,"No path returned\n");
+ strcpy(teststring,level2);
+ strcat(teststring,"test");
+ ok(strcmp(freeme,teststring)==0,"Invalid Path returned %s\n",freeme);
+ free(freeme);
+
+ if (free2)
+ RemoveDirectory(level2);
+ if (free1)
+ RemoveDirectory(level1);
+}
+
+START_TEST(dir)
+{
+ test_fullpath();
+}