summaryrefslogtreecommitdiffstats
path: root/package/directfb
diff options
context:
space:
mode:
Diffstat (limited to 'package/directfb')
-rw-r--r--package/directfb/0006-fix-client-gfx_state-initialisation.patch39
-rw-r--r--package/directfb/Config.in6
2 files changed, 43 insertions, 2 deletions
diff --git a/package/directfb/0006-fix-client-gfx_state-initialisation.patch b/package/directfb/0006-fix-client-gfx_state-initialisation.patch
new file mode 100644
index 0000000000..5b7a202ca3
--- /dev/null
+++ b/package/directfb/0006-fix-client-gfx_state-initialisation.patch
@@ -0,0 +1,39 @@
+From 8e53c0b9cedb62b82e2b7680d793d433b647ae20 Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@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@gmail.com>
+Signed-off-by: Philippe Reynes <philippe.reynes@sagemcom.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
+
diff --git a/package/directfb/Config.in b/package/directfb/Config.in
index b552164777..6a3d71868f 100644
--- a/package/directfb/Config.in
+++ b/package/directfb/Config.in
@@ -1,5 +1,6 @@
config BR2_PACKAGE_DIRECTFB
bool "directfb"
+ depends on !BR2_STATIC_LIBS # static link issues
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
@@ -161,7 +162,8 @@ config BR2_PACKAGE_DIRECTFB_TESTS
endif # BR2_PACKAGE_DIRECTFB
-comment "directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5"
+comment "directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5, dynamic library"
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP || \
- !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL || \
+ BR2_STATIC_LIBS
OpenPOWER on IntegriCloud