Allocate the ARC_DISK_SIGNATURE structures from the heap instead of putting them into the initial loader block allocation, since the number of disks changes later. Fixes memory corrruption and boot breakage when 3 hdds are connected.
[NTOSKRNL]
Remove a hack that disabled unloading drivers, which didn't work because of memory corruption from freeldr. This works now, too.
See issue #7139 for more details.
svn path=/trunk/; revision=56860
- Make sure freeldr is not compiled with SSE instructions (default for VS 11+)
- Print trap number and instruction stream on bugcheck
- Fix assembly code for ML
svn path=/trunk/; revision=56857
- Implement SampGetObjectAttributeString to retrieve the size of a string, allocate a buffer and retrieve the string from the registry.
- Use SampGetObjectAttributeString to retrieve string attributes in SamrQueryInformationXxx functions.
- Add most missing cases to SamrQueryInformationUser.
- Fix a type mismatch in ntsam.h.
svn path=/trunk/; revision=56850
- Wine doesn't prepend \registry\ to any registry path, which is wrong. Fix that.
- Bring back previous implementation of GetGeoInfo & co.
- Fix GEO_OFFICIALLANGUAGES in the headers.
- Thanks to Kamil Hornicek and Samuel Serapion for finding the problem and creating patches.
See issue #6595 for more details.
svn path=/trunk/; revision=56849
Implement service database locking via RLockServiceDatabase / RUnlockServiceDatabase etc... and use this functionality.
Patch by Hermès Bélusca.
I did not rename the database lock functions because the functions names RLockServiceDatabase and RUnlockServiceDatabase are misleading. They do not lock any database but lock the service start function. The existing functions ScmLockDatabaseExclusive, ScmLockDatabaseShared and ScmUnlockDatabase do protect (lock) the service database (service, group and image lists) form concurrent access. That is also the reason for renaming the SC_LOCK_STRUCT to START_LOCK.
See issue #7131 for more details.
svn path=/trunk/; revision=56844
- Simplify AcquireRemoveRestorePrivilege. Improve clean-up & acquire privilege before unloading hive in CreateUserProfileW. Patch by Hermes Belusca
See issue #7160 for more details.
svn path=/trunk/; revision=56843
- Improve permission acquirement for loading/unloading hives. Patch by Hermes Belusca
See issue #7159 for more details.
svn path=/trunk/; revision=56835
- Acquire the necessary privileges when loading/unloading hives. Patch by Hermes Belusca.
See issue #7159 for more details.
svn path=/trunk/; revision=56825
- Store all fixed size user attributes in the registry value "F".
- Initialize fixed size domain attributes in SampCreateUserAccount and SamrCreateUserInDomain.
- Implement most information classes of SamrQueryInformationUser.
- Disable all informationclasses of SamrSetInformationUser that store fixed size attributes.
svn path=/trunk/; revision=56820
- Implement missing cases of SamrSetInformationDomain.
- Use the fixed domain data to assign new RIDs in SamrCreateAliasInDomain and SamrCreateUserInDomain.
svn path=/trunk/; revision=56819
- Implement all cases of SamrQueryInformationDomain.
- Store all fixed size domain attributes in the registry value "F".
- Initialize all domain attribute in SampCreateDomain.
svn path=/trunk/; revision=56818
- Implement SURFACE_vSetPalette and use it everywhere to set the palette for a surface. Make SURFACE::ppal const, so noone accidentally modifies it without properly handling the references.
svn path=/trunk/; revision=56816