UVD was checked before the info fields were initialized. Introduced
by commit 68f6dec32.
---
 src/gallium/drivers/r600/r600_pipe.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_pipe.c 
b/src/gallium/drivers/r600/r600_pipe.c
index 097a6b8..32df2a3 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -1037,6 +1037,13 @@ struct pipe_screen *r600_screen_create(struct 
radeon_winsys *ws)
        rscreen->b.b.fence_signalled = r600_fence_signalled;
        rscreen->b.b.fence_finish = r600_fence_finish;
        rscreen->b.b.get_driver_query_info = r600_get_driver_query_info;
+       r600_init_screen_resource_functions(&rscreen->b.b);
+
+       if (!r600_common_screen_init(&rscreen->b, ws)) {
+               FREE(rscreen);
+               return NULL;
+       }
+
        if (rscreen->b.info.has_uvd) {
                rscreen->b.b.get_video_param = ruvd_get_video_param;
                rscreen->b.b.is_video_format_supported = 
ruvd_is_format_supported;
@@ -1044,12 +1051,6 @@ struct pipe_screen *r600_screen_create(struct 
radeon_winsys *ws)
                rscreen->b.b.get_video_param = r600_get_video_param;
                rscreen->b.b.is_video_format_supported = 
vl_video_buffer_is_format_supported;
        }
-       r600_init_screen_resource_functions(&rscreen->b.b);
-
-       if (!r600_common_screen_init(&rscreen->b, ws)) {
-               FREE(rscreen);
-               return NULL;
-       }
 
        rscreen->b.debug_flags |= debug_get_flags_option("R600_DEBUG", 
r600_debug_options, 0);
        if (debug_get_bool_option("R600_DEBUG_COMPUTE", FALSE))
-- 
1.8.1.2

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to