+
+ Aligned = TRUE;
+ Parameters.Length = sizeof(Parameters);
+ hHeap = RtlCreateHeap(HEAP_CREATE_ALIGN_16, NULL, 0, 0, NULL, &Parameters);
+ if (hHeap == NULL)
+ {
+ return;
+ }
+
+ for (i = 0; i < 0x100; ++i)
+ {
+ Buffers[i] = RtlAllocateHeap(RtlGetProcessHeap(), 0, (i % 16 ) + 1);
+ ASSERT(Buffers[i] != NULL);
+ if (!((ULONG_PTR)Buffers[i] & 0x2))
+ {
+ Aligned = FALSE;
+ }
+ }
+
+ for (i = 0; i < 0x100; ++i)
+ {
+ RtlFreeHeap(RtlGetProcessHeap(), 0, Buffers[i]);
+ }
+
+ RtlDestroyHeap(hHeap);
+
+ ok(Aligned == FALSE, "No unaligned address returned\n");