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
SamrGetAliasMembership:
- Change requrred access right from DOMIN_LOOKUP to DOMAIN_GET_ALIAS_MEMBERSHIP.
- Handle the case properly where a user is not a member of any alias.
- Retrieve an alias members RID correctly.
svn path=/trunk/; revision=58094
Fix untitled Run dialog in some languages. I wonder why it was as it since ages, in some languages but not in anothers.
svn path=/trunk/; revision=58092
- Revert lstrcpynW --> wcsncpy changes from r57471 back to lstrcpynW because this function automatically NULL-terminate strings
(but I wonder if there is a replacement of lstrcpynW which has all its functionalities, in the CRT). This fixes address loading
after editing it in the address bar. Caught by Edijus ;)
- Unicodize a little bit more regedit.
svn path=/trunk/; revision=58090
- In NtGdiGetRandomRgn use the region pointers directly, instead of getting their handles. These regions might not even have a handle.
- Fix last error code
svn path=/trunk/; revision=58089
- Use REG_OPTION_NON_VOLATILE instead of 0 in RegCreateKeyEx.
- Do not rename keys when they have the same name, case-insensitive (as Windows does), fix for r58079 / CORE-6205.
svn path=/trunk/; revision=58087
Exchange fields individually in PDEVOBJ_vSwitchPdev() instead of duplicating a full PDEV structure on the stack. This saves a lot of stack space.
svn path=/trunk/; revision=58081
- Check if the new name equals the old name. In that case don't rename key.
- Fixes regedit accidentaly deleting keys when a key is clicked and the rename field appears
CORE-6205 #resolve #comment finally regedit is usable
svn path=/trunk/; revision=58079
- Add some annotations
- Fix some 64bit issues
- Fix a typo
- reduce ENUM_RECT_LIMIT to 32, which is more than enough and doesn't waste as much stack space
- remove some unused macros
svn path=/trunk/; revision=58076
- Enable the call to NetUserAdd.
This enables us to create new user accounts. A lot of stuff is still missing, so don't be surprised if something unexpected happens. It will be fixed soon.
Happy new Year!
svn path=/trunk/; revision=58072
Pass a PUNICODE_STRING instead of a LPWSTR (and unused BufferSize) to FindMatchingCreateItem(), make use of the Length parameter instead of trusting on NULL termination when searching for path separators.
svn path=/trunk/; revision=58065
Hack the hack a bit more. Should fix annoying warnings about possible uninitialized variables. Also generates smaller code, by getting rid of a stray relative jump instruction.
svn path=/trunk/; revision=58057