Module: Mesa
Branch: staging/22.2
Commit: 40224875388e36fe89748f5f8e11d7380d0b234d
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=40224875388e36fe89748f5f8e11d7380d0b234d

Author: Mike Blumenkrantz <[email protected]>
Date:   Fri Sep  2 09:42:45 2022 -0400

llvmpipe: don't assume pipe_context is always available in flush_frontbuffer

Fixes: 91dcadf9569 ("llvmpipe: finish rendering before flushing frontbuffer 
resources.")

Reviewed-by: Jose Fonseca <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18392>
(cherry picked from commit 7437c8f7d55b0e164626b557363b3e29a223967d)

---

 .pick_status.json                        | 2 +-
 src/gallium/drivers/llvmpipe/lp_screen.c | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index f4e017226bb..751f31185f8 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -5584,7 +5584,7 @@
         "description": "llvmpipe: don't assume pipe_context is always 
available in flush_frontbuffer",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "main_sha": null,
         "because_sha": "91dcadf95690c658b34b20cf5dbf77f79c1cf297"
     },
diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c 
b/src/gallium/drivers/llvmpipe/lp_screen.c
index 55ee39b201f..a4a879ee0de 100644
--- a/src/gallium/drivers/llvmpipe/lp_screen.c
+++ b/src/gallium/drivers/llvmpipe/lp_screen.c
@@ -835,7 +835,8 @@ llvmpipe_flush_frontbuffer(struct pipe_screen *_screen,
    assert(texture->dt);
 
    if (texture->dt) {
-      llvmpipe_flush_resource(_pipe, resource, 0, true, true, false, 
"frontbuffer");
+      if (_pipe)
+         llvmpipe_flush_resource(_pipe, resource, 0, true, true, false, 
"frontbuffer");
       winsys->displaytarget_display(winsys, texture->dt, context_private, 
sub_box);
    }
 }

Reply via email to