Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
[platform/upstream/VK-GL-CTS.git] / external / vulkancts / modules / vulkan / dynamic_state / vktDynamicStateTestCaseUtil.hpp
index 559234c..7f8ee06 100644 (file)
@@ -7,24 +7,17 @@
  * Copyright (c) 2015 The Khronos Group Inc.
  * Copyright (c) 2015 Intel Corporation
  *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and/or associated documentation files (the
- * "Materials"), to deal in the Materials without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Materials, and to
- * permit persons to whom the Materials are furnished to do so, subject to
- * the following conditions:
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
  *
- * The above copyright notice(s) and this permission notice shall be included
- * in all copies or substantial portions of the Materials.
+ *      http://www.apache.org/licenses/LICENSE-2.0
  *
- * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
- * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  *
  *//*!
  * \file
@@ -39,6 +32,8 @@
 #include "gluShaderUtil.hpp"
 #include "vkPrograms.hpp"
 
+#include "deUniquePtr.hpp"
+
 #include <map>
 
 namespace vkt
@@ -61,13 +56,13 @@ class ShaderSourceProvider
 public:
        static std::string getSource(tcu::Archive& archive, const char* path)
        {
-               tcu::Resource *resource = archive.getResource(path);
+               de::UniquePtr<tcu::Resource> resource(archive.getResource(path));
 
                std::vector<deUint8> readBuffer(resource->getSize() + 1);
                resource->read(&readBuffer[0], resource->getSize());
                readBuffer[readBuffer.size() - 1] = 0;
 
-               return reinterpret_cast<const char*>(&readBuffer[0]);
+               return std::string(reinterpret_cast<const char*>(&readBuffer[0]));
        }
 };