mesa: add bool param to _mesa_free_context_data
[mesa.git] / src / mesa / state_tracker / st_sampler_view.c
index 8c0277fe42ae4807b96f401b7319ff1589d1e87b..a31e573c01a3dec0371ddcbbf94d306c3ccbc6b5 100644 (file)
@@ -226,7 +226,7 @@ st_texture_release_all_sampler_views(struct st_context *st,
    for (unsigned i = 0; i < views->count; ++i) {
       struct st_sampler_view *stsv = &views->views[i];
       if (stsv->view) {
-         if (stsv->st != st) {
+         if (stsv->st && stsv->st != st) {
             /* Transfer this reference to the zombie list.  It will
              * likely be freed when the zombie list is freed.
              */
@@ -489,6 +489,10 @@ get_sampler_view_format(struct st_context *st,
    if (srgb_skip_decode)
       format = util_format_linear(format);
 
+   /* if resource format matches then YUV wasn't lowered */
+   if (format == stObj->pt->format)
+      return format;
+
    /* Use R8_UNORM for video formats */
    switch (format) {
    case PIPE_FORMAT_NV12: