Wine-Devel
By thread
wine-devel@list.winehq.org
By month
Messages by month
- ----- 2026 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
May 2021
- 86 participants
- 2040 messages
Re: [PATCH 1/2] wined3d: Implement wined3d_deferred_context_update_sub_resource().
by Henri Verbeet
On Mon, 31 May 2021 at 23:45, Zebediah Figura (she/her)
<zfigura(a)codeweavers.com> wrote:
> On 5/31/21 4:53 AM, Henri Verbeet wrote:
> > My (very rough) proposal for this would be to replace the "data" field
> > in the wined3d_cs_update_sub_resource structure with a
> > wined3d_bo_address, and then introduce something like the following:
> >
> > static bool wined3d_device_context_get_upload_bo(struct
> > wined3d_device_context *context,
> > struct wined3d_resource *resource, unsigned int
> > sub_resource_idx, const struct wined3d_box *box,
> > uint32_t flags, struct wined3d_bo_address *address, void **map_ptr)
> > {
> > ...
> > }
>
> This function strikes me as more than a little confusing, party because
> it seems to be returning two partially overlapping things, with mostly
> different usages...
>
> i.e. I'd presume the idea is for
> wined3d_device_context_update_sub_resource() to retrieve this and then
> call something like wined3d_context_copy_bo_address() to copy from
> sysmem, which makes sense, but then what are we doing with map_ptr?
>
Well, wined3d_context_copy_bo_address() needs a wined3d_context, which
you typically don't have on application threads.
The basic idea is that you'd pass "address" to
WINED3D_CS_OP_UPDATE_SUB_RESOURCE, and "map_ptr " to the application.
(In case of map/unmap; for update_sub_resource() you'd just copy the
data into "map_ptr".)
> Or, if we use this in wined3d_device_context_map(), couldn't we just
> call wined3d_context_map_bo_address() on the returned wined3d_bo_address?
>
Conceptually, sure, you could split this into allocate/map/unmap. In
practice though, you'll always want the upload buffer to be mapped, in
order to copy data into it from system memory. And in fact, if we're
going to return a GPU buffer here, it should generally already be
mapped. (For various reasons; for 64-bit applications, we use
persistent maps if we can; for OpenGL, we want to avoid making GL
calls from application threads; if we have a dedicated upload buffer
belonging to the device context, it would have been mapped during
creation.) When needed, unmap can happen when the upload buffer is
consumed.
> > For deferred contexts you should then be able to do something
> > (conceptually) very similar to patch 2/2, and in the end we may not
> > even need map/unmap/update_sub_resource in the
> > wined3d_device_context_ops structure.
> >
> We'd still presumably need an unmap, though, unless the idea above is to
> *always* allocate new (GPU or CPU) memory, which seems like a much
> bigger step.
>
Not necessarily, but wined3d_cs_exec_update_sub_resource() can unmap if needed.
> Unless I'm misreading things, this also seems to imply that
> *_resource_sub_resource_map() shouldn't exist anymore, right?
>
Non-discard maps still exist, and
wined3d_device_context_get_upload_bo() wouldn't be used for those.
May 31, 2021
Re: [PATCH vkd3d 2/4] tests: Add resource array tests for SM5.1.
by Zebediah Figura (she/her)
On 5/26/21 3:04 AM, Conor McCarthy wrote:
> From: Hans-Kristian Arntzen <post(a)arntzen-software.no>
>
> Modified to keep within current vkd3d descriptor set pool limits.
>
> Signed-off-by: Conor McCarthy <cmccarthy(a)codeweavers.com>
> ---
> tests/d3d12.c | 1424 +++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 1424 insertions(+)
>
So, it goes without saying, but this is a lot of code to send at once,
and a lot for one patch, and it would be relatively easy to break this
up by test function.
Nevertheless, I'll try to give a complete review...
> diff --git a/tests/d3d12.c b/tests/d3d12.c
> index f289a10d..7252e65e 100644
> --- a/tests/d3d12.c
> +++ b/tests/d3d12.c
> @@ -651,6 +651,27 @@ static bool is_memory_pool_L1_supported(ID3D12Device *device)
> return !architecture.UMA;
> }
>
> +#define context_supports_sm51(context) context_supports_sm51_(__LINE__, context)
> +static bool context_supports_sm51_(unsigned int line, struct test_context *context)
> +{
> + D3D12_FEATURE_DATA_SHADER_MODEL model;
> + HRESULT hr;
> + model.HighestShaderModel = D3D_SHADER_MODEL_5_1;
> + hr = ID3D12Device_CheckFeatureSupport(context->device, D3D12_FEATURE_SHADER_MODEL, &model, sizeof(model));
> + ok_(line)(hr == S_OK, "Failed to query shader model support, hr %#x.\n", hr);
> +
> + if (hr != S_OK)
> + return false;
> +
> + if (model.HighestShaderModel < D3D_SHADER_MODEL_5_1)
> + {
> + skip_(line)("Device does not support shader model 5.1, skipping resource array tests.\n");
> + return false;
> + }
> + else
> + return true;
> +}
> +
This should probably resemble the other is_*_supported() helpers.
> #define create_cb_root_signature(a, b, c, e) create_cb_root_signature_(__LINE__, a, b, c, e)
> static ID3D12RootSignature *create_cb_root_signature_(unsigned int line,
> ID3D12Device *device, unsigned int reg_idx, D3D12_SHADER_VISIBILITY shader_visibility,
> @@ -33817,6 +33838,1402 @@ static void test_hull_shader_patch_constant_inputs(void)
> destroy_test_context(&context);
> }
>
> +static void test_unbounded_srv(void)
> +{
> + D3D12_ROOT_SIGNATURE_DESC root_signature_desc;
> + D3D12_ROOT_PARAMETER root_parameters[3];
> + D3D12_DESCRIPTOR_RANGE descriptor_ranges[4];
> + ID3D12DescriptorHeap* heap;
> +
> + ID3D12Resource *input_buffers[128];
> + ID3D12Resource *input_textures[128];
> + ID3D12Resource *output_buffer;
> + struct resource_readback rb;
> +
> + ID3D12GraphicsCommandList* command_list;
> + D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle;
> + D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle;
> + unsigned int i, descriptor_size;
> + struct test_context context;
> + ID3D12CommandQueue* queue;
> + HRESULT hr;
> +
> +#if 0
> + // Space 1 and 2 have an offset of 0 descriptors, so pattern of descriptors is
> + // [ buf, tex, buf, tex ]
> + StructuredBuffer<uint> Buffers[] : register(t4, space1);
> + Texture2D<uint> Textures[] : register(t4, space2);
> +
> + // Space 3 and 4 have an effective offset of 2 descriptor,
> + // so pattern of descriptors is still
> + // [ buf, tex, buf, tex ]
> + StructuredBuffer<uint> AliasBuffers[64] : register(t4, space3);
> + Texture2D<uint> AliasTextures[64] : register(t4, space4);
> +
> + StructuredBuffer<uint> StandaloneBuffer : register(t100, space3);
> + Texture2D<uint> StandaloneTexture : register(t199, space3);
> +
> + RWByteAddressBuffer OBuffer : register(u0);
> +
> + [numthreads(64, 1, 1)]
> + void main(uint idx : SV_DispatchThreadID)
> + {
> + uint result = 0;
> +
> + if (idx & 1)
> + result += Textures[NonUniformResourceIndex(idx)].Load(int3(0, 0, 0));
> + else
> + result += Buffers[NonUniformResourceIndex(idx)].Load(0);
> +
> + if (idx & 1)
> + result += AliasTextures[NonUniformResourceIndex(idx)].Load(int3(0, 0, 0)) << 8;
> + else
> + result += AliasBuffers[NonUniformResourceIndex(idx)].Load(0) << 8;
I'm kind of curious what the point of the alternation is here; not that
there's anything wrong with it, but it seems a bit orthogonal to the test.
At least I presume the two conditionals can be merged into one?
> +
> + result *= StandaloneBuffer.Load(0);
> + result *= StandaloneTexture.Load(int3(0, 0, 0));
> + OBuffer.Store(4 * idx, result);
> + }
> +#endif
> + static const DWORD cs_code[] =
> + {
> + 0x43425844, 0x2b452826, 0x244a6b65, 0xdf8a8f8b, 0xf8326669, 0x00000001, 0x000003c4, 0x00000003,
> + 0x0000002c, 0x0000003c, 0x0000004c, 0x4e475349, 0x00000008, 0x00000000, 0x00000008, 0x4e47534f,
> + 0x00000008, 0x00000000, 0x00000008, 0x58454853, 0x00000370, 0x00050051, 0x000000dc, 0x0100086a,
> + 0x070000a2, 0x00307e46, 0x00000000, 0x00000004, 0xffffffff, 0x00000004, 0x00000001, 0x07001858,
> + 0x00307e46, 0x00000001, 0x00000004, 0xffffffff, 0x00004444, 0x00000002, 0x070000a2, 0x00307e46,
> + 0x00000002, 0x00000004, 0x00000043, 0x00000004, 0x00000003, 0x070000a2, 0x00307e46, 0x00000003,
> + 0x00000064, 0x00000064, 0x00000004, 0x00000003, 0x07001858, 0x00307e46, 0x00000004, 0x000000c7,
> + 0x000000c7, 0x00004444, 0x00000003, 0x07001858, 0x00307e46, 0x00000005, 0x00000004, 0x00000043,
> + 0x00004444, 0x00000004, 0x0600009d, 0x0031ee46, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
> + 0x0200005f, 0x00020012, 0x02000068, 0x00000001, 0x0400009b, 0x00000040, 0x00000001, 0x00000001,
> + 0x06000001, 0x00100012, 0x00000000, 0x0002000a, 0x00004001, 0x00000001, 0x0304001f, 0x0010000a,
> + 0x00000000, 0x04000036, 0x00100012, 0x00000000, 0x0002000a, 0x0e00002d, 0x00100012, 0x00000000,
> + 0x00004002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x86207e46, 0x00020001, 0x00000001,
> + 0x00000004, 0x0010000a, 0x00000000, 0x04000036, 0x00100042, 0x00000000, 0x0002000a, 0x0e00002d,
> + 0x00100042, 0x00000000, 0x00004002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x86207c96,
> + 0x00020001, 0x00000005, 0x00000004, 0x0010002a, 0x00000000, 0x07000029, 0x00100042, 0x00000000,
> + 0x0010002a, 0x00000000, 0x00004001, 0x00000008, 0x0700001e, 0x00100012, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010000a, 0x00000000, 0x01000012, 0x04000036, 0x00100022, 0x00000000, 0x0002000a,
> + 0x0d0000a7, 0x00100022, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x86207006,
> + 0x00020001, 0x00000000, 0x00000004, 0x0010001a, 0x00000000, 0x04000036, 0x00100042, 0x00000000,
> + 0x0002000a, 0x0d0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x86207006, 0x00020001, 0x00000002, 0x00000004, 0x0010002a, 0x00000000, 0x07000029, 0x00100042,
> + 0x00000000, 0x0010002a, 0x00000000, 0x00004001, 0x00000008, 0x0700001e, 0x00100012, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x01000015, 0x0a0000a7, 0x00100022, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x00207006, 0x00000003, 0x00000064, 0x08000026,
> + 0x0000d000, 0x00100012, 0x00000000, 0x0010001a, 0x00000000, 0x0010000a, 0x00000000, 0x0b00002d,
> + 0x00100022, 0x00000000, 0x00004002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00207e16,
> + 0x00000004, 0x000000c7, 0x08000026, 0x0000d000, 0x00100012, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0010000a, 0x00000000, 0x06000029, 0x00100022, 0x00000000, 0x0002000a, 0x00004001, 0x00000002,
> + 0x080000a6, 0x0021e012, 0x00000000, 0x00000000, 0x0010001a, 0x00000000, 0x0010000a, 0x00000000,
> + 0x0100003e,
> + };
> +
> + if (!init_compute_test_context(&context) || !context_supports_sm51(&context))
> + return;
> +
> + command_list = context.list;
> + queue = context.queue;
> +
> + root_signature_desc.NumParameters = 3;
> + root_signature_desc.Flags = 0;
> + root_signature_desc.NumStaticSamplers = 0;
> + root_signature_desc.pStaticSamplers = NULL;
> + root_signature_desc.pParameters = root_parameters;
> +
> + root_parameters[0].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE;
> + root_parameters[0].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[0].DescriptorTable.NumDescriptorRanges = 2;
> + root_parameters[0].DescriptorTable.pDescriptorRanges = &descriptor_ranges[0];
> +
> + root_parameters[1].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE;
> + root_parameters[1].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[1].DescriptorTable.NumDescriptorRanges = 2;
> + root_parameters[1].DescriptorTable.pDescriptorRanges = &descriptor_ranges[2];
> +
> + root_parameters[2].ParameterType = D3D12_ROOT_PARAMETER_TYPE_UAV;
> + root_parameters[2].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[2].Descriptor.RegisterSpace = 0;
> + root_parameters[2].Descriptor.ShaderRegister = 0;
> +
> + /* Need two idential ranges so we can alias two different resource dimensions over same table. */
> + for (i = 0; i < 4; ++i)
> + {
> + descriptor_ranges[i].RegisterSpace = i + 1;
> + descriptor_ranges[i].BaseShaderRegister = 4;
> + descriptor_ranges[i].OffsetInDescriptorsFromTableStart = i >= 2 ? 1 : 0;
> + descriptor_ranges[i].NumDescriptors = UINT_MAX;
> + descriptor_ranges[i].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_SRV;
> + }
> +
> + hr = create_root_signature(context.device, &root_signature_desc, &context.root_signature);
> + ok(SUCCEEDED(hr), "Failed to create root signature, hr %#x.\n", hr);
> +
> + for (i = 0; i < ARRAY_SIZE(input_buffers); ++i)
> + {
> + const UINT buffer_data[] = { i * 2, i * 2, i * 2, i * 2 };
> + input_buffers[i] = create_default_buffer(context.device, sizeof(buffer_data), D3D12_RESOURCE_FLAG_NONE, D3D12_RESOURCE_STATE_COPY_DEST);
> + upload_buffer_data(input_buffers[i], 0, sizeof(buffer_data), buffer_data, queue, command_list);
> + reset_command_list(command_list, context.allocator);
> + transition_resource_state(command_list, input_buffers[i], D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE);
> + }
> +
> + for (i = 0; i < ARRAY_SIZE(input_textures); ++i)
> + {
> + const UINT tex_data = i * 2 + 1;
> + D3D12_SUBRESOURCE_DATA sub;
> + sub.pData = &tex_data;
> + sub.RowPitch = 1;
> + sub.SlicePitch = 1;
> + input_textures[i] = create_default_texture2d(context.device, 1, 1, 1, 1, DXGI_FORMAT_R32_UINT, D3D12_RESOURCE_FLAG_NONE, D3D12_RESOURCE_STATE_COPY_DEST);
> + upload_texture_data(input_textures[i], &sub, 1, queue, command_list);
> + reset_command_list(command_list, context.allocator);
> + transition_resource_state(command_list, input_textures[i], D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE);
> + }
> + output_buffer = create_default_buffer(context.device, 4 * 64, D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS, D3D12_RESOURCE_STATE_UNORDERED_ACCESS);
> +
> + context.pipeline_state = create_compute_pipeline_state(context.device,
> + context.root_signature,
> + shader_bytecode((const void*)cs_code, sizeof(cs_code)));
> +
> + heap = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, 512 + 256);
> + cpu_handle = ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(heap);
> + gpu_handle = ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(heap);
> + descriptor_size = ID3D12Device_GetDescriptorHandleIncrementSize(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV);
> + for (i = 0; i < ARRAY_SIZE(input_buffers) * 2; ++i)
> + {
> + D3D12_SHADER_RESOURCE_VIEW_DESC view;
> + D3D12_CPU_DESCRIPTOR_HANDLE h = cpu_handle;
> + view.Shader4ComponentMapping = D3D12_DEFAULT_SHADER_4_COMPONENT_MAPPING;
> + h.ptr += (512 + i) * descriptor_size;
> +
> + /* Every other resource is a buffer and texture SRV which are aliased over the same descriptor table range. */
> + if (i & 1)
> + {
> + view.Format = DXGI_FORMAT_R32_UINT;
> + view.ViewDimension = D3D12_SRV_DIMENSION_TEXTURE2D;
> + view.Texture2D.MipLevels = 1;
> + view.Texture2D.MostDetailedMip = 0;
> + view.Texture2D.PlaneSlice = 0;
> + view.Texture2D.ResourceMinLODClamp = 0;
> + ID3D12Device_CreateShaderResourceView(context.device, input_textures[i >> 1], &view, h);
> + }
> + else
> + {
> + view.Format = DXGI_FORMAT_UNKNOWN;
> + view.ViewDimension = D3D12_SRV_DIMENSION_BUFFER;
> + view.Buffer.FirstElement = 0;
> + view.Buffer.NumElements = 4;
> + view.Buffer.StructureByteStride = 4;
> + view.Buffer.Flags = 0;
> + ID3D12Device_CreateShaderResourceView(context.device, input_buffers[i >> 1], &view, h);
> + }
> + }
It seems to me this would be simpler as two consecutive loops.
> +
> + ID3D12GraphicsCommandList_SetComputeRootSignature(command_list, context.root_signature);
> + ID3D12GraphicsCommandList_SetPipelineState(command_list, context.pipeline_state);
> + ID3D12GraphicsCommandList_SetDescriptorHeaps(command_list, 1, &heap);
> + {
> + D3D12_GPU_DESCRIPTOR_HANDLE gpu = gpu_handle;
> + gpu.ptr += 512 * descriptor_size;
> + ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(command_list, 0, gpu);
> + gpu.ptr += descriptor_size;
> + ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(command_list, 1, gpu);
> + }
We have a get_gpu_descriptor_handle() helper for this.
> + ID3D12GraphicsCommandList_SetComputeRootUnorderedAccessView(command_list, 2, ID3D12Resource_GetGPUVirtualAddress(output_buffer));
> + ID3D12GraphicsCommandList_Dispatch(command_list, 1, 1, 1);
> +
> + transition_resource_state(command_list, output_buffer, D3D12_RESOURCE_STATE_UNORDERED_ACCESS, D3D12_RESOURCE_STATE_COPY_SOURCE);
> + get_buffer_readback_with_command_list(output_buffer, DXGI_FORMAT_UNKNOWN, &rb, queue, command_list);
> +
> + for (i = 0; i < 64; ++i)
> + {
> + UINT value = get_readback_uint(&rb, i, 0, 0);
> + UINT reference = (i + (i + 2) * 256) * 98 * 197;
> + ok(value == reference, "Readback value is: %u\n", value);
Could you please print the index of the failing test here?
> + }
> +
> + release_resource_readback(&rb);
> + reset_command_list(command_list, context.allocator);
> +
> + for (i = 0; i < ARRAY_SIZE(input_buffers); ++i)
> + {
> + ID3D12Resource_Release(input_buffers[i]);
> + ID3D12Resource_Release(input_textures[i]);
> + }
> + ID3D12Resource_Release(output_buffer);
> + ID3D12DescriptorHeap_Release(heap);
> + destroy_test_context(&context);
> +}
> +
> +static void test_unbounded_samplers(void)
> +{
> + D3D12_ROOT_SIGNATURE_DESC root_signature_desc;
> + D3D12_ROOT_PARAMETER root_parameters[3];
> + D3D12_DESCRIPTOR_RANGE descriptor_ranges[2];
> + ID3D12DescriptorHeap *heaps[2];
> +
> + ID3D12Resource* input_texture;
> + ID3D12Resource* output_buffer;
> + struct resource_readback rb;
> +
> + ID3D12GraphicsCommandList* command_list;
> + D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle;
> + unsigned int i, descriptor_size;
> + struct test_context context;
> + ID3D12CommandQueue* queue;
> + HRESULT hr;
> +
> +#if 0
> + Texture2D<float> Tex : register(t0);
> + SamplerState Samp[] : register(s0);
> + RWByteAddressBuffer OBuffer : register(u0);
> +
> + [numthreads(64, 1, 1)]
> + void main(uint idx : SV_DispatchThreadID)
> + {
> + // Should alternate between wrap (sample 0), or clamp (sample 100).
> + uint value = Tex.SampleLevel(Samp[NonUniformResourceIndex(idx)], 1.1.xx, 0.0);
"1.1.xx" made me scratch my head for a minute. Granted, that may be
because I haven't done much GPU programming.
> + OBuffer.Store(4 * idx, value);
> + }
> +#endif
> + static const DWORD cs_code[] =
> + {
> + 0x43425844, 0x44f291da, 0x1146ced9, 0x71030deb, 0x28d62ae2, 0x00000001, 0x00000174, 0x00000003,
> + 0x0000002c, 0x0000003c, 0x0000004c, 0x4e475349, 0x00000008, 0x00000000, 0x00000008, 0x4e47534f,
> + 0x00000008, 0x00000000, 0x00000008, 0x58454853, 0x00000120, 0x00050051, 0x00000048, 0x0100086a,
> + 0x0600005a, 0x00306e46, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x07001858, 0x00307e46,
> + 0x00000000, 0x00000000, 0x00000000, 0x00005555, 0x00000000, 0x0600009d, 0x0031ee46, 0x00000000,
> + 0x00000000, 0x00000000, 0x00000000, 0x0200005f, 0x00020012, 0x02000068, 0x00000001, 0x0400009b,
> + 0x00000040, 0x00000001, 0x00000001, 0x04000036, 0x00100012, 0x00000000, 0x0002000a, 0x12000048,
> + 0x00100012, 0x00000000, 0x00004002, 0x3f8ccccd, 0x3f8ccccd, 0x00000000, 0x00000000, 0x00207e46,
> + 0x00000000, 0x00000000, 0x84206000, 0x00020001, 0x00000000, 0x0010000a, 0x00000000, 0x00004001,
> + 0x00000000, 0x0500001c, 0x00100012, 0x00000000, 0x0010000a, 0x00000000, 0x06000029, 0x00100022,
> + 0x00000000, 0x0002000a, 0x00004001, 0x00000002, 0x080000a6, 0x0021e012, 0x00000000, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0010000a, 0x00000000, 0x0100003e,
> + };
> +
> + if (!init_compute_test_context(&context) || !context_supports_sm51(&context))
> + return;
> +
> + command_list = context.list;
> + queue = context.queue;
> +
> + root_signature_desc.NumParameters = 3;
> + root_signature_desc.Flags = 0;
> + root_signature_desc.NumStaticSamplers = 0;
> + root_signature_desc.pStaticSamplers = NULL;
> + root_signature_desc.pParameters = root_parameters;
> +
> + root_parameters[0].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE;
> + root_parameters[0].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[0].DescriptorTable.NumDescriptorRanges = 1;
> + root_parameters[0].DescriptorTable.pDescriptorRanges = &descriptor_ranges[0];
> +
> + root_parameters[1].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE;
> + root_parameters[1].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[1].DescriptorTable.NumDescriptorRanges = 1;
> + root_parameters[1].DescriptorTable.pDescriptorRanges = &descriptor_ranges[1];
> +
> + root_parameters[2].ParameterType = D3D12_ROOT_PARAMETER_TYPE_UAV;
> + root_parameters[2].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[2].Descriptor.RegisterSpace = 0;
> + root_parameters[2].Descriptor.ShaderRegister = 0;
> +
> + descriptor_ranges[0].RegisterSpace = 0;
> + descriptor_ranges[0].BaseShaderRegister = 0;
> + descriptor_ranges[0].OffsetInDescriptorsFromTableStart = 0;
> + descriptor_ranges[0].NumDescriptors = 1;
> + descriptor_ranges[0].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_SRV;
> +
> + descriptor_ranges[1].RegisterSpace = 0;
> + descriptor_ranges[1].BaseShaderRegister = 0;
> + descriptor_ranges[1].OffsetInDescriptorsFromTableStart = 0;
> + descriptor_ranges[1].NumDescriptors = UINT_MAX;
> + descriptor_ranges[1].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_SAMPLER;
> +
> + hr = create_root_signature(context.device, &root_signature_desc, &context.root_signature);
> + ok(SUCCEEDED(hr), "Failed to create root signature, hr %#x.\n", hr);
> +
> + {
> + const float tex_data[] = { 10, 100, 100, 100 };
> + D3D12_SUBRESOURCE_DATA sub;
> + sub.pData = tex_data;
> + sub.RowPitch = 8;
> + sub.SlicePitch = 8;
> + input_texture = create_default_texture2d(context.device, 2, 2, 1, 1, DXGI_FORMAT_R32_FLOAT, D3D12_RESOURCE_FLAG_NONE, D3D12_RESOURCE_STATE_COPY_DEST);
create_default_texture() is a slightly shorter version of this.
> + upload_texture_data(input_texture, &sub, 1, queue, command_list);
> + reset_command_list(command_list, context.allocator);
> + transition_resource_state(command_list, input_texture, D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE);
> + }
> +
> + output_buffer = create_default_buffer(context.device, 4 * 64, D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS, D3D12_RESOURCE_STATE_UNORDERED_ACCESS);
> +
> + context.pipeline_state = create_compute_pipeline_state(context.device,
> + context.root_signature,
> + shader_bytecode((const void*)cs_code, sizeof(cs_code)));
> +
> + heaps[0] = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, 1);
> + heaps[1] = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER, 1024);
> +
> + {
> + D3D12_SHADER_RESOURCE_VIEW_DESC view;
> + view.Shader4ComponentMapping = D3D12_DEFAULT_SHADER_4_COMPONENT_MAPPING;
> + view.Format = DXGI_FORMAT_R32_FLOAT;
> + view.ViewDimension = D3D12_SRV_DIMENSION_TEXTURE2D;
> + view.Texture2D.MipLevels = 1;
> + view.Texture2D.MostDetailedMip = 0;
> + view.Texture2D.PlaneSlice = 0;
> + view.Texture2D.ResourceMinLODClamp = 0;
> + ID3D12Device_CreateShaderResourceView(context.device, input_texture, &view,
> + ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(heaps[0]));
> + }
> +
> + for (i = 0; i < 1024; ++i)
> + {
> + D3D12_SAMPLER_DESC samp;
> + memset(&samp, 0, sizeof(samp));
> + samp.Filter = D3D12_FILTER_MIN_MAG_MIP_POINT;
> + samp.AddressU = samp.AddressV = samp.AddressW = (i & 1) ? D3D12_TEXTURE_ADDRESS_MODE_CLAMP : D3D12_TEXTURE_ADDRESS_MODE_WRAP;
> + cpu_handle = ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(heaps[1]);
> + descriptor_size = ID3D12Device_GetDescriptorHandleIncrementSize(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER);
> + cpu_handle.ptr += descriptor_size * i;
> + ID3D12Device_CreateSampler(context.device, &samp, cpu_handle);
> + }
> +
> + ID3D12GraphicsCommandList_SetComputeRootSignature(command_list, context.root_signature);
> + ID3D12GraphicsCommandList_SetPipelineState(command_list, context.pipeline_state);
> + ID3D12GraphicsCommandList_SetDescriptorHeaps(command_list, 2, heaps);
> + ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(command_list, 0, ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(heaps[0]));
> + ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(command_list, 1, ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(heaps[1]));
> + ID3D12GraphicsCommandList_SetComputeRootUnorderedAccessView(command_list, 2, ID3D12Resource_GetGPUVirtualAddress(output_buffer));
> + ID3D12GraphicsCommandList_Dispatch(command_list, 1, 1, 1);
> +
> + transition_resource_state(command_list, output_buffer, D3D12_RESOURCE_STATE_UNORDERED_ACCESS, D3D12_RESOURCE_STATE_COPY_SOURCE);
> + get_buffer_readback_with_command_list(output_buffer, DXGI_FORMAT_UNKNOWN, &rb, queue, command_list);
> +
> + for (i = 0; i < 64; ++i)
> + {
> + UINT value = get_readback_uint(&rb, i, 0, 0);
> + UINT reference = (i & 1) ? 100 : 10;
> + ok(value == reference, "Readback value for index %u is: %u\n", i, value);
> + }
> +
> + release_resource_readback(&rb);
> + reset_command_list(command_list, context.allocator);
> +
> + ID3D12Resource_Release(input_texture);
> + ID3D12Resource_Release(output_buffer);
> + ID3D12DescriptorHeap_Release(heaps[0]);
> + ID3D12DescriptorHeap_Release(heaps[1]);
> + destroy_test_context(&context);
> +}
> +
> +#define BUFFER_COUNT (61 + 8)
This could just be replaced with ARRAY_SIZE(input_buffers) everywhere
it's used. On the other hand, the "63" everywhere is not great either;
it'd be nice to replace that with ARRAY_SIZE where possible. It also
took me a bit of a minute to realize that this test was overlapping
every buffer range, not necessarily a bad idea, but could use a comment
I guess.
Also, what is the point of this "bindless" test?
> +
> +static void test_bindless_full_root_parameters(void)
> +{
> + D3D12_ROOT_SIGNATURE_DESC root_signature_desc;
> + D3D12_ROOT_PARAMETER root_parameters[63];
> + D3D12_DESCRIPTOR_RANGE descriptor_ranges[63];
> + ID3D12DescriptorHeap* heap;
> +
> + ID3D12Resource* input_buffers[BUFFER_COUNT];
> + ID3D12Resource* output_buffer;
> + struct resource_readback rb;
> +
> + ID3D12GraphicsCommandList* command_list;
> + D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle;
> + D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle;
> + unsigned int i, descriptor_size;
> + struct test_context context;
> + ID3D12CommandQueue* queue;
> + HRESULT hr;
> +
> +#if 0
> + #define R(x) StructuredBuffer<uint> Buffers##x[] : register(t0, space##x)
> + R(0); R(1); R(2); R(3); R(4); R(5); R(6); R(7); R(8); R(9);
> + R(10); R(11); R(12); R(13); R(14); R(15); R(16); R(17); R(18); R(19);
> + R(20); R(21); R(22); R(23); R(24); R(25); R(26); R(27); R(28); R(29);
> + R(30); R(31); R(32); R(33); R(34); R(35); R(36); R(37); R(38); R(39);
> + R(40); R(41); R(42); R(43); R(44); R(45); R(46); R(47); R(48); R(49);
> + R(50); R(51); R(52); R(53); R(54); R(55); R(56); R(57); R(58); R(59);
> + R(60); R(61);
> + #undef R
> +
> + RWByteAddressBuffer OBuffer : register(u0, space62);
> +
> + [numthreads(8, 1, 1)]
> + void main(uint idx : SV_DispatchThreadID)
> + {
> + uint result = 0;
> + #define R(x) result += Buffers##x[NonUniformResourceIndex(idx)].Load(0)
> + R(0); R(1); R(2); R(3); R(4); R(5); R(6); R(7); R(8); R(9);
> + R(10); R(11); R(12); R(13); R(14); R(15); R(16); R(17); R(18); R(19);
> + R(20); R(21); R(22); R(23); R(24); R(25); R(26); R(27); R(28); R(29);
> + R(30); R(31); R(32); R(33); R(34); R(35); R(36); R(37); R(38); R(39);
> + R(40); R(41); R(42); R(43); R(44); R(45); R(46); R(47); R(48); R(49);
> + R(50); R(51); R(52); R(53); R(54); R(55); R(56); R(57); R(58); R(59);
> + R(60); R(61);
> + #undef R
> + OBuffer.Store(4 * idx, result);
> + }
> +#endif
> + static const DWORD cs_code[] =
> + {
> + 0x43425844, 0x14c36cde, 0x43afd9ea, 0x4f0f1a58, 0x160d65a7, 0x00000001, 0x000019f8, 0x00000003,
> + 0x0000002c, 0x0000003c, 0x0000004c, 0x4e475349, 0x00000008, 0x00000000, 0x00000008, 0x4e47534f,
> + 0x00000008, 0x00000000, 0x00000008, 0x58454853, 0x000019a4, 0x00050051, 0x00000669, 0x0100086a,
> + 0x070000a2, 0x00307e46, 0x00000000, 0x00000000, 0xffffffff, 0x00000004, 0x00000000, 0x070000a2,
> + 0x00307e46, 0x00000001, 0x00000000, 0xffffffff, 0x00000004, 0x00000001, 0x070000a2, 0x00307e46,
> + 0x00000002, 0x00000000, 0xffffffff, 0x00000004, 0x00000002, 0x070000a2, 0x00307e46, 0x00000003,
> + 0x00000000, 0xffffffff, 0x00000004, 0x00000003, 0x070000a2, 0x00307e46, 0x00000004, 0x00000000,
> + 0xffffffff, 0x00000004, 0x00000004, 0x070000a2, 0x00307e46, 0x00000005, 0x00000000, 0xffffffff,
> + 0x00000004, 0x00000005, 0x070000a2, 0x00307e46, 0x00000006, 0x00000000, 0xffffffff, 0x00000004,
> + 0x00000006, 0x070000a2, 0x00307e46, 0x00000007, 0x00000000, 0xffffffff, 0x00000004, 0x00000007,
> + 0x070000a2, 0x00307e46, 0x00000008, 0x00000000, 0xffffffff, 0x00000004, 0x00000008, 0x070000a2,
> + 0x00307e46, 0x00000009, 0x00000000, 0xffffffff, 0x00000004, 0x00000009, 0x070000a2, 0x00307e46,
> + 0x0000000a, 0x00000000, 0xffffffff, 0x00000004, 0x0000000a, 0x070000a2, 0x00307e46, 0x0000000b,
> + 0x00000000, 0xffffffff, 0x00000004, 0x0000000b, 0x070000a2, 0x00307e46, 0x0000000c, 0x00000000,
> + 0xffffffff, 0x00000004, 0x0000000c, 0x070000a2, 0x00307e46, 0x0000000d, 0x00000000, 0xffffffff,
> + 0x00000004, 0x0000000d, 0x070000a2, 0x00307e46, 0x0000000e, 0x00000000, 0xffffffff, 0x00000004,
> + 0x0000000e, 0x070000a2, 0x00307e46, 0x0000000f, 0x00000000, 0xffffffff, 0x00000004, 0x0000000f,
> + 0x070000a2, 0x00307e46, 0x00000010, 0x00000000, 0xffffffff, 0x00000004, 0x00000010, 0x070000a2,
> + 0x00307e46, 0x00000011, 0x00000000, 0xffffffff, 0x00000004, 0x00000011, 0x070000a2, 0x00307e46,
> + 0x00000012, 0x00000000, 0xffffffff, 0x00000004, 0x00000012, 0x070000a2, 0x00307e46, 0x00000013,
> + 0x00000000, 0xffffffff, 0x00000004, 0x00000013, 0x070000a2, 0x00307e46, 0x00000014, 0x00000000,
> + 0xffffffff, 0x00000004, 0x00000014, 0x070000a2, 0x00307e46, 0x00000015, 0x00000000, 0xffffffff,
> + 0x00000004, 0x00000015, 0x070000a2, 0x00307e46, 0x00000016, 0x00000000, 0xffffffff, 0x00000004,
> + 0x00000016, 0x070000a2, 0x00307e46, 0x00000017, 0x00000000, 0xffffffff, 0x00000004, 0x00000017,
> + 0x070000a2, 0x00307e46, 0x00000018, 0x00000000, 0xffffffff, 0x00000004, 0x00000018, 0x070000a2,
> + 0x00307e46, 0x00000019, 0x00000000, 0xffffffff, 0x00000004, 0x00000019, 0x070000a2, 0x00307e46,
> + 0x0000001a, 0x00000000, 0xffffffff, 0x00000004, 0x0000001a, 0x070000a2, 0x00307e46, 0x0000001b,
> + 0x00000000, 0xffffffff, 0x00000004, 0x0000001b, 0x070000a2, 0x00307e46, 0x0000001c, 0x00000000,
> + 0xffffffff, 0x00000004, 0x0000001c, 0x070000a2, 0x00307e46, 0x0000001d, 0x00000000, 0xffffffff,
> + 0x00000004, 0x0000001d, 0x070000a2, 0x00307e46, 0x0000001e, 0x00000000, 0xffffffff, 0x00000004,
> + 0x0000001e, 0x070000a2, 0x00307e46, 0x0000001f, 0x00000000, 0xffffffff, 0x00000004, 0x0000001f,
> + 0x070000a2, 0x00307e46, 0x00000020, 0x00000000, 0xffffffff, 0x00000004, 0x00000020, 0x070000a2,
> + 0x00307e46, 0x00000021, 0x00000000, 0xffffffff, 0x00000004, 0x00000021, 0x070000a2, 0x00307e46,
> + 0x00000022, 0x00000000, 0xffffffff, 0x00000004, 0x00000022, 0x070000a2, 0x00307e46, 0x00000023,
> + 0x00000000, 0xffffffff, 0x00000004, 0x00000023, 0x070000a2, 0x00307e46, 0x00000024, 0x00000000,
> + 0xffffffff, 0x00000004, 0x00000024, 0x070000a2, 0x00307e46, 0x00000025, 0x00000000, 0xffffffff,
> + 0x00000004, 0x00000025, 0x070000a2, 0x00307e46, 0x00000026, 0x00000000, 0xffffffff, 0x00000004,
> + 0x00000026, 0x070000a2, 0x00307e46, 0x00000027, 0x00000000, 0xffffffff, 0x00000004, 0x00000027,
> + 0x070000a2, 0x00307e46, 0x00000028, 0x00000000, 0xffffffff, 0x00000004, 0x00000028, 0x070000a2,
> + 0x00307e46, 0x00000029, 0x00000000, 0xffffffff, 0x00000004, 0x00000029, 0x070000a2, 0x00307e46,
> + 0x0000002a, 0x00000000, 0xffffffff, 0x00000004, 0x0000002a, 0x070000a2, 0x00307e46, 0x0000002b,
> + 0x00000000, 0xffffffff, 0x00000004, 0x0000002b, 0x070000a2, 0x00307e46, 0x0000002c, 0x00000000,
> + 0xffffffff, 0x00000004, 0x0000002c, 0x070000a2, 0x00307e46, 0x0000002d, 0x00000000, 0xffffffff,
> + 0x00000004, 0x0000002d, 0x070000a2, 0x00307e46, 0x0000002e, 0x00000000, 0xffffffff, 0x00000004,
> + 0x0000002e, 0x070000a2, 0x00307e46, 0x0000002f, 0x00000000, 0xffffffff, 0x00000004, 0x0000002f,
> + 0x070000a2, 0x00307e46, 0x00000030, 0x00000000, 0xffffffff, 0x00000004, 0x00000030, 0x070000a2,
> + 0x00307e46, 0x00000031, 0x00000000, 0xffffffff, 0x00000004, 0x00000031, 0x070000a2, 0x00307e46,
> + 0x00000032, 0x00000000, 0xffffffff, 0x00000004, 0x00000032, 0x070000a2, 0x00307e46, 0x00000033,
> + 0x00000000, 0xffffffff, 0x00000004, 0x00000033, 0x070000a2, 0x00307e46, 0x00000034, 0x00000000,
> + 0xffffffff, 0x00000004, 0x00000034, 0x070000a2, 0x00307e46, 0x00000035, 0x00000000, 0xffffffff,
> + 0x00000004, 0x00000035, 0x070000a2, 0x00307e46, 0x00000036, 0x00000000, 0xffffffff, 0x00000004,
> + 0x00000036, 0x070000a2, 0x00307e46, 0x00000037, 0x00000000, 0xffffffff, 0x00000004, 0x00000037,
> + 0x070000a2, 0x00307e46, 0x00000038, 0x00000000, 0xffffffff, 0x00000004, 0x00000038, 0x070000a2,
> + 0x00307e46, 0x00000039, 0x00000000, 0xffffffff, 0x00000004, 0x00000039, 0x070000a2, 0x00307e46,
> + 0x0000003a, 0x00000000, 0xffffffff, 0x00000004, 0x0000003a, 0x070000a2, 0x00307e46, 0x0000003b,
> + 0x00000000, 0xffffffff, 0x00000004, 0x0000003b, 0x070000a2, 0x00307e46, 0x0000003c, 0x00000000,
> + 0xffffffff, 0x00000004, 0x0000003c, 0x070000a2, 0x00307e46, 0x0000003d, 0x00000000, 0xffffffff,
> + 0x00000004, 0x0000003d, 0x0600009d, 0x0031ee46, 0x00000000, 0x00000000, 0x00000000, 0x0000003e,
> + 0x0200005f, 0x00020012, 0x02000068, 0x00000001, 0x0400009b, 0x00000008, 0x00000001, 0x00000001,
> + 0x04000036, 0x00100012, 0x00000000, 0x0002000a, 0x0c0000a7, 0x00100022, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000000, 0x0010000a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000001, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000002, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000003,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x00000004, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000005, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x00000006, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x00000007, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000008, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000009, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000000a, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000000b,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x0000000c, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000000d, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x0000000e, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x0000000f, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000010, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000011, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000012, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000013,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x00000014, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000015, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x00000016, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x00000017, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000018, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000019, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000001a, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000001b,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x0000001c, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000001d, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x0000001e, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x0000001f, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000020, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000021, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000022, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000023,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x00000024, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000025, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x00000026, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x00000027, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000028, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000029, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000002a, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000002b,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x0000002c, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000002d, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x0000002e, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x0000002f, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000030, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000031, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000032, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000033,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x00000034, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000035, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7,
> + 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001,
> + 0x00000036, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000,
> + 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001,
> + 0x00000000, 0x84207006, 0x00020001, 0x00000037, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022,
> + 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000,
> + 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x00000038, 0x0010000a,
> + 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000,
> + 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006,
> + 0x00020001, 0x00000039, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000,
> + 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000003a, 0x0010000a, 0x00000000, 0x0700001e,
> + 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100042,
> + 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000003b,
> + 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000, 0x0010002a, 0x00000000, 0x0010001a,
> + 0x00000000, 0x0c0000a7, 0x00100042, 0x00000000, 0x00004001, 0x00000000, 0x00004001, 0x00000000,
> + 0x84207006, 0x00020001, 0x0000003c, 0x0010000a, 0x00000000, 0x0700001e, 0x00100022, 0x00000000,
> + 0x0010002a, 0x00000000, 0x0010001a, 0x00000000, 0x0c0000a7, 0x00100012, 0x00000000, 0x00004001,
> + 0x00000000, 0x00004001, 0x00000000, 0x84207006, 0x00020001, 0x0000003d, 0x0010000a, 0x00000000,
> + 0x0700001e, 0x00100012, 0x00000000, 0x0010000a, 0x00000000, 0x0010001a, 0x00000000, 0x06000029,
> + 0x00100022, 0x00000000, 0x0002000a, 0x00004001, 0x00000002, 0x080000a6, 0x0021e012, 0x00000000,
> + 0x00000000, 0x0010001a, 0x00000000, 0x0010000a, 0x00000000, 0x0100003e
> + };
> +
> + if (!init_compute_test_context(&context) || !context_supports_sm51(&context))
> + return;
> + command_list = context.list;
> + queue = context.queue;
> +
> + root_signature_desc.NumParameters = 63;
> + root_signature_desc.Flags = 0;
> + root_signature_desc.NumStaticSamplers = 0;
> + root_signature_desc.pStaticSamplers = NULL;
> + root_signature_desc.pParameters = root_parameters;
> +
> + for (i = 0; i < 62; ++i)
> + {
> + root_parameters[i].ParameterType = D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE;
> + root_parameters[i].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[i].DescriptorTable.NumDescriptorRanges = 1;
> + root_parameters[i].DescriptorTable.pDescriptorRanges = &descriptor_ranges[i];
> +
> + descriptor_ranges[i].RegisterSpace = i;
> + descriptor_ranges[i].BaseShaderRegister = 0;
> + descriptor_ranges[i].OffsetInDescriptorsFromTableStart = 0;
> + descriptor_ranges[i].NumDescriptors = 8;
> + descriptor_ranges[i].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_SRV;
> + }
> +
> + root_parameters[62].ParameterType = D3D12_ROOT_PARAMETER_TYPE_UAV;
> + root_parameters[62].ShaderVisibility = D3D12_SHADER_VISIBILITY_ALL;
> + root_parameters[62].Descriptor.RegisterSpace = 62;
> + root_parameters[62].Descriptor.ShaderRegister = 0;
> +
> + hr = create_root_signature(context.device, &root_signature_desc, &context.root_signature);
> + ok(SUCCEEDED(hr), "Failed to create root signature, hr %#x.\n", hr);
> +
> + for (i = 0; i < BUFFER_COUNT; ++i)
> + {
> + const UINT buffer_data[] = { i, i, i, i };
> + input_buffers[i] = create_default_buffer(context.device, sizeof(buffer_data), D3D12_RESOURCE_FLAG_NONE, D3D12_RESOURCE_STATE_COPY_DEST);
> + upload_buffer_data(input_buffers[i], 0, sizeof(buffer_data), buffer_data, queue, command_list);
> + reset_command_list(command_list, context.allocator);
> + transition_resource_state(command_list, input_buffers[i], D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE);
> + }
> + output_buffer = create_default_buffer(context.device, 4 * 64, D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS, D3D12_RESOURCE_STATE_UNORDERED_ACCESS);
> +
> + context.pipeline_state = create_compute_pipeline_state(context.device,
> + context.root_signature,
> + shader_bytecode(cs_code, sizeof(cs_code)));
> +
> + heap = create_gpu_descriptor_heap(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV, BUFFER_COUNT);
> + cpu_handle = ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(heap);
> + gpu_handle = ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(heap);
> + descriptor_size = ID3D12Device_GetDescriptorHandleIncrementSize(context.device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV);
> + for (i = 0; i < BUFFER_COUNT; ++i)
> + {
> + D3D12_CPU_DESCRIPTOR_HANDLE h = cpu_handle;
> + D3D12_SHADER_RESOURCE_VIEW_DESC view;
> +
> + h.ptr += i * descriptor_size;
We have get_cpu_descriptor_handle() for this.
> +
> + view.Format = DXGI_FORMAT_UNKNOWN;
> + view.ViewDimension = D3D12_SRV_DIMENSION_BUFFER;
> + view.Shader4ComponentMapping = D3D12_DEFAULT_SHADER_4_COMPONENT_MAPPING;
> + view.Buffer.FirstElement = 0;
> + view.Buffer.NumElements = 4;
> + view.Buffer.StructureByteStride = 4;
> + view.Buffer.Flags = 0;
> + ID3D12Device_CreateShaderResourceView(context.device, input_buffers[i], &view, h);
> + }
> +
> + ID3D12GraphicsCommandList_SetComputeRootSignature(command_list, context.root_signature);
> + ID3D12GraphicsCommandList_SetPipelineState(command_list, context.pipeline_state);
> + ID3D12GraphicsCommandList_SetDescriptorHeaps(command_list, 1, &heap);
> +
> + for (i = 0; i < 62; ++i)
> + {
> + D3D12_GPU_DESCRIPTOR_HANDLE gpu = gpu_handle;
> + gpu.ptr += i * descriptor_size;
> + ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(command_list, i, gpu);
> + }
> + ID3D12GraphicsCommandList_SetComputeRootUnorderedAccessView(command_list, 62, ID3D12Resource_GetGPUVirtualAddress(output_buffer));
> + ID3D12GraphicsCommandList_Dispatch(command_list, 1, 1, 1);
> +
> + transition_resource_state(command_list, output_buffer, D3D12_RESOURCE_STATE_UNORDERED_ACCESS, D3D12_RESOURCE_STATE_COPY_SOURCE);
> + get_buffer_readback_with_command_list(output_buffer, DXGI_FORMAT_UNKNOWN, &rb, queue, command_list);
> +
> + for (i = 0; i < 8; ++i)
> + {
> + UINT value = get_readback_uint(&rb, i, 0, 0);
> + UINT reference = 62 * (i + (i + 61)) / 2;
> + ok(value == reference, "Readback value is: %u\n", value);
> + }
> +
> + release_resource_readback(&rb);
> + reset_command_list(command_list, context.allocator);
> +
> + for (i = 0; i < BUFFER_COUNT; ++i)
> + ID3D12Resource_Release(input_buffers[i]);
> + ID3D12Resource_Release(output_buffer);
> + ID3D12DescriptorHeap_Release(heap);
> + destroy_test_context(&context);
> +}
> +
> +#undef BUFFER_COUNT
> +
> +static void test_unbounded_cbv()
> +{
It may be easier to just test all (most?) types of unbounded resources
(well, except samplers maybe) in one test—it may make it easier to just
match array lengths, and it'd be less code to review.
May 31, 2021
[PATCH] fusion/tests: Use wide-char string literals
by Michael Stefaniuc
Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org>
---
dlls/fusion/tests/asmcache.c | 230 +++++++++++------------------------
dlls/fusion/tests/asmenum.c | 4 +-
dlls/fusion/tests/asmname.c | 41 ++-----
dlls/fusion/tests/fusion.c | 38 +++---
4 files changed, 102 insertions(+), 211 deletions(-)
diff --git a/dlls/fusion/tests/asmcache.c b/dlls/fusion/tests/asmcache.c
index 081023d8093..5e540a403c4 100644
--- a/dlls/fusion/tests/asmcache.c
+++ b/dlls/fusion/tests/asmcache.c
@@ -627,7 +627,7 @@ static struct _tagASSEMBLY
0x23C, /* wLength */
0x34, /* wValueLength */
0, /* wType */
- { 'V','S','_','V','E','R','S','I','O','N','_','I','N','F','O',0,0 }, /* szKey */
+ { L"VS_VERSION_INFO" }, /* szKey */
/* VS_FIXEDFILEINFO */
{
VS_FFI_SIGNATURE, /* dwSignature */
@@ -650,14 +650,14 @@ static struct _tagASSEMBLY
0x44, /* wLength */
0, /* wValueLength */
1, /* wType */
- { 'V','a','r','F','i','l','e','I','n','f','o',0,0 } /* szKey */
+ { L"VarFileInfo" } /* szKey */
},
/* VAR */
{
0x24, /* wLength */
0x4, /* wValueLength */
0, /* wType */
- { 'T','r','a','n','s','l','a','t','i','o','n',0,0 }, /* szKey */
+ { L"Translation" }, /* szKey */
0x4B00000, /* Value */
},
/* STRINGFILEINFO */
@@ -665,14 +665,14 @@ static struct _tagASSEMBLY
0x19C, /* wLength */
0, /* wValueLength */
1, /* wType */
- { 'S','t','r','i','n','g','F','i','l','e','I','n','f','o',0 }, /* szKey */
+ { L"StringFileInfo" }, /* szKey */
},
/* STRINGTABLE */
{
0x178, /* wLength */
0, /* wValueLength */
1, /* wType */
- { '0','0','0','0','0','4','b','0',0 }, /* szKey */
+ { L"000004b0" }, /* szKey */
},
/* STRINGHDR */
{
@@ -680,56 +680,56 @@ static struct _tagASSEMBLY
2, /* wValueLength */
1, /* wType */
},
- { 'F','i','l','e','D','e','s','c','r','i','p','t','i','o','n',0,0 }, /* szKey */
- { ' ',0 }, /* szValue */
+ { L"FileDescription" }, /* szKey */
+ { L" " }, /* szValue */
/* STRINGHDR */
{
0x30, /* wLength */
8, /* wValueLength */
1, /* wType */
},
- { 'F','i','l','e','V','e','r','s','i','o','n',0,0 }, /* szKey */
- { '1','.','0','.','0','.','0',0 }, /* szValue */
+ { L"FileVersion" }, /* szKey */
+ { L"1.0.0.0" }, /* szValue */
/* STRINGHDR */
{
0x34, /* wLength */
9, /* wValueLength */
1, /* wType */
},
- { 'I','n','t','e','r','n','a','l','N','a','m','e',0 }, /* szKey */
- { 'w','i','n','e','.','d','l','l',0 }, /* szValue */
+ { L"InternalName" }, /* szKey */
+ { L"wine.dll" }, /* szValue */
/* STRINGHDR */
{
0x28, /* wLength */
2, /* wValueLength */
1, /* wType */
},
- { 'L','e','g','a','l','C','o','p','y','r','i','g','h','t',0 }, /* szKey */
- { ' ',0 }, /* szValue */
+ { L"LegalCopyright" }, /* szKey */
+ { L" " }, /* szValue */
/* STRINGHDR */
{
0x3C, /* wLength */
9, /* wValueLength */
1, /* wType */
},
- { 'O','r','i','g','i','n','a','l','F','i','l','e','n','a','m','e',0 }, /* szKey */
- { 'w','i','n','e','.','d','l','l',0,0 }, /* szValue */
+ { L"OriginalFilename" }, /* szKey */
+ { L"wine.dll" }, /* szValue */
/* STRINGHDR */
{
0x34, /* wLength */
8, /* wValueLength */
1, /* wType */
},
- { 'P','r','o','d','u','c','t','V','e','r','s','i','o','n',0 }, /* szKey */
- { '1','.','0','.','0','.','0',0 }, /* szValue */
+ { L"ProductVersion" }, /* szKey */
+ { L"1.0.0.0" }, /* szValue */
/* STRINGHDR */
{
0x38, /* wLength */
8, /* wValueLength */
1, /* wType */
},
- { 'A','s','s','e','m','b','l','y',' ','V','e','r','s','i','o','n',0 }, /* szKey */
- { '1','.','0','.','0','.','0',0 }, /* szValue */
+ { L"Assembly Version" }, /* szKey */
+ { L"1.0.0.0" }, /* szValue */
{ 0 }, /* pad */
/* RELOCATION */
{
@@ -754,8 +754,6 @@ static BOOL init_functionpointers(void)
HMODULE hfusion;
HMODULE hmscoree;
- static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
-
hmscoree = LoadLibraryA("mscoree.dll");
if (!hmscoree)
{
@@ -771,7 +769,7 @@ static BOOL init_functionpointers(void)
return FALSE;
}
- hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
+ hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
if (FAILED(hr))
{
win_skip("fusion.dll not available\n");
@@ -842,14 +840,12 @@ static BOOL check_dotnet20(void)
BOOL ret = FALSE;
ULONG disp;
- static const WCHAR winedll[] = {'w','i','n','e','.','d','l','l',0};
-
create_assembly("wine.dll");
hr = pCreateAssemblyCache(&cache, 0);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
- hr = IAssemblyCache_InstallAssembly(cache, 0, winedll, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"wine.dll", NULL);
if (hr == S_OK)
ret = TRUE;
else if (hr == CLDB_E_FILE_OLDVER)
@@ -860,7 +856,7 @@ static BOOL check_dotnet20(void)
ok(0, "Expected S_OK, got %08x\n", hr);
DeleteFileA("wine.dll");
- IAssemblyCache_UninstallAssembly(cache, 0, winedll, NULL, &disp);
+ IAssemblyCache_UninstallAssembly(cache, 0, L"wine.dll", NULL, &disp);
IAssemblyCache_Release(cache);
return ret;
}
@@ -887,8 +883,6 @@ static void test_CreateAssemblyCacheItem(void)
IAssemblyCacheItem *item;
HRESULT hr;
- static const WCHAR wine[] = {'w','i','n','e',0};
-
hr = pCreateAssemblyCache(&cache, 0);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -899,7 +893,7 @@ static void test_CreateAssemblyCacheItem(void)
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
IAssemblyCacheItem_Release(item);
- hr = IAssemblyCache_CreateAssemblyCacheItem(cache, 0, NULL, &item, wine);
+ hr = IAssemblyCache_CreateAssemblyCacheItem(cache, 0, NULL, &item, L"wine");
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
IAssemblyCacheItem_Release(item);
@@ -926,15 +920,6 @@ static void test_InstallAssembly(void)
DWORD attr;
char dllpath[MAX_PATH];
- static const WCHAR empty[] = {0};
- static const WCHAR noext[] = {'f','i','l','e',0};
- static const WCHAR badext[] = {'f','i','l','e','.','b','a','d',0};
- static const WCHAR dllext[] = {'f','i','l','e','.','d','l','l',0};
- static const WCHAR exeext[] = {'f','i','l','e','.','e','x','e',0};
- static const WCHAR testdll[] = {'t','e','s','t','.','d','l','l',0};
- static const WCHAR winedll[] = {'w','i','n','e','.','d','l','l',0};
- static const WCHAR wine[] = {'w','i','n','e',0};
-
create_file("test.dll", 100);
create_assembly("wine.dll");
@@ -946,36 +931,36 @@ static void test_InstallAssembly(void)
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
/* empty pszManifestFilePath */
- hr = IAssemblyCache_InstallAssembly(cache, 0, empty, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"", NULL);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
/* pszManifestFilePath has no extension */
- hr = IAssemblyCache_InstallAssembly(cache, 0, noext, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"file", NULL);
ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME),
"Expected HRESULT_FROM_WIN32(ERROR_INVALID_NAME), got %08x\n", hr);
/* pszManifestFilePath has bad extension */
- hr = IAssemblyCache_InstallAssembly(cache, 0, badext, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"file.bad", NULL);
ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME),
"Expected HRESULT_FROM_WIN32(ERROR_INVALID_NAME), got %08x\n", hr);
/* pszManifestFilePath has dll extension */
- hr = IAssemblyCache_InstallAssembly(cache, 0, dllext, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"file.dll", NULL);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
/* pszManifestFilePath has exe extension */
- hr = IAssemblyCache_InstallAssembly(cache, 0, exeext, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"file.exe", NULL);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
/* empty file */
- hr = IAssemblyCache_InstallAssembly(cache, 0, testdll, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"test.dll", NULL);
ok(hr == COR_E_ASSEMBLYEXPECTED,
"Expected COR_E_ASSEMBLYEXPECTED, got %08x\n", hr);
/* wine assembly */
- hr = IAssemblyCache_InstallAssembly(cache, 0, winedll, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"wine.dll", NULL);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
GetWindowsDirectoryA(dllpath, MAX_PATH);
@@ -986,7 +971,7 @@ static void test_InstallAssembly(void)
/* uninstall the assembly from the GAC */
disp = 0xf00dbad;
- hr = IAssemblyCache_UninstallAssembly(cache, 0, wine, NULL, &disp);
+ hr = IAssemblyCache_UninstallAssembly(cache, 0, L"wine", NULL, &disp);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(disp == IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED,
"Expected IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED, got %d\n", disp);
@@ -995,7 +980,7 @@ static void test_InstallAssembly(void)
ok(attr == INVALID_FILE_ATTRIBUTES, "Expected assembly not to exist\n");
disp = 0xf00dbad;
- hr = IAssemblyCache_UninstallAssembly(cache, 0, wine, NULL, &disp);
+ hr = IAssemblyCache_UninstallAssembly(cache, 0, L"wine", NULL, &disp);
ok(hr == S_FALSE, "Expected S_FALSE, got %08x\n", hr);
ok(disp == IASSEMBLYCACHE_UNINSTALL_DISPOSITION_ALREADY_UNINSTALLED,
"Expected IASSEMBLYCACHE_UNINSTALL_DISPOSITION_ALREADY_UNINSTALLED, got %d\n", disp);
@@ -1023,50 +1008,11 @@ static void test_QueryAssemblyInfo(void)
DWORD size;
ULONG disp;
- static const WCHAR empty[] = {0};
- static const WCHAR commasep[] = {',',' ',0};
- static const WCHAR winedll[] = {'w','i','n','e','.','d','l','l',0};
- static const WCHAR wine[] = {'w','i','n','e',0};
- static const WCHAR ver[] = {
- 'V','e','r','s','i','o','n','=','1','.','0','.','0','.','0',0};
- static const WCHAR otherver[] = {
- 'V','e','r','s','i','o','n','=','1','.','0','.','0','.','0','0','0','0','0',0};
- static const WCHAR badver[] = {
- 'V','e','r','s','i','o','n','=','1','.','0','.','0','.','1',0};
- static const WCHAR culture[] = {
- 'C','u','l','t','u','r','e','=','n','e','u','t','r','a','l',0};
- static const WCHAR badculture[] = {
- 'C','u','l','t','u','r','e','=','e','n',0};
- static const WCHAR pubkey[] = {
- 'P','u','b','l','i','c','K','e','y','T','o','k','e','n','=',
- '2','d','0','3','6','1','7','b','1','c','3','1','e','2','f','5',0};
- static const WCHAR badpubkey[] = {
- 'P','u','b','l','i','c','K','e','y','T','o','k','e','n','=',
- 'a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a',0};
- static const WCHAR badprop[] = {'B','a','d','P','r','o','p','=','b','u','h',0};
- static const WCHAR msil[] = {
- '_','M','S','I','L','\\','w','i','n','e','\\',
- '1','.','0','.','0','.','0','_','_','2','d','0','3','6','1','7','b',
- '1','c','3','1','e','2','f','5','\\',0};
- static const WCHAR wine2[] = {
- 'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','1',',',
- 'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=',
- '2','d','0','3','6','1','7','b','1','c','3','1','e','2','f','5',',',
- 'c','u','l','t','u','r','e','=','n','e','u','t','r','a','l',0};
- static const WCHAR nullpublickey[] = {
- 'm','s','c','o','r','l','i','b','.','d','l','l',',','v','e','r','s','i','o','n','=','0','.','0','.',
- '0','.','0',',','c','u','l','t','u','r','e','=','n','e','u','t','r','a','l',',',
- 'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=','n','u','l','l',0};
- static const WCHAR nullpublickey1[] = {
- 'm','s','c','o','r','l','i','b','.','d','l','l',',',
- 'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=','n','u','L','l',0};
-
size = MAX_PATH;
hr = pGetCachePath(ASM_CACHE_GAC, asmpath, &size);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
- lstrcatW(asmpath, msil);
- lstrcatW(asmpath, winedll);
+ lstrcatW(asmpath, L"_MSIL\\wine\\1.0.0.0__2d03617b1c31e2f5\\wine.dll");
create_assembly("wine.dll");
@@ -1075,7 +1021,7 @@ static void test_QueryAssemblyInfo(void)
/* assembly not installed yet */
INIT_ASM_INFO();
- hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, L"wine", &info);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
@@ -1085,11 +1031,11 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
- hr = IAssemblyCache_InstallAssembly(cache, 0, winedll, NULL);
+ hr = IAssemblyCache_InstallAssembly(cache, 0, L"wine.dll", NULL);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
/* NULL pszAssemblyName */
@@ -1104,14 +1050,13 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* empty pszAssemblyName */
INIT_ASM_INFO();
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
- empty, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"", &info);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
@@ -1120,13 +1065,13 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* no dwFlags */
INIT_ASM_INFO();
- hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, L"wine", &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
@@ -1143,7 +1088,7 @@ static void test_QueryAssemblyInfo(void)
/* pwzCachePath is full filename */
INIT_ASM_INFO();
- hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, winedll, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, L"wine.dll", &info);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
"Expected HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
@@ -1153,25 +1098,22 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* NULL pAsmInfo, QUERYASMINFO_FLAG_VALIDATE */
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
- wine, NULL);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"wine", NULL);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
/* NULL pAsmInfo, QUERYASMINFO_FLAG_GETSIZE */
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
- wine, NULL);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", NULL);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
/* info.cbAssemblyInfo is 0 */
INIT_ASM_INFO();
info.cbAssemblyInfo = 0;
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"wine", &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
@@ -1189,8 +1131,7 @@ static void test_QueryAssemblyInfo(void)
/* info.cbAssemblyInfo is 1 */
INIT_ASM_INFO();
info.cbAssemblyInfo = 1;
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE, L"wine", &info);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
ok(info.cbAssemblyInfo == 1, "Expected 1, got %d\n", info.cbAssemblyInfo);
ok(info.dwAssemblyFlags == 0, "Expected 0, got %08x\n", info.dwAssemblyFlags);
@@ -1198,15 +1139,14 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* info.cbAssemblyInfo is > sizeof(ASSEMBLY_INFO) */
INIT_ASM_INFO();
info.cbAssemblyInfo = sizeof(ASSEMBLY_INFO) * 2;
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO) * 2,
"Expected sizeof(ASSEMBLY_INFO) * 2, got %d\n", info.cbAssemblyInfo);
@@ -1215,14 +1155,13 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* QUERYASMINFO_FLAG_GETSIZE */
INIT_ASM_INFO();
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
@@ -1243,7 +1182,7 @@ static void test_QueryAssemblyInfo(void)
/* QUERYASMINFO_FLAG_GETSIZE and QUERYASMINFO_FLAG_VALIDATE */
INIT_ASM_INFO();
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE |
- QUERYASMINFO_FLAG_VALIDATE,wine, &info);
+ QUERYASMINFO_FLAG_VALIDATE, L"wine", &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
@@ -1264,8 +1203,7 @@ static void test_QueryAssemblyInfo(void)
/* info.pszCurrentAssemblyPathBuf is NULL */
INIT_ASM_INFO();
info.pszCurrentAssemblyPathBuf = NULL;
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
ok(info.dwAssemblyFlags == ASSEMBLYINFO_FLAG_INSTALLED,
@@ -1284,15 +1222,14 @@ static void test_QueryAssemblyInfo(void)
/* info.cchBuf is exactly size of asmpath */
INIT_ASM_INFO();
info.cchBuf = lstrlenW(asmpath);
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
ok(info.dwAssemblyFlags == ASSEMBLYINFO_FLAG_INSTALLED,
"Expected ASSEMBLYINFO_FLAG_INSTALLED, got %08x\n", info.dwAssemblyFlags);
ok(info.uliAssemblySizeInKB.u.HighPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(hr == E_NOT_SUFFICIENT_BUFFER, "Expected E_NOT_SUFFICIENT_BUFFER, got %08x\n", hr);
todo_wine
@@ -1306,8 +1243,7 @@ static void test_QueryAssemblyInfo(void)
/* info.cchBuf has room for NULL-terminator */
INIT_ASM_INFO();
info.cchBuf = lstrlenW(asmpath) + 1;
- hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
- wine, &info);
+ hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE, L"wine", &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
"Expected sizeof(ASSEMBLY_INFO), got %d\n", info.cbAssemblyInfo);
@@ -1327,9 +1263,7 @@ static void test_QueryAssemblyInfo(void)
/* display name is "wine, Version=1.0.0.0" */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, ver);
+ lstrcpyW(name, L"wine, Version=1.0.0.0");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -1351,9 +1285,7 @@ static void test_QueryAssemblyInfo(void)
/* short buffer, QUERYASMINFO_FLAG_VALIDATE */
memset(&info, 0, sizeof(info));
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, otherver);
+ lstrcpyW(name, L"wine, Version=1.0.0.00000");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_VALIDATE,
name, &info);
ok(hr == E_NOT_SUFFICIENT_BUFFER, "got %08x\n", hr);
@@ -1361,9 +1293,7 @@ static void test_QueryAssemblyInfo(void)
/* short buffer, QUERYASMINFO_FLAG_GETSIZE */
memset(&info, 0, sizeof(info));
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, otherver);
+ lstrcpyW(name, L"wine, Version=1.0.0.00000");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == E_NOT_SUFFICIENT_BUFFER, "got %08x\n", hr);
@@ -1392,9 +1322,7 @@ static void test_QueryAssemblyInfo(void)
/* display name is "wine, Version=1.0.0.1", versions don't match */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, badver);
+ lstrcpyW(name, L"wine, Version=1.0.0.1");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
@@ -1406,13 +1334,13 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* display name is "wine,version=1.0.0.1,publicKeyToken=2d03617b1c31e2f5,culture=neutral" */
INIT_ASM_INFO();
- lstrcpyW(name, wine2);
+ lstrcpyW(name, L"wine,version=1.0.0.1,publicKeyToken=2d03617b1c31e2f5,culture=neutral");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
@@ -1424,27 +1352,25 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* display name is "mscorlib.dll,version=0.0.0.0,culture=neutral,publicKeyToken=null" */
INIT_ASM_INFO();
- lstrcpyW(name, nullpublickey);
+ lstrcpyW(name, L"mscorlib.dll,version=0.0.0.0,culture=neutral,publicKeyToken=null");
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, name, &info);
ok(hr == FUSION_E_PRIVATE_ASM_DISALLOWED, "got %08x\n", hr);
/* display name is "mscorlib.dll,publicKeyToken=nuLl" */
INIT_ASM_INFO();
- lstrcpyW(name, nullpublickey1);
+ lstrcpyW(name, L"mscorlib.dll,publicKeyToken=nuLl");
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, name, &info);
ok(hr == FUSION_E_PRIVATE_ASM_DISALLOWED, "got %08x\n", hr);
/* display name is "wine, Culture=neutral" */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, culture);
+ lstrcpyW(name, L"wine, Culture=neutral");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -1466,9 +1392,7 @@ static void test_QueryAssemblyInfo(void)
/* display name is "wine, Culture=en", cultures don't match */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, badculture);
+ lstrcpyW(name, L"wine, Culture=en");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
@@ -1480,15 +1404,13 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* display name is "wine, PublicKeyTokens=2d03617b1c31e2f5" */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, pubkey);
+ lstrcpyW(name, L"wine, PublicKeyToken=2d03617b1c31e2f5");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -1510,9 +1432,7 @@ static void test_QueryAssemblyInfo(void)
/* display name is "wine, PublicKeyToken=aaaaaaaaaaaaaaaa", pubkeys don't match */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, badpubkey);
+ lstrcpyW(name, L"wine, PublicKeyToken=aaaaaaaaaaaaaaaa");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
@@ -1524,15 +1444,13 @@ static void test_QueryAssemblyInfo(void)
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.HighPart);
ok(info.uliAssemblySizeInKB.u.LowPart == 0,
"Expected 0, got %d\n", info.uliAssemblySizeInKB.u.LowPart);
- ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, empty),
+ ok(!lstrcmpW(info.pszCurrentAssemblyPathBuf, L""),
"Assembly path was changed\n");
ok(info.cchBuf == MAX_PATH, "Expected MAX_PATH, got %d\n", info.cchBuf);
/* display name is "wine, BadProp=buh", bad property */
INIT_ASM_INFO();
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, badprop);
+ lstrcpyW(name, L"wine, BadProp=buh");
hr = IAssemblyCache_QueryAssemblyInfo(cache, QUERYASMINFO_FLAG_GETSIZE,
name, &info);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -1556,9 +1474,7 @@ static void test_QueryAssemblyInfo(void)
INIT_ASM_INFO();
info.pszCurrentAssemblyPathBuf = NULL;
info.cchBuf = 0;
- lstrcpyW(name, wine);
- lstrcatW(name, commasep);
- lstrcatW(name, ver);
+ lstrcpyW(name, L"wine, Version=1.0.0.0");
hr = IAssemblyCache_QueryAssemblyInfo(cache, 0, name, &info);
ok(hr == E_NOT_SUFFICIENT_BUFFER, "Expected E_NOT_SUFFICIENT_BUFFER, got %08x\n", hr);
ok(info.cbAssemblyInfo == sizeof(ASSEMBLY_INFO),
@@ -1568,7 +1484,7 @@ static void test_QueryAssemblyInfo(void)
/* uninstall the assembly from the GAC */
disp = 0xf00dbad;
- hr = IAssemblyCache_UninstallAssembly(cache, 0, wine, NULL, &disp);
+ hr = IAssemblyCache_UninstallAssembly(cache, 0, L"wine", NULL, &disp);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(disp == IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED,
"Expected IASSEMBLYCACHE_UNINSTALL_DISPOSITION_UNINSTALLED, got %d\n", disp);
diff --git a/dlls/fusion/tests/asmenum.c b/dlls/fusion/tests/asmenum.c
index 5892cfde7e9..eb7181f33c5 100644
--- a/dlls/fusion/tests/asmenum.c
+++ b/dlls/fusion/tests/asmenum.c
@@ -47,8 +47,6 @@ static BOOL init_functionpointers(void)
HMODULE hfusion;
HMODULE hmscoree;
- static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
-
hmscoree = LoadLibraryA("mscoree.dll");
if (!hmscoree)
{
@@ -64,7 +62,7 @@ static BOOL init_functionpointers(void)
return FALSE;
}
- hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
+ hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
if (FAILED(hr))
{
win_skip("fusion.dll not available\n");
diff --git a/dlls/fusion/tests/asmname.c b/dlls/fusion/tests/asmname.c
index f48fe32d4c5..3dd587a7f26 100644
--- a/dlls/fusion/tests/asmname.c
+++ b/dlls/fusion/tests/asmname.c
@@ -48,8 +48,6 @@ static BOOL init_functionpointers(void)
HMODULE hfusion;
HMODULE hmscoree;
- static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
-
hmscoree = LoadLibraryA("mscoree.dll");
if (!hmscoree)
return FALSE;
@@ -61,7 +59,7 @@ static BOOL init_functionpointers(void)
return FALSE;
}
- hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
+ hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
if (FAILED(hr))
return FALSE;
@@ -400,8 +398,6 @@ static void test_CreateAssemblyNameObject(void)
PEKIND arch;
HRESULT hr;
- static const WCHAR empty[] = {0};
-
/* NULL ppAssemblyNameObj */
to_widechar(namestr, "wine.dll");
hr = pCreateAssemblyNameObject(NULL, namestr, 0, NULL);
@@ -415,7 +411,7 @@ static void test_CreateAssemblyNameObject(void)
/* empty szAssemblyName, CANOF_PARSE_DISPLAY_NAME */
name = (IAssemblyName *)0xdeadbeef;
- hr = pCreateAssemblyNameObject(&name, empty, CANOF_PARSE_DISPLAY_NAME, NULL);
+ hr = pCreateAssemblyNameObject(&name, L"", CANOF_PARSE_DISPLAY_NAME, NULL);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
ok(name == (IAssemblyName *)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", name);
@@ -459,7 +455,7 @@ static void test_CreateAssemblyNameObject(void)
/* empty szAssemblyName */
name = NULL;
- hr = pCreateAssemblyNameObject(&name, empty, CANOF_SET_DEFAULT_VALUES, NULL);
+ hr = pCreateAssemblyNameObject(&name, L"", CANOF_SET_DEFAULT_VALUES, NULL);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok(name != NULL, "Expected non-NULL name\n");
@@ -1008,27 +1004,13 @@ static void test_CreateAssemblyNameObject(void)
static void test_IAssemblyName_IsEqual(void)
{
- static const WCHAR wine1[] =
- {'w','i','n','e',0};
- static const WCHAR wine2[] =
- {'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',0};
- static const WCHAR wine3[] =
- {'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',',',
- 'c','u','l','t','u','r','e','=','n','e','u','t','r','a','l',0};
- static const WCHAR wine4[] =
- {'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',',',
- 'c','u','l','t','u','r','e','=','e','n',0};
- static const WCHAR wine5[] =
- {'w','i','n','e',',','v','e','r','s','i','o','n','=','1','.','0','.','0','.','0',',',
- 'p','u','b','l','i','c','K','e','y','T','o','k','e','n','=','1','2','3','4','5','6',
- '7','8','9','0','a','b','c','d','e','f',0};
HRESULT hr;
IAssemblyName *name1, *name2;
- hr = pCreateAssemblyNameObject( &name1, wine1, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name1, L"wine", CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
- hr = pCreateAssemblyNameObject( &name2, wine1, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name2, L"wine", CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
if (0) { /* crashes on some old version */
@@ -1046,32 +1028,35 @@ static void test_IAssemblyName_IsEqual(void)
ok( hr == S_OK, "got %08x\n", hr );
IAssemblyName_Release( name2 );
- hr = pCreateAssemblyNameObject( &name2, wine2, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name2, L"wine,version=1.0.0.0", CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
ok( hr == S_OK, "got %08x\n", hr );
IAssemblyName_Release( name2 );
- hr = pCreateAssemblyNameObject( &name2, wine3, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name2, L"wine,version=1.0.0.0,culture=neutral",
+ CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
ok( hr == S_OK, "got %08x\n", hr );
IAssemblyName_Release( name1 );
- hr = pCreateAssemblyNameObject( &name1, wine4, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name1, L"wine,version=1.0.0.0,culture=en",
+ CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
ok( hr == S_FALSE, "got %08x\n", hr );
IAssemblyName_Release( name1 );
- hr = pCreateAssemblyNameObject( &name1, wine1, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name1, L"wine", CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
IAssemblyName_Release( name2 );
- hr = pCreateAssemblyNameObject( &name2, wine5, CANOF_PARSE_DISPLAY_NAME, NULL );
+ hr = pCreateAssemblyNameObject( &name2, L"wine,version=1.0.0.0,publicKeyToken=1234567890abcdef",
+ CANOF_PARSE_DISPLAY_NAME, NULL );
ok( hr == S_OK, "got %08x\n", hr );
hr = IAssemblyName_IsEqual( name1, name2, ASM_CMPF_IL_ALL );
diff --git a/dlls/fusion/tests/fusion.c b/dlls/fusion/tests/fusion.c
index 82829d55b16..9a62180cf8c 100644
--- a/dlls/fusion/tests/fusion.c
+++ b/dlls/fusion/tests/fusion.c
@@ -35,8 +35,6 @@ static BOOL init_functionpointers(void)
HRESULT hr;
HMODULE hfusion;
- static const WCHAR szFusion[] = {'f','u','s','i','o','n','.','d','l','l',0};
-
hmscoree = LoadLibraryA("mscoree.dll");
if (!hmscoree)
{
@@ -54,7 +52,7 @@ static BOOL init_functionpointers(void)
pGetCORVersion = (void *)GetProcAddress(hmscoree, "GetCORVersion");
- hr = pLoadLibraryShim(szFusion, NULL, NULL, &hfusion);
+ hr = pLoadLibraryShim(L"fusion.dll", NULL, NULL, &hfusion);
if (FAILED(hr))
{
win_skip("fusion.dll not available\n");
@@ -76,11 +74,6 @@ static void test_GetCachePath(void)
DWORD size;
HRESULT hr;
- static const WCHAR backslash[] = {'\\',0};
- static const WCHAR nochange[] = {'n','o','c','h','a','n','g','e',0};
- static const WCHAR assembly[] = {'a','s','s','e','m','b','l','y',0};
- static const WCHAR gac[] = {'G','A','C',0};
-
if (!pGetCachePath)
{
win_skip("GetCachePath not implemented\n");
@@ -90,10 +83,7 @@ static void test_GetCachePath(void)
GetWindowsDirectoryA(windirA, MAX_PATH);
MultiByteToWideChar(CP_ACP, 0, windirA, -1, windir, MAX_PATH);
lstrcpyW(cachepath, windir);
- lstrcatW(cachepath, backslash);
- lstrcatW(cachepath, assembly);
- lstrcatW(cachepath, backslash);
- lstrcatW(cachepath, gac);
+ lstrcatW(cachepath, L"\\assembly\\GAC");
/* NULL pwzCachePath, pcchPath is 0 */
size = 0;
@@ -114,31 +104,32 @@ static void test_GetCachePath(void)
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
/* NULL pcchPath */
- lstrcpyW(path, nochange);
+ lstrcpyW(path, L"nochange");
hr = pGetCachePath(ASM_CACHE_GAC, path, NULL);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
- ok( !lstrcmpW( nochange, path ), "Expected %s, got %s\n", wine_dbgstr_w(nochange), wine_dbgstr_w(path));
+ ok(!lstrcmpW(L"nochange", path), "Expected %s, got %s\n", wine_dbgstr_w(L"nochange"),
+ wine_dbgstr_w(path));
/* get the cache path */
- lstrcpyW(path, nochange);
+ lstrcpyW(path, L"nochange");
size = MAX_PATH;
hr = pGetCachePath(ASM_CACHE_GAC, path, &size);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
ok( !lstrcmpW( cachepath, path ), "Expected %s, got %s\n", wine_dbgstr_w(cachepath), wine_dbgstr_w(path));
/* pcchPath has no room for NULL terminator */
- lstrcpyW(path, nochange);
+ lstrcpyW(path, L"nochange");
size = lstrlenW(cachepath);
hr = pGetCachePath(ASM_CACHE_GAC, path, &size);
ok(hr == E_NOT_SUFFICIENT_BUFFER, "Expected E_NOT_SUFFICIENT_BUFFER, got %08x\n", hr);
- ok( !lstrcmpW( nochange, path ), "Expected %s, got %s\n", wine_dbgstr_w(nochange), wine_dbgstr_w(path));
+ ok(!lstrcmpW(L"nochange", path), "Expected %s, got %s\n", wine_dbgstr_w(L"nochange"),
+ wine_dbgstr_w(path));
lstrcpyW(cachepath, windir);
- lstrcatW(cachepath, backslash);
- lstrcatW(cachepath, assembly);
+ lstrcatW(cachepath, L"\\assembly");
/* ASM_CACHE_ROOT */
- lstrcpyW(path, nochange);
+ lstrcpyW(path, L"nochange");
size = MAX_PATH;
hr = pGetCachePath(ASM_CACHE_ROOT, path, &size);
ok(hr == S_OK ||
@@ -176,7 +167,7 @@ static void test_GetCachePath(void)
MultiByteToWideChar(CP_ACP, 0, cachepathA, -1, cachepath, MAX_PATH);
/* ASM_CACHE_ZAP */
- lstrcpyW(path, nochange);
+ lstrcpyW(path, L"nochange");
size = MAX_PATH;
hr = pGetCachePath(ASM_CACHE_ZAP, path, &size);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -184,11 +175,12 @@ static void test_GetCachePath(void)
}
/* two flags at once */
- lstrcpyW(path, nochange);
+ lstrcpyW(path, L"nochange");
size = MAX_PATH;
hr = pGetCachePath(ASM_CACHE_GAC | ASM_CACHE_ROOT, path, &size);
ok(hr == E_INVALIDARG, "Expected E_INVALIDARG, got %08x\n", hr);
- ok( !lstrcmpW( nochange, path ), "Expected %s, got %s\n", wine_dbgstr_w(nochange), wine_dbgstr_w(path));
+ ok(!lstrcmpW(L"nochange", path), "Expected %s, got %s\n", wine_dbgstr_w(L"nochange"),
+ wine_dbgstr_w(path));
}
START_TEST(fusion)
--
2.26.3
May 31, 2021
Re: [PATCH vkd3d 1/4] vkd3d: Disable EXT_descriptor_indexing and report SM5.0.
by Zebediah Figura (she/her)
On 5/26/21 3:04 AM, Conor McCarthy wrote:
> Descriptor indexing is not used and SM5.1 is mostly not supported.
> Allows new SM5.1 tests to be skipped.
>
> Signed-off-by: Conor McCarthy <cmccarthy(a)codeweavers.com>
> ---
> libs/vkd3d/device.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/libs/vkd3d/device.c b/libs/vkd3d/device.c
> index a63fc92b..877512e3 100644
> --- a/libs/vkd3d/device.c
> +++ b/libs/vkd3d/device.c
> @@ -1423,6 +1423,7 @@ static HRESULT vkd3d_init_device_caps(struct d3d12_device *device,
> vulkan_info->EXT_shader_demote_to_helper_invocation = false;
> if (!physical_device_info->texel_buffer_alignment_features.texelBufferAlignment)
> vulkan_info->EXT_texel_buffer_alignment = false;
> + vulkan_info->EXT_descriptor_indexing = false;
>
> vulkan_info->texel_buffer_alignment_properties = physical_device_info->texel_buffer_alignment_properties;
>
I get the impression we usually don't disable reported capabilities just
because we don't actually support them, indeed, we tend to err in the
opposite direction, and lie that we can support more than we actually
can—because applications trust us too much ;-)
Hence this strikes me as a good idea at least only if it doesn't break
more applications than it fixes.
Regarding the tests—IIRC vkd3d-shader currently fails to compile the
shader if it uses descriptor arrays; can't we just call
create_compute_pipeline_state() in a todo block, and skip the rest of
the tests if it fails?
> @@ -2728,7 +2729,8 @@ static HRESULT STDMETHODCALLTYPE d3d12_device_CheckFeatureSupport(ID3D12Device *
>
> TRACE("Request shader model %#x.\n", data->HighestShaderModel);
>
> - data->HighestShaderModel = D3D_SHADER_MODEL_5_1;
> + data->HighestShaderModel = device->vk_info.EXT_descriptor_indexing
> + ? D3D_SHADER_MODEL_5_1 : D3D_SHADER_MODEL_5_0;
>
> TRACE("Shader model %#x.\n", data->HighestShaderModel);
> return S_OK;
>
This, on the other hand, strikes me as a separate change, and something
we want regardless.
May 31, 2021
Re: [PATCH 1/2] wined3d: Implement wined3d_deferred_context_update_sub_resource().
by Zebediah Figura (she/her)
Replying to both mails at once, sort of...
On 5/31/21 4:53 AM, Henri Verbeet wrote:
> Yes, mostly what Matteo said.
>
> On Fri, 28 May 2021 at 15:39, Matteo Bruni <matteo.mystral(a)gmail.com> wrote:
>> So this is, AFAIR, more or less what the staging patchset did. I don't
>> think that we want to put the data in the command stream though.
>>
> It may not be too bad for deferred contexts, but for immediate
> contexts probably not, no.
>
>> Always copying the data from the user-provided source to some other
>> storage is definitely the right choice: we don't want to block the
>> application (more or less directly) to make sure that the data stays
>> around until we need it. That's bad for performance for immediate
>> contexts and just impossible for deferred, so not much to argue there.
>> At the same time we also want to minimize the amount of copies.
>> Ideally, for a GPU resource, here we'd upload the data right to the
>> GPU (e.g. inside a persistently mapped buffer), ready to be used
>> whenever it's time.
To clarify, when talking about uploading directly to the GPU, are you
just referring to map() here, or update_sub_resource() as well?
Does it even make sense to use a persistently mapped GPU buffer for a
resource mapped/updated by a deferred context? Obligatory disclaimer
that I don't know anything about GPU-side performance, but obviously you
can't reuse an earlier mapping for UpdateSubResource() or for DISCARD
maps, and I'm failing to understand why an application would ever use
NOOVERWRITE on a deferred context.
>> For a CPU resource instead we'd copy the data into
>> its final place in sysmem (what will eventually become its
>> "heap_memory"). We don't quite have the infrastructure for it at the
>> moment but that would be the goal IMO.
>> What you do in patch 2/2 is more along the lines of this idea. The
>> sysmem allocation mechanism works okay for the time being and could be
>> extended to handle other types of memory, e.g. it could eventually
>> take charge of the vulkan allocator, making it generic and usable from
>> GL too. I don't think it has to be managed by each deferred context
>> (i.e. it should probably be per-device), although the current scheme
>> has the advantage of not having to care about concurrency.
In a sense there is no "current scheme", i.e. deferred contexts are
tracking which memory belongs to which resource because that *has* to be
done per-context, but nobody's managing custom heaps. Unless I
misunderstand what's meant here?
>> So, at least in my view, I'd bring the allocator bits from patch 2/2
>> into patch 1/2 and use that for update_sub_resource, both the deferred
>> and the immediate variants (the latter could be its own patch). You'd
>> only need the DISCARD portion for update_sub_resource, so the rest can
>> (and probably should) stay in the map() patch.
>>
> My (very rough) proposal for this would be to replace the "data" field
> in the wined3d_cs_update_sub_resource structure with a
> wined3d_bo_address, and then introduce something like the following:
>
> static bool wined3d_device_context_get_upload_bo(struct
> wined3d_device_context *context,
> struct wined3d_resource *resource, unsigned int
> sub_resource_idx, const struct wined3d_box *box,
> uint32_t flags, struct wined3d_bo_address *address, void **map_ptr)
> {
> ...
> }
This function strikes me as more than a little confusing, party because
it seems to be returning two partially overlapping things, with mostly
different usages...
i.e. I'd presume the idea is for
wined3d_device_context_update_sub_resource() to retrieve this and then
call something like wined3d_context_copy_bo_address() to copy from
sysmem, which makes sense, but then what are we doing with map_ptr?
Or, if we use this in wined3d_device_context_map(), couldn't we just
call wined3d_context_map_bo_address() on the returned wined3d_bo_address?
>
> For deferred contexts you should then be able to do something
> (conceptually) very similar to patch 2/2, and in the end we may not
> even need map/unmap/update_sub_resource in the
> wined3d_device_context_ops structure.
>
We'd still presumably need an unmap, though, unless the idea above is to
*always* allocate new (GPU or CPU) memory, which seems like a much
bigger step.
Unless I'm misreading things, this also seems to imply that
*_resource_sub_resource_map() shouldn't exist anymore, right?
May 31, 2021
Re: [PATCH] po: Update Lithuanian translation
by Marvin
Hi,
While running your changed tests, I think I found new failures.
Being a bot and all I'm not very good at pattern recognition, so I might be
wrong, but could you please double-check?
Full results can be found at:
https://testbot.winehq.org/JobDetails.pl?Key=91546
Your paranoid android.
=== debiant2 (build log) ===
error: patch failed: po/lt.po:15187
Task: Patch failed to apply
=== debiant2 (build log) ===
error: patch failed: po/lt.po:15187
Task: Patch failed to apply
May 31, 2021
Re: [PATCH 1/5] ws2_32/tests: Call getsockname() on the right socket.
by Zebediah Figura (she/her)
On 5/31/21 10:49 AM, Marvin wrote:
> Hi,
>
> While running your changed tests, I think I found new failures.
> Being a bot and all I'm not very good at pattern recognition, so I might be
> wrong, but could you please double-check?
>
> Full results can be found at:
> https://testbot.winehq.org/JobDetails.pl?Key=91528
>
> Your paranoid android.
>
>
> === debiant2 (32 bit report) ===
>
> ws2_32:
> afd.c:328: Test failed: got flags 0x43
> afd.c:334: Test failed: got flags 0x41
>
That's missing the mark by virtue of a spurious AFD_POLL_READ. Not sure
why that's happening; unfortunately I can't seem to reproduce it locally
or on the TestBot.
May 31, 2021
Re: [PATCH resend 4/4] msxml3/tests: Test for methods that break lock with writer domdoc dest.
by Marvin
Hi,
While running your changed tests, I think I found new failures.
Being a bot and all I'm not very good at pattern recognition, so I might be
wrong, but could you please double-check?
Full results can be found at:
https://testbot.winehq.org/JobDetails.pl?Key=91543
Your paranoid android.
=== w8 (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 01D61FA0: Got 00000000.
saxreader.c:5164: Test failed: 01D61FA0: Got 00000000.
saxreader.c:5164: Test failed: 01D61FA0: Got 00000000.
=== w8adm (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 01D11FA0: Got 00000000.
saxreader.c:5164: Test failed: 01D11FA0: Got 00000000.
saxreader.c:5164: Test failed: 01D11FA0: Got 00000000.
=== w864 (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 026C1FA0: Got 00000000.
saxreader.c:5164: Test failed: 026C1FA0: Got 00000000.
saxreader.c:5164: Test failed: 026C1FA0: Got 00000000.
=== w1064v1507 (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 028D1FA0: Got 00000000.
saxreader.c:5164: Test failed: 028D1FA0: Got 00000000.
saxreader.c:5164: Test failed: 028D1FA0: Got 00000000.
=== w1064v1809 (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 025E0EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 025E0FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 026FDC48: Got 00000000.
saxreader.c:5164: Test failed: 026FDC48: Got 00000000.
saxreader.c:5164: Test failed: 026FDC48: Got 00000000.
=== w1064 (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 02C70EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 02C70FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 023CDF88: Got 00000000.
saxreader.c:5164: Test failed: 023CDF88: Got 00000000.
saxreader.c:5164: Test failed: 023CDF88: Got 00000000.
=== w1064_tsign (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 026C0EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 026C0FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 02F9DF88: Got 00000000.
saxreader.c:5164: Test failed: 02F9DF88: Got 00000000.
saxreader.c:5164: Test failed: 02F9DF88: Got 00000000.
=== w10pro64 (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 025D0EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 025D0FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 009CDF20: Got 00000000.
saxreader.c:5164: Test failed: 009CDF20: Got 00000000.
saxreader.c:5164: Test failed: 009CDF20: Got 00000000.
=== w864 (64 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000025ED8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000025ED8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000025ED8A0: Got 0000000000000000.
=== w1064v1507 (64 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027BD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027BD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027BD8A0: Got 0000000000000000.
=== w1064v1809 (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002B04440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002B04510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002AFD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002AFD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002AFD8B0: Got 0000000000000000.
=== w1064 (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002CD4440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002CD4510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002CCD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002CCD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002CCD8B0: Got 0000000000000000.
=== w1064_2qxl (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002E94440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002E94510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002E8D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002E8D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002E8D8B0: Got 0000000000000000.
=== w1064_tsign (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002F34440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002F34510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002F2D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002F2D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002F2D8B0: Got 0000000000000000.
=== w10pro64 (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002D94440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002D94510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002D8D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002D8D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002D8D8B0: Got 0000000000000000.
=== w10pro64_ar (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 00000000027E4440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 00000000027E4510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 00000000027DD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027DD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027DD8B0: Got 0000000000000000.
=== w10pro64_he (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002B74440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002B74510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002B6D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002B6D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002B6D8B0: Got 0000000000000000.
=== w10pro64_ja (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 00000000028B4370: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 00000000028B4440: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 00000000028AD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028AD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028AD8A0: Got 0000000000000000.
=== w10pro64_zh_CN (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002884C00: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002884CD0: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 00000000028871D0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028871D0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028871D0: Got 0000000000000000.
May 31, 2021
Re: [PATCH resend 3/4] msxml3/tests: Test for disabled document methods with writer domdoc dest.
by Marvin
Hi,
While running your changed tests, I think I found new failures.
Being a bot and all I'm not very good at pattern recognition, so I might be
wrong, but could you please double-check?
Full results can be found at:
https://testbot.winehq.org/JobDetails.pl?Key=91542
Your paranoid android.
=== w8 (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 019F1FA0: Got 00000000.
saxreader.c:5164: Test failed: 019F1FA0: Got 00000000.
saxreader.c:5164: Test failed: 019F1FA0: Got 00000000.
=== w8adm (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 02111FA0: Got 00000000.
saxreader.c:5164: Test failed: 02111FA0: Got 00000000.
saxreader.c:5164: Test failed: 02111FA0: Got 00000000.
=== w864 (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 02711FA0: Got 00000000.
saxreader.c:5164: Test failed: 02711FA0: Got 00000000.
saxreader.c:5164: Test failed: 02711FA0: Got 00000000.
=== w1064v1507 (32 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:5164: Test failed: 023C1FA0: Got 00000000.
saxreader.c:5164: Test failed: 023C1FA0: Got 00000000.
saxreader.c:5164: Test failed: 023C1FA0: Got 00000000.
=== w1064v1809 (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 027B0EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 027B0FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0089DAA8: Got 00000000.
saxreader.c:5164: Test failed: 0089DAA8: Got 00000000.
saxreader.c:5164: Test failed: 0089DAA8: Got 00000000.
=== w1064 (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 02750EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 02750FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 02EADB10: Got 00000000.
saxreader.c:5164: Test failed: 02EADB10: Got 00000000.
saxreader.c:5164: Test failed: 02EADB10: Got 00000000.
=== w1064_tsign (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 02870EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 02870FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0309DBE0: Got 00000000.
saxreader.c:5164: Test failed: 0309DBE0: Got 00000000.
saxreader.c:5164: Test failed: 0309DBE0: Got 00000000.
=== w10pro64 (32 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 00000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 00000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 00000000.
saxreader.c:4961: Test failed: 027A0EE0: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 027A0FF8: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 00A5DB10: Got 00000000.
saxreader.c:5164: Test failed: 00A5DB10: Got 00000000.
saxreader.c:5164: Test failed: 00A5DB10: Got 00000000.
=== w864 (64 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027CD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027CD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027CD8A0: Got 0000000000000000.
=== w1064v1507 (64 bit report) ===
msxml3:
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028AD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028AD8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000028AD8A0: Got 0000000000000000.
=== w1064v1809 (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002B04440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002B04510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002AFD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002AFD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002AFD8B0: Got 0000000000000000.
=== w1064 (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002D34440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002D34510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002D2D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002D2D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002D2D8B0: Got 0000000000000000.
=== w1064_2qxl (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002D64440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002D64510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002D5D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002D5D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002D5D8B0: Got 0000000000000000.
=== w1064_tsign (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002EA4440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002EA4510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002E9D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002E9D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002E9D8B0: Got 0000000000000000.
=== w10pro64 (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 00000000027D4440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 00000000027D4510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 00000000027CD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027CD8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000027CD8B0: Got 0000000000000000.
=== w10pro64_ar (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002E84440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002E84510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002E7D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002E7D8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002E7D8B0: Got 0000000000000000.
=== w10pro64_he (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 00000000026F4440: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 00000000026F4510: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 00000000026ED8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000026ED8B0: Got 0000000000000000.
saxreader.c:5164: Test failed: 00000000026ED8B0: Got 0000000000000000.
=== w10pro64_ja (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 00000000029A4370: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 00000000029A4440: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 000000000299D8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 000000000299D8A0: Got 0000000000000000.
saxreader.c:5164: Test failed: 000000000299D8A0: Got 0000000000000000.
=== w10pro64_zh_CN (64 bit report) ===
msxml3:
saxreader.c:4656: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(0): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(1): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(2): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(3): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(4): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(5): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(6): Got 0000000000000000.
saxreader.c:4656: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4663: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(7): Got 0000000000000000.
saxreader.c:4700: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4721: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4862: Test failed: DOMNodeDisabledTest(8): Got 0000000000000000.
saxreader.c:4961: Test failed: 0000000002B54C00: Unexpected hr 0x80070057.
saxreader.c:4961: Test failed: 0000000002B54CD0: Unexpected hr 0x80070057.
saxreader.c:5164: Test failed: 0000000002B571D0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002B571D0: Got 0000000000000000.
saxreader.c:5164: Test failed: 0000000002B571D0: Got 0000000000000000.
May 31, 2021