]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix crash when the visible bell is rung but there is no cairo surface
authorPo Lu <luangruo@yahoo.com>
Sat, 22 Jan 2022 01:11:33 +0000 (09:11 +0800)
committerPo Lu <luangruo@yahoo.com>
Sat, 22 Jan 2022 01:11:33 +0000 (09:11 +0800)
* src/pgtkterm.c (pgtk_flash): Return if the cairo surface is
not present.  (bug#53420)
(pgtk_cr_update_surface_desired_size): Reformat comment.

src/pgtkterm.c

index 4c38ff5a597754f3bd049d2e70e26212864332f5..8073f51c6102fc766333120f7f78fc8c184d4a31 100644 (file)
@@ -3734,6 +3734,9 @@ pgtk_flash (struct frame *f)
   block_input ();
 
   {
+    if (!FRAME_CR_CONTEXT (f))
+      return;
+
     cairo_surface_t *surface_orig = FRAME_CR_SURFACE (f);
 
     int width = FRAME_CR_SURFACE_DESIRED_WIDTH (f);
@@ -7041,13 +7044,12 @@ If set to a non-float value, there will be no wait at all.  */);
 }
 
 /* Cairo does not allow resizing a surface/context after it is
- * created, so we need to trash the old context, create a new context
- * on the next cr_clip_begin with the new dimensions and request a
- * re-draw.
- *
- * This Will leave the active context available to present on screen
- * until a redrawn frame is completed.
- */
+   created, so we need to trash the old context, create a new context
+   on the next cr_clip_begin with the new dimensions and request a
+   re-draw.
+
+   This will leave the active context available to present on screen
+   until a redrawn frame is completed.  */
 void
 pgtk_cr_update_surface_desired_size (struct frame *f, int width, int height, bool force)
 {