[OE-core] [PATCH] directfb: fix client->gfx_state initialisation

Andre McCurdy armccurdy at gmail.com
Tue Jun 14 22:51:06 UTC 2016


Shortly before the DirectFB 1.7.7 release, an optimisation was added
to CoreGraphicsStateClient_Init() to avoid creating an extended
Graphics State object if it will not later be required:

  4d422fb Client: Create extended Graphics State object when needed for later usage

Unfortunately the client->gfx_state variable used to track the
extended Graphics State object is not initialised, which can lead to
crashes etc due to creation of the Graphics State object erroneously
being skipped.

Signed-off-by: Andre McCurdy <armccurdy at gmail.com>
---
 meta/recipes-graphics/directfb/directfb.inc        |  1 +
 .../fix-client-gfx_state-initialisation.patch      | 38 ++++++++++++++++++++++
 2 files changed, 39 insertions(+)
 create mode 100644 meta/recipes-graphics/directfb/directfb/fix-client-gfx_state-initialisation.patch

diff --git a/meta/recipes-graphics/directfb/directfb.inc b/meta/recipes-graphics/directfb/directfb.inc
index f6b7cbe..527062a 100644
--- a/meta/recipes-graphics/directfb/directfb.inc
+++ b/meta/recipes-graphics/directfb/directfb.inc
@@ -19,6 +19,7 @@ SRC_URI = "http://downloads.yoctoproject.org/mirror/sources/DirectFB-${PV}.tar.g
            file://compar_fn_t.patch \
            file://union-sigval.patch \
            file://use-PTHREAD_MUTEX_RECURSIVE.patch \
+           file://fix-client-gfx_state-initialisation.patch \
           "
 
 S = "${WORKDIR}/DirectFB-${PV}"
diff --git a/meta/recipes-graphics/directfb/directfb/fix-client-gfx_state-initialisation.patch b/meta/recipes-graphics/directfb/directfb/fix-client-gfx_state-initialisation.patch
new file mode 100644
index 0000000..57a9b0d
--- /dev/null
+++ b/meta/recipes-graphics/directfb/directfb/fix-client-gfx_state-initialisation.patch
@@ -0,0 +1,38 @@
+From 8e53c0b9cedb62b82e2b7680d793d433b647ae20 Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy at gmail.com>
+Date: Mon, 13 Jun 2016 13:32:44 -0700
+Subject: [PATCH] fix client->gfx_state initialisation
+
+Shortly before the DirectFB 1.7.7 release, an optimisation was added
+to CoreGraphicsStateClient_Init() to avoid creating an extended
+Graphics State object if it will not later be required:
+
+  4d422fb Client: Create extended Graphics State object when needed for later usage
+
+Unfortunately the client->gfx_state variable used to track the
+extended Graphics State object is not initialised, which can lead to
+crashes etc due to creation of the Graphics State object erroneously
+being skipped.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy at gmail.com>
+---
+ src/core/CoreGraphicsStateClient.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/core/CoreGraphicsStateClient.cpp b/src/core/CoreGraphicsStateClient.cpp
+index 5d46f0e..5007755 100644
+--- a/src/core/CoreGraphicsStateClient.cpp
++++ b/src/core/CoreGraphicsStateClient.cpp
+@@ -364,6 +364,7 @@ CoreGraphicsStateClient_Init( CoreGraphicsStateClient *client,
+      client->renderer  = NULL;
+      client->requestor = NULL;
+      client->throttle  = NULL;
++     client->gfx_state = NULL;
+ 
+      if (dfb_config->task_manager) {
+           if (dfb_config->call_nodirect) {
+-- 
+1.9.1
+
-- 
1.9.1




More information about the Openembedded-core mailing list