From 0788eab2bf0176901af9c8bbf68c189d7fb44f5d Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 16 Mar 2015 18:40:07 +0100 Subject: [PATCH] (D3D) render_chain.cpp - cleanups --- gfx/d3d/render_chain.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/gfx/d3d/render_chain.cpp b/gfx/d3d/render_chain.cpp index 4b632e523a..1dd9232a01 100644 --- a/gfx/d3d/render_chain.cpp +++ b/gfx/d3d/render_chain.cpp @@ -506,8 +506,13 @@ void renderchain_set_vertices(void *data, Pass *pass, void renderchain_set_viewport(void *data, D3DVIEWPORT *vp) { + LPDIRECT3DDEVICE d3dr; renderchain_t *chain = (renderchain_t*)data; - LPDIRECT3DDEVICE d3dr = (LPDIRECT3DDEVICE)chain->dev; + + if (!chain) + return; + + d3dr = (LPDIRECT3DDEVICE)chain->dev; d3d_set_viewport(d3dr, vp); } @@ -518,6 +523,9 @@ void renderchain_set_mvp(void *data, CGprogram &vPrg, D3DXMATRIX proj, ortho, rot, tmp; renderchain_t *chain = (renderchain_t*)data; + if (!chain) + return; + D3DXMatrixOrthoOffCenterLH(&ortho, 0, vp_width, 0, vp_height, 0, 1); if (rotation) @@ -538,6 +546,9 @@ void renderchain_convert_geometry(void *data, const LinkInfo *info, { renderchain_t *chain = (renderchain_t*)data; + if (!chain || !info) + return; + switch (info->pass->fbo.type_x) { case RARCH_SCALE_VIEWPORT: @@ -592,6 +603,7 @@ void renderchain_render_pass(void *data, Pass *pass, unsigned pass_index) unsigned i; renderchain_t *chain = (renderchain_t*)data; LPDIRECT3DDEVICE d3dr = (LPDIRECT3DDEVICE)chain->dev; + renderchain_set_shaders(chain, pass->fPrg, pass->vPrg); d3d_set_texture(d3dr, 0, pass->tex);