Commit graph

34091 commits

Author SHA1 Message Date
James Tabor 58d352809d - Fix bitmap tests.
svn path=/trunk/; revision=38102
2008-12-15 05:48:22 +00:00
James Tabor 8a3fedace3 - Implement DIB section attribute flag support.
- Fix height negativity being passed to NtGdiCreateCompatibleBitmap. See bug 3947.

svn path=/trunk/; revision=38101
2008-12-15 05:25:31 +00:00
Timo Kreuzer e9d55d0638 mbctype.h: fix broken _mbctype[] and _mbcasemap[] declarations
sec_api/time_s.h: add asctime_s
stdio.h: comment out defines for non-conforming swprintfs
sys/utime.h: fix definition of _utime / _utime32 to be compatible to msvc while linking to msvcrt.dll
tchar.h: add secure time functions
fixes msvcrt_winetest

svn path=/trunk/; revision=38088
2008-12-14 23:41:51 +00:00
Timo Kreuzer 2f3c5f280b - Replace a 'for' with a 'do .. while '
- Make sure OutputDebugStringA terminates with a newline
Fixes winetest debug output. I wonder how it worked before. Dedicated to Stefan100.

svn path=/trunk/; revision=38087
2008-12-14 23:18:59 +00:00
Timo Kreuzer 39324400b9 [FORMATTING]
Fix indentation, no code change

svn path=/trunk/; revision=38086
2008-12-14 22:52:51 +00:00
KJK::Hyperion 41dd7167ea Revert r38084
Sigh.

