Add an error icon to the C Runtime termination message box.
Patch by Lee Schröder.
CORE-6886 #resolve #comment Committed in r58157, thanks :)
svn path=/trunk/; revision=58157
Fix the debugging macros introduced in r58132 (for the _FATAL case):
do not use exceptions but instead a breakpoint followed by a process termination procedure (or a bugcheck if we are in kernel mode).
Feel free to improve them !!
[DRIVERS-HAL]
Finish to use the new debugging macros
Part 3/3
svn path=/trunk/; revision=58154
Rewrite DisplayCharacter. The new algorithm is much faster. It uses the VGA mask register to draws up to 8 pixels at once, completely getting rid of the inner loop. Pixel position / mask calculations and the check for opaque vs transparent background are moved out of the loops. The result is a single loop for the y coordinate containing an inlined __outbyte and memory write. A second loop in case of unaligned character writes.
svn path=/trunk/; revision=58148
Apply the following optimizations:
- include ioaccess.h to inline port access, instead of going through hal.
- Make __outpb and __outpw macros rather than stdcall function
- Make SetPixel FORCEINLINE
- Do not switch mode for every pixel we write, instead do it once before doing larger blt operations
- use __movsb instead of manual loop plus READ/WRITE_REGISTER_UCHAR
This noticeably improves performance.
svn path=/trunk/; revision=58147
Add the source login logo .svg file. To make the bitmap, export the .svg file in png, then save the png in Bitmap 24bits.
svn path=/trunk/; revision=58145
Note to people:
~=~=~=~=~=~=~=~
- The msgina (login) logo is made from a .svg file. The copyright line text has font Lucida Sans Unicode (this font allows you to have the right length to the year-dash-separator). DejaVu Sans may also work. I would prefer to use the other logo used as the header for the ReactOS Welcome program (welcome.exe from the CD), but also it is given as a .bmp and I would like to have a .svg or some equivalent format to use it (with little modifications though) as a new login logo (in particular, rescaling it).
- Adjust the boot-logo year, also with the Lucida Sans Unicode font. This was done with Paint from Win2k3 (WARNING!! Not with Windows 7 Paint !!) because it keeps the palette of the opened bitmap, contrary to Windows7 one.
- If somebody has the original boot-logo file (a .svg, ..., something else?), then signal it to me !
svn path=/trunk/; revision=58144
- Use __debugbreak in _assert when user presses ignore in the message box
- Implement __crt_MessageBoxA and use it from _assert and abort
- Rewrite abort and _set_abort_behavior
- Add function headers and set BSD license for my code
- CORE-6594 #resolve
svn path=/trunk/; revision=58143
* For anyone who wants to work only on a certain module (or a set of modules), you can add "project(module)" to the related CMake file. This will generate a solution that contains all the required dependencies needed to compile only that module, without having to open a huge solution with 900+ projects.
* We'll create a wiki page to explain how to use this in detail.
* Dedicated to all VS users. Have fun ;)
svn path=/trunk/; revision=58141
- Fix the debugging macros I've introduced in r58132; in particular do not use while(true); for forbidding the user to continue execution, but instead raise an exception with EXCEPTION_NONCONTINUABLE flag (included when called RtlRaiseStatus).
- Adjust the definition of RtlRaiseStatus (in kernel-mode it is ExRaiseStatus which is used).
svn path=/trunk/; revision=58135
- romanian translation update by Stefan Fulea; CORE-6718
- fix for japaneese cmd translation by Tomoya Kitagawa; CORE-6820
- polish translation update of desk and input;
svn path=/trunk/; revision=58134
Introduce four new debugging macros, ERROR_DBGBREAK, ERROR_FATAL, UNIMPLEMENTED_DBGBREAK, UNIMPLEMENTED_FATAL (and two helpers, __NOTICE and __ERROR_DBGBREAK).
They are designed to display on the debug-log a printf-like user-defined message and to break into the debugger.
- The *_DBGBREAK macros break only into the debugger and allow to continue (they don't hang).
- The *_FATAL macros break into the debugger and then halt the execution.
(Based on an idea of Aleksey Bragin, see the ros-dev mailing list about the while(true) --> assert(false); changes).
[NTOSKRNL]
Use these macros instead of ASSERT(FALSE); introduced in revisions r58110, r58111 and r58112 to replace while(TRUE); halts.
Part 1/3
svn path=/trunk/; revision=58132
- NetUserGetInfo: Add Support for info level 23.
- Convert UserAccountControl flags to user info flags and convert last logon, last logoff and account expires time.
svn path=/trunk/; revision=58130
- Correctly show current time zone name even if no daylight saving settings are set. Patch by Lee Schroeder.
CORE-6803 #resolve #comment Fixed, thanks. Sorry for the long wait.
svn path=/trunk/; revision=58126
- Move "Show window previews (thumbnails)" option to advanced tab, as it doesn't exist in Windows. Patch by Edijs Kolesnikovičs.
CORE-6840 #resolve
svn path=/trunk/; revision=58124
- Plug a memory leak in IDropTargetImpl
- Do not allocate 64x the required space in TaskSwitchWnd_AllocTaskItem
- Properly free and unregister the tray window
- Fix a few more style issues
svn path=/trunk/; revision=58123
Implement SamrQueryInformationUser.UserParametersInformation and set the Parameters attribute when a new user is created.
svn path=/trunk/; revision=58117
In NtGdiStretchDIBitsInternal check early for info dc / mem dc without surface, only allocate memory and copy bits if the caller actually passed bits (they are optional), free the allocation, when an exception happens instead of leaking the memory.
svn path=/trunk/; revision=58116
and in some cases, return an adequate value. In some places however, I add an ASSERT(FALSE); before keeping the while (TRUE); in critical regions.
(Only x86, as well as in r58110). More ASSERTS (in debug mode) or BSODs may appear, instead of having hung threads.
Part 1-bis/2
svn path=/trunk/; revision=58111
Implement DC_hSelectFont, use it from NtGdiSelectFont and GdiFlushUserBatch. Make sure plfnt is != NULL before dereferencing it in "TEXTOBJ_LockText"
svn path=/trunk/; revision=58109