Mesa (master): draw: Duplicate TGSI tokens in draw_pipe_pstipple module.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Tue Mar 25 12:55:59 UTC 2014


Module: Mesa
Branch: master
Commit: ee89432a4714b9da4508ed643db9fda39563de79
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ee89432a4714b9da4508ed643db9fda39563de79

Author: José Fonseca <jfonseca at vmware.com>
Date:   Fri Mar 14 16:57:34 2014 +0000

draw: Duplicate TGSI tokens in draw_pipe_pstipple module.

As done in draw_pipe_aaline and draw_pipe_aapoint modules.

Reviewed-by: Brian Paul <brianp at vmware.com>
Reviewed-by: Roland Scheidegger <sroland at vmware.com>
Reviewed-by: Zack Rusin <zackr at vmware.com>
Cc: "10.0 10.1" <mesa-stable at lists.freedesktop.org>

---

 src/gallium/auxiliary/draw/draw_pipe_pstipple.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/auxiliary/draw/draw_pipe_pstipple.c b/src/gallium/auxiliary/draw/draw_pipe_pstipple.c
index d7dcfdb..d216787 100644
--- a/src/gallium/auxiliary/draw/draw_pipe_pstipple.c
+++ b/src/gallium/auxiliary/draw/draw_pipe_pstipple.c
@@ -673,7 +673,7 @@ pstip_create_fs_state(struct pipe_context *pipe,
    struct pstip_fragment_shader *pstipfs = CALLOC_STRUCT(pstip_fragment_shader);
 
    if (pstipfs) {
-      pstipfs->state = *fs;
+      pstipfs->state.tokens = tgsi_dup_tokens(fs->tokens);
 
       /* pass-through */
       pstipfs->driver_fs = pstip->driver_create_fs_state(pstip->pipe, fs);
@@ -707,6 +707,7 @@ pstip_delete_fs_state(struct pipe_context *pipe, void *fs)
    if (pstipfs->pstip_fs)
       pstip->driver_delete_fs_state(pstip->pipe, pstipfs->pstip_fs);
 
+   FREE((void*)pstipfs->state.tokens);
    FREE(pstipfs);
 }
 




More information about the mesa-commit mailing list