Fix several problems with lookasides and temporary captures:
ob_x.h: Add a proper define for the size of a lookaside name buffer
oblink.c: Use move memory rather than copy in the case that we re-use the name
buffer. We probably never reused it before, because MaximumLength was never
set properly. See below.
oblife.c: Several things
ObpCaptureObjectName
- Properly set MaximumLength rather than copping out and setting it to just
string + nul. This was dangerous because later, we'll use MaximumLength
to determine whether we allocated the name from the lookaside list or the
heap.
- Since we use MaximumLength to determine where the allocation came from
make sure that MaximumLength never equals the magic value if the string
comes from the heap for whatever reason.
- Free the string using the right symmetry if we would fault copying.
ObpCaptureObjectCreateInformation
- We didn't allocate the ObjectCreateInfo, but we might've allocated the
security descriptor, so free it if needed, rather than borking some non
heap.
svn path=/trunk/; revision=34783