/* Skip formats not supported by FBO */
if (false == fillSourceTexture(format_idx, tgt_idx))
{
+ deinitTextures();
continue;
}
for (size_t access_idx = 0; access_idx < n_texture_access; ++access_idx)
{
-
-#endif /* FUNCTIONAL_TEST_ALL_ACCESS_ROUTINES */
-
/* Skip invalid cases */
if (false == isTargetSuppByAccess(access_idx, tgt_idx))
{
continue;
}
+#else /* FUNCTIONAL_TEST_ALL_ACCESS_ROUTINES */
+ /* Skip invalid cases */
+ if (false == isTargetSuppByAccess(access_idx, tgt_idx))
+ {
+ deinitTextures();
+ continue;
+ }
+#endif /* FUNCTIONAL_TEST_ALL_ACCESS_ROUTINES */
#if FUNCTIONAL_TEST_ALL_SWIZZLE_COMBINATIONS
} /* iteration over access routines - only when enabled */
#endif /* FUNCTIONAL_TEST_ALL_ACCESS_ROUTINES */
-
+ deinitTextures();
} /* try */
catch (wrongResults& exc)
{
m_context.getTestContext().getLog() << tcu::TestLog::Message << exc.what() << tcu::TestLog::EndMessage;
test_result = false;
+ deinitTextures();
}
catch (...)
{
+ deinitTextures();
throw;
}
} /* iteration over texture targets */
- deinitTextures();
} /* iteration over texture formats */
/* Set result */
if (m_renderbuffer)
{
- gl.deleteFramebuffers(1, &m_renderbuffer);
+ gl.deleteRenderbuffers(1, &m_renderbuffer);
m_renderbuffer = 0;
}
m_vao_id = 0;
}
+
+ if (m_fbo_id)
+ {
+ gl.deleteFramebuffers(1, &m_fbo_id);
+
+ m_fbo_id = 0;
+ }
+
+ if (m_rbo_id)
+ {
+ gl.deleteRenderbuffers(1, &m_rbo_id);
+
+ m_rbo_id = 0;
+ }
}
void gl3cts::TransformFeedback::DrawXFB::drawForCapture(bool begin_xfb, bool pause_xfb, bool resume_xfb, bool end_xfb)
m_vao_id = 0;
}
+
+ if (m_fbo_id)
+ {
+ gl.deleteFramebuffers(1, &m_fbo_id);
+
+ m_fbo_id = 0;
+ }
+
+ if (m_rbo_id)
+ {
+ gl.deleteRenderbuffers(1, &m_rbo_id);
+
+ m_rbo_id = 0;
+ }
}
const glw::GLchar* gl3cts::TransformFeedback::DrawXFBStream::s_vertex_shader_blank = "#version 130\n"
m_vao_id = 0;
}
+
+ if (m_fbo_id)
+ {
+ gl.deleteFramebuffers(1, &m_fbo_id);
+
+ m_fbo_id = 0;
+ }
+
+ if (m_rbo_id)
+ {
+ gl.deleteRenderbuffers(1, &m_rbo_id);
+
+ m_rbo_id = 0;
+ }
}
const glw::GLchar* gl3cts::TransformFeedback::DrawXFBInstanced::s_vertex_shader_generate =
m_vao_id = 0;
}
+
+ if (m_fbo_id)
+ {
+ gl.deleteFramebuffers(1, &m_fbo_id);
+
+ m_fbo_id = 0;
+ }
+
+ if (m_rbo_id)
+ {
+ gl.deleteRenderbuffers(1, &m_rbo_id);
+
+ m_rbo_id = 0;
+ }
}
const glw::GLchar* gl3cts::TransformFeedback::DrawXFBStreamInstanced::s_vertex_shader_blank = "#version 140\n"