libmatchbox: Fix the matchbox environment start failure on x86-64 target.

x86 target works well. Root cause is libmatchbox use "0"(int) as termination
indicator when calling XftFontOpen, which in turn called FcPatternVapBuild(in
fontconfig). It try to get the "0" as char* and fetch wrong value, as int and
char* has different size on x86-64. This patch forces a NULL pointer as
terminator to fix it.

[BUGID #234] is fixed by this

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
This commit is contained in:
Zhai Edwin
2010-09-02 08:22:10 +08:00
committed by Richard Purdie
parent 36aa00b6f7
commit 0d7bcdf9fd
3 changed files with 27 additions and 4 deletions

View File

@@ -0,0 +1,21 @@
matchbox environment start fail on x86-64 target, while ok on x86 target. Root
cause is libmatchbox use "0"(int) as termination indicator when calling
XftFontOpen, which in turn called FcPatternVapBuild(in fontconfig). It try to
get the "0" as char* and fetch wrong value, as int and char* has different size
on x86-64. This patch forces a NULL pointer as terminator to fix it.
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
Index: libmatchbox-1.9/libmb/mbexp.c
===================================================================
--- libmatchbox-1.9.orig/libmb/mbexp.c 2010-08-28 06:33:25.000000000 +0800
+++ libmatchbox-1.9/libmb/mbexp.c 2010-08-28 06:30:05.000000000 +0800
@@ -348,7 +348,7 @@
XFT_SIZE, XftTypeDouble , (double)font->pt_size,
XFT_WEIGHT, XftTypeInteger, weight,
XFT_SLANT, XftTypeInteger , slant,
- 0);
+ NULL);
if (font->font != NULL ) result = 2;

View File

@@ -1,11 +1,12 @@
require libmatchbox.inc
PR = "r7"
PR = "r8"
SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/${PV}/${PN}-${PV}.tar.gz \
file://16bppfixes.patch;patch=1 \
file://configure_fixes.patch;patch=1 \
file://check.m4"
file://check.m4 \
file://matchbox-start-fix.patch;patch=1"
do_configure_prepend () {
cp ${WORKDIR}/check.m4 ${S}/

View File

@@ -1,13 +1,14 @@
require libmatchbox.inc
PV = "1.7+svnr${SRCREV}"
PR = "r4"
PR = "r5"
DEFAULT_PREFERENCE = "-1"
SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=${PN};proto=http \
file://configure_fixes.patch;patch=1 \
file://check.m4 \
file://16bppfixes.patch;patch=1"
file://16bppfixes.patch;patch=1 \
file://matchbox-start-fix.patch;patch=1"
S = "${WORKDIR}/libmatchbox"