- Edijs Kolesnikovics: Expand environment strings during processing startup items in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run.
See issue #6053 for more details.
svn path=/trunk/; revision=56865
- Don't stop enumerating functions of a PCI device if current function returned invalid vendor id. Also add a check for returned data size. This fixes detection of some storage controllers, e.g. Intel ICH8, ICH9, ICH10 chipsets.
Thanks to Alter (UniATA author) for finding the problem and providing solution.
See issue #7147 for more details.
svn path=/trunk/; revision=56863
Correct comments and code error introduced in rev 56844.
Patch by Hermes Belusca.
I used a helper variable to determine whether or not ScmDeleteNamedPipeCriticalSection must be called. Changing the order in which functions are called could cause a deadlock.
See issue #7172 for more details.
svn path=/trunk/; revision=56861
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