diff options
Diffstat (limited to 'extra')
37 files changed, 388 insertions, 695 deletions
diff --git a/extra/colord-gtk/PKGBUILD b/extra/colord-gtk/PKGBUILD index 80f0b7937..df39dfdfd 100644 --- a/extra/colord-gtk/PKGBUILD +++ b/extra/colord-gtk/PKGBUILD @@ -1,18 +1,19 @@ -# $Id: PKGBUILD 197900 2013-10-30 11:33:54Z allan $ +# $Id: PKGBUILD 211867 2014-04-28 15:11:58Z jgc $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Ionut Biru <ibiru@archlinux.org> pkgname=colord-gtk pkgver=0.1.25 -pkgrel=1 +pkgrel=2 pkgdesc="GTK integration for libcolord" arch=('i686' 'x86_64') url="http://www.freedesktop.org/software/colord" license=('GPL2') depends=('lcms2' 'gtk3' 'colord') makedepends=('intltool' 'gobject-introspection' 'vala' 'gtk-doc') -source=($url/releases/$pkgname-$pkgver.tar.xz) -sha1sums=('ffb27568ff25860fbcc09cc32ba05469655b099d') +source=($url/releases/$pkgname-$pkgver.tar.xz{,.asc}) +sha1sums=('ffb27568ff25860fbcc09cc32ba05469655b099d' + 'SKIP') build() { cd "$pkgname-$pkgver" diff --git a/extra/colord/PKGBUILD b/extra/colord/PKGBUILD index 9feda6e6b..41a8bed91 100644 --- a/extra/colord/PKGBUILD +++ b/extra/colord/PKGBUILD @@ -1,40 +1,29 @@ -# $Id: PKGBUILD 204982 2014-02-02 18:46:09Z heftig $ +# $Id: PKGBUILD 211866 2014-04-28 15:11:57Z jgc $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Ionut Biru <ibiru@archlinux.org> pkgname=colord -pkgver=1.0.6 +pkgver=1.2.0 pkgrel=1 pkgdesc="System daemon for managing color devices" arch=(i686 x86_64) url="http://www.freedesktop.org/software/colord" license=(GPL2) -depends=(lcms2 libgusb polkit shared-color-profiles sqlite systemd dconf dbus) +depends=(lcms2 libgusb polkit sqlite systemd dconf dbus) makedepends=(intltool gobject-introspection vala docbook2x sane bash-completion) -optdepends=('sane: UseSANE support [/etc/colord.conf]') +optdepends=('sane: scanner support') +replaces=('shared-color-profiles') install=colord.install -backup=(etc/colord.conf) -source=($url/releases/$pkgname-$pkgver.tar.xz{,.asc} - udev-systemd.patch) -sha1sums=('b3ad9d1cd90ff0ea4d955b253dc0491d851c2778' - 'SKIP' - '3b467b9674f767c804943d191beaf6bd1ba3a606') - -prepare() { - cd $pkgname-$pkgver - patch -Np1 -i ../udev-systemd.patch -} +source=($url/releases/$pkgname-$pkgver.tar.xz{,.asc}) +sha1sums=('a96619dcca24aea1527054f0117211cf7ac30dec' + 'SKIP') build() { cd $pkgname-$pkgver - - # put udev files in /usr/lib - sed -i "/slashlibdir=/s#/lib#/usr/lib#" configure - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --libexecdir=/usr/lib/$pkgname --disable-static \ --with-systemdsystemunitdir=/usr/lib/systemd/system \ - --enable-vala --enable-sane --disable-volume-search + --enable-vala --enable-sane --with-daemon-user=colord make } diff --git a/extra/colord/colord.install b/extra/colord/colord.install index c25dff2d3..2b20f5edd 100644 --- a/extra/colord/colord.install +++ b/extra/colord/colord.install @@ -1,5 +1,9 @@ post_install() { glib-compile-schemas /usr/share/glib-2.0/schemas + getent group colord >/dev/null || groupadd -g 124 colord + getent passwd colord >/dev/null || useradd -d /var/lib/colord -u 124 -g colord -s /bin/false colord + chown colord:colord /var/lib/colord + chown colord:colord /var/lib/colord/*.db 2>/dev/null || return 0 } post_upgrade() { @@ -7,5 +11,7 @@ post_upgrade() { } post_remove() { - post_install + glib-compile-schemas /usr/share/glib-2.0/schemas + getent passwd colord >/dev/null && userdel colord + getent group colord >/dev/null && groupdel colord } diff --git a/extra/colord/udev-systemd.patch b/extra/colord/udev-systemd.patch deleted file mode 100644 index 311a92437..000000000 --- a/extra/colord/udev-systemd.patch +++ /dev/null @@ -1,17 +0,0 @@ -Description: Migrate from usb_id and usb_db to udev builtins usb_id and hwdb. -Author: Dmitrijs Ledkovs <dmitrij.ledkov@ubuntu.com> -Bug-Ubuntu: https://bugs.launchpad.net/bugs/1200185 - ---- colord-1.0.1.orig/rules/69-cd-sensors.rules.in -+++ colord-1.0.1/rules/69-cd-sensors.rules.in -@@ -86,8 +86,8 @@ ATTRS{idVendor}=="273f", ATTRS{idProduct - - # color calibration device - ENV{COLORD_SENSOR_KIND}=="*?", ENV{COLOR_MEASUREMENT_DEVICE}="1" --ENV{COLORD_SENSOR_KIND}=="*?", ENV{ID_MODEL}=="", IMPORT{program}="usb_id --export %p" --ENV{COLORD_SENSOR_KIND}=="*?", ENV{ID_MODEL_FROM_DATABASE}=="", IMPORT{program}="usb-db %p" -+ENV{COLORD_SENSOR_KIND}=="*?", ENV{ID_MODEL}=="", IMPORT{builtin}="usb_id" -+ENV{COLORD_SENSOR_KIND}=="*?", ENV{ID_MODEL_FROM_DATABASE}=="", IMPORT{builtin}="hwdb --subsystem=usb" - - # Allow the daemon to access the color devices - ENV{COLORD_SENSOR_KIND}=="*?", GROUP="@daemon_user@" diff --git a/extra/elfutils/CVE-2014-0172.patch b/extra/elfutils/CVE-2014-0172.patch new file mode 100644 index 000000000..5f9541d68 --- /dev/null +++ b/extra/elfutils/CVE-2014-0172.patch @@ -0,0 +1,37 @@ +From 7f1eec317db79627b473c5b149a22a1b20d1f68f Mon Sep 17 00:00:00 2001 +From: Mark Wielaard <mjw@redhat.com> +Date: Wed, 9 Apr 2014 11:33:23 +0200 +Subject: [PATCH] CVE-2014-0172 Check for overflow before calling malloc to + uncompress data. + +https://bugzilla.redhat.com/show_bug.cgi?id=1085663 + +Reported-by: Florian Weimer <fweimer@redhat.com> +Signed-off-by: Mark Wielaard <mjw@redhat.com> +diff --git a/libdw/dwarf_begin_elf.c b/libdw/dwarf_begin_elf.c +index 79daeac..34ea373 100644 +--- a/libdw/dwarf_begin_elf.c ++++ b/libdw/dwarf_begin_elf.c +@@ -1,5 +1,5 @@ + /* Create descriptor from ELF descriptor for processing file. +- Copyright (C) 2002-2011 Red Hat, Inc. ++ Copyright (C) 2002-2011, 2014 Red Hat, Inc. + This file is part of elfutils. + Written by Ulrich Drepper <drepper@redhat.com>, 2002. + +@@ -282,6 +282,12 @@ check_section (Dwarf *result, GElf_Ehdr *ehdr, Elf_Scn *scn, bool inscngrp) + memcpy (&size, data->d_buf + 4, sizeof size); + size = be64toh (size); + ++ /* Check for unsigned overflow so malloc always allocated ++ enough memory for both the Elf_Data header and the ++ uncompressed section data. */ ++ if (unlikely (sizeof (Elf_Data) + size < size)) ++ break; ++ + Elf_Data *zdata = malloc (sizeof (Elf_Data) + size); + if (unlikely (zdata == NULL)) + break; +-- +1.9.2 + diff --git a/extra/elfutils/PKGBUILD b/extra/elfutils/PKGBUILD index 78061031b..5d8a51e91 100644 --- a/extra/elfutils/PKGBUILD +++ b/extra/elfutils/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 205875 2014-02-12 08:00:43Z lcarlier $ +# $Id: PKGBUILD 211890 2014-04-28 16:31:39Z lcarlier $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Andrej Gelenberg <andrej.gelenberg@udo.edu> pkgname=elfutils pkgver=0.158 -pkgrel=1 +pkgrel=2 pkgdesc="Libraries and utilities to handle ELF object files and DWARF debugging information" arch=('i686' 'x86_64') url="https://fedorahosted.org/elfutils/" @@ -14,15 +14,20 @@ provides=('libelf') replaces=('libelf') conflicts=('libelf') source=(https://fedorahosted.org/releases/e/l/elfutils/${pkgver}/elfutils-${pkgver}.tar.bz2{,.sig} - fix-run-backtrace-native-core-test.patch) + fix-run-backtrace-native-core-test.patch + CVE-2014-0172.patch) options=('staticlibs') sha1sums=('09adbbf0f3a35bb1bcb77c2eaa40de8d3443af4d' - 'SKIP') + 'SKIP' + '8ecef640f3d1229cdf45ffda016a69848c18e61b' + '3e776c07d6ca2c7604a384d266f79c3ece1fb179') prepare() { cd ${pkgname}-${pkgver} patch -Np1 -i ../fix-run-backtrace-native-core-test.patch + # merged upstream + patch -Np1 -i ../CVE-2014-0172.patch } build() { @@ -47,6 +52,3 @@ package() { rm "${pkgdir}"/usr/lib/lib{asm,dw,elf}.a } -sha1sums=('09adbbf0f3a35bb1bcb77c2eaa40de8d3443af4d' - 'SKIP' - '8ecef640f3d1229cdf45ffda016a69848c18e61b') diff --git a/extra/feh/PKGBUILD b/extra/feh/PKGBUILD index b1bf8bec6..31a500db2 100644 --- a/extra/feh/PKGBUILD +++ b/extra/feh/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 206522 2014-03-01 05:47:00Z bisson $ +# $Id: PKGBUILD 211832 2014-04-28 01:58:35Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=feh -pkgver=2.10 +pkgver=2.11 pkgrel=1 pkgdesc='Fast and light imlib2-based image viewer' url='http://feh.finalrewind.org/' @@ -16,7 +16,7 @@ optdepends=('perl: feh-cam, webcam wrapper for feh' 'imagemagick: support more file formats') makedepends=('libxt') source=("${url}${pkgname}-${pkgver}.tar.bz2"{,.asc}) -sha1sums=('38b472f2a3222e287269a0719c7ead383f1cb8a5' 'SKIP') +sha1sums=('c3fe2158886b9a25f6a99770c1e132a4a3b41b84' 'SKIP') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/genius/PKGBUILD b/extra/genius/PKGBUILD index 697e124a4..faf6108fa 100644 --- a/extra/genius/PKGBUILD +++ b/extra/genius/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 197981 2013-10-30 12:03:54Z allan $ +# $Id: PKGBUILD 211851 2014-04-28 08:33:22Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Arjan Timmerman <arjan@soulfly.nl> pkgname=genius pkgver=1.0.17 -pkgrel=1 +pkgrel=2 pkgdesc="Advanced calculator including a mathematical programming language" arch=('i686' 'x86_64') license=('GPL') @@ -13,11 +13,18 @@ depends=('vte' 'gtksourceview2' 'mpfr' 'desktop-file-utils' 'hicolor-icon-theme' makedepends=('intltool' 'gnome-doc-utils') options=('!makeflags') install=genius.install -source=(http://ftp.gnome.org/pub/GNOME/sources/genius/1.0/${pkgname}-${pkgver}.tar.xz) -sha256sums=('2af0cf64a3bae45e8e6c38ce8c0c0724386ae29614a83d9eff179ee09ecef44f') +source=(http://ftp.gnome.org/pub/GNOME/sources/genius/1.0/${pkgname}-${pkgver}.tar.xz + readline-fix.patch) +sha256sums=('2af0cf64a3bae45e8e6c38ce8c0c0724386ae29614a83d9eff179ee09ecef44f' + '9f340c99b9f428bf476350f54d1f75556f630bc750c629da89ac6b8fe411b7d6') + +prepare() { + cd $pkgname-$pkgver + patch -Np1 -i ../readline-fix.patch +} build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd $pkgname-$pkgver ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/genius \ --localstatedir=/var --disable-static \ @@ -27,6 +34,6 @@ build() { } package() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd $pkgname-$pkgver make DESTDIR="${pkgdir}" install } diff --git a/extra/genius/readline-fix.patch b/extra/genius/readline-fix.patch new file mode 100644 index 000000000..18255545b --- /dev/null +++ b/extra/genius/readline-fix.patch @@ -0,0 +1,35 @@ +From 5292545265af6ae4e8140b1af89369f7ae9be554 Mon Sep 17 00:00:00 2001 +From: "Jiri (George) Lebl" <jiri.lebl@gmail.com> +Date: Thu, 3 Apr 2014 08:02:02 -0500 +Subject: Thu Apr 03 08:01:49 2014 Jiri (George) Lebl <jirka@5z.com> + + * src/inter.c, src/genius-readline-helper.c: apply patch from Felipe + Sateler of debian to fix build with new readline. + +diff --git a/src/genius-readline-helper.c b/src/genius-readline-helper.c +index 7e9e84b..dbf8fd2 100644 +--- a/src/genius-readline-helper.c ++++ b/src/genius-readline-helper.c +@@ -183,7 +183,7 @@ main(int argc, char *argv[]) + rl_terminal_name = "xterm"; + rl_readline_name = "Genius"; + rl_attempted_completion_function = +- (CPPFunction *)tab_completion; ++ (rl_completion_func_t *)tab_completion; + + while(fgets(buf,4096,infp)) { + int count; +diff --git a/src/inter.c b/src/inter.c +index 915f115..f0d2558 100644 +--- a/src/inter.c ++++ b/src/inter.c +@@ -367,5 +367,5 @@ init_inter(void) + { + rl_readline_name = "Genius"; + rl_attempted_completion_function = +- (CPPFunction *)tab_completion; ++ (rl_completion_func_t *)tab_completion; + } +-- +cgit v0.10.1 + diff --git a/extra/gnome-color-manager/PKGBUILD b/extra/gnome-color-manager/PKGBUILD index d9979c939..3da17be42 100644 --- a/extra/gnome-color-manager/PKGBUILD +++ b/extra/gnome-color-manager/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 210454 2014-04-14 20:06:26Z jgc $ +# $Id: PKGBUILD 211868 2014-04-28 15:11:59Z jgc $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> pkgname=gnome-color-manager pkgver=3.12.1 -pkgrel=1 +pkgrel=2 pkgdesc="Color profile manager for the GNOME desktop" arch=(i686 x86_64) url="http://projects.gnome.org/gnome-color-manager/" diff --git a/extra/gnome-control-center/PKGBUILD b/extra/gnome-control-center/PKGBUILD index cc7cd6256..56bc5b9bd 100644 --- a/extra/gnome-control-center/PKGBUILD +++ b/extra/gnome-control-center/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 211251 2014-04-18 11:35:12Z heftig $ +# $Id: PKGBUILD 211869 2014-04-28 15:12:00Z jgc $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Jan de Groot <jgc@archlinux.org> pkgname=gnome-control-center pkgver=3.12.1 -pkgrel=1 +pkgrel=2 pkgdesc="The Control Center for GNOME" license=(GPL) arch=(i686 x86_64) diff --git a/extra/gnome-settings-daemon/PKGBUILD b/extra/gnome-settings-daemon/PKGBUILD index b6c4015c3..455d46c10 100644 --- a/extra/gnome-settings-daemon/PKGBUILD +++ b/extra/gnome-settings-daemon/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 211247 2014-04-18 11:32:22Z heftig $ +# $Id: PKGBUILD 211870 2014-04-28 15:12:01Z jgc $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> pkgname=gnome-settings-daemon pkgver=3.12.1 -pkgrel=1 +pkgrel=2 pkgdesc="The GNOME Settings daemon" arch=('i686' 'x86_64') license=('GPL') diff --git a/extra/gtk3/PKGBUILD b/extra/gtk3/PKGBUILD index 075783014..fbd159046 100644 --- a/extra/gtk3/PKGBUILD +++ b/extra/gtk3/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 210499 2014-04-14 20:07:02Z jgc $ +# $Id: PKGBUILD 211871 2014-04-28 15:12:02Z jgc $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> pkgname=gtk3 pkgver=3.12.1 -pkgrel=1 +pkgrel=2 pkgdesc="GObject-based multi-platform GUI toolkit (v3)" arch=(i686 x86_64) url="http://www.gtk.org/" diff --git a/extra/kdeedu-ktouch/PKGBUILD b/extra/kdeedu-ktouch/PKGBUILD index 268001f95..1b80d6c10 100644 --- a/extra/kdeedu-ktouch/PKGBUILD +++ b/extra/kdeedu-ktouch/PKGBUILD @@ -1,23 +1,25 @@ -# $Id: PKGBUILD 211392 2014-04-18 18:02:09Z andrea $ +# $Id: PKGBUILD 211843 2014-04-28 05:52:08Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> pkgname=kdeedu-ktouch pkgver=4.13.0 -pkgrel=1 +pkgrel=2 pkgdesc="Touch Typing Tutor" url="http://kde.org/applications/education/ktouch/" arch=('i686' 'x86_64') license=('GPL' 'LGPL' 'FDL') groups=('kde' 'kdeedu') -depends=('kdebase-runtime') +depends=('kdebase-runtime' 'kqtquickcharts') makedepends=('cmake' 'automoc4' 'mesa') install=${pkgname}.install source=("http://download.kde.org/stable/${pkgver}/src/ktouch-${pkgver}.tar.xz") sha1sums=('a737598452c62f18a6471d714581a7cb16871e4f') -build() { - cd "${srcdir}" +prepare() { mkdir build +} + +build() { cd build cmake ../ktouch-${pkgver} \ -DCMAKE_BUILD_TYPE=Release \ @@ -27,6 +29,6 @@ build() { } package() { - cd "${srcdir}"/build + cd build make DESTDIR="${pkgdir}" install } diff --git a/extra/libgdiplus/PKGBUILD b/extra/libgdiplus/PKGBUILD index 98cf8da38..4ff97ce93 100644 --- a/extra/libgdiplus/PKGBUILD +++ b/extra/libgdiplus/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 200003 2013-11-21 01:30:41Z allan $ +# $Id: PKGBUILD 211855 2014-04-28 10:32:20Z jgc $ # Maintainer: Daniel Isenmann <daniel@archlinux.org> pkgname=libgdiplus pkgver=2.10.9 -pkgrel=3 +pkgrel=4 pkgdesc="An Open Source Implementation of the GDI+ API" arch=(i686 x86_64) license=('MPL' 'LGPL') @@ -12,17 +12,20 @@ depends=('libtiff' 'cairo' 'giflib' 'glib2' 'libexif') source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2 libpng15.patch libgdiplus0-giflib5.patch - libgdiplus-2.10.9-gold.patch) + libgdiplus-2.10.9-gold.patch + libgdiplus-2.10.9-freetype25.patch) md5sums=('b4615c14584b5d73cbb9757c28887654' 'a2d143676bbaceeb88b4c34069e93986' 'ad97558c721106eea03c7808b501814b' - '95fb92750c131ce9287419c3ac5fcb76') + '95fb92750c131ce9287419c3ac5fcb76' + '6ee484dde02ea89aded1287c0a8d4bad') prepare() { cd ${pkgname}-${pkgver} patch -Np0 -i ../libpng15.patch patch -Np1 -i ../libgdiplus0-giflib5.patch patch -Np1 -i ../libgdiplus-2.10.9-gold.patch + patch -Np1 -i ../libgdiplus-2.10.9-freetype25.patch sed -i -e 's/-L\${libjpeg_prefix}\/lib -ljpeg/-ljpeg/' configure } diff --git a/extra/libgdiplus/libgdiplus-2.10.9-freetype25.patch b/extra/libgdiplus/libgdiplus-2.10.9-freetype25.patch new file mode 100644 index 000000000..bd359f4e7 --- /dev/null +++ b/extra/libgdiplus/libgdiplus-2.10.9-freetype25.patch @@ -0,0 +1,26 @@ +commit 180c02e0f2a2016eba8520b456ca929e9dcf03db +Author: Jo Shields <directhex@apebox.org> +Date: Mon Dec 16 09:24:57 2013 +0000 + + Use FreeType macros for tttables.h inclusion + + As of FreeType 2.1.6 (November 2003), using #include to include Freetype libraries directly is not supported. + + This has come to a head, as in FreeType 2.5.0, the location of headers has been moved around, breaking building of libgdiplus. + + This slight change uses the "official" way to include the required header file, without breaking building on older versions of the library. + +diff --git a/src/gdiplus-private.h b/src/gdiplus-private.h +index 59edf9e..dfccc02 100644 +--- a/src/gdiplus-private.h ++++ b/src/gdiplus-private.h +@@ -30,7 +30,8 @@ + #include <stdio.h> + #include <math.h> + #include <glib.h> +-#include <freetype/tttables.h> ++#include <ft2build.h> ++#include FT_TRUETYPE_TABLES_H + #include <pthread.h> + #include <unistd.h> + diff --git a/extra/libgnome/0001-Don-t-use-G_DISABLE_DEPRECATED.patch b/extra/libgnome/0001-Don-t-use-G_DISABLE_DEPRECATED.patch new file mode 100644 index 000000000..fdbf8fb0d --- /dev/null +++ b/extra/libgnome/0001-Don-t-use-G_DISABLE_DEPRECATED.patch @@ -0,0 +1,26 @@ +From 64a0443e26a50745c8fdc02eddf60985a977275f Mon Sep 17 00:00:00 2001 +From: Colin Walters <walters@verbum.org> +Date: Thu, 2 May 2013 17:58:00 -0400 +Subject: [PATCH] Don't use G_DISABLE_DEPRECATED + +Because really, no one cares about this code, we're not going to +stay on the GLib treadmill. +--- + libgnome/Makefile.am | 1 - + 1 files changed, 0 insertions(+), 1 deletions(-) + +diff --git a/libgnome/Makefile.am b/libgnome/Makefile.am +index 9c8cd3e..aa01f6c 100644 +--- a/libgnome/Makefile.am ++++ b/libgnome/Makefile.am +@@ -17,7 +17,6 @@ INCLUDES = \ + -I$(srcdir)/.. \ + $(WARN_CFLAGS) \ + $(LIBGNOME_CFLAGS) \ +- -DG_DISABLE_DEPRECATED \ + -DLIBGNOME_PREFIX=\""$(prefix)"\" \ + -DLIBGNOME_LIBDIR=\""$(libdir)"\" \ + -DLIBGNOME_DATADIR=\""$(datadir)"\" \ +-- +1.7.1 + diff --git a/extra/libgnome/PKGBUILD b/extra/libgnome/PKGBUILD index df53fd348..6ea807cb3 100644 --- a/extra/libgnome/PKGBUILD +++ b/extra/libgnome/PKGBUILD @@ -1,21 +1,28 @@ -# $Id: PKGBUILD 198167 2013-10-30 13:12:08Z allan $ +# $Id: PKGBUILD 211849 2014-04-28 08:26:09Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=libgnome pkgname=('libgnome' 'libgnome-data') pkgver=2.32.1 -pkgrel=4 +pkgrel=5 arch=('i686' 'x86_64') license=('LGPL') makedepends=('intltool' 'gnome-vfs' 'libbonobo' 'gconf' 'gvfs' 'libcanberra') options=('!emptydirs') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2) -sha256sums=('b2c63916866485793b87398266dd7778548c1734923c272a94d84ee011b6f7a4') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2 + 0001-Don-t-use-G_DISABLE_DEPRECATED.patch) +sha256sums=('b2c63916866485793b87398266dd7778548c1734923c272a94d84ee011b6f7a4' + 'c2521ed5985159b33a0a5bf53b89012abd9521391fc8ce4c9c73289ca18eb147') + +prepare() { + cd $pkgbase-$pkgver + patch -Np1 -i ../0001-Don-t-use-G_DISABLE_DEPRECATED.patch +} build() { - cd "${srcdir}/${pkgbase}-${pkgver}" - + cd $pkgbase-$pkgver + autoreconf -fi ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static --disable-esd make @@ -25,7 +32,7 @@ package_libgnome() { pkgdesc="Common libraries for GNOME" depends=("libgnome-data=${pkgver}" 'gnome-vfs' 'libbonobo' 'gconf' 'gvfs' 'libcanberra') - cd "${srcdir}/${pkgbase}-${pkgver}" + cd $pkgbase-$pkgver make -C libgnome DESTDIR="${pkgdir}" install make -C monikers DESTDIR="${pkgdir}" install @@ -36,7 +43,7 @@ package_libgnome-data() { depends=('gconf') install=libgnome.install - cd "${srcdir}/${pkgbase}-${pkgver}" + cd $pkgbase-$pkgver for dir in doc gnome-data po schemas do @@ -45,5 +52,5 @@ package_libgnome-data() { install -m755 -d "${pkgdir}/usr/share/gconf/schemas" gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgbase}.schemas" --domain libgnome-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas + rm -f "${pkgdir}"/etc/gconf/schemas/*.schemas } diff --git a/extra/libstdc++5/PKGBUILD b/extra/libstdc++5/PKGBUILD index fdb604f4f..5cb4f309f 100644 --- a/extra/libstdc++5/PKGBUILD +++ b/extra/libstdc++5/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 198242 2013-10-30 13:40:46Z allan $ +# $Id: PKGBUILD 211853 2014-04-28 10:19:53Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libstdc++5 pkgver=3.3.6 -pkgrel=4 +pkgrel=5 pkgdesc="GNU Standard C++ library version 3" arch=('i686' 'x86_64') url="http://gcc.gnu.org" @@ -12,16 +12,15 @@ depends=('gcc-libs') makedepends=('binutils' 'gcc') options=('!makeflags') source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2 - 'gcc-3.4.3-no_multilib_amd64.patch') + gcc-3.4.3-no_multilib_amd64.patch + siginfo.patch) md5sums=('18c52e6fb8966b7700665dca289d077f' '6b3d00b8d079805be1b895f7f6ce47a0' - '088e0807e677010cafe4e590e8711be1') + '088e0807e677010cafe4e590e8711be1' + 'bf36b281a9fc81f624f31f2623a3ad0e') -build(){ - export CFLAGS="-march=${CARCH/_/-} -O2 -pipe" - export CXXFLAGS="-march=${CARCH/_/-} -O2 -pipe" - - cd ${srcdir}/gcc-${pkgver} +prepare() { + cd gcc-$pkgver if [ "$CARCH" = "x86_64" ]; then patch -Np0 -i $srcdir/gcc-3.4.3-no_multilib_amd64.patch @@ -33,9 +32,18 @@ build(){ # No fixincludes sed -i -e 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + patch -Np0 -i ../siginfo.patch + mkdir ../gcc-build - cd ../gcc-build - ../gcc-${pkgver}/configure --prefix=/usr --enable-shared \ +} + +build(){ + export CFLAGS="-march=${CARCH/_/-} -O2" + export CXXFLAGS="-march=${CARCH/_/-} -O2" + unset CPPFLAGS + + cd gcc-build + CPP=/usr/bin/cpp ../gcc-${pkgver}/configure --prefix=/usr --enable-shared \ --enable-languages=c++ --enable-threads=posix --enable-__cxa_atexit \ --disable-multilib --libdir=/usr/lib make all-target-libstdc++-v3 BOOT_CFLAGS="${CFLAGS}" STAGE1_CFLAGS="-O" diff --git a/extra/libstdc++5/siginfo.patch b/extra/libstdc++5/siginfo.patch new file mode 100644 index 000000000..4292c1aff --- /dev/null +++ b/extra/libstdc++5/siginfo.patch @@ -0,0 +1,14 @@ +--- gcc/config/i386/linux.h.orig 2014-04-28 10:00:16.556121683 +0000 ++++ gcc/config/i386/linux.h 2014-04-28 10:00:43.105959247 +0000 +@@ -257,9 +257,9 @@ + { \ + struct rt_sigframe { \ + int sig; \ +- struct siginfo *pinfo; \ ++ siginfo_t *pinfo; \ + void *puc; \ +- struct siginfo info; \ ++ siginfo_t info; \ + struct ucontext uc; \ + } *rt_ = (CONTEXT)->cfa; \ + sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \ diff --git a/extra/mesa/PKGBUILD b/extra/mesa/PKGBUILD index 90749cacd..9bb5be5b8 100644 --- a/extra/mesa/PKGBUILD +++ b/extra/mesa/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 211519 2014-04-19 07:28:36Z lcarlier $ +# $Id: PKGBUILD 211882 2014-04-28 15:42:49Z lcarlier $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgbase=mesa pkgname=('ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa' 'mesa-libgl') pkgver=10.1.1 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') makedepends=('python2' 'libxml2' 'libx11' 'glproto' 'libdrm' 'dri2proto' 'dri3proto' 'presentproto' 'libxshmfence' 'libxxf86vm' 'libxdamage' 'libvdpau' 'wayland' 'elfutils' 'llvm' 'systemd') @@ -37,11 +37,12 @@ build() { --with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \ --with-egl-platforms=x11,drm,wayland \ --with-llvm-shared-libs \ - --enable-gallium-llvm \ --enable-egl \ - --enable-gallium-egl \ - --enable-shared-glapi \ + --disable-gallium-egl \ --enable-gbm \ + --enable-gallium-gbm \ + --enable-gallium-llvm \ + --enable-shared-glapi \ --enable-glx-tls \ --enable-dri \ --enable-glx \ @@ -53,6 +54,7 @@ build() { --enable-vdpau \ --enable-dri3 # --help + # --disable-gallium-egl : not well maintained/expose less bug, so prefer egl_dri2 (FS#40096) make diff --git a/extra/nepomuk-core/PKGBUILD b/extra/nepomuk-core/PKGBUILD index 7171b7b20..95b4d729d 100644 --- a/extra/nepomuk-core/PKGBUILD +++ b/extra/nepomuk-core/PKGBUILD @@ -1,14 +1,15 @@ -# $Id: PKGBUILD 211500 2014-04-18 18:03:47Z andrea $ +# $Id: PKGBUILD 211857 2014-04-28 10:48:20Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> pkgname=nepomuk-core pkgver=4.13.0 -pkgrel=1 +pkgrel=2 pkgdesc="Contains the central Nepomuk services like file indexing, file system monitoring, query, storage, client libraries" url="https://projects.kde.org/projects/kde/kdelibs/nepomuk-core" arch=('i686' 'x86_64') license=('GPL' 'LGPL' 'FDL') -depends=('kdelibs' 'poppler-qt' 'taglib' 'ffmpeg' 'ebook-tools' 'kdegraphics-mobipocket' 'shared-desktop-ontologies') +depends=('kdelibs' 'poppler-qt' 'taglib' 'ffmpeg' 'ebook-tools' + 'kdegraphics-mobipocket' 'shared-desktop-ontologies' 'baloo') makedepends=('cmake' 'automoc4' 'doxygen') source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.xz") sha1sums=('44e65063138088be91f03c8bb7ff8be7cd255984') diff --git a/extra/openjpeg/PKGBUILD b/extra/openjpeg/PKGBUILD index 65e9f357b..bdf615a23 100644 --- a/extra/openjpeg/PKGBUILD +++ b/extra/openjpeg/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 205844 2014-02-11 15:10:57Z jgc $ +# $Id: PKGBUILD 211845 2014-04-28 07:45:33Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=openjpeg -pkgver=1.5.1 -pkgrel=2 +pkgver=1.5.2 +pkgrel=1 pkgdesc="An open source JPEG 2000 codec" arch=(i686 x86_64) license=('BSD') @@ -12,42 +12,9 @@ depends=('zlib') makedepends=('libtiff' 'lcms2' 'libpng' 'doxygen') optdepends=('lcms2: j2k_to_image and image_to_j2k programs' 'libpng: j2k_to_image and image_to_j2k programs') -source=(http://openjpeg.googlecode.com/files/openjpeg-${pkgver}.tar.gz - openjpeg-1.5.1-CVE-2013-1447.patch - openjpeg-1.5.1-CVE-2013-6045.patch - openjpeg-1.5.1-CVE-2013-6052.patch - openjpeg-1.5.1-CVE-2013-6053.patch - openjpeg-1.5.1-CVE-2013-6887.patch - openjpeg-1.5.1-doxygen_timestamp.patch - openjpeg-1.5-r2029.patch - openjpeg-1.5-r2031.patch - openjpeg-1.5-r2032.patch - openjpeg-1.5-r2033.patch) -sha1sums=('1b0b74d1af4c297fd82806a9325bb544caf9bb8b' - 'f2baf9bde105c96c7016be907cd278f2878be2b9' - 'f3764e473bd35508e83643a9257979eaa2c89c36' - '1d600a13432b977c46a5b74bf87bf1b5a130abfb' - '8d2da4b912d7e930abec31a956b678f62566884c' - '038e471597decf36de0c7c78915744054704c601' - '339677795a567c0f91b62141847b8e5dda53e763' - '1cd97c1be5cedad136894db2b16f856a28387aeb' - 'f68108dd25c7ed278678de11d5713fba87ab6017' - '222769c17e69022902d4e49c9dc5294361a00c85' - '9ec5c1e0909c8946a174733a598fbe38675a0c9c') +source=(http://downloads.sourceforge.net/openjpeg.mirror/${pkgname}-${pkgver}.tar.gz) +sha1sums=('496e99ff1d37b73bbce6a066dd9bd3576ebca0a2') -prepare() { - cd $pkgname-$pkgver - patch -Np1 -i ../openjpeg-1.5.1-doxygen_timestamp.patch - patch -Np0 -i ../openjpeg-1.5-r2029.patch - patch -Np0 -i ../openjpeg-1.5-r2031.patch - patch -Np0 -i ../openjpeg-1.5-r2032.patch - patch -Np0 -i ../openjpeg-1.5-r2033.patch - patch -Np1 -i ../openjpeg-1.5.1-CVE-2013-6052.patch - patch -Np1 -i ../openjpeg-1.5.1-CVE-2013-6053.patch -# patch -Np1 -i ../openjpeg-1.5.1-CVE-2013-6045.patch - patch -Np1 -i ../openjpeg-1.5.1-CVE-2013-1447.patch - patch -Np1 -i ../openjpeg-1.5.1-CVE-2013-6887.patch -} build() { cd $pkgname-$pkgver diff --git a/extra/openjpeg/openjpeg-1.5-r2029.patch b/extra/openjpeg/openjpeg-1.5-r2029.patch deleted file mode 100644 index a1a819a8c..000000000 --- a/extra/openjpeg/openjpeg-1.5-r2029.patch +++ /dev/null @@ -1,77 +0,0 @@ -Index: libopenjpeg/jp2.c -=================================================================== ---- libopenjpeg/jp2.c (revision 2028) -+++ libopenjpeg/jp2.c (revision 2029) -@@ -173,6 +173,10 @@ - else if (box->length == 0) { - box->length = cio_numbytesleft(cio) + 8; - } -+ if (box->length < 0) { -+ opj_event_msg(cinfo, EVT_ERROR, "Integer overflow in box->length\n"); -+ return OPJ_FALSE; // TODO: actually check jp2_read_boxhdr's return value -+ } - - return OPJ_TRUE; - } -@@ -654,6 +658,7 @@ - opj_event_msg(cinfo, EVT_ERROR, "Expected JP2H Marker\n"); - return OPJ_FALSE; - } -+ if (box.length <= 8) return OPJ_FALSE; - cio_skip(cio, box.length - 8); - - if(cio->bp >= cio->end) return OPJ_FALSE; -@@ -679,6 +684,7 @@ - { - if( !jp2_read_colr(jp2, cio, &box, color)) - { -+ if (box.length <= 8) return OPJ_FALSE; - cio_seek(cio, box.init_pos + 8); - cio_skip(cio, box.length - 8); - } -@@ -689,6 +695,7 @@ - { - if( !jp2_read_cdef(jp2, cio, &box, color)) - { -+ if (box.length <= 8) return OPJ_FALSE; - cio_seek(cio, box.init_pos + 8); - cio_skip(cio, box.length - 8); - } -@@ -699,6 +706,7 @@ - { - if( !jp2_read_pclr(jp2, cio, &box, color)) - { -+ if (box.length <= 8) return OPJ_FALSE; - cio_seek(cio, box.init_pos + 8); - cio_skip(cio, box.length - 8); - } -@@ -709,12 +717,14 @@ - { - if( !jp2_read_cmap(jp2, cio, &box, color)) - { -+ if (box.length <= 8) return OPJ_FALSE; - cio_seek(cio, box.init_pos + 8); - cio_skip(cio, box.length - 8); - } - if( jp2_read_boxhdr(cinfo, cio, &box) == OPJ_FALSE ) return OPJ_FALSE; - continue; - } -+ if (box.length <= 8) return OPJ_FALSE; - cio_seek(cio, box.init_pos + 8); - cio_skip(cio, box.length - 8); - if( jp2_read_boxhdr(cinfo, cio, &box) == OPJ_FALSE ) return OPJ_FALSE; -@@ -910,12 +920,14 @@ - } - do { - if(JP2_JP2C != box.type) { -+ if (box.length <= 8) return OPJ_FALSE; - cio_skip(cio, box.length - 8); - if( jp2_read_boxhdr(cinfo, cio, &box) == OPJ_FALSE ) return OPJ_FALSE; - } - } while(JP2_JP2C != box.type); - - *j2k_codestream_offset = cio_tell(cio); -+ if (box.length <= 8) return OPJ_FALSE; - *j2k_codestream_length = box.length - 8; - - return OPJ_TRUE; diff --git a/extra/openjpeg/openjpeg-1.5-r2031.patch b/extra/openjpeg/openjpeg-1.5-r2031.patch deleted file mode 100644 index d8249acad..000000000 --- a/extra/openjpeg/openjpeg-1.5-r2031.patch +++ /dev/null @@ -1,24 +0,0 @@ -Index: libopenjpeg/jpwl/Makefile.am -=================================================================== ---- libopenjpeg/jpwl/Makefile.am (revision 2030) -+++ libopenjpeg/jpwl/Makefile.am (revision 2031) -@@ -18,7 +18,6 @@ - ../pi.c \ - ../raw.c \ - ../t1.c \ --../t1_generate_luts.c \ - ../t2.c \ - ../tcd.c \ - ../tgt.c \ -Index: libopenjpeg/Makefile.am -=================================================================== ---- libopenjpeg/Makefile.am (revision 2030) -+++ libopenjpeg/Makefile.am (revision 2031) -@@ -35,7 +35,6 @@ - pi.c \ - raw.c \ - t1.c \ --t1_generate_luts.c \ - t2.c \ - tcd.c \ - tgt.c \ diff --git a/extra/openjpeg/openjpeg-1.5-r2032.patch b/extra/openjpeg/openjpeg-1.5-r2032.patch deleted file mode 100644 index 3d7d4fa7c..000000000 --- a/extra/openjpeg/openjpeg-1.5-r2032.patch +++ /dev/null @@ -1,30 +0,0 @@ -Index: libopenjpeg/j2k.c -=================================================================== ---- libopenjpeg/j2k.c (revision 2031) -+++ libopenjpeg/j2k.c (revision 2032) -@@ -468,6 +468,12 @@ - } - #endif /* USE_JPWL */ - -+ /* prevent division by zero */ -+ if (!(cp->tdx * cp->tdy)) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, "JPWL: invalid tile size (tdx: %d, tdy: %d)\n", cp->tdx, cp->tdy); -+ return; -+ } -+ - image->comps = (opj_image_comp_t*) opj_calloc(image->numcomps, sizeof(opj_image_comp_t)); - for (i = 0; i < image->numcomps; i++) { - int tmp, w, h; -@@ -506,6 +512,12 @@ - } - #endif /* USE_JPWL */ - -+ /* prevent division by zero */ -+ if (!(image->comps[i].dx * image->comps[i].dy)) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, "JPWL: invalid component size (dx: %d, dy: %d)\n", image->comps[i].dx, image->comps[i].dy); -+ return; -+ } -+ - /* TODO: unused ? */ - w = int_ceildiv(image->x1 - image->x0, image->comps[i].dx); - h = int_ceildiv(image->y1 - image->y0, image->comps[i].dy); diff --git a/extra/openjpeg/openjpeg-1.5-r2033.patch b/extra/openjpeg/openjpeg-1.5-r2033.patch deleted file mode 100644 index a84513913..000000000 --- a/extra/openjpeg/openjpeg-1.5-r2033.patch +++ /dev/null @@ -1,49 +0,0 @@ -Index: libopenjpeg/j2k.c -=================================================================== ---- libopenjpeg/j2k.c (revision 2032) -+++ libopenjpeg/j2k.c (revision 2033) -@@ -835,6 +835,12 @@ - - len = cio_read(cio, 2); /* Lcoc */ - compno = cio_read(cio, image->numcomps <= 256 ? 1 : 2); /* Ccoc */ -+ if (compno >= image->numcomps) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, -+ "bad component number in COC (%d out of a maximum of %d)\n", -+ compno, image->numcomps); -+ return; -+ } - tcp->tccps[compno].csty = cio_read(cio, 1); /* Scoc */ - j2k_read_cox(j2k, compno); - } -@@ -1016,9 +1022,16 @@ - - /* keep your private count of tiles */ - backup_compno++; -- }; -+ } - #endif /* USE_JPWL */ - -+ if ((compno < 0) || (compno >= numcomp)) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, -+ "bad component number in QCC (%d out of a maximum of %d)\n", -+ compno, j2k->image->numcomps); -+ return; -+ } -+ - j2k_read_qcx(j2k, compno, len - 2 - (numcomp <= 256 ? 1 : 2)); - } - -@@ -1602,6 +1615,13 @@ - }; - #endif /* USE_JPWL */ - -+ if (compno >= numcomps) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, -+ "bad component number in RGN (%d out of a maximum of %d)\n", -+ compno, j2k->image->numcomps); -+ return; -+ } -+ - tcp->tccps[compno].roishift = cio_read(cio, 1); /* SPrgn */ - } - diff --git a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-1447.patch b/extra/openjpeg/openjpeg-1.5.1-CVE-2013-1447.patch deleted file mode 100644 index a0e372325..000000000 --- a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-1447.patch +++ /dev/null @@ -1,165 +0,0 @@ -diff -up openjpeg-1.5.1/libopenjpeg/cio.c.CVE-2013-1447 openjpeg-1.5.1/libopenjpeg/cio.c ---- openjpeg-1.5.1/libopenjpeg/cio.c.CVE-2013-1447 2014-01-07 15:12:20.517748762 -0600 -+++ openjpeg-1.5.1/libopenjpeg/cio.c 2014-01-07 15:12:20.533748592 -0600 -@@ -107,6 +107,11 @@ int OPJ_CALLCONV cio_tell(opj_cio_t *cio - * pos : position, in number of bytes, from the beginning of the stream - */ - void OPJ_CALLCONV cio_seek(opj_cio_t *cio, int pos) { -+ if ((cio->start + pos) > cio->end) { -+ opj_event_msg(cio->cinfo, EVT_ERROR, "error: trying to seek past the end of the codestream (start = %d, change = %d, end = %d\n", cio->start, pos, cio->end); -+ cio->bp = cio->end; -+ return; -+ } - cio->bp = cio->start + pos; - } - -@@ -114,6 +119,7 @@ void OPJ_CALLCONV cio_seek(opj_cio_t *ci - * Number of bytes left before the end of the stream. - */ - int cio_numbytesleft(opj_cio_t *cio) { -+ assert((cio->end - cio->bp) >= 0); - return cio->end - cio->bp; - } - -@@ -191,6 +197,11 @@ unsigned int cio_read(opj_cio_t *cio, in - */ - void cio_skip(opj_cio_t *cio, int n) { - assert((cio->bp + n) >= cio->bp); -+ if (((cio->bp + n) < cio->start) || ((cio->bp + n) > cio->end)) { -+ opj_event_msg(cio->cinfo, EVT_ERROR, "error: trying to skip bytes past the end of the codestream (current = %d, change = %d, end = %d\n", cio->bp, n, cio->end); -+ cio->bp = cio->end; -+ return; -+ } - cio->bp += n; - } - -diff -up openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-1447 openjpeg-1.5.1/libopenjpeg/j2k.c ---- openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-1447 2014-01-07 15:12:20.525748677 -0600 -+++ openjpeg-1.5.1/libopenjpeg/j2k.c 2014-01-07 15:12:20.534748582 -0600 -@@ -476,7 +476,7 @@ static void j2k_read_siz(opj_j2k_t *j2k) - - image->comps = (opj_image_comp_t*) opj_calloc(image->numcomps, sizeof(opj_image_comp_t)); - for (i = 0; i < image->numcomps; i++) { -- int tmp, w, h; -+ int tmp/*, w, h*/; - tmp = cio_read(cio, 1); /* Ssiz_i */ - image->comps[i].prec = (tmp & 0x7f) + 1; - image->comps[i].sgnd = tmp >> 7; -@@ -511,6 +511,14 @@ static void j2k_read_siz(opj_j2k_t *j2k) - - } - #endif /* USE_JPWL */ -+ { -+ if (!(image->comps[i].dx * image->comps[i].dy)) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, -+ "JPWL: bad XRsiz_%d/YRsiz_%d (%d x %d)\n", -+ i, i, image->comps[i].dx, image->comps[i].dy); -+ return; -+ } -+ } - - /* prevent division by zero */ - if (!(image->comps[i].dx * image->comps[i].dy)) { -@@ -519,8 +527,8 @@ static void j2k_read_siz(opj_j2k_t *j2k) - } - - /* TODO: unused ? */ -- w = int_ceildiv(image->x1 - image->x0, image->comps[i].dx); -- h = int_ceildiv(image->y1 - image->y0, image->comps[i].dy); -+/* w = int_ceildiv(image->x1 - image->x0, image->comps[i].dx); -+ h = int_ceildiv(image->y1 - image->y0, image->comps[i].dy);*/ - - image->comps[i].resno_decoded = 0; /* number of resolution decoded */ - image->comps[i].factor = cp->reduce; /* reducing factor per component */ -@@ -2015,6 +2023,11 @@ opj_image_t* j2k_decode(opj_j2k_t *j2k, - } - if (j2k->state == J2K_STATE_NEOC) { - j2k_read_eoc(j2k); -+ /* Check one last time for errors during decoding before returning */ -+ if (j2k->state & J2K_STATE_ERR) { -+ opj_image_destroy(image); -+ return NULL; -+ } - } - - if (j2k->state != J2K_STATE_MT) { -diff -up openjpeg-1.5.1/libopenjpeg/jp2.c.CVE-2013-1447 openjpeg-1.5.1/libopenjpeg/jp2.c ---- openjpeg-1.5.1/libopenjpeg/jp2.c.CVE-2013-1447 2014-01-07 15:12:20.518748752 -0600 -+++ openjpeg-1.5.1/libopenjpeg/jp2.c 2014-01-07 15:12:20.535748571 -0600 -@@ -819,6 +819,17 @@ void jp2_write_jp2h(opj_jp2_t *jp2, opj_ - - jp2_write_ihdr(jp2, cio); - -+ { -+ int curpos = cio_tell(cio); -+ cio_seek(cio, box.init_pos); -+ cio_skip(cio, box.length); -+ if ((cio_tell(cio) - box.init_pos) != box.length) { -+ opj_event_msg(jp2->cinfo, EVT_ERROR, "Box size exceeds size of codestream (expected: %d, real: %d)\n", box.length, (cio_tell(cio) - box.init_pos)); -+ return OPJ_FALSE; -+ } -+ cio_seek(cio, curpos); -+ } -+ - if (jp2->bpc == 255) { - jp2_write_bpcc(jp2, cio); - } -@@ -871,6 +882,13 @@ static opj_bool jp2_read_ftyp(opj_jp2_t - jp2->numcl = (box.length - 16) / 4; - jp2->cl = (unsigned int *) opj_malloc(jp2->numcl * sizeof(unsigned int)); - -+ if (cio_numbytesleft(cio) < ((int)jp2->numcl * 4)) { -+ opj_event_msg(cinfo, EVT_ERROR, "Not enough bytes in FTYP Box " -+ "(expected %d, but only %d left)\n", -+ ((int)jp2->numcl * 4), cio_numbytesleft(cio)); -+ return OPJ_FALSE; -+ } -+ - for (i = 0; i < (int)jp2->numcl; i++) { - jp2->cl[i] = cio_read(cio, 4); /* CLi */ - } -diff -up openjpeg-1.5.1/libopenjpeg/t2.c.CVE-2013-1447 openjpeg-1.5.1/libopenjpeg/t2.c ---- openjpeg-1.5.1/libopenjpeg/t2.c.CVE-2013-1447 2012-09-13 02:58:39.000000000 -0500 -+++ openjpeg-1.5.1/libopenjpeg/t2.c 2014-01-07 15:12:20.535748571 -0600 -@@ -340,6 +340,11 @@ static int t2_decode_packet(opj_t2_t* t2 - int precno = pi->precno; /* precinct value */ - int layno = pi->layno; /* quality layer value */ - -+ if (!&(tile->comps[compno])) { -+ opj_event_msg(t2->cinfo, EVT_ERROR, "Trying to decode tile with no components!\n"); -+ return -999; -+ } -+ - opj_tcd_resolution_t* res = &tile->comps[compno].resolutions[resno]; - - unsigned char *hd = NULL; -diff -up openjpeg-1.5.1/libopenjpeg/tcd.c.CVE-2013-1447 openjpeg-1.5.1/libopenjpeg/tcd.c ---- openjpeg-1.5.1/libopenjpeg/tcd.c.CVE-2013-1447 2014-01-07 15:12:20.526748667 -0600 -+++ openjpeg-1.5.1/libopenjpeg/tcd.c 2014-01-07 15:12:20.536748561 -0600 -@@ -667,8 +667,8 @@ void tcd_malloc_decode(opj_tcd_t *tcd, o - y1 = j == 0 ? tilec->y1 : int_max(y1, (unsigned int) tilec->y1); - } - -- w = int_ceildivpow2(x1 - x0, image->comps[i].factor); -- h = int_ceildivpow2(y1 - y0, image->comps[i].factor); -+ w = int_ceildivpow2((long)(x1) - (long)(x0), image->comps[i].factor); -+ h = int_ceildivpow2((long)(y1) - (long)(y0), image->comps[i].factor); - - image->comps[i].w = w; - image->comps[i].h = h; -@@ -1381,7 +1381,15 @@ opj_bool tcd_decode_tile(opj_tcd_t *tcd, - if (l == -999) { - eof = 1; - opj_event_msg(tcd->cinfo, EVT_ERROR, "tcd_decode: incomplete bistream\n"); -+ return OPJ_FALSE; - } -+ -+ /* The code below assumes that numcomps > 0 */ -+ if (tile->numcomps <= 0) { -+ opj_event_msg(tcd->cinfo, EVT_ERROR, "tcd_decode: tile has a zero or negative numcomps\n"); -+ return OPJ_TRUE; -+ } -+ - - /*------------------TIER1-----------------*/ - diff --git a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6045.patch b/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6045.patch deleted file mode 100644 index f45566f36..000000000 --- a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6045.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -up openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-6045 openjpeg-1.5.1/libopenjpeg/j2k.c ---- openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-6045 2014-01-07 15:11:30.622278207 -0600 -+++ openjpeg-1.5.1/libopenjpeg/j2k.c 2014-01-07 15:11:30.626278165 -0600 -@@ -1076,6 +1076,17 @@ static void j2k_read_poc(opj_j2k_t *j2k) - tcp->POC = 1; - len = cio_read(cio, 2); /* Lpoc */ - numpchgs = (len - 2) / (5 + 2 * (numcomps <= 256 ? 1 : 2)); -+ -+ { -+ /* old_poc < 0 "just in case" */ -+ int maxpocs = (sizeof(tcp->pocs)/sizeof(tcp->pocs[0])); -+ if ((old_poc < 0) || ((numpchgs + old_poc) >= maxpocs)) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, -+ "JPWL: bad number of progression order changes (%d out of a maximum of %d)\n", -+ (numpchgs + old_poc), maxpocs); -+ return; -+ } -+ } - - for (i = old_poc; i < numpchgs + old_poc; i++) { - opj_poc_t *poc; -@@ -1622,6 +1633,14 @@ static void j2k_read_rgn(opj_j2k_t *j2k) - return; - } - -+ /* totlen is negative or larger than the bytes left!!! */ -+ if (compno >= numcomps) { -+ opj_event_msg(j2k->cinfo, EVT_ERROR, -+ "JPWL: bad component number in RGN (%d when there are only %d)\n", -+ compno, numcomps); -+ return; -+ } -+ - tcp->tccps[compno].roishift = cio_read(cio, 1); /* SPrgn */ - } - -diff -up openjpeg-1.5.1/libopenjpeg/tcd.c.CVE-2013-6045 openjpeg-1.5.1/libopenjpeg/tcd.c ---- openjpeg-1.5.1/libopenjpeg/tcd.c.CVE-2013-6045 2012-09-13 02:58:39.000000000 -0500 -+++ openjpeg-1.5.1/libopenjpeg/tcd.c 2014-01-07 15:11:30.626278165 -0600 -@@ -1394,10 +1394,19 @@ opj_bool tcd_decode_tile(opj_tcd_t *tcd, - return OPJ_FALSE; - } - -+ int comp0size = (tile->comps[0].x1 - tile->comps[0].x0) * (tile->comps[0].y1 - tile->comps[0].y0); - for (compno = 0; compno < tile->numcomps; ++compno) { - opj_tcd_tilecomp_t* tilec = &tile->comps[compno]; -+ int compcsize = ((tilec->x1 - tilec->x0) * (tilec->y1 - tilec->y0)); -+ /* Later-on it is assumed that all components are of at least comp0size blocks */ -+ if (compcsize < comp0size) -+ { -+ opj_event_msg(tcd->cinfo, EVT_ERROR, "Error decoding tile. Component %d contains only %d blocks " -+ "while component 0 has %d blocks\n", compno, compcsize, comp0size); -+ return OPJ_FALSE; -+ } - /* The +3 is headroom required by the vectorized DWT */ -- tilec->data = (int*) opj_aligned_malloc((((tilec->x1 - tilec->x0) * (tilec->y1 - tilec->y0))+3) * sizeof(int)); -+ tilec->data = (int*) opj_aligned_malloc((comp0size+3) * sizeof(int)); - if (tilec->data == NULL) - { - opj_event_msg(tcd->cinfo, EVT_ERROR, "Out of memory\n"); diff --git a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6052.patch b/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6052.patch deleted file mode 100644 index a157f39a7..000000000 --- a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6052.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up openjpeg-1.5.1/libopenjpeg/cio.c.CVE-2013-6052 openjpeg-1.5.1/libopenjpeg/cio.c ---- openjpeg-1.5.1/libopenjpeg/cio.c.CVE-2013-6052 2012-09-13 02:58:39.000000000 -0500 -+++ openjpeg-1.5.1/libopenjpeg/cio.c 2014-01-07 14:43:14.213256439 -0600 -@@ -30,6 +30,7 @@ - */ - - #include "opj_includes.h" -+#include <assert.h> - - /* ----------------------------------------------------------------------- */ - -@@ -139,6 +140,11 @@ opj_bool cio_byteout(opj_cio_t *cio, uns - * Read a byte. - */ - unsigned char cio_bytein(opj_cio_t *cio) { -+ if (cio->bp < cio->start) { -+ opj_event_msg(cio->cinfo, EVT_ERROR, "read error: trying to read from before the start of the codestream (start = %d, current = %d, end = %d\n", cio->start, cio->bp, cio->end); -+ abort(); -+ return 0; -+ } - if (cio->bp >= cio->end) { - opj_event_msg(cio->cinfo, EVT_ERROR, "read error: passed the end of the codestream (start = %d, current = %d, end = %d\n", cio->start, cio->bp, cio->end); - return 0; -@@ -173,7 +179,7 @@ unsigned int cio_read(opj_cio_t *cio, in - unsigned int v; - v = 0; - for (i = n - 1; i >= 0; i--) { -- v += cio_bytein(cio) << (i << 3); -+ v += (unsigned int)cio_bytein(cio) << (i << 3); - } - return v; - } -@@ -184,6 +190,7 @@ unsigned int cio_read(opj_cio_t *cio, in - * n : number of bytes to skip - */ - void cio_skip(opj_cio_t *cio, int n) { -+ assert((cio->bp + n) >= cio->bp); - cio->bp += n; - } - -diff -up openjpeg-1.5.1/libopenjpeg/jp2.c.CVE-2013-6052 openjpeg-1.5.1/libopenjpeg/jp2.c ---- openjpeg-1.5.1/libopenjpeg/jp2.c.CVE-2013-6052 2014-01-07 14:43:14.201256566 -0600 -+++ openjpeg-1.5.1/libopenjpeg/jp2.c 2014-01-07 14:43:14.214256428 -0600 -@@ -172,6 +172,9 @@ static opj_bool jp2_read_boxhdr(opj_comm - } - else if (box->length == 0) { - box->length = cio_numbytesleft(cio) + 8; -+ } else if (box->length < 0) { -+ opj_event_msg(cinfo, EVT_ERROR, "Invalid, negative, size of box\n"); -+ return OPJ_FALSE; - } - if (box->length < 0) { - opj_event_msg(cinfo, EVT_ERROR, "Integer overflow in box->length\n"); diff --git a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6053.patch b/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6053.patch deleted file mode 100644 index 292084a98..000000000 --- a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6053.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-6053 openjpeg-1.5.1/libopenjpeg/j2k.c ---- openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-6053 2014-01-07 14:44:40.086344624 -0600 -+++ openjpeg-1.5.1/libopenjpeg/j2k.c 2014-01-07 14:44:40.092344561 -0600 -@@ -422,7 +422,7 @@ static void j2k_read_siz(opj_j2k_t *j2k) - - if ((image->x0<0)||(image->x1<0)||(image->y0<0)||(image->y1<0)) { - opj_event_msg(j2k->cinfo, EVT_ERROR, -- "%s: invalid image size (x0:%d, x1:%d, y0:%d, y1:%d)\n", -+ "invalid image size (x0:%d, x1:%d, y0:%d, y1:%d)\n", - image->x0,image->x1,image->y0,image->y1); - return; - } diff --git a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6887.patch b/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6887.patch deleted file mode 100644 index f9d68ef4b..000000000 --- a/extra/openjpeg/openjpeg-1.5.1-CVE-2013-6887.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -up openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-6887 openjpeg-1.5.1/libopenjpeg/j2k.c ---- openjpeg-1.5.1/libopenjpeg/j2k.c.CVE-2013-6887 2014-01-07 15:13:20.297114457 -0600 -+++ openjpeg-1.5.1/libopenjpeg/j2k.c 2014-01-07 15:13:20.302114404 -0600 -@@ -1697,8 +1697,11 @@ static void j2k_read_eoc(opj_j2k_t *j2k) - else { - for (i = 0; i < j2k->cp->tileno_size; i++) { - tileno = j2k->cp->tileno[i]; -- opj_free(j2k->tile_data[tileno]); -- j2k->tile_data[tileno] = NULL; -+ /* not sure if this can actually happen */ -+ if (tileno != -1) { -+ opj_free(j2k->tile_data[tileno]); -+ j2k->tile_data[tileno] = NULL; -+ } - } - } - if (j2k->state & J2K_STATE_ERR) -@@ -1858,8 +1861,10 @@ void j2k_destroy_decompress(opj_j2k_t *j - if(j2k->cp != NULL) { - for (i = 0; i < j2k->cp->tileno_size; i++) { - int tileno = j2k->cp->tileno[i]; -- opj_free(j2k->tile_data[tileno]); -- j2k->tile_data[tileno] = NULL; -+ if (tileno != -1) { -+ opj_free(j2k->tile_data[tileno]); -+ j2k->tile_data[tileno] = NULL; -+ } - } - } - diff --git a/extra/openjpeg/openjpeg-1.5.1-doxygen_timestamp.patch b/extra/openjpeg/openjpeg-1.5.1-doxygen_timestamp.patch deleted file mode 100644 index 2f5999992..000000000 --- a/extra/openjpeg/openjpeg-1.5.1-doxygen_timestamp.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up openjpeg-1.5.1/doc/Doxyfile.dox.cmake.in.doxygen_timestamp openjpeg-1.5.1/doc/Doxyfile.dox.cmake.in ---- openjpeg-1.5.1/doc/Doxyfile.dox.cmake.in.doxygen_timestamp 2012-09-13 02:58:39.000000000 -0500 -+++ openjpeg-1.5.1/doc/Doxyfile.dox.cmake.in 2012-12-06 15:23:35.079838524 -0600 -@@ -148,7 +148,7 @@ HTML_STYLESHEET = - HTML_COLORSTYLE_HUE = 220 - HTML_COLORSTYLE_SAT = 100 - HTML_COLORSTYLE_GAMMA = 80 --HTML_TIMESTAMP = YES -+HTML_TIMESTAMP = NO - HTML_ALIGN_MEMBERS = YES - HTML_DYNAMIC_SECTIONS = NO - GENERATE_DOCSET = NO -diff -up openjpeg-1.5.1/doc/Doxyfile.dox.doxygen_timestamp openjpeg-1.5.1/doc/Doxyfile.dox ---- openjpeg-1.5.1/doc/Doxyfile.dox.doxygen_timestamp 2012-09-13 02:58:39.000000000 -0500 -+++ openjpeg-1.5.1/doc/Doxyfile.dox 2012-12-06 15:23:37.177813275 -0600 -@@ -147,7 +147,7 @@ HTML_STYLESHEET = - HTML_COLORSTYLE_HUE = 220 - HTML_COLORSTYLE_SAT = 100 - HTML_COLORSTYLE_GAMMA = 80 --HTML_TIMESTAMP = YES -+HTML_TIMESTAMP = NO - HTML_ALIGN_MEMBERS = YES - HTML_DYNAMIC_SECTIONS = NO - GENERATE_DOCSET = NO diff --git a/extra/qt5/PKGBUILD b/extra/qt5/PKGBUILD index ff38b48e8..f1ad7cbb8 100644 --- a/extra/qt5/PKGBUILD +++ b/extra/qt5/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 211315 2014-04-18 17:28:19Z andyrtr $ +# $Id: PKGBUILD 211872 2014-04-28 15:12:15Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> pkgbase=qt5 @@ -22,12 +22,12 @@ pkgname=('qt5-base' 'qt5-x11extras' 'qt5-xmlpatterns') pkgver=5.2.1 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') url='http://qt-project.org/' license=('GPL3' 'LGPL' 'FDL' 'custom') makedepends=('libxcb' 'xcb-proto' 'xcb-util' 'xcb-util-image' 'xcb-util-wm' 'xcb-util-keysyms' - 'mesa' 'at-spi2-core' 'alsa-lib' 'gst-plugins-base-libs' 'libmng' + 'mesa' 'at-spi2-core' 'alsa-lib' 'gst-plugins-base-libs' 'gstreamer0.10-base-plugins' 'libmng' 'libjpeg-turbo' 'cups' 'libpulse' 'hicolor-icon-theme' 'desktop-file-utils' 'postgresql-libs' 'libmariadbclient' 'sqlite' 'unixodbc' 'libfbclient' 'python2' 'ruby' 'gperf' 'libxslt' 'libxcomposite' 'fontconfig' @@ -220,7 +220,7 @@ package_qt5-translations() { package_qt5-multimedia() { pkgdesc='A cross-platform application and UI framework (QtMultimedia)' - depends=('qt5-declarative' 'libpulse' 'gst-plugins-base' 'openal') + depends=('qt5-declarative' 'libpulse' 'gstreamer0.10-base' 'openal') conflicts=('qt') cd ${_pkgfqn}/qtmultimedia diff --git a/extra/vte/PKGBUILD b/extra/vte/PKGBUILD index 95324bdf3..825f38a1b 100644 --- a/extra/vte/PKGBUILD +++ b/extra/vte/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 198479 2013-10-30 15:06:54Z allan $ +# $Id: PKGBUILD 211847 2014-04-28 08:17:57Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=vte pkgver=0.28.2 -pkgrel=3 +pkgrel=4 pkgdesc="Virtual Terminal Emulator widget for use with GTK2" arch=('i686' 'x86_64') license=('LGPL') @@ -12,17 +12,22 @@ depends=('gtk2' 'vte-common') makedepends=('pygtk' 'intltool' 'gobject-introspection' 'pygobject2-devel') url="http://www.gnome.org" source=(http://ftp.gnome.org/pub/GNOME/sources/vte/0.28/vte-$pkgver.tar.xz - make_alt_work.patch) + make_alt_work.patch + scroll_region.patch) sha256sums=('86cf0b81aa023fa93ed415653d51c96767f20b2d7334c893caba71e42654b0ae' - '978c989fb63884289068bcee05a92614a3a2be9e5d9386ab789dfb87163b92c8') + '2cd58ffffd42a9d59e05369c2efa1e70b7d32bfb5c8cdbd67b3b95ae3c3e6d61' + '9a99c486b1c0377a4b8c6fae25067c68913bded2988fafea2c86f5adf6a49c81') +prepare() { + cd $pkgname-$pkgver + patch -Np1 -i ../make_alt_work.patch + patch -Np1 -i ../scroll_region.patch +} build() { - cd "$srcdir/$pkgname-$pkgver" + cd $pkgname-$pkgver #warning: type-punning to incomplete type might break strict-aliasing rules export CFLAGS="$CFLAGS -fno-strict-aliasing" - patch -Np1 -R -i "$srcdir/make_alt_work.patch" - PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/vte \ --localstatedir=/var --disable-static \ @@ -31,7 +36,7 @@ build() { } package(){ - cd "$srcdir/$pkgname-$pkgver" + cd $pkgname-$pkgver make DESTDIR="$pkgdir" install rm "$pkgdir/usr/lib/vte/gnome-pty-helper" diff --git a/extra/vte/make_alt_work.patch b/extra/vte/make_alt_work.patch index 8e6e3fcad..65c3ddf1f 100644 --- a/extra/vte/make_alt_work.patch +++ b/extra/vte/make_alt_work.patch @@ -1,21 +1,50 @@ -From b73782a28894e25ed146271f9d6c6775a6836199 Mon Sep 17 00:00:00 2001 -From: Behdad Esfahbod <behdad@behdad.org> -Date: Fri, 04 Jun 2010 18:36:45 +0000 -Subject: Bug 601926 - Don't hardcode meta to alt +From a9d6a34708f846952f423d078397352858f7b1a4 Mon Sep 17 00:00:00 2001 +From: Christian Persch <chpe@gnome.org> +Date: Sat, 12 May 2012 18:48:05 +0200 +Subject: [PATCH] keymap: Treat ALT as META +https://bugzilla.gnome.org/show_bug.cgi?id=663779 --- -diff --git a/src/keymap.h b/src/keymap.h -index 3a4cefe..243e22e 100644 ---- a/src/keymap.h -+++ b/src/keymap.h -@@ -27,7 +27,7 @@ - - G_BEGIN_DECLS + src/vte.c | 23 ++++++++++++++--------- + 1 files changed, 14 insertions(+), 9 deletions(-) + +diff --git a/src/vte.c b/src/vte.c +index dd27e9a..0657921 100644 +--- a/src/vte.c ++++ b/src/vte.c +@@ -5170,19 +5170,24 @@ static void + vte_terminal_read_modifiers (VteTerminal *terminal, + GdkEvent *event) + { ++ GdkKeymap *keymap; + GdkModifierType modifiers; --#define VTE_META_MASK GDK_MOD1_MASK -+#define VTE_META_MASK GDK_META_MASK - #define VTE_NUMLOCK_MASK GDK_MOD2_MASK + /* Read the modifiers. */ +- if (gdk_event_get_state((GdkEvent*)event, &modifiers)) { +- GdkKeymap *keymap; +-#if GTK_CHECK_VERSION (2, 90, 8) +- keymap = gdk_keymap_get_for_display(gdk_window_get_display(((GdkEventAny*)event)->window)); +-#else +- keymap = gdk_keymap_get_for_display(gdk_drawable_get_display(((GdkEventAny*)event)->window)); ++ if (!gdk_event_get_state((GdkEvent*)event, &modifiers)) ++ return; ++ ++ keymap = gdk_keymap_get_for_display(gdk_window_get_display(((GdkEventAny*)event)->window)); ++ ++ gdk_keymap_add_virtual_modifiers (keymap, &modifiers); ++ ++#if 1 ++ /* HACK! Treat ALT as META; see bug #663779. */ ++ if (modifiers & GDK_MOD1_MASK) ++ modifiers |= VTE_META_MASK; + #endif +- gdk_keymap_add_virtual_modifiers (keymap, &modifiers); +- terminal->pvt->modifiers = modifiers; +- } ++ ++ terminal->pvt->modifiers = modifiers; + } - /* Map the specified keyval/modifier setup, dependent on the mode, to either --- -cgit v0.9.2 + /* Read and handle a keypress event. */ +-- +1.7.5.1.217.g4e3aa.dirty
\ No newline at end of file diff --git a/extra/vte/scroll_region.patch b/extra/vte/scroll_region.patch new file mode 100644 index 000000000..9e3e83b12 --- /dev/null +++ b/extra/vte/scroll_region.patch @@ -0,0 +1,67 @@ +Index: vte-0.26.0/src/vte.c +=================================================================== +--- vte-0.26.0.orig/src/vte.c 2010-11-30 23:04:53.000000000 -0800 ++++ vte-0.26.0/src/vte.c 2010-12-07 20:05:07.865548000 -0800 +@@ -3862,6 +3862,7 @@ vte_terminal_process_incoming(VteTermina + long wcount, start, delta; + gboolean leftovers, modified, bottom, again; + gboolean invalidated_text; ++ gboolean in_scroll_region; + GArray *unichars; + struct _vte_incoming_chunk *chunk, *next_chunk, *achunk = NULL; + +@@ -3881,6 +3882,10 @@ vte_terminal_process_incoming(VteTermina + cursor = screen->cursor_current; + cursor_visible = terminal->pvt->cursor_visible; + ++ in_scroll_region = screen->scrolling_restricted ++ && (screen->cursor_current.row >= (screen->insert_delta + screen->scrolling_region.start)) ++ && (screen->cursor_current.row <= (screen->insert_delta + screen->scrolling_region.end)); ++ + /* We should only be called when there's data to process. */ + g_assert(terminal->pvt->incoming || + (terminal->pvt->pending->len > 0)); +@@ -3979,6 +3984,8 @@ skip_chunk: + * points to the first character which isn't part of this + * sequence. */ + if ((match != NULL) && (match[0] != '\0')) { ++ gboolean new_in_scroll_region; ++ + /* Call the right sequence handler for the requested + * behavior. */ + _vte_terminal_handle_sequence(terminal, +@@ -3989,12 +3996,20 @@ skip_chunk: + start = (next - wbuf); + modified = TRUE; + +- /* if we have moved during the sequence handler, restart the bbox */ ++ new_in_scroll_region = screen->scrolling_restricted ++ && (screen->cursor_current.row >= (screen->insert_delta + screen->scrolling_region.start)) ++ && (screen->cursor_current.row <= (screen->insert_delta + screen->scrolling_region.end)); ++ ++ delta = screen->scroll_delta; /* delta may have changed from sequence. */ ++ ++ /* if we have moved greatly during the sequence handler, or moved into a scroll_region ++ * from outside it, restart the bbox */ + if (invalidated_text && +- (screen->cursor_current.col > bbox_bottomright.x + VTE_CELL_BBOX_SLACK || +- screen->cursor_current.col < bbox_topleft.x - VTE_CELL_BBOX_SLACK || +- screen->cursor_current.row > bbox_bottomright.y + VTE_CELL_BBOX_SLACK || +- screen->cursor_current.row < bbox_topleft.y - VTE_CELL_BBOX_SLACK)) { ++ ((new_in_scroll_region && !in_scroll_region) || ++ (screen->cursor_current.col > bbox_bottomright.x + VTE_CELL_BBOX_SLACK || ++ screen->cursor_current.col < bbox_topleft.x - VTE_CELL_BBOX_SLACK || ++ screen->cursor_current.row > bbox_bottomright.y + VTE_CELL_BBOX_SLACK || ++ screen->cursor_current.row < bbox_topleft.y - VTE_CELL_BBOX_SLACK))) { + /* Clip off any part of the box which isn't already on-screen. */ + bbox_topleft.x = MAX(bbox_topleft.x, 0); + bbox_topleft.y = MAX(bbox_topleft.y, delta); +@@ -4014,6 +4029,8 @@ skip_chunk: + bbox_bottomright.x = bbox_bottomright.y = -G_MAXINT; + bbox_topleft.x = bbox_topleft.y = G_MAXINT; + } ++ ++ in_scroll_region = new_in_scroll_region; + } else + /* Second, we have a NULL match, and next points to the very + * next character in the buffer. Insert the character which |