qt: update to 4.8.2.
This commit is contained in:
parent
720fe4fe46
commit
9ca62ab945
15 changed files with 19 additions and 125 deletions
|
@ -1,33 +0,0 @@
|
||||||
From 827e5c4c689d4ecb4f8c1ab48c9a7ab712fe2ca7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: John Tapsell <john.tapsell.ext@basyskom.com>
|
|
||||||
Date: Mon, 12 Mar 2012 22:07:47 +0000
|
|
||||||
Subject: [PATCH] Harfbuzz-thai - fix buffer overflow when setting item
|
|
||||||
attributes
|
|
||||||
|
|
||||||
Change-Id: I19eeb4ec25a7c6cb3f584e6290169f9f327b8713
|
|
||||||
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
|
|
||||||
---
|
|
||||||
src/3rdparty/harfbuzz/src/harfbuzz-thai.c | 9 +++++-
|
|
||||||
.../qtextscriptengine/tst_qtextscriptengine.cpp | 29 ++++++++++++++++++++
|
|
||||||
2 files changed, 36 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-thai.c b/src/3rdparty/harfbuzz/src/harfbuzz-thai.c
|
|
||||||
index bf6c35b..3c0ffe8 100644
|
|
||||||
--- a/src/3rdparty/harfbuzz/src/harfbuzz-thai.c
|
|
||||||
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-thai.c
|
|
||||||
@@ -263,8 +263,13 @@ static HB_Bool HB_ThaiConvertStringToGlyphIndices (HB_ShaperItem *item)
|
|
||||||
// The only glyphs that should be passed to this function that cannot be mapped to
|
|
||||||
// tis620 are the ones of type Inherited class. Pass these glyphs untouched.
|
|
||||||
glyphString[slen++] = string[i];
|
|
||||||
- if (string[i] == 0x200D || string[i] == 0x200C)
|
|
||||||
- item->attributes[slen-1].dontPrint = true; // Hide ZWJ and ZWNJ characters
|
|
||||||
+ if (string[i] == 0x200D || string[i] == 0x200C) {
|
|
||||||
+ // Check that we do not run out of bounds when setting item->attributes. If we do
|
|
||||||
+ // run out of bounds then this function will return false, the necessary amount of
|
|
||||||
+ // memory is reallocated, and this function will then be called again.
|
|
||||||
+ if (slen <= item->num_glyphs)
|
|
||||||
+ item->attributes[slen-1].dontPrint = true; // Hide ZWJ and ZWNJ characters
|
|
||||||
+ }
|
|
||||||
} else {
|
|
||||||
glyphString[slen++] = (HB_UChar16) thai_get_glyph_index (font_type, rglyphs[lgi]);
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
Index: fix-cursortox-crash.patch
|
|
||||||
===================================================================
|
|
||||||
--- fix-cursortox-crash.patch (revision 0)
|
|
||||||
+++ fix-cursortox-crash.patch (arbetskopia)
|
|
||||||
#commit cac12f4592477d99ef6fffaad40345bf85ef53b5
|
|
||||||
#Author: Jiang Jiang <jiang.jiang@nokia.com>
|
|
||||||
#Date: Mon Apr 2 12:32:05 2012 +0200
|
|
||||||
#
|
|
||||||
# Fix a crash in cursorToX() when new block is added
|
|
||||||
#
|
|
||||||
# When an empty new block is being added, the layoutData->memory data
|
|
||||||
# will be 0, thus QTextEngine::attributes() will return 0. We should
|
|
||||||
# only access the attributes pointer when some text actually exist.
|
|
||||||
#
|
|
||||||
# Task-number: QTBUG-24718
|
|
||||||
# Change-Id: I9ce9f7b57bccf24099a02832ce30fb6cebfaad33
|
|
||||||
#
|
|
||||||
diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
|
|
||||||
index ee658d9..16f7150 100644
|
|
||||||
--- a/src/gui/text/qtextlayout.cpp
|
|
||||||
+++ b/src/gui/text/qtextlayout.cpp
|
|
||||||
@@ -2508,6 +2508,10 @@ qreal QTextLine::cursorToX(int *cursorPos, Edge edge) const
|
|
||||||
int pos = *cursorPos;
|
|
||||||
int itm;
|
|
||||||
const HB_CharAttributes *attributes = eng->attributes();
|
|
||||||
+ if (!attributes) {
|
|
||||||
+ *cursorPos = 0;
|
|
||||||
+ return x.toReal();
|
|
||||||
+ }
|
|
||||||
while (pos < line.from + line.length && !attributes[pos].charStop)
|
|
||||||
pos++;
|
|
||||||
if (pos == line.from + (int)line.length) {
|
|
|
@ -1,27 +0,0 @@
|
||||||
diff -up qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h.me qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h
|
|
||||||
--- qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h.me 2012-01-24 11:24:14.729942043 +0100
|
|
||||||
+++ qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h 2012-01-24 14:28:39.848109534 +0100
|
|
||||||
@@ -57,9 +57,7 @@ namespace JSC {
|
|
||||||
|
|
||||||
class JSGlobalObject : public JSVariableObject {
|
|
||||||
protected:
|
|
||||||
- using JSVariableObject::JSVariableObjectData;
|
|
||||||
-
|
|
||||||
- struct JSGlobalObjectData : public JSVariableObjectData {
|
|
||||||
+ struct JSGlobalObjectData : public JSVariableObject::JSVariableObjectData {
|
|
||||||
// We use an explicit destructor function pointer instead of a
|
|
||||||
// virtual destructor because we want to avoid adding a vtable
|
|
||||||
// pointer to this struct. Adding a vtable pointer would force the
|
|
||||||
diff -up qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h.me qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h
|
|
||||||
--- qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h.me 2012-01-24 11:40:07.167856677 +0100
|
|
||||||
+++ qt-everywhere-opensource-src-4.8.0/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSStaticScopeObject.h 2012-01-24 14:28:34.640306629 +0100
|
|
||||||
@@ -32,8 +32,7 @@ namespace JSC{
|
|
||||||
|
|
||||||
class JSStaticScopeObject : public JSVariableObject {
|
|
||||||
protected:
|
|
||||||
- using JSVariableObject::JSVariableObjectData;
|
|
||||||
- struct JSStaticScopeObjectData : public JSVariableObjectData {
|
|
||||||
+ struct JSStaticScopeObjectData : public JSVariableObject::JSVariableObjectData {
|
|
||||||
JSStaticScopeObjectData()
|
|
||||||
: JSVariableObjectData(&symbolTable, ®isterStore + 1)
|
|
||||||
{
|
|
|
@ -1,14 +1,12 @@
|
||||||
# Template file for 'qt-demos'.
|
# Template file for 'qt-demos'.
|
||||||
#
|
#
|
||||||
depends="hicolor-icon-theme qt-docs"
|
depends="hicolor-icon-theme qt-docs>=$version"
|
||||||
|
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
||||||
short_desc="Qt examples and demos"
|
short_desc="Qt examples and demos"
|
||||||
long_desc="${long_desc}
|
long_desc="${long_desc}
|
||||||
|
|
||||||
This package contains Qt 4 examples and demos."
|
This package contains Qt 4 examples and demos."
|
||||||
|
|
||||||
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/share/doc/qt ${DESTDIR}/usr/bin
|
mkdir -p ${DESTDIR}/usr/share/doc/qt ${DESTDIR}/usr/bin
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
# Template file for 'qt-designer'.
|
# Template file for 'qt-designer'.
|
||||||
#
|
#
|
||||||
depends="hicolor-icon-theme"
|
depends="hicolor-icon-theme"
|
||||||
|
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
||||||
short_desc="Qt GUI designer"
|
short_desc="Qt GUI designer"
|
||||||
long_desc="${long_desc}
|
long_desc="${long_desc}
|
||||||
|
|
||||||
Qt Designer is a tool for designing and building graphical user
|
Qt Designer is a tool for designing and building graphical user
|
||||||
interfaces (GUIs) from Qt components."
|
interfaces (GUIs) from Qt components."
|
||||||
|
|
||||||
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/lib/qt/plugins \
|
mkdir -p ${DESTDIR}/usr/lib/qt/plugins \
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
# Template file for 'qt-devel-tools'.
|
# Template file for 'qt-devel-tools'.
|
||||||
#
|
#
|
||||||
depends="hicolor-icon-theme"
|
depends="hicolor-icon-theme"
|
||||||
|
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
||||||
short_desc="Qt development tools"
|
short_desc="Qt development tools"
|
||||||
long_desc="${long_desc}
|
long_desc="${long_desc}
|
||||||
|
|
||||||
This packages contains tools used to assist in Qt development, including
|
This packages contains tools used to assist in Qt development, including
|
||||||
the Qt Assistant, Linguist, D-Bus Viewer and Pixel Tool applications. "
|
the Qt Assistant, Linguist, D-Bus Viewer and Pixel Tool applications. "
|
||||||
|
|
||||||
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/bin
|
mkdir -p ${DESTDIR}/usr/bin
|
||||||
|
|
|
@ -7,7 +7,6 @@ long_desc="${long_desc}
|
||||||
This package contains the header development files and development
|
This package contains the header development files and development
|
||||||
programs used for runing Qt applications."
|
programs used for runing Qt applications."
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/lib ${DESTDIR}/usr/bin
|
mkdir -p ${DESTDIR}/usr/lib ${DESTDIR}/usr/bin
|
||||||
|
|
|
@ -1,14 +1,12 @@
|
||||||
# Template file for 'qt-docs'.
|
# Template file for 'qt-docs'.
|
||||||
#
|
#
|
||||||
depends="qt"
|
depends="qt>=$version"
|
||||||
|
noarch=yes
|
||||||
short_desc="Qt API documentation"
|
short_desc="Qt API documentation"
|
||||||
long_desc="${long_desc}
|
long_desc="${long_desc}
|
||||||
|
|
||||||
This package contains the complete Qt 4 API documentation (new help format)."
|
This package contains the complete Qt 4 API documentation (new help format)."
|
||||||
|
|
||||||
noarch=yes
|
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/share/doc
|
mkdir -p ${DESTDIR}/usr/share/doc
|
||||||
|
|
|
@ -5,7 +5,6 @@ long_desc="${long_desc}
|
||||||
|
|
||||||
This package contains a Qt phonon backend plugin for GStreamer."
|
This package contains a Qt phonon backend plugin for GStreamer."
|
||||||
|
|
||||||
|
|
||||||
do_install() {
|
do_install() {
|
||||||
vmove usr/lib/qt/plugins/phonon_backend/libphonon_gstreamer.so \
|
vmove usr/lib/qt/plugins/phonon_backend/libphonon_gstreamer.so \
|
||||||
usr/lib/qt/plugins/phonon_backend
|
usr/lib/qt/plugins/phonon_backend
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
libmysqlclient_r.so.16
|
|
||||||
libQtSql.so.4
|
libQtSql.so.4
|
||||||
libQtCore.so.4
|
libQtCore.so.4
|
||||||
libstdc++.so.6
|
libstdc++.so.6
|
||||||
libgcc_s.so.1
|
libgcc_s.so.1
|
||||||
libc.so.6
|
libc.so.6
|
||||||
|
libz.so.1
|
||||||
|
libssl.so.1
|
||||||
|
libcrypto.so.1
|
||||||
|
libpthread.so.0
|
||||||
|
libm.so.6
|
||||||
|
|
|
@ -5,7 +5,6 @@ long_desc="${long_desc}
|
||||||
|
|
||||||
This package contains a Qt SQL plugin for MySQL."
|
This package contains a Qt SQL plugin for MySQL."
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/lib/qt/plugins/sqldrivers
|
mkdir -p ${DESTDIR}/usr/lib/qt/plugins/sqldrivers
|
||||||
|
|
|
@ -5,7 +5,6 @@ long_desc="${long_desc}
|
||||||
|
|
||||||
This package contains a Qt SQL plugin for PostgreSQL."
|
This package contains a Qt SQL plugin for PostgreSQL."
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/lib/qt/plugins/sqldrivers
|
mkdir -p ${DESTDIR}/usr/lib/qt/plugins/sqldrivers
|
||||||
|
|
|
@ -5,7 +5,6 @@ long_desc="${long_desc}
|
||||||
|
|
||||||
This package contains a Qt SQL plugin for SQLite."
|
This package contains a Qt SQL plugin for SQLite."
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/lib/qt/plugins/sqldrivers
|
mkdir -p ${DESTDIR}/usr/lib/qt/plugins/sqldrivers
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
# Template file for 'qt-qtconfig'.
|
# Template file for 'qt-qtconfig'.
|
||||||
#
|
#
|
||||||
depends="hicolor-icon-theme"
|
depends="hicolor-icon-theme"
|
||||||
|
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
||||||
short_desc="Qt configuration tool"
|
short_desc="Qt configuration tool"
|
||||||
long_desc="${long_desc}
|
long_desc="${long_desc}
|
||||||
|
|
||||||
The Qt Configuration program allows end users to configure the look
|
The Qt Configuration program allows end users to configure the look
|
||||||
and behavior of any Qt application."
|
and behavior of any Qt application."
|
||||||
|
|
||||||
gtk_iconcache_dirs="/usr/share/icons/hicolor"
|
|
||||||
|
|
||||||
|
|
||||||
do_install()
|
do_install()
|
||||||
{
|
{
|
||||||
mkdir -p ${DESTDIR}/usr/bin \
|
mkdir -p ${DESTDIR}/usr/bin \
|
||||||
|
|
|
@ -1,27 +1,22 @@
|
||||||
# Template file for 'qt'
|
# Template file for 'qt'
|
||||||
pkgname=qt
|
pkgname=qt
|
||||||
version=4.8.1
|
version=4.8.2
|
||||||
patch_args="-Np1"
|
patch_args="-Np1"
|
||||||
_distname=qt-everywhere-opensource-src
|
_distname=qt-everywhere-opensource-src
|
||||||
wrksrc=${_distname}-${version}
|
wrksrc=${_distname}-${version}
|
||||||
homepage="http://qt.nokia.com/"
|
homepage="http://qt.nokia.com/"
|
||||||
distfiles="ftp://ftp.qt.nokia.com/qt/source/${_distname}-$version.tar.gz"
|
subpackages="qt-libphonon qt-plugin-pgsql qt-plugin-mysql qt-plugin-sqlite qt-demos qt-docs qt-qmake qt-qtconfig qt-designer qt-devel qt-devel-tools qt-plugin-gstreamer"
|
||||||
|
# XXX Missing dependencies: unixodbc.
|
||||||
makedepends="pkg-config freetype-devel MesaLib-devel libXrender-devel fontconfig-devel libXext-devel libX11-devel libstdc++-devel libXi-devel libXv-devel libXinerama-devel libXrandr-devel libXcursor-devel zlib-devel dbus-devel glib-devel gstreamer-devel gst-plugins-base-devel sqlite-devel alsa-lib-devel openssl-devel tiff-devel libmng-devel jpeg-devel libpng-devel libSM-devel libICE-devel libmysqlclient-devel postgresql-libs-devel pulseaudio-devel gtk+-devel icu-devel cups-devel"
|
makedepends="pkg-config freetype-devel MesaLib-devel libXrender-devel fontconfig-devel libXext-devel libX11-devel libstdc++-devel libXi-devel libXv-devel libXinerama-devel libXrandr-devel libXcursor-devel zlib-devel dbus-devel glib-devel gstreamer-devel gst-plugins-base-devel sqlite-devel alsa-lib-devel openssl-devel tiff-devel libmng-devel jpeg-devel libpng-devel libSM-devel libICE-devel libmysqlclient-devel postgresql-libs-devel pulseaudio-devel gtk+-devel icu-devel cups-devel"
|
||||||
short_desc="A cross-platform application and UI framework"
|
short_desc="A cross-platform application and UI framework"
|
||||||
maintainer="Juan RP <xtraeme@gmail.com>"
|
maintainer="Juan RP <xtraeme@gmail.com>"
|
||||||
license="GPL-3, LGPL-2.1"
|
license="GPL-3, LGPL-2.1"
|
||||||
checksum=ef851a36aa41b4ad7a3e4c96ca27eaed2a629a6d2fa06c20f072118caed87ae8
|
distfiles="http://releases.qt-project.org/qt4/source/${_distname}-$version.tar.gz"
|
||||||
|
checksum=921b2a2d060934ceda65ae4615edec474cea13d3c893e7df19ad1262e7dc2379
|
||||||
long_desc="
|
long_desc="
|
||||||
Qt(TM) is a GUI software toolkit. Qt simplifies the task of writing and
|
Qt(TM) is a GUI software toolkit. Qt simplifies the task of writing and
|
||||||
maintaining GUI (graphical user interface) applications."
|
maintaining GUI (graphical user interface) applications."
|
||||||
|
|
||||||
subpackages="qt-libphonon qt-plugin-pgsql qt-plugin-mysql qt-plugin-sqlite"
|
|
||||||
subpackages="${subpackages} qt-demos qt-docs qt-qmake qt-qtconfig"
|
|
||||||
subpackages="${subpackages} qt-designer qt-devel qt-devel-tools"
|
|
||||||
subpackages="${subpackages} qt-plugin-gstreamer"
|
|
||||||
|
|
||||||
# XXX Missing dependencies: unixodbc.
|
|
||||||
|
|
||||||
do_configure() {
|
do_configure() {
|
||||||
export LD_LIBRARY_PATH="${wrksrc}/lib:${LD_LIBRARY_PATH}"
|
export LD_LIBRARY_PATH="${wrksrc}/lib:${LD_LIBRARY_PATH}"
|
||||||
|
|
||||||
|
@ -78,4 +73,6 @@ do_install() {
|
||||||
install -d ${DESTDIR}/usr/share/applications
|
install -d ${DESTDIR}/usr/share/applications
|
||||||
install -m644 ${FILESDIR}/*.desktop \
|
install -m644 ${FILESDIR}/*.desktop \
|
||||||
${DESTDIR}/usr/share/applications
|
${DESTDIR}/usr/share/applications
|
||||||
|
|
||||||
|
vinstall LGPL_EXCEPTION.txt 644 usr/share/licenses/qt
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue