Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
None
-
None
-
None
-
None
-
2
-
Windows 2015-08-26
Description
The tl; dr here is that insufficient testing was performed here with registry changes in MODULES-1921. Some brief testing was done with a variety of DWORD values that either only required one byte (i.e. were below 0xFF) or required no padding (i.e. need 4 bytes to represent).
While the general conversion to bytes was correct, both the ordering was wrong and the padding would appear on the wrong side when it was necessary to pad.
If existing tests (of randomly written values) verified the data, or additional tests were created to exercise DWORD or QWORD writes in a greater range, this error would have been caught.
Similarly, manual testing was performed on values like 0, 1 and upper bounds (which resulted in all bytes being 0xFF), which missed the obvious conversion errors.
Attachments
Issue Links
- relates to
-
MODULES-1921 Ruby 2.1.5 / Puppet 4 registry corruption when writing REG_MULTI_SZ values
-
- Resolved
-
- links to