svn path=/trunk/; revision=38085
2008-12-14 22:44:33 +00:00
KJK::Hyperion 41467cc1ad Supersedes r38081
modified   include/reactos/libs/pseh/pseh2.h
modified   lib/pseh/framebased-gcchack.c
modified   lib/pseh/i386/framebased-gcchack.S
   Disassemble trampolines in the library, instead of the macros. Results in better, smaller code. As a side effect, PSEH no longer requires a trampoline for nested functions - which results in even better, even smaller code in many common cases where the nested functions don't use any variables from the containing function
   Simulate a no-op setjmp so that GCC correctly handles variables in registers, instead of surprise-corrupting random variables in random conditions
   Save EBP every time a _SEH2_TRY/_SEH2_EXCEPT is entered, instead of only the first time: correctly handles code compiled with -fomit-frame-pointers
   Don't generate a nested function for a _SEH2_EXCEPT() filter expression if the value is a compile-time constant: convert the value to (void *)0, (void *)1 or (void *)-1, and set that as the filter, instead (like Visual C++ does, incidentally)
   If a _SEH2_EXCEPT() filter expression is a compile-time constant evaluating to EXCEPTION_CONTINUE_EXECUTION or EXCEPTION_CONTINUE_SEARCH, allow GCC to optimize out the body of the _SEH2_EXCEPT (because it'd be unreachable). This should really result in a compile-time warning, but #pragma message is unsupported in GCC 4.1.3
   Let _SEH2_EXCEPT() accept a comma expression as filter expression (e.g. _SEH2_EXCEPT(MessageBox(...), EXCEPTION_EXECUTE_HANDLER) instead of _SEH2_EXCEPT((MessageBox(...), EXCEPTION_EXECUTE_HANDLER)))
   Small optimizations in PSEH library
   Clean up GCC hacks
   Remove currently unused PSEH 3 hacks

svn path=/trunk/; revision=38084
2008-12-14 21:50:31 +00:00
Dmitry Gorbachev e415cd9e65 - Use HEAP_ZERO_MEMORY instead of memset().
- Do not crash if no adapter found.

svn path=/trunk/; revision=38083
2008-12-14 20:45:16 +00:00
KJK::Hyperion 966a02f90b Revert r38081
svn path=/trunk/; revision=38082
2008-12-14 19:54:52 +00:00
KJK::Hyperion 0d1b89e5c2 modified include/reactos/libs/pseh/pseh2.h
modified   lib/pseh/framebased-gcchack.c
   Disassemble trampolines in the library, instead of the macros. Results in better, smaller code. As a side effect, PSEH no longer requires a trampoline for nested functions - which results in even better, even smaller code in many common cases where the nested functions don't use any variables from the containing function
   Simulate a no-op setjmp so that GCC correctly handles variables in registers, instead of surprise-corrupting random variables in random conditions
   Save EBP every time a _SEH2_TRY/_SEH2_EXCEPT is entered, instead of only the first time: correctly handles code compiled with -fomit-frame-pointers
   Don't generate a nested function for a _SEH2_EXCEPT() filter expression if the value is a compile-time constant: convert the value to (void *)0, (void *)1 or (void *)-1, and set that as the filter, instead (like Visual C++ does, incidentally)
   If a _SEH2_EXCEPT() filter expression is a compile-time constant evaluating to EXCEPTION_CONTINUE_EXECUTION or EXCEPTION_CONTINUE_SEARCH, allow GCC to optimize out the body of the _SEH2_EXCEPT (because it'd be unreachable). This should really result in a compile-time warning, but #pragma message is unsupported in GCC 4.1.3
   Let _SEH2_EXCEPT() accept a comma expression as filter expression (e.g. _SEH2_EXCEPT(MessageBox(...), EXCEPTION_EXECUTE_HANDLER) instead of _SEH2_EXCEPT((MessageBox(...), EXCEPTION_EXECUTE_HANDLER)))
   Small optimizations in PSEH library
   Clean up GCC hacks
   Remove currently unused PSEH 3 hacks

svn path=/trunk/; revision=38081
2008-12-14 19:49:05 +00:00
Dmitry Gorbachev 47b29bf325 Fix winsta.dll rbuild file.
svn path=/trunk/; revision=38079
2008-12-14 13:52:28 +00:00
Eric Kohl 41a958b128 - SEH-protect LsaClose, LsaDelete and LsaOpenPolicy.
- Move the code of LsaOpenPolicy into LsarOpenPolicy and make LsaOpenPolicy call LsarOpenPolicy.

svn path=/trunk/; revision=38078
2008-12-14 13:16:16 +00:00
Michael Martin 1605d036fe - Use volatile with PagesLocked and MdlAddress. Fixes bug #3674.
- For safety may have to declare all variable used in except this way.

svn path=/trunk/; revision=38077
2008-12-14 12:14:00 +00:00
Aleksey Bragin 5e305bbdf6 - Undo one "fix" from 38075. Coverity warned you about possible double check of the same pointer (though in || you probably can't go without it), but one check should definately stay! SpiGetLunExtension can return NULL!
svn path=/trunk/; revision=38076
2008-12-14 11:59:21 +00:00
Stefan Ginsberg a9295e691b - Fix a broken loop
- Remove unnecessary checks
- Fixes CID 171, 172 and 655

svn path=/trunk/; revision=38075
2008-12-14 10:15:49 +00:00
Stefan Ginsberg afa4c210b2 - Get rid off STATIC, DECL_IMPORT and DECL_EXPORT
- Fix FIELD_OFFSET

svn path=/trunk/; revision=38074
2008-12-14 10:02:46 +00:00
KJK::Hyperion 0cb750adfa modified lib/pseh/framebased-gcchack.c
modified   lib/pseh/i386/framebased-gcchack.S
   Correctly chain exceptions raised during unwinding by "finally" blocks
   Sanitize direction flag before any C code is executed, just to be totally safe
   Clean up code

svn path=/trunk/; revision=38069
2008-12-14 02:55:50 +00:00
Timo Kreuzer db8c91d651 fix utime usage
svn path=/trunk/; revision=38068
2008-12-14 01:43:24 +00:00
Timo Kreuzer 7f8b6003c6 revert last commit
svn path=/trunk/; revision=38067
2008-12-14 01:28:01 +00:00
Timo Kreuzer d469155aa7 revert 38059 to see if it has effected the output of winetests
svn path=/trunk/; revision=38066
2008-12-14 01:13:49 +00:00
Eric Kohl bac49255c5 - Make the service manager wait for LSA.
- Winlogon must not wait for the service mananger, otherwise we will get another deadlock.

svn path=/trunk/; revision=38065
2008-12-14 01:01:16 +00:00
Stefan Ginsberg 76e4f9ca92 - Hack away mru tests as Cm is broken
svn path=/trunk/; revision=38064
2008-12-14 00:46:06 +00:00
Stefan Ginsberg 6b4c969767 - Disable lsasrv and advapi debug tracing, accidentally committed in 38041
svn path=/trunk/; revision=38063
2008-12-14 00:05:19 +00:00
Timo Kreuzer a49057dcd6 Didn't want to commit this. Use the opportunity to convert spaces -> tabs.
svn path=/trunk/; revision=38062
2008-12-13 23:50:28 +00:00
Timo Kreuzer fd55d5ab90 fix rosperf build
svn path=/trunk/; revision=38061
2008-12-13 23:48:38 +00:00
Timo Kreuzer b59e7d655f include stdlib.h for exit()
svn path=/trunk/; revision=38060
2008-12-13 23:37:26 +00:00
Timo Kreuzer 14fa0ef142 fix build of rostests
svn path=/trunk/; revision=38059
2008-12-13 23:12:44 +00:00
Timo Kreuzer 6b7663640a fix fontview build
svn path=/trunk/; revision=38058
2008-12-13 22:25:59 +00:00
Timo Kreuzer 76a198afb9 Update crt headers and mingw lib from mingw64. Update crt a bit. 4 msvcrt time tests fixed.
svn path=/trunk/; revision=38052
2008-12-13 21:28:05 +00:00
Gregor Schneider d7b72f79a2 Update RtlIsTextUnicode, ntdll rtlstr winetest failure down by 10, one remaining
svn path=/trunk/; revision=38051
2008-12-13 21:22:07 +00:00
Gregor Schneider 681e0e0b24 - Update _makepath and _wmakepath to allow in place operation and separated extension processing, based on wine code
- Fixes all 14 msvcrt dir winetests

svn path=/trunk/; revision=38050
2008-12-13 21:06:47 +00:00
Timo Kreuzer 1e4507a141 fix build
svn path=/trunk/; revision=38049
2008-12-13 19:47:24 +00:00
Aleksey Bragin 70195c5fa2 - Add missing PSHARED_CACHE_MAP.
svn path=/trunk/; revision=38048
2008-12-13 19:31:40 +00:00
Aleksey Bragin fcd0ee7931 - Sync with Wine.
svn path=/trunk/; revision=38047
2008-12-13 19:30:38 +00:00
Timo Kreuzer 1208ee14e8 Add 101 tests for GetSystemMetrics
svn path=/trunk/; revision=38046
2008-12-13 17:55:44 +00:00
Timo Kreuzer 702df456d2 Add DumpMem function to apitests lib for debugging purposes
svn path=/trunk/; revision=38045
2008-12-13 16:52:49 +00:00
Timo Kreuzer 4a3e577b8f Add tests for NtGdiCombineRgn (14), NtGdiCreateCompatibleDC (4), NtGdiDoPalette (1), NtGdiFlushUserBatch (10), NtGdiPolyPolyDraw (60), NtGdiselectBitmap (4), NtGdiSelectPen (6), NtGdiSetDIBitsToDeviceInternal (2), NtUserEnumDisplayMonitors (7), NtUserGetClassInfo (15), NtUserProcessConnect (1), NtUserSelectPalette (13), NtUserSystemParametersInfo (1) (= 138 new tests)
svn path=/trunk/; revision=38044
2008-12-13 16:48:01 +00:00
Dmitry Gorbachev 8a8705ed19 Remove workaround for GCC 4.4.0 bug, it is already fixed.
svn path=/trunk/; revision=38043
2008-12-13 15:49:41 +00:00
Dmitry Gorbachev 030afbd185 - Remove DBCSCodePage field from NLS_FILE_HEADER structure.
- Make RtlInitCodePageTable function slightly clearer.
- Fix IntIsLeadByte function (thanks to Gregor Schneider, bug #3944).

svn path=/trunk/; revision=38042
2008-12-13 15:42:56 +00:00
Eric Kohl 8fb679dc7c Do not start LSASS as a service but as an ordinary process because:
1) LSASS and the NetLogon service are not the same.
2) The service manager must wait for LSASS to finish initialization. If LSASS is started as a service we will have a classic deadlock scenario.

svn path=/trunk/; revision=38041
2008-12-13 14:47:07 +00:00
Timo Kreuzer fc635826a5 print out some info on non-type symbols
svn path=/trunk/; revision=38040
2008-12-13 12:05:16 +00:00
Timo Kreuzer 0dc6254f67 errcode is a type. using it as parameter name in a old type function declaration doesn't work.
Use modern style declaration

svn path=/trunk/; revision=38039
2008-12-13 01:05:46 +00:00
Timo Kreuzer 0c36e47417 update dbghelp_ros.diff. Only one tiny change left
svn path=/trunk/; revision=38038
2008-12-13 00:54:45 +00:00
Timo Kreuzer eacec70b46 sync dbghelp to wine head
- replace wine's spec file with an own one
- add back the stubs file and rename it to rosstubs.c, so next time someone syncs dbghelp, he might notice that this file is ros specific and does NOT delete it
- fix FindFileInPath definition in dbghelp.h
- update wine/mscvpdb.h

svn path=/trunk/; revision=38037
2008-12-13 00:52:11 +00:00
Timo Kreuzer 4666ae75a3 add _strtoi64 and _strtoui64 to stdlib.h
svn path=/trunk/; revision=38036
2008-12-13 00:32:37 +00:00
Gregor Schneider 9bb14d43db - Update ntdll winetests
- Warning: the reg test may bsod/restart your Windows system- not a problem in ros though

svn path=/trunk/; revision=38035
2008-12-12 23:42:40 +00:00
Timo Kreuzer 88f1899dcb reduce the amount of hacks in dbghelp_ros.diff, also fix declaration of _strtoui64
svn path=/trunk/; revision=38034
2008-12-12 20:12:21 +00:00
Timo Kreuzer 019f6c6133 when defining ssize_t, also define _SSIZE_T_DEFINED
svn path=/trunk/; revision=38033
2008-12-12 19:37:56 +00:00
Timo Kreuzer d6326245c7 remove useless circle definition _setjmp -> setjmp -> _setjmp
svn path=/trunk/; revision=38032
2008-12-12 19:27:14 +00:00
Timo Kreuzer 076f1a2735 MAX_PATH is neither defined by ntddk.h nor by crt headers, use _MAX_PATH instead
svn path=/trunk/; revision=38031
2008-12-12 19:06:57 +00:00