From: Elizabeth Figura zfigura@codeweavers.com
--- dlls/winevulkan/make_vulkan | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index b18ee1754ad..d69d63fe942 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -3271,22 +3271,25 @@ class VkRegistry(object): # All of the relevant extensions and commands are in vk.xml. video_tree = ET.parse(video_xml) video_root = video_tree.getroot() - self._parse_enums(root, video_root) - self._parse_types(root, video_root) + + self.copyright = root.find('./comment').text + self.video_copyright = video_root.find('./comment').text + + root.extend(video_root) + + self._parse_enums(root) + self._parse_types(root) self._parse_commands(root)
# Pull in any required types and functions. self._parse_features(root) - self._parse_extensions(root, video_root) + self._parse_extensions(root)
for enum in self.enums.values(): enum.fixup_64bit_aliases()
self._match_object_types()
- self.copyright = root.find('./comment').text - self.video_copyright = video_root.find('./comment').text - def _is_feature_supported(self, feature): version = self.version_regex.match(feature) if not version: @@ -3426,11 +3429,11 @@ class VkRegistry(object): # calls when needed e.g. to adjust member variables. self.funcs = OrderedDict(sorted(funcs.items()))
- def _parse_enums(self, root, video_root): + def _parse_enums(self, root): """ Parse enums section or better described as constants section. """ enums = {} self.consts = [] - for enum in root.findall("./enums") + video_root.findall("./enums"): + for enum in root.findall("./enums"): name = enum.attrib.get("name") _type = enum.attrib.get("type")
@@ -3522,10 +3525,10 @@ class VkRegistry(object): if "data" in member.type_info: VkRegistry._require_type(member.type_info["data"])
- def _parse_extensions(self, root, video_root): + def _parse_extensions(self, root): """ Parse extensions section and pull in any types and commands for this extension. """ extensions = [] - exts = root.findall("./extensions/extension") + video_root.findall("./extensions/extension") + exts = root.findall("./extensions/extension") deferred_exts = [] skipped_exts = UNSUPPORTED_EXTENSIONS.copy()
@@ -3688,9 +3691,9 @@ class VkRegistry(object): type_info = self.types[name] type_info["data"].required = True
- def _parse_types(self, root, video_root): + def _parse_types(self, root): """ Parse types section, which contains all data types e.g. structs, typedefs etcetera. """ - types = root.findall("./types/type") + video_root.findall("./types/type") + types = root.findall("./types/type")
base_types = [] bitmasks = []
From: Elizabeth Figura zfigura@codeweavers.com
--- dlls/winevulkan/make_vulkan | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/winevulkan/make_vulkan b/dlls/winevulkan/make_vulkan index d69d63fe942..20f9f440d91 100755 --- a/dlls/winevulkan/make_vulkan +++ b/dlls/winevulkan/make_vulkan @@ -1577,7 +1577,7 @@ class VkMember(VkVariable): elif self.is_handle() and self.is_wrapped(): handle = self.type_info["data"] if direction == Direction.OUTPUT: - LOGGER.err("OUTPUT parameter {0}.{1} cannot be unwrapped".format(self.type, self.name)) + LOGGER.error("OUTPUT parameter {0}.{1} cannot be unwrapped".format(self.type, self.name)) elif self.optional: return "{0}{1} = {2} ? {3} : 0;\n".format(output, self.name, self.value(input, conv), handle.unwrap_handle(self.value(input, conv), unwrap)) @@ -1586,9 +1586,9 @@ class VkMember(VkVariable): handle.unwrap_handle(self.value(input, conv), unwrap)) elif self.is_generic_handle(): if direction == Direction.OUTPUT: - LOGGER.err("OUTPUT parameter {0}.{1} cannot be unwrapped".format(self.type, self.name)) + LOGGER.error("OUTPUT parameter {0}.{1} cannot be unwrapped".format(self.type, self.name)) if unwrap == Unwrap.DRIVER and self.is_wrapped(Unwrap.DRIVER): - LOGGER.err("DRIVER unwrapping of {0}.{1} not implemented".format(self.type, self.name)) + LOGGER.error("DRIVER unwrapping of {0}.{1} not implemented".format(self.type, self.name)) return "{0}{1} = wine_vk_unwrap_handle({2}{3}, {2}{1});\n".format(output, self.name, input, self.object_type) else: selector_part = ", {0}{1}".format(input, self.selector) if self.selector else "" @@ -1754,7 +1754,7 @@ class VkParam(VkVariable): # Since we have parsed all types before hand, this should not happen. type_info = types.get(type_elem.text, None) if type_info is None: - LOGGER.err("type info not found for: {0}".format(type_elem.text)) + LOGGER.error("type info not found for: {0}".format(type_elem.text))
return VkParam(type_info, const=const, pointer=pointer, name=name, array_lens=array_lens, dyn_array_len=dyn_array_len, object_type=object_type, optional=optional, @@ -1992,7 +1992,7 @@ class VkParam(VkVariable): unwrap_handle = None if self.object_type != None and self.type == "uint64_t": if unwrap == Unwrap.DRIVER and self.is_wrapped(Unwrap.DRIVER): - LOGGER.err("DRIVER unwrapping of {0}.{1} not implemented".format(self.type, self.name)) + LOGGER.error("DRIVER unwrapping of {0}.{1} not implemented".format(self.type, self.name)) unwrap_handle = "wine_vk_unwrap_handle({0}{1}, {0}{2})".format( params_prefix, self.object_type, self.name)
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=149609
Your paranoid android.
=== debian11b (64 bit WoW report) ===
kernel32: heap.c:221: Test succeeded inside todo block: got wrong heap
mshtml: xmlhttprequest.c:724: Test failed: text == NULL xmlhttprequest.c:871: Test succeeded inside todo block: loading_cnt = 1 xmlhttprequest.c:1028: Test failed: expect L"X => Testing", got L"<?php\n\n/*\n * Simple POST test script used by Wine Regression tests\n */\n\nheader("Content-Type: text/plain");\n\nif (is_array($_POST) and count($_POST) > 0)\n{\n foreach ($_POST as $name => $value)\n {\n echo "$name => $value\n";\n }\n}\nelse\n{\n echo "FAILED"...
msxml3: httpreq.c:1646: Test failed: Unexpected response L"<?php\n\n/*\n * Simple POST test script used by Wine Regression tests\n */\n\nheader(\"Content-Type: text/plain\");\n\nif (is_array($_POST) and count($_POST) > 0)\n{\n foreach ($_POST as $name => $value)\n {\n echo \"$name => $value\\n\";\n }\n}\nelse\n{\n echo \"FAILED".... httpreq.c:1727: Test failed: got response text L"<?php\n if (strlen($_SERVER['HTTP_REFERER']))\n echo $_SERVER['HTTP_REFERER'];\n else\n echo \"no referer set\";\n?>\n" httpreq.c:1753: Test failed: got response text L"<?php\n if (strlen($_SERVER['HTTP_REFERER']))\n echo $_SERVER['HTTP_REFERER'];\n else\n echo \"no referer set\";\n?>\n", expected L"http://test.winehq.org/"
urlmon: protocol.c:936: Test failed: unexpected call ReportProgress_ACCEPTRANGES protocol.c:936: Test failed: unexpected call ReportProgress_ACCEPTRANGES protocol.c:936: Test failed: unexpected call ReportProgress_ACCEPTRANGES protocol.c:936: Test failed: unexpected call ReportProgress_ACCEPTRANGES protocol.c:853: Test failed: szStatusText != text/plain protocol.c:1105: Test failed: Read 275 bytes instead of 13 protocol.c:936: Test failed: unexpected call ReportProgress_ACCEPTRANGES protocol.c:853: Test failed: szStatusText != text/plain protocol.c:1105: Test failed: Read 275 bytes instead of 13 protocol.c:936: Test failed: unexpected call ReportProgress_ACCEPTRANGES
user32: input.c:4305: Test succeeded inside todo block: button_down_hwnd_todo 1: got MSG_TEST_WIN hwnd 00000000009700F6, msg WM_LBUTTONDOWN, wparam 0x1, lparam 0x320032
winhttp: winhttp.c:473: Test failed: Read 255 bytes winhttp.c:474: Test failed: Data read did not match. winhttp.c:5792: Test failed: WinHttpReceiveResponse succeeded, expected failure winhttp.c:5793: Test failed: Expected ERROR_WINHTTP_REDIRECT_FAILED, got 0 winhttp.c:5799: Test failed: got L"http://test.winehq.org/tests/redirecttest.php?max=3"
wininet: http.c:1683: Test failed: Read 255 bytes instead of 13 http.c:1684: Test failed: Got string <?php http.c:1223: Test failed: buffer = '<?php