From 8954d99659e3b793c99441e1fa8b6d474cbf343b Mon Sep 17 00:00:00 2001
From: Rui Matos <tiagomatos@gmail.com>
Date: Mon, 6 Jun 2016 20:28:34 +0200
Subject: [PATCH] shell-recorder: Avoid a crash when the cursor texture is NULL

When running as a wayland compositor, MetaCursorTracker might
legitimately not have a displayed cursor because e.g. a client unsets
the cursor surface.

Note that, under an X session, the assumption that the tracker always
has a cursor texture is true because XFixesGetCursorImage() always
returns data even if the cursor isn't visible.

https://bugzilla.gnome.org/show_bug.cgi?id=767001
---
 src/shell-recorder.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/shell-recorder.c b/src/shell-recorder.c
index ef729ff5f..e7562ef01 100644
--- a/src/shell-recorder.c
+++ b/src/shell-recorder.c
@@ -321,6 +321,9 @@ recorder_fetch_cursor_image (ShellRecorder *recorder)
   guint8 *data;
 
   texture = meta_cursor_tracker_get_sprite (recorder->cursor_tracker);
+  if (!texture)
+    return;
+
   width = cogl_texture_get_width (texture);
   height = cogl_texture_get_height (texture);
   stride = 4 * width;