From 9382e09b7ca29deec9f299544dfcb32828f364b7 Mon Sep 17 00:00:00 2001 From: rdb Date: Mon, 31 Dec 2018 13:13:45 +0100 Subject: [PATCH] display: fix returning reference to temporary in shader input This might cause issues when the transform cache is off. --- panda/src/display/graphicsStateGuardian.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/panda/src/display/graphicsStateGuardian.cxx b/panda/src/display/graphicsStateGuardian.cxx index 1b0caeabd0..93a3f36651 100644 --- a/panda/src/display/graphicsStateGuardian.cxx +++ b/panda/src/display/graphicsStateGuardian.cxx @@ -1255,7 +1255,8 @@ fetch_specified_part(Shader::ShaderMatInput part, InternalName *name, return &(_scene_setup->get_camera_transform()->get_mat()); } case Shader::SMO_model_to_view: { - return &(_inv_cs_transform->compose(_internal_transform)->get_mat()); + t = _inv_cs_transform->compose(_internal_transform)->get_mat(); + return &t; } case Shader::SMO_model_to_apiview: { return &(_internal_transform->get_mat());