gallium: fix reference counting functions to be strict-aliasing compliant
[mesa.git] / src / gallium / drivers / svga / svga_screen_texture.h
index 1cc4063e6536d31c98d1ab2a1a13cde58da4e492..727f2c51d284bc3bff887746f05567d798264af2 100644 (file)
@@ -164,8 +164,9 @@ svga_sampler_view_reference(struct svga_sampler_view **ptr, struct svga_sampler_
 {
    struct svga_sampler_view *old = *ptr;
 
-   if (pipe_reference((struct pipe_reference **)ptr, &v->reference))
+   if (pipe_reference(&(*ptr)->reference, &v->reference))
       svga_destroy_sampler_view_priv(old);
+   *ptr = v;
 }
 
 extern void