bug 15089: Does "Across Command Buffer Boundaries" apply to second-level command buffers?

https://cvs.khronos.org/bugzilla/show_bug.cgi?id=15089
diff --git a/include/vulkan/vulkan.h b/include/vulkan/vulkan.h
index ba8bc49..b37caeb 100644
--- a/include/vulkan/vulkan.h
+++ b/include/vulkan/vulkan.h
@@ -1039,6 +1039,11 @@
 } VkCommandBufferUsageFlagBits;
 typedef VkFlags VkCommandBufferUsageFlags;
 
+typedef enum VkQueryControlFlagBits {
+    VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,
+} VkQueryControlFlagBits;
+typedef VkFlags VkQueryControlFlags;
+
 typedef enum VkCommandBufferResetFlagBits {
     VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
 } VkCommandBufferResetFlagBits;
@@ -1052,11 +1057,6 @@
 } VkStencilFaceFlagBits;
 typedef VkFlags VkStencilFaceFlags;
 
-typedef enum VkQueryControlFlagBits {
-    VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001,
-} VkQueryControlFlagBits;
-typedef VkFlags VkQueryControlFlags;
-
 typedef void* (VKAPI_PTR *PFN_vkAllocationFunction)(
     void*                                       pUserData,
     size_t                                      size,
@@ -2010,6 +2010,9 @@
     VkRenderPass                                renderPass;
     uint32_t                                    subpass;
     VkFramebuffer                               framebuffer;
+    VkBool32                                    occlusionQueryEnable;
+    VkQueryControlFlags                         queryFlags;
+    VkQueryPipelineStatisticFlags               pipelineStatistics;
 } VkCommandBufferBeginInfo;
 
 typedef struct VkBufferCopy {
diff --git a/tests/layer_validation_tests.cpp b/tests/layer_validation_tests.cpp
index be4950c..bd27921 100644
--- a/tests/layer_validation_tests.cpp
+++ b/tests/layer_validation_tests.cpp
@@ -521,6 +521,9 @@
     info.renderPass  = VK_NULL_HANDLE;
     info.subpass     = 0;
     info.framebuffer = VK_NULL_HANDLE;
+    info.occlusionQueryEnable = VK_FALSE;
+    info.queryFlags = 0;
+    info.pipelineStatistics = 0;
 
     // Introduce failure by calling BCB again before checking fence
     vkBeginCommandBuffer(m_commandBuffer->handle(), &info);
diff --git a/tests/vkrenderframework.cpp b/tests/vkrenderframework.cpp
index 8b147c2..92dac8f 100644
--- a/tests/vkrenderframework.cpp
+++ b/tests/vkrenderframework.cpp
@@ -969,6 +969,9 @@
     cmd_buf_info.renderPass = VK_NULL_HANDLE;
     cmd_buf_info.subpass = 0;
     cmd_buf_info.framebuffer = VK_NULL_HANDLE;
+    cmd_buf_info.occlusionQueryEnable = VK_FALSE;
+    cmd_buf_info.queryFlags = 0;
+    cmd_buf_info.pipelineStatistics = 0;
 
     err = m_commandBuffer->BeginCommandBuffer(&cmd_buf_info);
     ASSERT_VK_SUCCESS(err);
diff --git a/tests/vktestbinding.cpp b/tests/vktestbinding.cpp
index 5290176..b67f5fb 100644
--- a/tests/vktestbinding.cpp
+++ b/tests/vktestbinding.cpp
@@ -815,6 +815,9 @@
     info.renderPass = VK_NULL_HANDLE;
     info.subpass = 0;
     info.framebuffer = VK_NULL_HANDLE;
+    info.occlusionQueryEnable = VK_FALSE;
+    info.queryFlags = 0;
+    info.pipelineStatistics = 0;
 
     begin(&info);
 }
diff --git a/tests/vktestframework.cpp b/tests/vktestframework.cpp
index a19f053..71ff6b0 100644
--- a/tests/vktestframework.cpp
+++ b/tests/vktestframework.cpp
@@ -997,6 +997,9 @@
     cmd_buf_info.renderPass = { VK_NULL_HANDLE };
     cmd_buf_info.subpass = 0;
     cmd_buf_info.framebuffer = { VK_NULL_HANDLE };
+    cmd_buf_info.occlusionQueryEnable = VK_FALSE;
+    cmd_buf_info.queryFlags = 0;
+    cmd_buf_info.pipelineStatistics = 0;
 
     err = vkBeginCommandBuffer(m_cmdbuf.handle(), &cmd_buf_info);
     assert(!err);