summaryrefslogtreecommitdiffstats
path: root/source/x
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2013-11-04 17:08:47 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 22:57:36 +0200
commit76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (patch)
tree9b98e6e193c7870cb27ac861394c1c4592850922 /source/x
parent9664bee729d487bcc0a0bc35859f8e13d5421c75 (diff)
downloadcurrent-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.gz
current-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.xz
Slackware 14.1slackware-14.1
Mon Nov 4 17:08:47 UTC 2013 Slackware 14.1 x86_64 stable is released! It's been another interesting release cycle here at Slackware bringing new features like support for UEFI machines, updated compilers and development tools, the switch from MySQL to MariaDB, and many more improvements throughout the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
Diffstat (limited to '')
-rw-r--r--source/x/fontconfig/doinst.sh1
-rwxr-xr-xsource/x/fontconfig/fontconfig.SlackBuild25
-rw-r--r--source/x/fontconfig/fontconfig.font.dir.list.diff40
-rwxr-xr-xsource/x/glew/glew.SlackBuild17
-rwxr-xr-xsource/x/glu/glu.SlackBuild92
-rw-r--r--source/x/glu/glu.url2
-rw-r--r--source/x/glu/slack-desc19
-rwxr-xr-xsource/x/libdrm/libdrm.SlackBuild4
-rwxr-xr-xsource/x/mesa/mesa.SlackBuild19
-rwxr-xr-xsource/x/mtdev/mtdev.SlackBuild2
-rw-r--r--source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-application.cpp.patch11
-rw-r--r--source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.cpp.patch48
-rw-r--r--source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.h.patch24
-rw-r--r--source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent.cpp.patch30
-rw-r--r--source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-gtk.c.patch47
-rw-r--r--source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-qt.cpp.patch31
-rwxr-xr-xsource/x/scim-bridge/scim-bridge.SlackBuild156
-rw-r--r--source/x/scim-bridge/slack-desc19
-rwxr-xr-xsource/x/scim/scim.SlackBuild83
-rw-r--r--source/x/ttf-indic-fonts/COPYING340
-rw-r--r--source/x/ttf-indic-fonts/Samyak_Malayalam.ttfbin70504 -> 0 bytes
-rw-r--r--source/x/ttf-indic-fonts/Samyak_Malayalam.url4
-rw-r--r--source/x/ttf-indic-fonts/doinst.sh1
-rwxr-xr-xsource/x/ttf-indic-fonts/ttf-indic-fonts.SlackBuild30
-rw-r--r--source/x/ttf-indic-fonts/ttf-indic-fonts.copyright.diff65
-rw-r--r--source/x/wqy-zenhei-font-ttf/fixup-fontconfig-file.diff21
-rwxr-xr-xsource/x/wqy-zenhei-font-ttf/wqy-zenhei-font-ttf.SlackBuild8
-rwxr-xr-xsource/x/x11/build/increment.sh17
-rw-r--r--source/x/x11/build/xcb-util-image1
-rw-r--r--source/x/x11/build/xcompmgr1
-rw-r--r--source/x/x11/build/xdm2
-rw-r--r--source/x/x11/build/xf86-input-acecad1
-rw-r--r--source/x/x11/build/xf86-input-aiptek1
-rw-r--r--source/x/x11/build/xf86-input-joystick1
-rw-r--r--source/x/x11/build/xf86-input-keyboard (renamed from source/x/x11/build/xcb-proto)0
-rw-r--r--source/x/x11/build/xf86-input-mouse1
-rw-r--r--source/x/x11/build/xf86-input-penmount1
-rw-r--r--source/x/x11/build/xf86-input-synaptics1
-rw-r--r--source/x/x11/build/xf86-input-vmmouse (renamed from source/kde/build/calligra)0
-rw-r--r--source/x/x11/build/xf86-input-void1
-rw-r--r--source/x/x11/build/xf86-input-wacom2
-rw-r--r--source/x/x11/build/xf86-video-apm2
-rw-r--r--source/x/x11/build/xf86-video-ark1
-rw-r--r--source/x/x11/build/xf86-video-ast1
-rw-r--r--source/x/x11/build/xf86-video-ati1
-rw-r--r--source/x/x11/build/xf86-video-chips2
-rw-r--r--source/x/x11/build/xf86-video-cirrus1
-rw-r--r--source/x/x11/build/xf86-video-glint1
-rw-r--r--source/x/x11/build/xf86-video-i1281
-rw-r--r--source/x/x11/build/xf86-video-mach641
-rw-r--r--source/x/x11/build/xf86-video-mga1
-rw-r--r--source/x/x11/build/xf86-video-modesetting1
-rw-r--r--source/x/x11/build/xf86-video-neomagic1
-rw-r--r--source/x/x11/build/xf86-video-nouveau1
-rw-r--r--source/x/x11/build/xf86-video-nv1
-rw-r--r--source/x/x11/build/xf86-video-omap1
-rw-r--r--source/x/x11/build/xf86-video-openchrome1
-rw-r--r--source/x/x11/build/xf86-video-rendition1
-rw-r--r--source/x/x11/build/xf86-video-s3virge1
-rw-r--r--source/x/x11/build/xf86-video-siliconmotion1
-rw-r--r--source/x/x11/build/xf86-video-sis1
-rw-r--r--source/x/x11/build/xf86-video-sisusb2
-rw-r--r--source/x/x11/build/xf86-video-tdfx1
-rw-r--r--source/x/x11/build/xf86-video-trident1
-rw-r--r--source/x/x11/build/xf86-video-tseng2
-rw-r--r--source/x/x11/build/xf86-video-v4l2
-rw-r--r--source/x/x11/build/xf86-video-vmware1
-rw-r--r--source/x/x11/build/xf86-video-voodoo2
-rw-r--r--source/x/x11/build/xf86-video-xgi2
-rw-r--r--source/x/x11/build/xf86-video-xgixp1
-rw-r--r--source/x/x11/configure/xf86-input-vmmouse7
-rw-r--r--source/x/x11/configure/xf86-video-nouveau11
-rw-r--r--source/x/x11/configure/xorg-server2
-rw-r--r--source/x/x11/doinst.sh/xdm2
-rw-r--r--source/x/x11/makepkg/xorg-server7
-rw-r--r--source/x/x11/modularize7
-rw-r--r--source/x/x11/package-blacklist4
-rw-r--r--source/x/x11/patch/xcompmgr.patch2
-rw-r--r--source/x/x11/patch/xcompmgr/patch-XFixesSetPictureClipRegion-shadow-fix-xcompmgr.c.diff28
-rw-r--r--source/x/x11/patch/xdm.patch1
-rw-r--r--source/x/x11/patch/xdm/xdm.glibc.crypt.diff42
-rw-r--r--source/x/x11/patch/xf86-video-apm.patch7
-rw-r--r--source/x/x11/patch/xf86-video-ark.patch7
-rw-r--r--source/x/x11/patch/xf86-video-ast.patch7
-rw-r--r--source/x/x11/patch/xf86-video-chips.patch27
-rw-r--r--source/x/x11/patch/xf86-video-chips/0001-chips-gut-the-overlay-8-16-support-from-driver.patch588
-rw-r--r--source/x/x11/patch/xf86-video-chips/0002-PciTag-is-unused-when-using-libpciaccess.patch29
-rw-r--r--source/x/x11/patch/xf86-video-chips/0003-Use-malloc-calloc-realloc-free-directly.patch50
-rw-r--r--source/x/x11/patch/xf86-video-chips/0004-configure.ac-Remove-AM_PROG_CC_C_O.patch27
-rw-r--r--source/x/x11/patch/xf86-video-chips/0005-util-Consolidate-common-macros.patch283
-rw-r--r--source/x/x11/patch/xf86-video-chips/0006-Fix-implicit-declaration-of-iopl.patch35
-rw-r--r--source/x/x11/patch/xf86-video-chips/0007-Build-fix-for-ABI-Version-12.patch51
-rw-r--r--source/x/x11/patch/xf86-video-chips/0008-Fall-back-to-shadowfb-if-XAA-is-unavailable.patch31
-rw-r--r--source/x/x11/patch/xf86-video-chips/0009-Fix-for-new-vgaHW-ABI.patch25
-rw-r--r--source/x/x11/patch/xf86-video-chips/iopl.h60
-rw-r--r--source/x/x11/patch/xf86-video-dummy.patch7
-rw-r--r--source/x/x11/patch/xf86-video-geode.patch7
-rw-r--r--source/x/x11/patch/xf86-video-glint.patch7
-rw-r--r--source/x/x11/patch/xf86-video-i128.patch7
-rw-r--r--source/x/x11/patch/xf86-video-i740.patch7
-rw-r--r--source/x/x11/patch/xf86-video-neomagic.patch7
-rw-r--r--source/x/x11/patch/xf86-video-nv.patch10
-rw-r--r--source/x/x11/patch/xf86-video-r128.patch7
-rw-r--r--source/x/x11/patch/xf86-video-rendition.patch7
-rw-r--r--source/x/x11/patch/xf86-video-s3.patch7
-rw-r--r--source/x/x11/patch/xf86-video-s3virge.patch7
-rw-r--r--source/x/x11/patch/xf86-video-savage.patch7
-rw-r--r--source/x/x11/patch/xf86-video-siliconmotion.patch7
-rw-r--r--source/x/x11/patch/xf86-video-sis.patch2
-rw-r--r--source/x/x11/patch/xf86-video-sis/sis-0.10.7-git.patch121
-rw-r--r--source/x/x11/patch/xf86-video-sisusb.patch7
-rw-r--r--source/x/x11/patch/xf86-video-tdfx.patch7
-rw-r--r--source/x/x11/patch/xf86-video-tga.patch7
-rw-r--r--source/x/x11/patch/xf86-video-trident.patch7
-rw-r--r--source/x/x11/patch/xf86-video-tseng.patch7
-rw-r--r--source/x/x11/patch/xf86-video-vesa.patch7
-rw-r--r--source/x/x11/patch/xf86-video-vmware.patch7
-rw-r--r--source/x/x11/patch/xf86-video-voodoo.patch7
-rw-r--r--source/x/x11/patch/xf86-video-xgi.patch7
-rw-r--r--source/x/x11/patch/xf86-video-xgixp.patch7
-rw-r--r--source/x/x11/patch/xorg-server.patch1
-rw-r--r--source/x/x11/patch/xorg-server/xorg-server.CVE-2013-4396.diff73
-rw-r--r--source/x/x11/post-install/xdm.post-install9
-rw-r--r--source/x/x11/post-install/xsm.post-install5
-rw-r--r--source/x/x11/slack-desc/xcb-util-cursor19
-rw-r--r--source/x/x11/slack-desc/xcm19
-rw-r--r--source/x/x11/slack-desc/xf86-video-xgixp19
-rw-r--r--source/x/x11/slack-desc/xfwp19
-rw-r--r--source/x/x11/slack-desc/xproxymanagementprotocol19
-rwxr-xr-xsource/x/x11/x11.SlackBuild14
-rwxr-xr-xsource/x/xdg-utils/xdg-utils.SlackBuild6
-rw-r--r--source/x/xdg-utils/xdg-utils.mate.diff43
-rwxr-xr-xsource/xap/MPlayer/MPlayer.SlackBuild17
-rw-r--r--source/xap/MPlayer/subreader-fix-srt-parsing.patch60
-rwxr-xr-xsource/xap/audacious/audacious.SlackBuild2
-rwxr-xr-xsource/xap/blueman/blueman.SlackBuild2
-rwxr-xr-xsource/xap/ddd/ddd.SlackBuild123
-rw-r--r--source/xap/ddd/ddd.pngbin0 -> 5689 bytes
-rw-r--r--source/xap/ddd/doinst.sh4
-rw-r--r--source/xap/ddd/slack-desc19
-rw-r--r--source/xap/ddd/strclass.C.diff12
-rwxr-xr-xsource/xap/fluxbox/fluxbox.SlackBuild2
-rw-r--r--source/xap/gnuchess/doinst.sh13
-rw-r--r--source/xap/gnuchess/eboard.ldl.diff11
-rwxr-xr-xsource/xap/gnuchess/gnuchess.SlackBuild54
-rw-r--r--source/xap/gnuchess/xboard.conf.in.diff19
-rw-r--r--source/xap/gnuchess/xboard.desktop10
-rw-r--r--source/xap/gucharmap/doinst.sh12
-rwxr-xr-xsource/xap/gucharmap/gucharmap.SlackBuild5
-rwxr-xr-xsource/xap/gv/gv.SlackBuild6
-rw-r--r--source/xap/gv/gv.libXaw3d.diff11
-rwxr-xr-xsource/xap/imagemagick/imagemagick.SlackBuild10
-rw-r--r--source/xap/mozilla-firefox/firefox.pngbin24263 -> 0 bytes
-rwxr-xr-xsource/xap/mozilla-firefox/mozilla-firefox.SlackBuild191
-rw-r--r--source/xap/mozilla-firefox/mozilla-firefox.desktop2
-rwxr-xr-xsource/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild8
-rw-r--r--source/xap/network-manager-applet/doinst.sh16
-rwxr-xr-xsource/xap/network-manager-applet/network-manager-applet.SlackBuild23
-rwxr-xr-xsource/xap/pan/pan.SlackBuild2
-rw-r--r--source/xap/pidgin/link-libirc-to-libsasl2.patch65
-rwxr-xr-xsource/xap/pidgin/pidgin.SlackBuild6
-rw-r--r--source/xap/rdesktop/rdesktop-1.8.0-fix-missing-ui.diff77
-rwxr-xr-xsource/xap/rdesktop/rdesktop.SlackBuild9
-rw-r--r--source/xap/sane/sane-backends-1.0.22-v4l.diff64
-rwxr-xr-xsource/xap/sane/sane.SlackBuild27
-rw-r--r--source/xap/seamonkey/pkgconfig/seamonkey-js.pc11
-rwxr-xr-xsource/xap/seamonkey/seamonkey.SlackBuild19
-rw-r--r--source/xap/seamonkey/seamonkey.desktop1
-rwxr-xr-xsource/xap/windowmaker/windowmaker.SlackBuild5
-rwxr-xr-xsource/xap/xchat/xchat.SlackBuild9
-rw-r--r--source/xap/xchat/xchat.glib.g.diff47
-rwxr-xr-xsource/xap/xine-lib/xine-lib.SlackBuild2
-rw-r--r--source/xap/xine-ui/xine-ui-0.99.7-upstream_fix-1.patch27
-rwxr-xr-xsource/xap/xine-ui/xine-ui.SlackBuild6
-rw-r--r--source/xap/xine-ui/xine-ui.no.deprecated.curl.headers.diff11
-rwxr-xr-xsource/xap/xlockmore/xlockmore.SlackBuild2
-rwxr-xr-xsource/xap/xmms/xmms.SlackBuild7
-rw-r--r--source/xap/xmms/xmms.alsa.default.diff11
-rw-r--r--source/xap/xpdf/lang/xpdf-arabic.diff6
-rw-r--r--source/xap/xpdf/lang/xpdf-chinese-simplified.diff10
-rw-r--r--source/xap/xpdf/lang/xpdf-chinese-traditional.diff10
-rw-r--r--source/xap/xpdf/lang/xpdf-cyrillic.diff6
-rw-r--r--source/xap/xpdf/lang/xpdf-greek.diff6
-rw-r--r--source/xap/xpdf/lang/xpdf-hebrew.diff6
-rw-r--r--source/xap/xpdf/lang/xpdf-japanese.diff90
-rw-r--r--source/xap/xpdf/lang/xpdf-korean.diff10
-rw-r--r--source/xap/xpdf/lang/xpdf-latin2.diff6
-rw-r--r--source/xap/xpdf/lang/xpdf-thai.diff6
-rw-r--r--source/xap/xpdf/lang/xpdf-turkish.diff6
-rw-r--r--source/xap/xpdf/patches/03-float.patch25
-rw-r--r--source/xap/xpdf/patches/xpdf-3.02pl1.patch33
-rw-r--r--source/xap/xpdf/patches/xpdf-3.02pl2.patch823
-rw-r--r--source/xap/xpdf/patches/xpdf-3.02pl3.patch1145
-rw-r--r--source/xap/xpdf/patches/xpdf-3.02pl4.patch282
-rw-r--r--source/xap/xpdf/patches/xpdf-3.02pl5.patch41
-rw-r--r--source/xap/xpdf/patches/xpdf-3.02pl6.patch1
-rw-r--r--source/xap/xpdf/patches/xpdf-3.03-CVE-2012-2142.diff55
-rw-r--r--source/xap/xpdf/patches/xpdf-resizefix.diff34
-rw-r--r--source/xap/xpdf/patches/xpdf.XPDFViewer.diff11
-rw-r--r--source/xap/xpdf/patches/xpdf_3.02-1.3.diff4470
-rw-r--r--source/xap/xpdf/patches/xpdfrc.diff64
-rwxr-xr-xsource/xap/xpdf/xpdf.SlackBuild25
-rwxr-xr-xsource/xap/xsane/xsane.SlackBuild2
-rwxr-xr-xsource/xap/xscreensaver/dump.osx.sources.sh13
-rw-r--r--source/xap/xscreensaver/slack-desc2
-rwxr-xr-xsource/xap/xscreensaver/xscreensaver.SlackBuild4
-rw-r--r--source/xap/xxgdb/slack-desc19
-rw-r--r--source/xap/xxgdb/xxgdb-1.08-glibc.patch10
-rw-r--r--source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch10
-rw-r--r--source/xap/xxgdb/xxgdb-1.12-debian-pty.patch76
-rw-r--r--source/xap/xxgdb/xxgdb-1.12-mandriva.patch993
-rw-r--r--source/xap/xxgdb/xxgdb-1.12-sysv.patch24
-rwxr-xr-xsource/xap/xxgdb/xxgdb.SlackBuild118
-rwxr-xr-xsource/xfce/Terminal/Terminal.SlackBuild120
-rw-r--r--source/xfce/Terminal/slack-desc19
-rwxr-xr-xsource/xfce/Thunar/Thunar.SlackBuild4
-rwxr-xr-xsource/xfce/exo/exo.SlackBuild8
-rw-r--r--source/xfce/exo/exo.magnet.uri.diff49
-rwxr-xr-xsource/xfce/libxfce4ui/libxfce4ui.SlackBuild2
-rwxr-xr-xsource/xfce/libxfcegui4/libxfcegui4.SlackBuild2
-rwxr-xr-xsource/xfce/orage/orage.SlackBuild2
-rw-r--r--source/xfce/tumbler/set-gststate-on-error.diff23
-rwxr-xr-xsource/xfce/tumbler/tumbler.SlackBuild6
-rwxr-xr-xsource/xfce/xfce-build-all.sh2
-rwxr-xr-xsource/xfce/xfce4-clipman-plugin/xfce4-clipman-plugin.SlackBuild2
-rwxr-xr-xsource/xfce/xfce4-notifyd/xfce4-notifyd.SlackBuild2
-rwxr-xr-xsource/xfce/xfce4-panel/xfce4-panel.SlackBuild2
-rwxr-xr-xsource/xfce/xfce4-power-manager/xfce4-power-manager.SlackBuild2
-rwxr-xr-xsource/xfce/xfce4-screenshooter/xfce4-screenshooter.SlackBuild2
-rwxr-xr-xsource/xfce/xfce4-session/xfce4-session.SlackBuild8
-rwxr-xr-xsource/xfce/xfce4-systemload-plugin/xfce4-systemload-plugin.SlackBuild2
-rwxr-xr-xsource/xfce/xfce4-taskmanager/xfce4-taskmanager.SlackBuild2
-rw-r--r--source/xfce/xfce4-terminal/slack-desc19
-rwxr-xr-xsource/xfce/xfce4-terminal/xfce4-terminal.SlackBuild120
-rwxr-xr-xsource/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild3
-rwxr-xr-xsource/xfce/xfwm4/xfwm4.SlackBuild2
236 files changed, 2240 insertions, 10723 deletions
diff --git a/source/x/fontconfig/doinst.sh b/source/x/fontconfig/doinst.sh
index 6a4802323..ae60a1b15 100644
--- a/source/x/fontconfig/doinst.sh
+++ b/source/x/fontconfig/doinst.sh
@@ -3,5 +3,4 @@ if [ -x /usr/bin/fc-cache ]; then
/usr/bin/fc-cache -f
fi
# else we'll catch it later with setup.fontconfig :-)
-# make links:
diff --git a/source/x/fontconfig/fontconfig.SlackBuild b/source/x/fontconfig/fontconfig.SlackBuild
index bb3b192f5..2fd360ae4 100755
--- a/source/x/fontconfig/fontconfig.SlackBuild
+++ b/source/x/fontconfig/fontconfig.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -86,6 +86,10 @@ CFLAGS=$SLKCFLAGS \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--sysconfdir=/etc \
+ --with-templatedir=/etc/fonts/conf.avail \
+ --with-baseconfigdir=/etc/fonts \
+ --with-configdir=/etc/fonts/conf.d \
+ --with-xmldir=/etc/fonts \
--localstatedir=/var \
--enable-static=no \
--build=$ARCH-slackware-linux
@@ -94,6 +98,15 @@ CFLAGS=$SLKCFLAGS \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Upstream has changed the default templatedir to /usr/share/fontconfig/conf.avail.
+# This change, if accepted, would break any existing font package containing a
+# conf.avail directory. The safest thing to do is to keep things in the
+# traditional location, but put a link in the new place so that font packages
+# following the new standard location will work. Let's hear it for being
+# "more correct" at the expense of having things "just work"!
+mkdir -p $PKG/usr/share/fontconfig
+( cd $PKG/usr/share/fontconfig ; ln -sf /etc/fonts/conf.avail . )
+
mkdir -p $PKG/usr/doc/fontconfig-$VERSION
cp -a \
AUTHORS COPYING* INSTALL NEWS README \
@@ -120,7 +133,6 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
# Set up the default options in /etc/fonts/conf.d:
( cd $PKG/etc/fonts/conf.d
for fontconf in \
- 20-fix-globaladvance.conf \
20-unhint-small-vera.conf \
30-urw-aliases.conf \
30-metric-aliases.conf \
@@ -135,7 +147,12 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
69-unifont.conf \
80-delicious.conf \
90-synthetic.conf ; do
- ln -sf ../conf.avail/$fontconf . || exit 1
+ if [ -r ../conf.avail/$fontconf ]; then
+ ln -sf ../conf.avail/$fontconf .
+ else
+ echo "ERROR: unable to symlink ../conf.avail/$fontconf, file does not exist."
+ exit 1
+ fi
done
if [ ! $? = 0 ]; then
exit 1
@@ -166,5 +183,5 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $TMP/fontconfig-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n --prepend $TMP/fontconfig-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/x/fontconfig/fontconfig.font.dir.list.diff b/source/x/fontconfig/fontconfig.font.dir.list.diff
index 1e68b0d12..63be22f51 100644
--- a/source/x/fontconfig/fontconfig.font.dir.list.diff
+++ b/source/x/fontconfig/fontconfig.font.dir.list.diff
@@ -1,25 +1,33 @@
-diff -Nur fontconfig-2.8.0.orig/fonts.conf.in fontconfig-2.8.0/fonts.conf.in
---- fontconfig-2.8.0.orig/fonts.conf.in 2009-06-28 12:48:47.000000000 -0500
-+++ fontconfig-2.8.0/fonts.conf.in 2009-12-01 21:48:48.134935536 -0600
-@@ -23,10 +23,21 @@
+--- ./fonts.conf.in.orig 2012-07-23 21:01:32.000000000 -0500
++++ ./fonts.conf.in 2013-02-28 22:32:44.758585955 -0600
+@@ -22,13 +22,29 @@
+ -->
<!-- Font directory list -->
-
+-
- <dir>@FC_DEFAULT_FONTS@</dir>
- @FC_FONTPATH@
-+ <dir>/usr/share/fonts/OTF</dir>
-+ <dir>/usr/share/fonts/TTF</dir>
-+ <dir>/usr/share/fonts/Type1</dir>
-+ <dir>/usr/share/fonts/Speedo</dir>
-+ <dir>/usr/share/fonts/cyrillic</dir>
-+ <dir>/usr/share/fonts/misc</dir>
++ <dir>/usr/share/fonts/OTF</dir>
++ <dir>/usr/share/fonts/TTF</dir>
++ <dir>/usr/share/fonts/Type1</dir>
++ <dir>/usr/share/fonts/Speedo</dir>
++ <dir>/usr/share/fonts/cyrillic</dir>
++ <dir>/usr/share/fonts/misc</dir>
+ <dir prefix="xdg">fonts</dir>
+ <!-- the following element will be removed in the future -->
<dir>~/.fonts</dir>
-+<!-- Commented out font directories:
-+These are not indexed by default, as fontconfig then seems
-+to prefer bitmapped fonts in some cases...
-+ <dir>/usr/share/fonts/100dpi</dir>
-+ <dir>/usr/share/fonts/75dpi</dir>
++<!-- Commented out font directories:
++ These are not indexed by default, as fontconfig then seems
++ to prefer bitmapped fonts in some cases...
++ <dir>/usr/share/fonts/100dpi</dir>
++ <dir>/usr/share/fonts/75dpi</dir>
++ The top-level font directory should also not be indexed, as that
++ will include the directories of bitmapped fonts:
++ <dir>@FC_DEFAULT_FONTS@</dir>
++ The empty line below is produced by the FC_FONTPATH macro.
++ Moving it here so it doesn't become a problem in the future:
++ @FC_FONTPATH@
+-->
+
<!--
diff --git a/source/x/glew/glew.SlackBuild b/source/x/glew/glew.SlackBuild
index d210557fb..5187bb76c 100755
--- a/source/x/glew/glew.SlackBuild
+++ b/source/x/glew/glew.SlackBuild
@@ -22,7 +22,8 @@
# Slackware build script for glew
-VERSION=1.5.7
+PKGNAM=glew
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -39,7 +40,7 @@ NUMJOBS=${NUMJOBS:--j8}
CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-glew
+PKG=$TMP/package-$PKGNAM
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
@@ -58,9 +59,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP || exit 1
-rm -rf glew-$VERSION
-tar xvf $CWD/glew-${VERSION}.tar.?z* || exit 1
-cd glew-${VERSION} || exit 1
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-${VERSION}.tar.?z* || exit 1
+cd $PKGNAM-${VERSION} || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -83,13 +84,13 @@ make install GLEW_DEST=$PKG/usr || exit 1
xargs strip --strip-unneeded 2> /dev/null
)
-mkdir -p $PKG/usr/doc/glew-$VERSION
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
LICENSE* README* doc/* \
- $PKG/usr/doc/glew-$VERSION
+ $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/glew-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/x/glu/glu.SlackBuild b/source/x/glu/glu.SlackBuild
new file mode 100755
index 000000000..e5f76982c
--- /dev/null
+++ b/source/x/glu/glu.SlackBuild
@@ -0,0 +1,92 @@
+#!/bin/sh
+
+# Slackware build script for glu
+
+# Copyright 2012 Robby Workman, Northport, Alabama, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=glu
+VERSION=${VERSION:-9.0.0}
+BUILD=${BUILD:-1}
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PRGNAM
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz || exit 1
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --disable-static \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
+ grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# No docs at all
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PRGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/x/glu/glu.url b/source/x/glu/glu.url
new file mode 100644
index 000000000..4b79b6503
--- /dev/null
+++ b/source/x/glu/glu.url
@@ -0,0 +1,2 @@
+ftp://ftp.freedesktop.org/pub/mesa/glu/
+http://cgit.freedesktop.org/mesa/glu/
diff --git a/source/x/glu/slack-desc b/source/x/glu/slack-desc
new file mode 100644
index 000000000..7ede5e95e
--- /dev/null
+++ b/source/x/glu/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+glu: glu (Mesa OpenGL utility library)
+glu:
+glu: glu is the Mesa OpenGL utility library (libGLU).
+glu:
+glu:
+glu:
+glu:
+glu:
+glu:
+glu:
+glu:
diff --git a/source/x/libdrm/libdrm.SlackBuild b/source/x/libdrm/libdrm.SlackBuild
index 31181fb5c..d6899ca51 100755
--- a/source/x/libdrm/libdrm.SlackBuild
+++ b/source/x/libdrm/libdrm.SlackBuild
@@ -73,10 +73,10 @@ CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
--enable-udev \
- --enable-nouveau-experimental-api \
- --enable-vmwgfx-experimental-api \
--enable-omap-experimental-api \
+ --enable-exynos-experimental-api \
--build=$ARCH-slackware-linux
# Build and install:
diff --git a/source/x/mesa/mesa.SlackBuild b/source/x/mesa/mesa.SlackBuild
index ca6701886..8d04e7fe0 100755
--- a/source/x/mesa/mesa.SlackBuild
+++ b/source/x/mesa/mesa.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,14 +21,14 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PKGNAM=mesa
-VERSION=8.0.4
-DEMOVERS=8.0.1
+VERSION=9.1.7
+DEMOVERS=8.1.0
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:--j8}
# Be sure this list is up-to-date:
-DRI_DRIVERS="i915,i965,nouveau,r200,radeon,swrast"
+DRI_DRIVERS="i915,i965,intel,nouveau,r200,radeon,swrast"
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -61,6 +61,9 @@ rm -rf Mesa-${VERSION}
tar xvf $CWD/MesaLib-${VERSION}.tar.?z* || exit 1
cd Mesa-$VERSION
+# Let's kill the warning about operating on a dangling symlink:
+rm -f src/gallium/state_trackers/d3d1x/w32api
+
# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
@@ -83,6 +86,9 @@ if [ ! -r configure ]; then
autoreconf || exit 1
fi
+# Running autogen to avoid problems if our autotools don't match upstream's:
+./autogen.sh
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -92,8 +98,11 @@ CFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/mesa-$VERSION \
--with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
--with-dri-drivers="$DRI_DRIVERS" \
- --with-gallium-drivers=nouveau,swrast,r300,r600 \
+ --with-gallium-drivers=nouveau,r300,r600,svga \
--enable-gallium-llvm \
+ --enable-shared-glapi \
+ --enable-xa \
+ --enable-osmesa \
--build=$ARCH-slackware-linux
# r300 requires llvm
diff --git a/source/x/mtdev/mtdev.SlackBuild b/source/x/mtdev/mtdev.SlackBuild
index e973ed342..d3e518cfd 100755
--- a/source/x/mtdev/mtdev.SlackBuild
+++ b/source/x/mtdev/mtdev.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=mtdev
-VERSION=${VERSION:-1.1.2}
+VERSION=${VERSION:-1.1.3}
BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
diff --git a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-application.cpp.patch b/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-application.cpp.patch
deleted file mode 100644
index f925507a7..000000000
--- a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-application.cpp.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- scim-bridge-0.4.16/agent/scim-bridge-agent-application.cpp.bak 2009-01-18 01:04:20.000000000 +0800
-+++ scim-bridge-0.4.16/agent/scim-bridge-agent-application.cpp 2010-09-11 22:38:27.196979199 +0800
-@@ -65,7 +65,7 @@
- unsigned int tmp_uint;
-
- int option = 0;
-- while (option != EOF) {
-+ while (option != -1) {
- option = getopt_long (argc, argv, short_options, long_options, NULL);
- switch (option) {
- case 'v':
diff --git a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.cpp.patch b/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.cpp.patch
deleted file mode 100644
index 85732013d..000000000
--- a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.cpp.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- scim-bridge-0.4.16/agent/scim-bridge-agent-imcontext.cpp.bak 2009-02-03 22:36:14.000000000 +0800
-+++ scim-bridge-0.4.16/agent/scim-bridge-agent-imcontext.cpp 2010-09-11 23:25:00.636978519 +0800
-@@ -60,6 +60,8 @@
-
- static bool on_the_spot_enabled = true;
-
-+static String help_hotkeys = "";
-+
- /* Class definition */
- class ScimBridgeAgentIMContextImpl: public ScimBridgeAgentIMContext
- {
-@@ -274,6 +276,12 @@
- }
-
-
-+void ScimBridgeAgentIMContext::set_help_hotkeys (const String &hotkey_str)
-+{
-+ help_hotkeys = hotkey_str;
-+}
-+
-+
- ScimBridgeAgentIMContextImpl::ScimBridgeAgentIMContextImpl (ScimBridgeAgentClientListener *new_client_listener):
- client_listener (new_client_listener), imengine (NULL), enabled (false), focused(false) ,preedit_mode (PREEDIT_ANY),
- preedit_shown (false), preedit_cursor_position (0)
-@@ -654,6 +662,8 @@
-
- void ScimBridgeAgentIMContextImpl::focus_out ()
- {
-+ if (!imengine_shared && imengine == NULL) alloc_imengine ();
-+
- ScimBridgeAgentIMContext *focused_imcontext = static_cast<ScimBridgeAgentIMContext*> (get_imengine ()->get_frontend_data ());
-
- if ( !focused )
-@@ -923,9 +933,11 @@
-
- void ScimBridgeAgentIMContextImpl::panel_request_help ()
- {
-- String help = String ("Smart Common Input Method platform ") +
-- String (SCIM_VERSION) +
-- String ("\n(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n\n");
-+ String help = String ("SCIM Bridge") +
-+ String (VERSION) +
-+ String ("\n(C) 2006-2008 Ryo Dairiki <ryo-dairiki@users.sourceforge.net>\n") +
-+ help_hotkeys +
-+ String ("\n\n");
-
- IMEngineFactoryPointer factory = scim_backend->get_factory (get_imengine ()->get_factory_uuid ());
- if (factory.null ()) factory = fallback_imengine_factory;
diff --git a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.h.patch b/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.h.patch
deleted file mode 100644
index f16b34c14..000000000
--- a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.h.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- scim-bridge-0.4.16/agent/scim-bridge-agent-imcontext.h.bak 2008-11-02 14:44:49.000000000 +0800
-+++ scim-bridge-0.4.16/agent/scim-bridge-agent-imcontext.h 2010-09-11 23:12:18.085979961 +0800
-@@ -130,6 +130,21 @@
- static void set_enabled_by_default (bool enabled);
-
- /**
-+ * Get the hotkey help messages.
-+ *
-+ * @return help messages about hotkeys.
-+ */
-+ static scim::String get_help_hotkeys ();
-+
-+ /**
-+ * Set the hotkey help messages.
-+ *
-+ * @param hotkey_str Help message about hotkeys.
-+ *
-+ */
-+ static void set_help_hotkeys (const scim::String &hotkey_str);
-+
-+ /**
- * Destructor.
- */
- virtual ~ScimBridgeAgentIMContext () {}
diff --git a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent.cpp.patch b/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent.cpp.patch
deleted file mode 100644
index 27c5cb73b..000000000
--- a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-agent.cpp.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- scim-bridge-0.4.16/agent/scim-bridge-agent.cpp.bak 2009-03-08 21:07:29.000000000 +0800
-+++ scim-bridge-0.4.16/agent/scim-bridge-agent.cpp 2010-09-11 22:59:34.476979479 +0800
-@@ -542,6 +542,27 @@
- scim_global_config_flush ();
-
- scim_keyboard_layout = scim_get_default_keyboard_layout ();
-+
-+ // Hot key name, hot key config key.
-+ // ! Update hotkey_list_length according to updated list length.
-+ int hotkey_list_length = 6;
-+ String hotkey_list[][2] = {
-+ { "Toggle on/off - ", "/Hotkeys/FrontEnd/Trigger" },
-+ { "Turn on - ", "/Hotkeys/FrontEnd/On" },
-+ { "Turn off - ", "/Hotkeys/FrontEnd/Off" },
-+ { "Next input method - ", "/Hotkeys/FrontEnd/NextFactory" },
-+ { "Previous input method - ", "/Hotkeys/FrontEnd/PreviousFactory" },
-+ { "Show input method menu - ", "/Hotkeys/FrontEnd/ShowFactoryMenu" }
-+ };
-+
-+ // Undefined hot keys are hidden from help window.
-+ String help_hotkeys = "\nGlobal Hotkeys:";
-+ for ( int i = 0; i < hotkey_list_length; i++ ) {
-+ String tmp_hotkeys = scim_config->read (String (hotkey_list[i][1]), String (""));
-+ if ( tmp_hotkeys != "" )
-+ help_hotkeys += "\n" + hotkey_list[i][0] + "<" + tmp_hotkeys + ">";
-+ }
-+ ScimBridgeAgentIMContext::set_help_hotkeys (help_hotkeys);
- }
-
-
diff --git a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-gtk.c.patch b/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-gtk.c.patch
deleted file mode 100644
index 21f1f824e..000000000
--- a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-gtk.c.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- scim-bridge-0.4.16/client-gtk/scim-bridge-client-imcontext-gtk.c.bak 2008-11-02 14:44:23.000000000 +0800
-+++ scim-bridge-0.4.16/client-gtk/scim-bridge-client-imcontext-gtk.c 2010-09-11 23:19:10.556978680 +0800
-@@ -35,6 +35,8 @@
- #include "scim-bridge-output.h"
- #include "scim-bridge-string.h"
-
-+#define SEND_EVENT_MASK 0x02
-+
- /* Typedef */
- struct _ScimBridgeClientIMContext
- {
-@@ -200,7 +202,7 @@
- {
- scim_bridge_pdebugln (7, "key_snooper ()");
-
-- if (!event->send_event && scim_bridge_client_is_messenger_opened () && focused_imcontext != NULL) {
-+ if (!(event->send_event & SEND_EVENT_MASK) && scim_bridge_client_is_messenger_opened () && focused_imcontext != NULL) {
- if (focused_imcontext->client_window != NULL) {
- int new_window_x;
- int new_window_y;
-@@ -556,7 +558,7 @@
- {
- GdkEventKey gdk_event;
- scim_bridge_key_event_bridge_to_gdk (&gdk_event, imcontext->client_window, key_event);
-- gdk_event.send_event = TRUE;
-+ gdk_event.send_event |= SEND_EVENT_MASK;
- if (imcontext == focused_imcontext && focused_widget != NULL) {
- const char *signal_name = NULL;
- if (scim_bridge_key_event_is_pressed (key_event)) {
-@@ -762,7 +764,7 @@
-
- ScimBridgeClientIMContext *imcontext = SCIM_BRIDGE_CLIENT_IMCONTEXT (context);
-
-- if (!event->send_event && scim_bridge_client_is_messenger_opened () && imcontext != NULL && !key_snooper_used) {
-+ if (!(event->send_event & SEND_EVENT_MASK) && scim_bridge_client_is_messenger_opened () && imcontext != NULL && !key_snooper_used) {
-
- if (imcontext->client_window != NULL) {
- int new_window_x;
-@@ -875,7 +877,7 @@
- scim_bridge_client_open_messenger ();
- }
-
-- if (is_key_snooper_enabled ()) {
-+ if (!key_snooper_used && is_key_snooper_enabled ()) {
- key_snooper_id = gtk_key_snooper_install ((GtkKeySnoopFunc) &key_snooper, NULL);
- key_snooper_used = TRUE;
- }
diff --git a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-qt.cpp.patch b/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-qt.cpp.patch
deleted file mode 100644
index 74a3252ef..000000000
--- a/source/x/scim-bridge/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-qt.cpp.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- scim-bridge-0.4.16/client-qt/scim-bridge-client-imcontext-qt.cpp.bak 2008-11-02 14:44:46.000000000 +0800
-+++ scim-bridge-0.4.16/client-qt/scim-bridge-client-imcontext-qt.cpp 2010-09-11 22:46:10.396979441 +0800
-@@ -220,7 +220,12 @@
- {
- scim_bridge_pdebugln (4, "ScimBridgeClientIMContextImpl::setFocusWidget ()");
- QInputContext::setFocusWidget (widget);
-- focus_in ();
-+ if (widget == NULL) {
-+ focus_out ();
-+ }
-+ else {
-+ focus_in ();
-+ }
- update ();
- }
-
-@@ -442,9 +447,11 @@
- }
- }
-
-- set_preedit_shown (false);
-- update_preedit ();
--
-+ if (preedit_shown) {
-+ set_preedit_shown (false);
-+ update_preedit ();
-+ }
-+
- focused_imcontext = NULL;
- }
-
diff --git a/source/x/scim-bridge/scim-bridge.SlackBuild b/source/x/scim-bridge/scim-bridge.SlackBuild
deleted file mode 100755
index 8501d9c4b..000000000
--- a/source/x/scim-bridge/scim-bridge.SlackBuild
+++ /dev/null
@@ -1,156 +0,0 @@
-#!/bin/sh
-
-# Copyright 2008, 2009 Eric Hameleers, Eindhoven, NL
-# Copyright 2008, 2009, 2011, 2012 Patrick J. Volkerding, Sebeka, MN USA
-# All rights reserved.
-#
-# Permission to use, copy, modify, and distribute this software for
-# any purpose with or without fee is hereby granted, provided that
-# the above copyright notice and this permission notice appear in all
-# copies.
-#
-# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-# SUCH DAMAGE.
-# -----------------------------------------------------------------------------
-#
-# Slackware SlackBuild script
-# ===========================
-# By: Eric Hameleers <alien@slackware.com>
-# For: scim-bridge
-# Descr: yet another gtk-immodule for SCIM
-# URL: http://scim-im.org/
-#
-# -----------------------------------------------------------------------------
-
-
-PKGNAM=scim-bridge
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
-
-# Automatically determine the architecture we're building on:
-if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i486 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7lh ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) ARCH=$(uname -m) ;;
- esac
- export ARCH
-fi
-
-NUMJOBS=${NUMJOBS:-" -j7 "}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "arm" ]; then
- SLKCFLAGS="-O2 -march=armv4 -mtune=xscale"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "armel" ]; then
- SLKCFLAGS="-O2 -march=armv4t"
- LIBDIRSUFFIX=""
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-cd $TMP
-rm -rf ${PKGNAM}-${VERSION}
-tar -xvf $CWD/${PKGNAM}-${VERSION}.tar.gz || exit 1
-cd ${PKGNAM}-${VERSION} || exit 1
-#sed -i -e "s/ -doxygen / doxygen /" $( grep -lr ' -doxygen ' * )
-
-zcat $CWD/patches/scim-bridge-0.4.16-scim-bridge-agent-application.cpp.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.cpp.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/scim-bridge-0.4.16-scim-bridge-agent-imcontext.h.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/scim-bridge-0.4.16-scim-bridge-agent.cpp.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-gtk.c.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/scim-bridge-0.4.16-scim-bridge-client-imcontext-qt.cpp.patch.gz | patch -p1 --verbose || exit 1
-
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-echo Building ...
-CXXFLAGS="$SLKCFLAGS" \
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --enable-agent \
- --enable-ltdl-install \
- --enable-gtk2-immodule \
- --enable-qt4-immodule \
- --disable-qt3-immodule \
- --disable-documents \
- --disable-static \
- --program-prefix= \
- --program-suffix= \
- --build=$ARCH-slackware-linux
- # We disable the qt3-immodule because that one will not build.
- # The qt4-immodule will build however.
-
-make $NUMJOBS || make || exit 1
-make DESTDIR=$PKG install || exit 1
-
-# Add this to the doinst.sh
-mkdir -p $PKG/install
-cat <<EOINS >> $PKG/install/doinst.sh
-# Run gtk-query-immodules so that "scim" will appear under Imput Method
-# when you right- click your mouse in a text box.
-if [ -x /usr/bin/update-gtk-immodules ]; then
- /usr/bin/update-gtk-immodules
-fi
-EOINS
-
-# Add documentation:
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a \
- AUTHORS COPYING* ChangeLog INSTALL NEWS README* doc/LICENSE.* \
- $PKG/usr/doc/$PKGNAM-$VERSION
-find $PKG/usr/doc -type f -exec chmod 644 {} \;
-
-# Compress the man page(s):
-if [ -d $PKG/usr/man ]; then
- find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
- for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-fi
-
-# Strip binaries:
-find $PKG | xargs file | grep -e "executable" -e "shared object" \
- | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-# Add a package description:
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-# Build the package:
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz
-
diff --git a/source/x/scim-bridge/slack-desc b/source/x/scim-bridge/slack-desc
deleted file mode 100644
index cd58299a7..000000000
--- a/source/x/scim-bridge/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-scim-bridge: scim-bridge (yet another gtk-immodule for SCIM)
-scim-bridge:
-scim-bridge: Scim-bridge is yet another gtk-immodule for SCIM. Scim-bridge
-scim-bridge: consists of two parts, that is, client and agent (server). The client
-scim-bridge: is a GTK immodule which communicates with the agent over sockets.
-scim-bridge: The agent communicates with SCIM, and brings back the data
-scim-bridge: for each client.
-scim-bridge:
-scim-bridge: scim-bridge home: http://scim-im.org/
-scim-bridge:
-scim-bridge:
diff --git a/source/x/scim/scim.SlackBuild b/source/x/scim/scim.SlackBuild
index d03adc6e6..816a50018 100755
--- a/source/x/scim/scim.SlackBuild
+++ b/source/x/scim/scim.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Copyright 2006, 2007, 2008 Eric Hameleers, Eindhoven, NL
-# Copyright 2008, 2009, 2011, 2012 Patrick J. Volkerding, Sebeka, MN USA
+# Copyright 2008, 2009, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -35,7 +35,7 @@
PKGNAM=scim
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -90,14 +90,15 @@ echo Building ...
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --disable-static \
- --with-gtk-version=2 \
- --program-prefix= \
- --program-suffix= \
- --build=$ARCH-slackware-linux
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
+ --disable-static \
+ --with-gtk-version=2 \
+ --with-qt4-im-module-dir=/usr/lib${LIBDIRSUFFIX}/qt/plugins/inputmethods \
+ --program-prefix= \
+ --program-suffix= \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make DESTDIR=$PKG install || exit 1
@@ -120,20 +121,15 @@ cat <<EOT > $PKG/etc/profile.d/scim.sh.new
if [ -x /usr/bin/scim ]; then
# Enable legacy X applications to use scim:
export XMODIFIERS="@im=SCIM"
- ## Enable Qt/KDE applications to use scim (not working with kde4):
- #export QT_IM_MODULE="scim"
+ # Let GTK applications like Firefox/Thunderbird use scim as
+ # default immodule:
+ export GTK_IM_MODULE="scim"
+ # Enable Qt/KDE applications to use scim:
+ export QT_IM_MODULE="scim"
# Make scim start automatically if the "magic key" Ctrl-Space is pressed:
export XIM_PROGRAM="/usr/bin/scim -d"
fi
-if [ -x /usr/bin/scim-bridge ]; then
- # Let GTK applications like Firefox/Thunderbird use scim-bridge as
- # default immodule:
- export GTK_IM_MODULE="scim-bridge"
- # Enable Qt4/KDE4 applications to use scim:
- export QT_IM_MODULE="scim-bridge"
-fi
-
# This ensures scim starts when you logon.
# This will only work if you login through runlevel 4 (graphical login)!!!
# Better is to have it start through Ctrl-Space like configured higher up ^^.
@@ -141,21 +137,6 @@ fi
# /usr/bin/scim -d
#fi
-# GTK+ environments such as XFce should support SCIM automatically, BUT
-# if the first app you run is a Qt one, you'll run into problems. This
-# can be avoided by going into Menu -> Settings -> Autostarted Applications
-# and adding SCIM: /usr/bin/scim -d
-
-# KDE will not start SCIM automatically, so you will need a script such as
-# this one in your $HOME/.kde/Autostart:
-
-#!/bin/bash
-#if [ -x /usr/bin/scim ]; then
-# /usr/bin/scim -d &
-#fi
-
-# Obviously, uncomment all but the first line. :-)
-
EOT
cat <<EOT > $PKG/etc/profile.d/scim.csh.new
@@ -174,21 +155,15 @@ cat <<EOT > $PKG/etc/profile.d/scim.csh.new
if (\$status == 0) then
# Enable legacy X applications to use scim:
setenv XMODIFIERS "@im=SCIM"
- ## Enable Qt/KDE applications to use scim (does not work for kde4):
- #setenv QT_IM_MODULE "scim"
+ # Let GTK applications like Firefox/Thunderbird use scim as
+ # default immodule:
+ setenv GTK_IM_MODULE "scim"
+ # Enable Qt/KDE applications to use scim (does not work for kde4):
+ setenv QT_IM_MODULE "scim"
# Make scim start automatically if the "magic key" Ctrl-Space is pressed:
setenv XIM_PROGRAM "/usr/bin/scim -d"
endif
-[ -x /usr/bin/scim-bridge ]
-if (\$status == 0) then
- # Let GTK applications like Firefox/Thunderbird use scim-bridge as
- # default immodule:
- setenv GTK_IM_MODULE "scim-bridge"
- # Enable Qt4/KDE4 applications to use scim:
- setenv QT_IM_MODULE "scim-bridge"
-endif
-
# This ensures scim starts when you logon.
# This will only work if you login through runlevel 4 (graphical login)!!!
# Better is to have it start through Ctrl-Space like configured higher up ^^.
@@ -197,22 +172,6 @@ endif
# /usr/bin/scim -d
#endif
-# GTK+ environments such as XFce should support SCIM automatically, BUT
-# if the first app you run is a Qt one, you'll run into problems. This
-# can be avoided by going into Menu -> Settings -> Autostarted Applications
-# and adding SCIM: /usr/bin/scim -d
-
-# KDE will not start SCIM automatically, so you will need a script such as
-# this one in your $HOME/.kde/Autostart:
-
-#!/bin/csh
-#[ -x /usr/bin/scim ]
-#if (\$status == 0) then
-# /usr/bin/scim -d &
-#endif
-
-# Obviously, uncomment all but the first line. :-)
-
EOT
chmod 755 $PKG/etc/profile.d/scim.sh.new
diff --git a/source/x/ttf-indic-fonts/COPYING b/source/x/ttf-indic-fonts/COPYING
deleted file mode 100644
index 3912109b5..000000000
--- a/source/x/ttf-indic-fonts/COPYING
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/source/x/ttf-indic-fonts/Samyak_Malayalam.ttf b/source/x/ttf-indic-fonts/Samyak_Malayalam.ttf
deleted file mode 100644
index 5d06d2ed2..000000000
--- a/source/x/ttf-indic-fonts/Samyak_Malayalam.ttf
+++ /dev/null
Binary files differ
diff --git a/source/x/ttf-indic-fonts/Samyak_Malayalam.url b/source/x/ttf-indic-fonts/Samyak_Malayalam.url
deleted file mode 100644
index 993d05123..000000000
--- a/source/x/ttf-indic-fonts/Samyak_Malayalam.url
+++ /dev/null
@@ -1,4 +0,0 @@
-http://www.gnowledge.org/Gnoware/localization/Samyak_Font/new/Samyak_Malayalam.ttf
-
-This font is licensed under the GPL.
-
diff --git a/source/x/ttf-indic-fonts/doinst.sh b/source/x/ttf-indic-fonts/doinst.sh
index f6ebdc7c3..2566f24ff 100644
--- a/source/x/ttf-indic-fonts/doinst.sh
+++ b/source/x/ttf-indic-fonts/doinst.sh
@@ -10,4 +10,3 @@ fi
if [ -x /usr/bin/fc-cache ]; then
/usr/bin/fc-cache -f
fi
-# make links:
diff --git a/source/x/ttf-indic-fonts/ttf-indic-fonts.SlackBuild b/source/x/ttf-indic-fonts/ttf-indic-fonts.SlackBuild
index 2353121ff..338b5edd7 100755
--- a/source/x/ttf-indic-fonts/ttf-indic-fonts.SlackBuild
+++ b/source/x/ttf-indic-fonts/ttf-indic-fonts.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,7 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-VERSION=0.4.7.4
+VERSION=0.5.14
ARCH=noarch
BUILD=1
@@ -32,11 +32,8 @@ rm -rf $PKG
mkdir -p $PKG
cd $TMP
rm -rf ttf-indic-fonts-$VERSION
-tar xvf $CWD/ttf-indic-fonts-$VERSION.tar.bz2 || exit 1
+tar xvf $CWD/ttf-indic-fonts_$VERSION.tar.xz || exit 1
cd ttf-indic-fonts-$VERSION || exit 1
-# Patch copyright notices so that they do not give inaccurate
-# information about where to find the GPL:
-zcat $CWD/ttf-indic-fonts.copyright.diff.gz | patch -p1 --verbose || exit 1
# I'm very interested in making this a better package, but have a
# long way to go in understanding how all of this works. I know
@@ -64,27 +61,24 @@ find . \
mkdir -p $PKG/usr/share/fonts/TTF/
cp -a */*.ttf $PKG/usr/share/fonts/TTF
-# This is a better Malayalam font:
-cp -a $CWD/Samyak_Malayalam.ttf.bz2 $PKG/usr/share/fonts/TTF
-( cd $PKG/usr/share/fonts/TTF
- bzip2 -d Samyak_Malayalam.ttf.bz2
- chmod 644 Samyak_Malayalam.ttf
- chown root:root Samyak_Malayalam.ttf
+mkdir -p $PKG/etc/fonts/conf.avail
+find . -name "*.conf" -exec cp -a {} $PKG/etc/fonts/conf.avail \;
+
+mkdir -p $PKG/etc/fonts/conf.d
+( cd $PKG/etc/fonts/conf.d
+ for file in ../conf.avail/*.conf ; do
+ ln -sf $file .
+ done
)
-# Remove the old Malayalam font:
-rm -f $PKG/usr/share/fonts/TTF/malayalam.ttf
# Put copyright notices in the docs directory:
mkdir -p $PKG/usr/doc/ttf-indic-fonts-$VERSION
find . -name "*.copyright" -exec cp -a {} $PKG/usr/doc/ttf-indic-fonts-$VERSION \;
-cp -a $CWD/COPYING.bz2 $PKG/usr/doc/ttf-indic-fonts-$VERSION
-cp -a $CWD/Samyak_Malayalam.url $PKG/usr/doc/ttf-indic-fonts-$VERSION
-( cd $PKG/usr/doc/ttf-indic-fonts-$VERSION ; bzip2 -d COPYING.bz2 )
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $TMP/ttf-indic-fonts-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n --prepend $TMP/ttf-indic-fonts-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/x/ttf-indic-fonts/ttf-indic-fonts.copyright.diff b/source/x/ttf-indic-fonts/ttf-indic-fonts.copyright.diff
deleted file mode 100644
index d4ba218b5..000000000
--- a/source/x/ttf-indic-fonts/ttf-indic-fonts.copyright.diff
+++ /dev/null
@@ -1,65 +0,0 @@
---- ./debian/ttf-punjabi-fonts.copyright.orig 2005-09-11 00:04:08.000000000 -0500
-+++ ./debian/ttf-punjabi-fonts.copyright 2006-09-21 02:19:02.000000000 -0500
-@@ -17,5 +17,3 @@
- Copyright (c) 2003, Automatic Control Equipments, Pune, INDIA.
- Released under GPL
-
--On a Debian system the text of the GPL can be found in
--/usr/share/common-licenses.
---- ./debian/ttf-tamil-fonts.copyright.orig 2005-09-11 00:04:08.000000000 -0500
-+++ ./debian/ttf-tamil-fonts.copyright 2006-09-21 02:19:05.000000000 -0500
-@@ -25,5 +25,3 @@
-
- Opentype tables were added by T. Vaseeharan <t_vasee@yahoo.com>.
-
--On Debian GNU/Linux systems you can find a copy of the GPL in
--/usr/share/common-licenses/GPL.
---- ./debian/ttf-gujarati-fonts.copyright.orig 2005-09-11 00:04:08.000000000 -0500
-+++ ./debian/ttf-gujarati-fonts.copyright 2006-09-21 02:18:40.000000000 -0500
-@@ -28,5 +28,3 @@
- Copyright (c) 2003, Automatic Control Equipments, Pune, INDIA.
- Released under GPL
-
--On a Debian system the text of the GPL can be found in
--/usr/share/common-licenses.
---- ./debian/ttf-malayalam-fonts.copyright.orig 2006-01-15 18:03:55.000000000 -0600
-+++ ./debian/ttf-malayalam-fonts.copyright 2006-09-21 02:18:56.000000000 -0500
-@@ -18,6 +18,3 @@
-
- Copyright (c) 2005 K.H.Hussain <hussain@kfri.org>
-
--A copy of the GNU GPL can be found at
--
-- /usr/share/common-licenses/GPL
---- ./debian/ttf-telugu-fonts.copyright.orig 2005-09-11 00:04:08.000000000 -0500
-+++ ./debian/ttf-telugu-fonts.copyright 2006-09-21 02:19:09.000000000 -0500
-@@ -14,5 +14,3 @@
- -----------
- GPLed Telugu font from http://www.kavya-nandanam.com
-
--On a Debian system the text of the GPL can be found in
--/usr/share/common-licenses.
---- ./debian/ttf-kannada-fonts.copyright.orig 2006-01-15 17:51:13.000000000 -0600
-+++ ./debian/ttf-kannada-fonts.copyright 2006-09-21 02:18:47.000000000 -0500
-@@ -7,5 +7,3 @@
- (C) Indian Institute of Science,Bangalore 2005
- Released under the GPL.
-
--On a Debian system the text of the GPL can be found in
--/usr/share/common-licenses.
---- ./debian/ttf-devanagari-fonts.copyright.orig 2006-01-15 17:51:13.000000000 -0600
-+++ ./debian/ttf-devanagari-fonts.copyright 2006-09-21 02:18:37.000000000 -0500
-@@ -30,5 +30,3 @@
- ------------------
- Copyright (c) Sanir Karmacharya <sanir@email.com>, Suyash Shrestha
-
--On a Debian system the text of the GPL can be found in
--/usr/share/common-licenses.
---- ./debian/ttf-oriya-fonts.copyright.orig 2005-09-11 00:04:08.000000000 -0500
-+++ ./debian/ttf-oriya-fonts.copyright 2006-09-21 02:18:59.000000000 -0500
-@@ -11,5 +11,3 @@
- (C) Andy White 2003
- Released under GPL (http://oriya.sarovar.org/)
-
--On a Debian system the text of the GPL can be found in
--/usr/share/common-licenses.
diff --git a/source/x/wqy-zenhei-font-ttf/fixup-fontconfig-file.diff b/source/x/wqy-zenhei-font-ttf/fixup-fontconfig-file.diff
new file mode 100644
index 000000000..6d8fa176f
--- /dev/null
+++ b/source/x/wqy-zenhei-font-ttf/fixup-fontconfig-file.diff
@@ -0,0 +1,21 @@
+Since this fontconfig change [1], we get warnings in 44-wqy-zenhei.conf
+like this: "Having multiple values in <test> isn't supported and may
+not work as expected" - let's fix that...
+
+[1] http://cgit.freedesktop.org/fontconfig/commit/?id=2837c63876b9b
+
+diff -Nur wqy-zenhei.orig/44-wqy-zenhei.conf wqy-zenhei/44-wqy-zenhei.conf
+--- wqy-zenhei.orig/44-wqy-zenhei.conf 2009-05-17 15:25:41.000000000 -0500
++++ wqy-zenhei/44-wqy-zenhei.conf 2013-02-25 19:00:36.870491434 -0600
+@@ -6,7 +6,11 @@
+ <match target="font">
+ <test qual="any" name="family">
+ <string>WenQuanYi Zen Hei</string>
++ </test>
++ <test qual="any" name="family">
+ <string>文泉驿正黑</string>
++ </test>
++ <test qual="any" name="family">
+ <string>文泉驛正黑</string>
+ </test>
+ <edit name="globaladvance"><bool>false</bool></edit>
diff --git a/source/x/wqy-zenhei-font-ttf/wqy-zenhei-font-ttf.SlackBuild b/source/x/wqy-zenhei-font-ttf/wqy-zenhei-font-ttf.SlackBuild
index b9fb149da..ee34726bb 100755
--- a/source/x/wqy-zenhei-font-ttf/wqy-zenhei-font-ttf.SlackBuild
+++ b/source/x/wqy-zenhei-font-ttf/wqy-zenhei-font-ttf.SlackBuild
@@ -38,7 +38,7 @@ SRCNAM=wqy-zenhei
VERSION=${VERSION:-0.8.38}
SUB=${SUB:-1}
ARCH=noarch
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
CWD=$(pwd)
TMP=${TMP:-/tmp}
@@ -66,6 +66,9 @@ rm -rf ${PRGNAM}-${VERSION}
tar -xvf ${SOURCE} || exit 1
mv ${SRCNAM} ${PRGNAM}-${VERSION} || exit 1
cd ${PRGNAM}-${VERSION}
+
+zcat $CWD/fixup-fontconfig-file.diff.gz | patch -p1 || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -73,6 +76,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# The following causes an error since the package no longer contains any ttf
+# fonts, but it is harmless. It's probably safer to leave the cp command the
+# way it is in case future versions include any ttf fonts.
# Install font:
cp *.ttf *.ttc $PKG$FONTDIR/
diff --git a/source/x/x11/build/increment.sh b/source/x/x11/build/increment.sh
new file mode 100755
index 000000000..6de5d0da6
--- /dev/null
+++ b/source/x/x11/build/increment.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+# A script to increment build numbers.
+# Call it with the list of the build numbers to increase by one:
+#
+# ./increment.sh xf86-input-acecad xf86-input-aiptek xf86-input-joystick
+#
+# If a build file does not exist, it will be created with a value of 2.
+
+for build in $* ; do
+ if [ ! -r $build ]; then
+ echo "Creating $build with value 2"
+ echo 2 > $build
+ else
+ echo "Incrementing $build $(cat $build) -> $(expr $(cat $build) + 1)"
+ echo $(expr $(cat $build) + 1) > $build
+ fi
+done
diff --git a/source/x/x11/build/xcb-util-image b/source/x/x11/build/xcb-util-image
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xcb-util-image
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xcompmgr b/source/x/x11/build/xcompmgr
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xcompmgr
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xdm b/source/x/x11/build/xdm
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xdm
+++ b/source/x/x11/build/xdm
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-input-acecad b/source/x/x11/build/xf86-input-acecad
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-input-acecad
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-input-aiptek b/source/x/x11/build/xf86-input-aiptek
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-input-aiptek
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-input-joystick b/source/x/x11/build/xf86-input-joystick
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-input-joystick
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xcb-proto b/source/x/x11/build/xf86-input-keyboard
index 00750edc0..00750edc0 100644
--- a/source/x/x11/build/xcb-proto
+++ b/source/x/x11/build/xf86-input-keyboard
diff --git a/source/x/x11/build/xf86-input-mouse b/source/x/x11/build/xf86-input-mouse
new file mode 100644
index 000000000..00750edc0
--- /dev/null
+++ b/source/x/x11/build/xf86-input-mouse
@@ -0,0 +1 @@
+3
diff --git a/source/x/x11/build/xf86-input-penmount b/source/x/x11/build/xf86-input-penmount
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-input-penmount
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-input-synaptics b/source/x/x11/build/xf86-input-synaptics
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-input-synaptics
@@ -0,0 +1 @@
+2
diff --git a/source/kde/build/calligra b/source/x/x11/build/xf86-input-vmmouse
index b8626c4cf..b8626c4cf 100644
--- a/source/kde/build/calligra
+++ b/source/x/x11/build/xf86-input-vmmouse
diff --git a/source/x/x11/build/xf86-input-void b/source/x/x11/build/xf86-input-void
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-input-void
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-input-wacom b/source/x/x11/build/xf86-input-wacom
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xf86-input-wacom
+++ b/source/x/x11/build/xf86-input-wacom
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-video-apm b/source/x/x11/build/xf86-video-apm
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xf86-video-apm
+++ b/source/x/x11/build/xf86-video-apm
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-video-ark b/source/x/x11/build/xf86-video-ark
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-ark
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-ast b/source/x/x11/build/xf86-video-ast
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-video-ast
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xf86-video-ati b/source/x/x11/build/xf86-video-ati
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-video-ati
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xf86-video-chips b/source/x/x11/build/xf86-video-chips
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xf86-video-chips
+++ b/source/x/x11/build/xf86-video-chips
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-video-cirrus b/source/x/x11/build/xf86-video-cirrus
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-cirrus
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-glint b/source/x/x11/build/xf86-video-glint
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-glint
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-i128 b/source/x/x11/build/xf86-video-i128
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-i128
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-mach64 b/source/x/x11/build/xf86-video-mach64
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-mach64
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-mga b/source/x/x11/build/xf86-video-mga
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-mga
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-modesetting b/source/x/x11/build/xf86-video-modesetting
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-video-modesetting
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xf86-video-neomagic b/source/x/x11/build/xf86-video-neomagic
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-video-neomagic
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xf86-video-nouveau b/source/x/x11/build/xf86-video-nouveau
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-video-nouveau
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xf86-video-nv b/source/x/x11/build/xf86-video-nv
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-video-nv
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-video-omap b/source/x/x11/build/xf86-video-omap
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-omap
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-openchrome b/source/x/x11/build/xf86-video-openchrome
new file mode 100644
index 000000000..0cfbf0888
--- /dev/null
+++ b/source/x/x11/build/xf86-video-openchrome
@@ -0,0 +1 @@
+2
diff --git a/source/x/x11/build/xf86-video-rendition b/source/x/x11/build/xf86-video-rendition
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-rendition
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-s3virge b/source/x/x11/build/xf86-video-s3virge
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-video-s3virge
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-video-siliconmotion b/source/x/x11/build/xf86-video-siliconmotion
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/source/x/x11/build/xf86-video-siliconmotion
@@ -0,0 +1 @@
+5
diff --git a/source/x/x11/build/xf86-video-sis b/source/x/x11/build/xf86-video-sis
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-sis
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-sisusb b/source/x/x11/build/xf86-video-sisusb
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xf86-video-sisusb
+++ b/source/x/x11/build/xf86-video-sisusb
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-video-tdfx b/source/x/x11/build/xf86-video-tdfx
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-tdfx
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-trident b/source/x/x11/build/xf86-video-trident
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-trident
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-tseng b/source/x/x11/build/xf86-video-tseng
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xf86-video-tseng
+++ b/source/x/x11/build/xf86-video-tseng
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-video-v4l b/source/x/x11/build/xf86-video-v4l
index 7ed6ff82d..ec635144f 100644
--- a/source/x/x11/build/xf86-video-v4l
+++ b/source/x/x11/build/xf86-video-v4l
@@ -1 +1 @@
-5
+9
diff --git a/source/x/x11/build/xf86-video-vmware b/source/x/x11/build/xf86-video-vmware
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-vmware
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/build/xf86-video-voodoo b/source/x/x11/build/xf86-video-voodoo
index 0cfbf0888..7ed6ff82d 100644
--- a/source/x/x11/build/xf86-video-voodoo
+++ b/source/x/x11/build/xf86-video-voodoo
@@ -1 +1 @@
-2
+5
diff --git a/source/x/x11/build/xf86-video-xgi b/source/x/x11/build/xf86-video-xgi
index 0cfbf0888..b8626c4cf 100644
--- a/source/x/x11/build/xf86-video-xgi
+++ b/source/x/x11/build/xf86-video-xgi
@@ -1 +1 @@
-2
+4
diff --git a/source/x/x11/build/xf86-video-xgixp b/source/x/x11/build/xf86-video-xgixp
new file mode 100644
index 000000000..b8626c4cf
--- /dev/null
+++ b/source/x/x11/build/xf86-video-xgixp
@@ -0,0 +1 @@
+4
diff --git a/source/x/x11/configure/xf86-input-vmmouse b/source/x/x11/configure/xf86-input-vmmouse
index 1b99250b6..1ac863519 100644
--- a/source/x/x11/configure/xf86-input-vmmouse
+++ b/source/x/x11/configure/xf86-input-vmmouse
@@ -8,8 +8,7 @@ CXXFLAGS=$SLKCFLAGS \
--infodir=/usr/info \
--mandir=/usr/man \
--disable-static \
- --with-hal-bin-dir=/usr/bin \
- --with-hal-callouts-dir=/usr/libexec \
- --with-hal-fdi-dir=/usr/share/hal/fdi/policy/10osvendor \
- --with-udev-rules-dir=none \
+ --with-hal-bin-dir=none \
+ --with-hal-callouts-dir=none \
+ --with-hal-fdi-dir=none \
--build=$ARCH-slackware-linux
diff --git a/source/x/x11/configure/xf86-video-nouveau b/source/x/x11/configure/xf86-video-nouveau
deleted file mode 100644
index e050771b3..000000000
--- a/source/x/x11/configure/xf86-video-nouveau
+++ /dev/null
@@ -1,11 +0,0 @@
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./autogen.sh \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --infodir=/usr/info \
- --mandir=/usr/man \
- --disable-static \
- --build=$ARCH-slackware-linux
diff --git a/source/x/x11/configure/xorg-server b/source/x/x11/configure/xorg-server
index 778d7668a..b62befbae 100644
--- a/source/x/x11/configure/xorg-server
+++ b/source/x/x11/configure/xorg-server
@@ -27,7 +27,7 @@ CFLAGS="$SLKCFLAGS" \
--with-int10=x86emu \
--with-default-font-path="${DEF_FONTPATH}" \
--with-module-dir=/usr/lib${LIBDIRSUFFIX}/xorg/modules \
- --with-os-name="Slackware 14.0" \
+ --with-os-name="Slackware 14.1" \
--with-os-vendor="Slackware Linux Project" \
--with-xkb-path=/etc/X11/xkb \
--with-xkb-output=/var/lib/xkb \
diff --git a/source/x/x11/doinst.sh/xdm b/source/x/x11/doinst.sh/xdm
index e1d72520d..871a3897f 100644
--- a/source/x/x11/doinst.sh/xdm
+++ b/source/x/x11/doinst.sh/xdm
@@ -11,7 +11,7 @@ config() {
}
for conffile in \
Xaccess Xreset Xresources Xservers Xsession Xsetup_0 Xstartup Xwilling \
- GiveConsole TakeConsole chooser xdm-config ../app-defaults/Chooser ;
+ GiveConsole TakeConsole xdm-config ../app-defaults/Chooser ;
do
config etc/X11/xdm/${conffile}.new
done
diff --git a/source/x/x11/makepkg/xorg-server b/source/x/x11/makepkg/xorg-server
index 67b93c971..4f47738e1 100644
--- a/source/x/x11/makepkg/xorg-server
+++ b/source/x/x11/makepkg/xorg-server
@@ -33,3 +33,10 @@ cd ${SLACK_X_BUILD_DIR}/package-xorg-server-xephyr
cd $PKG
/sbin/makepkg -l y -c n ${SLACK_X_BUILD_DIR}/xorg-server-${MODULAR_PACKAGE_VERSION}-$ARCH-$BUILD.txz
+if [ "$UPGRADE_PACKAGES" = "yes" ]; then
+ /sbin/upgradepkg --install-new ${SLACK_X_BUILD_DIR}/xorg-server-xnest-${MODULAR_PACKAGE_VERSION}-$ARCH-$BUILD.txz
+ /sbin/upgradepkg --install-new ${SLACK_X_BUILD_DIR}/xorg-server-xvfb-${MODULAR_PACKAGE_VERSION}-$ARCH-$BUILD.txz
+ /sbin/upgradepkg --install-new ${SLACK_X_BUILD_DIR}/xorg-server-xephyr-${MODULAR_PACKAGE_VERSION}-$ARCH-$BUILD.txz
+ /sbin/upgradepkg --install-new ${SLACK_X_BUILD_DIR}/xorg-server-${MODULAR_PACKAGE_VERSION}-$ARCH-$BUILD.txz
+fi
+
diff --git a/source/x/x11/modularize b/source/x/x11/modularize
index d6eb2f68a..38762ffda 100644
--- a/source/x/x11/modularize
+++ b/source/x/x11/modularize
@@ -126,6 +126,7 @@ sessreg
setxkbmap
showfont
smproxy
+transset
twm
util-macros
videoproto
@@ -138,12 +139,14 @@ xbitmaps
xcalc
xcb-proto
xcb-util
+xcb-util-cursor
xcb-util-image
xcb-util-keysyms
xcb-util-renderutil
xcb-util-wm
xclipboard
xclock
+xcm
xcmiscproto
xcmsdb
xcompmgr
@@ -163,6 +166,8 @@ xf86-input-acecad
xf86-input-aiptek
xf86-input-evdev
xf86-input-joystick
+xf86-input-keyboard
+xf86-input-mouse
xf86-input-penmount
xf86-input-synaptics
xf86-input-vmmouse
@@ -186,6 +191,7 @@ xf86-video-modesetting
xf86-video-neomagic
xf86-video-nouveau
xf86-video-nv
+xf86-video-omap
xf86-video-openchrome
xf86-video-qxl
xf86-video-r128
@@ -205,6 +211,7 @@ xf86-video-vesa
xf86-video-vmware
xf86-video-voodoo
xf86-video-xgi
+xf86-video-xgixp
xf86bigfontproto
xf86dga
xf86dgaproto
diff --git a/source/x/x11/package-blacklist b/source/x/x11/package-blacklist
index 377624999..8e2f3eb5c 100644
--- a/source/x/x11/package-blacklist
+++ b/source/x/x11/package-blacklist
@@ -2,6 +2,10 @@
# this platform) below. Just the package name -- no version
# number is needed.
+# ARM only packages:
+# They also say in the README for this one that it is not yet ready:
+xf86-video-omap
+
# MacOS related packages:
applewmproto
windowswmproto
diff --git a/source/x/x11/patch/xcompmgr.patch b/source/x/x11/patch/xcompmgr.patch
index 6097b12a3..33c43a524 100644
--- a/source/x/x11/patch/xcompmgr.patch
+++ b/source/x/x11/patch/xcompmgr.patch
@@ -1,2 +1,4 @@
zcat $CWD/patch/xcompmgr/xcompmgr-follow-icccm-spec.diff.gz | patch -p1 --verbose \
|| { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+zcat $CWD/patch/xcompmgr/patch-XFixesSetPictureClipRegion-shadow-fix-xcompmgr.c.diff.gz | patch -p0 --verbose \
+ || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/x/x11/patch/xcompmgr/patch-XFixesSetPictureClipRegion-shadow-fix-xcompmgr.c.diff b/source/x/x11/patch/xcompmgr/patch-XFixesSetPictureClipRegion-shadow-fix-xcompmgr.c.diff
new file mode 100644
index 000000000..39b8ac725
--- /dev/null
+++ b/source/x/x11/patch/xcompmgr/patch-XFixesSetPictureClipRegion-shadow-fix-xcompmgr.c.diff
@@ -0,0 +1,28 @@
+--- xcompmgr.c 2011-11-19 01:49:52.000000000 -0600
++++ xcompmgr.c 2012-08-11 21:58:58.000000000 -0500
+@@ -1028,7 +1028,6 @@
+ {
+ w->borderClip = XFixesCreateRegion (dpy, NULL, 0);
+ XFixesCopyRegion (dpy, w->borderClip, region);
+- XFixesIntersectRegion(dpy, w->borderClip, w->borderClip, w->borderSize);
+ }
+ w->prev_trans = t;
+ t = w;
+@@ -1080,6 +1079,8 @@
+ if (w->mode == WINDOW_TRANS)
+ {
+ int x, y, wid, hei;
++ XFixesIntersectRegion(dpy, w->borderClip, w->borderClip, w->borderSize);
++ XFixesSetPictureClipRegion(dpy, rootBuffer, 0, 0, w->borderClip);
+ #if HAS_NAME_WINDOW_PIXMAP
+ x = w->a.x;
+ y = w->a.y;
+@@ -1099,6 +1100,8 @@
+ else if (w->mode == WINDOW_ARGB)
+ {
+ int x, y, wid, hei;
++ XFixesIntersectRegion(dpy, w->borderClip, w->borderClip, w->borderSize);
++ XFixesSetPictureClipRegion(dpy, rootBuffer, 0, 0, w->borderClip);
+ #if HAS_NAME_WINDOW_PIXMAP
+ x = w->a.x;
+ y = w->a.y;
diff --git a/source/x/x11/patch/xdm.patch b/source/x/x11/patch/xdm.patch
new file mode 100644
index 000000000..75e0dcb92
--- /dev/null
+++ b/source/x/x11/patch/xdm.patch
@@ -0,0 +1 @@
+zcat $CWD/patch/xdm/xdm.glibc.crypt.diff.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/x/x11/patch/xdm/xdm.glibc.crypt.diff b/source/x/x11/patch/xdm/xdm.glibc.crypt.diff
new file mode 100644
index 000000000..076df37dc
--- /dev/null
+++ b/source/x/x11/patch/xdm/xdm.glibc.crypt.diff
@@ -0,0 +1,42 @@
+From 8d1eb5c74413e4c9a21f689fc106949b121c0117 Mon Sep 17 00:00:00 2001
+From: mancha <mancha1@hush.com>
+Date: Wed, 22 May 2013 14:20:26 +0000
+Subject: Handle NULL returns from glibc 2.17+ crypt().
+
+Starting with glibc 2.17 (eglibc 2.17), crypt() fails with EINVAL
+(w/ NULL return) if the salt violates specifications. Additionally,
+on FIPS-140 enabled Linux systems, DES/MD5-encrypted passwords
+passed to crypt() fail with EPERM (w/ NULL return).
+
+If using glibc's crypt(), check return value to avoid a possible
+NULL pointer dereference.
+
+Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>
+Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+---
+diff --git a/greeter/verify.c b/greeter/verify.c
+index db3cb7d..b009e2b 100644
+--- a/greeter/verify.c
++++ b/greeter/verify.c
+@@ -329,6 +329,7 @@ Verify (struct display *d, struct greet_info *greet, struct verify_info *verify)
+ struct spwd *sp;
+ # endif
+ char *user_pass = NULL;
++ char *crypted_pass = NULL;
+ # endif
+ # ifdef __OpenBSD__
+ char *s;
+@@ -464,7 +465,9 @@ Verify (struct display *d, struct greet_info *greet, struct verify_info *verify)
+ # if defined(ultrix) || defined(__ultrix__)
+ if (authenticate_user(p, greet->password, NULL) < 0)
+ # else
+- if (strcmp (crypt (greet->password, user_pass), user_pass))
++ crypted_pass = crypt (greet->password, user_pass);
++ if ((crypted_pass == NULL)
++ || (strcmp (crypted_pass, user_pass)))
+ # endif
+ {
+ if(!greet->allow_null_passwd || strlen(p->pw_passwd) > 0) {
+--
+cgit v0.9.0.2-2-gbebe
+
diff --git a/source/x/x11/patch/xf86-video-apm.patch b/source/x/x11/patch/xf86-video-apm.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-apm.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-ark.patch b/source/x/x11/patch/xf86-video-ark.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-ark.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-ast.patch b/source/x/x11/patch/xf86-video-ast.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-ast.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-chips.patch b/source/x/x11/patch/xf86-video-chips.patch
index a5a54ac0e..a9ddcaa4d 100644
--- a/source/x/x11/patch/xf86-video-chips.patch
+++ b/source/x/x11/patch/xf86-video-chips.patch
@@ -1,4 +1,25 @@
-for patchfile in $CWD/patch/xf86-video-chips/*.patch ; do
- cat $patchfile | patch -p1 --verbose \
- || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; } ;
+# Rationale for this is here:
+
+# commit bde65934fe8b40a5fdc8a469d0355caca59e81b5
+# Author: Alan Coopersmith <alan.coopersmith@oracle.com>
+# Date: Sat Jul 21 09:27:10 2012 -0700
+#
+# Add iopl.h to source lists in util/Makefile.am so it gets packaged
+#
+# Was missed when it was created in commit c421f2477c9999, since
+# "make distcheck" passes due to configure determining it can't
+# build the utils without the header and moving on.
+#
+# Reported-by: Andreas Radke <a.radke@arcor.de>
+# Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+
+# iopl.h obtained from git repo
+cp $CWD/patch/xf86-video-chips/iopl.h util/ \
+ || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
done
diff --git a/source/x/x11/patch/xf86-video-chips/0001-chips-gut-the-overlay-8-16-support-from-driver.patch b/source/x/x11/patch/xf86-video-chips/0001-chips-gut-the-overlay-8-16-support-from-driver.patch
deleted file mode 100644
index a52e41037..000000000
--- a/source/x/x11/patch/xf86-video-chips/0001-chips-gut-the-overlay-8-16-support-from-driver.patch
+++ /dev/null
@@ -1,588 +0,0 @@
-From e4bd864898fd276a62dac05cdfff394e98434f02 Mon Sep 17 00:00:00 2001
-From: Dave Airlie <airlied@redhat.com>
-Date: Tue, 29 Mar 2011 13:53:31 +1000
-Subject: [PATCH 1/9] chips: gut the overlay 8/16 support from driver.
-
-This driver is for chips that were bought by Intel in 1997,
-this feature means maintaining a lot of code in the X server
-for little gain.
-
-Drop it like its hot.
-
-Signed-off-by: Dave Airlie <airlied@redhat.com>
-Reviewed-by: Adam Jackson <ajax@redhat.com>
----
- man/chips.man | 3 -
- src/ct_accel.c | 46 ++---------
- src/ct_driver.c | 234 ++++++-------------------------------------------------
- src/ct_driver.h | 1 -
- src/ct_video.c | 3 +-
- 5 files changed, 28 insertions(+), 259 deletions(-)
-
-diff --git a/man/chips.man b/man/chips.man
-index 740af38..0c022ee 100644
---- a/man/chips.man
-+++ b/man/chips.man
-@@ -165,9 +165,6 @@ Force the use of memory mapped IO where it can be used. Default: off
- Force driver to leave centering and stretching registers alone. This
- can fix some laptop suspend/resume problems. Default: off
- .TP
--.BI "Option \*qOverlay\*q"
--Enable 8+24 overlay mode. Only appropriate for depth 24. Default: off.
--.TP
- .BI "Option \*qColorKey\*q \*q" integer \*q
- Set the colormap index used for the transparency key for the depth 8 plane
- when operating in 8+16 overlay mode. The value must be in the range
-diff --git a/src/ct_accel.c b/src/ct_accel.c
-index 3920b0a..4b5776a 100644
---- a/src/ct_accel.c
-+++ b/src/ct_accel.c
-@@ -428,19 +428,7 @@ chips_imagewrite:
- infoPtr->ImageWriteFlags |= NO_PLANEMASK;
- #endif
-
--
--#ifdef CHIPS_HIQV
-- if (XAAInit(pScreen, infoPtr)) {
-- if (cPtr->Flags & ChipsOverlay8plus16)
-- return(XAAInitDualFramebufferOverlay(pScreen,
-- CTNAME(DepthChange)));
-- else
-- return TRUE;
-- } else
-- return FALSE;
--#else
- return(XAAInit(pScreen, infoPtr));
--#endif
- }
-
- #ifdef CHIPS_HIQV
-@@ -1243,11 +1231,6 @@ CTNAME(SubsequentScreenToScreenColorExpandFill)(ScrnInfoPtr pScrn,
- #endif
- w *= cAcl->BytesPerPixel;
- ctBLTWAIT;
--#ifdef CHIPS_HIQV
-- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16) &&
-- (pScrn->depth == 8))
-- ctSETPITCH(cAcl->PitchInBytes << 1, cAcl->PitchInBytes);
--#endif
- ctSETSRCADDR(srcaddr);
- ctSETDSTADDR(destaddr);
- #ifdef CHIPS_HIQV
-@@ -1271,10 +1254,6 @@ CTNAME(SetupForColor8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty,
- patternaddr = (paty * pScrn->displayWidth +
- (patx & ~0x3F)) * cAcl->BytesPerPixel;
- cAcl->patternyrot = (patx & 0x3F) >> 3;
--#ifdef CHIPS_HIQV
-- if (cPtr->Flags & ChipsOverlay8plus16)
-- patternaddr += cPtr->FbOffset16;
--#endif
-
- ctBLTWAIT;
- ctSETPATSRCADDR(patternaddr);
-@@ -1338,10 +1317,7 @@ CTNAME(SetupForMono8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty,
-
- #ifdef CHIPS_HIQV
- patternaddr = paty * pScrn->displayWidth + patx;
-- if (cPtr->Flags & ChipsOverlay8plus16)
-- patternaddr = patternaddr * 2 + cPtr->FbOffset16;
-- else
-- patternaddr *= cAcl->BytesPerPixel;
-+ patternaddr *= cAcl->BytesPerPixel;
- #else
- patternaddr = (paty * pScrn->displayWidth + patx) * cAcl->BytesPerPixel;
- #endif
-@@ -1593,10 +1569,7 @@ CTNAME(WritePixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h,
- dwords = (((skipleft + bytesPerLine + 0x7) & ~0x7)) >> 2;
- destaddr = (y * pScrn->displayWidth + x) * (bpp >> 3);
- destpitch = pScrn->displayWidth * (bpp >> 3);
-- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16))
-- destaddr += cPtr->FbOffset16;
-- else
-- destaddr += cAcl->FbOffset;
-+ destaddr += cAcl->FbOffset;
-
- ctBLTWAIT;
-
-@@ -1681,10 +1654,7 @@ CTNAME(WritePixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h,
- y++;
-
- destaddr = (y * pScrn->displayWidth + x) * (bpp >> 3);
-- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16))
-- destaddr += cPtr->FbOffset16;
-- else
-- destaddr += cAcl->FbOffset;
-+ destaddr += cAcl->FbOffset;
-
- ctBLTWAIT;
- ctSETDSTADDR(destaddr);
-@@ -1717,10 +1687,7 @@ CTNAME(ReadPixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h,
- dwords = (((bytesPerLine + 0x7) & ~0x7)) >> 2;
- srcaddr = (y * pScrn->displayWidth + x) * (bpp >> 3);
- srcpitch = pScrn->displayWidth * (bpp >> 3);
-- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16))
-- srcaddr += cPtr->FbOffset16;
-- else
-- srcaddr += cAcl->FbOffset;
-+ srcaddr += cAcl->FbOffset;
-
- ctBLTWAIT;
- ctSETROP( ctDSTSYSTEM | ctLEFT2RIGHT | ctTOP2BOTTOM |
-@@ -1755,10 +1722,7 @@ CTNAME(ReadPixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h,
- dst += dstwidth;
- y++;
- srcaddr = (y * pScrn->displayWidth + x) * (bpp >> 3);
-- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16))
-- srcaddr += cPtr->FbOffset16;
-- else
-- srcaddr += cAcl->FbOffset;
-+ srcaddr += cAcl->FbOffset;
- ctBLTWAIT;
- ctSETSRCADDR(srcaddr);
- ctSETHEIGHTWIDTHGO(h, bytesPerLine);
-diff --git a/src/ct_driver.c b/src/ct_driver.c
-index 6624b79..08df050 100644
---- a/src/ct_driver.c
-+++ b/src/ct_driver.c
-@@ -1639,55 +1639,15 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags)
- }
- }
-
-- if ((s = xf86GetOptValString(cPtr->Options, OPTION_OVERLAY))) {
-- if (!*s || !xf86NameCmp(s, "8,16") || !xf86NameCmp(s, "16,8")) {
-- if (pScrn->bitsPerPixel == 16) {
-- if (cPtr->Flags & ChipsLinearSupport) {
-- cPtr->Flags |= ChipsOverlay8plus16;
-- if(!xf86GetOptValInteger(
-- cPtr->Options, OPTION_COLOR_KEY, &(pScrn->colorKey)))
-- pScrn->colorKey = TRANSPARENCY_KEY;
-- pScrn->overlayFlags = OVERLAY_8_16_DUALFB;
-- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
-- "PseudoColor overlay enabled.\n");
-- if (!xf86IsOptionSet(cPtr->Options, OPTION_LCD_STRETCH))
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-- " - Forcing option \"Stretch\" \"ON\".\n");
-- if (!xf86IsOptionSet(cPtr->Options, OPTION_LCD_CENTER))
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-- " - Forcing option \"LcdCenter\" \"OFF\".\n");
-- if (cPtr->Flags & ChipsShadowFB) {
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-- " - Disabling \"Shadow Framebuffer\".\n");
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-- " Not support with option \"8Plus16\".\n");
-- cPtr->Flags &= ~ChipsShadowFB;
-- cPtr->Rotate = 0;
-- }
-- } else {
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Option \"Overlay\" ignored. Not supported without linear addressing\n");
-- }
-- } else {
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-- "Option \"Overlay\" is not supported in this configuration\n");
-- }
-- } else {
-- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-- "\"%s\" is not a valid value for Option \"Overlay\"\n", s);
-- }
-- }
--
-- if (!(cPtr->Flags & ChipsOverlay8plus16)) {
-- if(xf86GetOptValInteger(cPtr->Options, OPTION_VIDEO_KEY,
-- &(cPtr->videoKey))) {
-- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n",
-+ if(xf86GetOptValInteger(cPtr->Options, OPTION_VIDEO_KEY,
-+ &(cPtr->videoKey))) {
-+ xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n",
- cPtr->videoKey);
-- } else {
-- cPtr->videoKey = (1 << pScrn->offset.red) |
-+ } else {
-+ cPtr->videoKey = (1 << pScrn->offset.red) |
- (1 << pScrn->offset.green) |
- (((pScrn->mask.blue >> pScrn->offset.blue) - 1)
- << pScrn->offset.blue);
-- }
- }
-
- if (cPtr->Flags & ChipsShadowFB) {
-@@ -2335,28 +2295,16 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags)
- /* and 32bits on the others. Thus multiply by a suitable factor */
- if (cPtr->Flags & Chips64BitMemory) {
- if (cPtr->FrameBufferSize && (cPtr->PanelType & ChipsLCD))
-- if (cPtr->Flags & ChipsOverlay8plus16 )
-- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 8 * 0.7 / 4);
-- else
- cPtr->MaxClock = min(cPtr->MaxClock,
- MemClk->Clk * 8 * 0.7 / (bytesPerPixel + 1));
- else
-- if (cPtr->Flags & ChipsOverlay8plus16)
-- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 8 * 0.7 / 3);
-- else
- cPtr->MaxClock = min(cPtr->MaxClock,
- MemClk->Clk * 8 * 0.7 / bytesPerPixel);
- } else {
- if (cPtr->FrameBufferSize && (cPtr->PanelType & ChipsLCD))
-- if (cPtr->Flags & ChipsOverlay8plus16 )
-- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 4 * 0.7 / 4);
-- else
- cPtr->MaxClock = min(cPtr->MaxClock,
- MemClk->Clk * 4 * 0.7 / (bytesPerPixel + 1));
- else
-- if (cPtr->Flags & ChipsOverlay8plus16)
-- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 4 * 0.7 / 3);
-- else
- cPtr->MaxClock = min(cPtr->MaxClock,
- MemClk->Clk * 4 * 0.7 / bytesPerPixel);
- }
-@@ -3736,8 +3684,7 @@ CHIPSEnterVT(int scrnIndex, int flags)
- /* Should we re-save the text mode on each VT enter? */
- if(!chipsModeInit(pScrn, pScrn->currentMode))
- return FALSE;
-- if ((!(cPtr->Flags & ChipsOverlay8plus16))
-- && (cPtr->Flags & ChipsVideoSupport)
-+ if ((cPtr->Flags & ChipsVideoSupport)
- && (cPtr->Flags & ChipsLinearSupport))
- CHIPSResetVideo(pScrn);
-
-@@ -3788,8 +3735,7 @@ chipsLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, LOCO *colors,
- int i, index, shift ;
- CHIPSEntPtr cPtrEnt;
-
-- shift = ((pScrn->depth == 15) &&
-- (!(cPtr->Flags & ChipsOverlay8plus16))) ? 3 : 0;
-+ shift = (pScrn->depth == 15) ? 3 : 0;
-
- if (cPtr->UseDualChannel) {
- cPtrEnt = xf86GetEntityPrivate(pScrn->entityList[0],
-@@ -3895,18 +3841,6 @@ chipsLoadPalette16(ScrnInfoPtr pScrn, int numColors, int *indices,
- hwp->disablePalette(hwp);
- }
-
--static Bool
--cfb8_16ScreenInit(ScreenPtr pScreen, pointer pbits16, pointer pbits8,
-- int xsize, int ysize, int dpix, int dpiy,
-- int width16, int width8)
--{
-- return
-- (fbOverlaySetupScreen(pScreen, pbits16, pbits8, xsize, ysize,
-- dpix, dpiy, width16, width8, 16, 8) &&
-- fbOverlayFinishScreenInit(pScreen, pbits16, pbits8, xsize, ysize,
-- dpix, dpiy, width16, width8, 16, 8, 16, 8));
--}
--
- /* Mandatory */
- static Bool
- CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
-@@ -3947,22 +3881,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- if (!chipsMapMem(pScrn))
- return FALSE;
-
-- /* Setup a pointer to the overlay if needed */
-- if (cPtr->Flags & ChipsOverlay8plus16) {
-- cPtr->FbOffset16 = pScrn->displayWidth * pScrn->virtualY;
-- cPtr->FbSize16 = (pScrn->displayWidth << 1) * pScrn->virtualY;
-- if (cPtr->FbSize16 > (cPtr->FbMapSize - cPtr->FrameBufferSize)) {
-- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
-- "Too little memory for overlay. Disabling.\n");
-- cPtr->Flags &= ~ChipsOverlay8plus16;
-- }
-- if ((pScrn->displayWidth > 1024) || (pScrn->virtualY > 1024)) {
-- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
-- "Max overlay Width/Height 1024 pixels. Disabling.\n");
-- cPtr->Flags &= ~ChipsOverlay8plus16;
-- }
-- }
--
- /* Setup the MMIO register access functions if need */
- if (cPtr->UseFullMMIO && cPtr->MMIOBaseVGA) {
- CHIPSSetMmioExtFuncs(cPtr);
-@@ -4035,18 +3953,10 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- miClearVisualTypes();
-
- /* Setup the visuals we support. */
-- if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)){
-- if (!miSetVisualTypes(8, PseudoColorMask | GrayScaleMask,
-- pScrn->rgbBits, PseudoColor))
-- return FALSE;
-- if (!miSetVisualTypes(16, TrueColorMask, pScrn->rgbBits, TrueColor))
-- return FALSE;
-- } else {
-- if (!miSetVisualTypes(pScrn->depth,
-+ if (!miSetVisualTypes(pScrn->depth,
- miGetDefaultVisualMask(pScrn->depth),
- pScrn->rgbBits, pScrn->defaultVisual))
-- return FALSE;
-- }
-+ return FALSE;
- miSetPixmapDepths ();
-
- /*
-@@ -4090,13 +4000,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- break;
- #endif
- case 16:
-- if (cPtr->Flags & ChipsOverlay8plus16) {
-- ret = cfb8_16ScreenInit(pScreen, (unsigned char *)FBStart +
-- cPtr->FbOffset16, FBStart, width,
-- height, pScrn->xDpi, pScrn->yDpi,
-- displayWidth, displayWidth);
-- break;
-- }
- default:
- ret = fbScreenInit(pScreen, FBStart,
- width,height,
-@@ -4244,9 +4147,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- if (pScrn->bitsPerPixel < 8)
- freespace = allocatebase - pScrn->displayWidth *
- pScrn->virtualY / 2;
-- else if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16))
-- freespace = allocatebase - pScrn->displayWidth *
-- pScrn->virtualY - cPtr->FbSize16;
- else
- freespace = allocatebase - pScrn->displayWidth *
- pScrn->virtualY * (pScrn->bitsPerPixel >> 3);
-@@ -4369,9 +4269,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- AvailFBArea.y2 = cAcl->CacheEnd /
- (pScrn->displayWidth * (pScrn->bitsPerPixel >> 3));
-
-- if (!(cPtr->Flags & ChipsOverlay8plus16)) {
-- xf86InitFBManager(pScreen, &AvailFBArea);
-- }
-+ xf86InitFBManager(pScreen, &AvailFBArea);
- }
- if (cPtr->Flags & ChipsAccelSupport) {
- if (IS_HiQV(cPtr)) {
-@@ -4425,16 +4323,10 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- if (!miCreateDefColormap(pScreen))
- return FALSE;
-
-- if ((cPtr->Flags & ChipsOverlay8plus16) && (pScrn->bitsPerPixel == 16)) {
-- if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, chipsLoadPalette,
-- NULL, CMAP_RELOAD_ON_MODE_SWITCH))
-- return FALSE;
-- } else {
-- if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits,
-+ if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits,
- (pScrn->depth == 16 ? chipsLoadPalette16 : chipsLoadPalette),
- NULL, CMAP_RELOAD_ON_MODE_SWITCH | CMAP_PALETTED_TRUECOLOR))
-- return FALSE;
-- }
-+ return FALSE;
-
- #ifndef XSERVER_LIBPCIACCESS
- racflag = RAC_COLORMAP;
-@@ -4448,8 +4340,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- xf86SetSilkenMouse(pScreen);
- #endif
-
-- if ((!(cPtr->Flags & ChipsOverlay8plus16))
-- && (cPtr->Flags & ChipsVideoSupport)
-+ if ((cPtr->Flags & ChipsVideoSupport)
- && (cPtr->Flags & ChipsLinearSupport)) {
- CHIPSInitVideo(pScreen);
- }
-@@ -4522,10 +4413,7 @@ CHIPSAdjustFrame(int scrnIndex, int x, int y, int flags)
- Base >>= 3;
- break;
- case 16:
-- if (!(cPtr->Flags & ChipsOverlay8plus16))
-- Base >>= 1;
-- else
-- Base >>= 2;
-+ Base >>= 1;
- break;
- case 24:
- if (!IS_HiQV(cPtr))
-@@ -4581,14 +4469,6 @@ CHIPSAdjustFrame(int scrnIndex, int x, int y, int flags)
- cPtr->writeMSS(cPtr, hwp, MSS);
- }
-
-- if (cPtr->Flags & ChipsOverlay8plus16) {
-- Base = (Base << 3) & ~(unsigned long)0xF;
--
-- cPtr->writeMR(cPtr, 0x22, (cPtr->FbOffset16 + Base) & 0xF8);
-- cPtr->writeMR(cPtr, 0x23, ((cPtr->FbOffset16 + Base) >> 8) & 0xFF);
-- cPtr->writeMR(cPtr, 0x24, ((cPtr->FbOffset16 + Base) >> 16) & 0xFF);
-- }
--
- }
-
- /* Mandatory */
-@@ -4652,13 +4532,6 @@ CHIPSValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags)
- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
- CHIPSPtr cPtr = CHIPSPTR(pScrn);
-
-- if (flags & MODECHECK_FINAL) {
-- /* Don't subtract FrambufferSize here as it should be subtracted already */
-- if ((cPtr->Flags & ChipsOverlay8plus16)
-- && ((pScrn->videoRam<<10) - pScrn->displayWidth * 3 * pScrn->virtualY
-- < 0))
-- return MODE_MEM;
-- }
- /* The tests here need to be expanded */
- if ((mode->Flags & V_INTERLACE) && (cPtr->PanelType & ChipsLCD))
- return MODE_NO_INTERLACE;
-@@ -5544,12 +5417,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
- } else {
- ChipsStd->Attribute[0x10] = 0x01; /* mode */
- }
-- if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)) {
-- /* Make sure that the overlay isn't visible in the overscan region */
-- if (ChipsStd->Attribute[0x11] == pScrn->colorKey)
-- ChipsStd->Attribute[0x11] = pScrn->colorKey - 1;
-- } else
-- ChipsStd->Attribute[0x11] = 0x00; /* overscan (border) color */
-+ ChipsStd->Attribute[0x11] = 0x00; /* overscan (border) color */
- ChipsStd->Attribute[0x12] = 0x0F; /* enable all color planes */
- ChipsStd->Attribute[0x13] = 0x00; /* horiz pixel panning 0 */
-
-@@ -5558,8 +5426,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
- /* set virtual screen width */
- tmp = pScrn->displayWidth >> 3;
- if (pScrn->bitsPerPixel == 16) {
-- if (!(cPtr->Flags & ChipsOverlay8plus16))
-- tmp <<= 1; /* double the width of the buffer */
-+ tmp <<= 1; /* double the width of the buffer */
- } else if (pScrn->bitsPerPixel == 24) {
- tmp += tmp << 1;
- } else if (pScrn->bitsPerPixel == 32) {
-@@ -5688,8 +5555,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
-
- /* centering/stretching */
- if (!xf86ReturnOptValBool(cPtr->Options, OPTION_SUSPEND_HACK, FALSE)) {
-- if (!xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_STRETCH, FALSE) ||
-- (cPtr->Flags & ChipsOverlay8plus16)) {
-+ if (!xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_STRETCH, FALSE)) {
- ChipsNew->FR[0x40] &= 0xDF; /* Disable Horizontal stretching */
- ChipsNew->FR[0x48] &= 0xFB; /* Disable vertical stretching */
- ChipsNew->XR[0xA0] = 0x10; /* Disable cursor stretching */
-@@ -5709,8 +5575,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
- }
- }
-
-- if ((xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_CENTER, TRUE))
-- || (cPtr->Flags & ChipsOverlay8plus16)) {
-+ if (xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_CENTER, TRUE)) {
- ChipsNew->FR[0x40] |= 0x3; /* Enable Horizontal centering */
- ChipsNew->FR[0x48] |= 0x3; /* Enable Vertical centering */
- } else {
-@@ -5723,8 +5588,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
- ChipsNew->XR[0x82] |=0x02;
-
- /* software mode flag */
-- ChipsNew->XR[0xE2] = chipsVideoMode(((cPtr->Flags & ChipsOverlay8plus16) ?
-- 8 : pScrn->depth), (cPtr->PanelType & ChipsLCD) ?
-+ ChipsNew->XR[0xE2] = chipsVideoMode((pScrn->depth), (cPtr->PanelType & ChipsLCD) ?
- min(mode->CrtcHDisplay, cPtr->PanelSize.HDisplay) :
- mode->CrtcHDisplay, mode->CrtcVDisplay);
- #ifdef DEBUG
-@@ -5762,7 +5626,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
- }
- }
- /* bpp depend */
-- if ((pScrn->bitsPerPixel == 16) && (!(cPtr->Flags & ChipsOverlay8plus16))) {
-+ if (pScrn->bitsPerPixel == 16) {
- ChipsNew->XR[0x81] = (ChipsNew->XR[0x81] & 0xF0) | 0x4;
- if (cPtr->Flags & ChipsGammaSupport)
- ChipsNew->XR[0x82] |= 0x0C;
-@@ -5915,60 +5779,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode)
- /* Turn off multimedia by default as it degrades performance */
- ChipsNew->XR[0xD0] &= 0x0f;
-
-- /* Setup the video/overlay */
-- if (cPtr->Flags & ChipsOverlay8plus16) {
-- ChipsNew->XR[0xD0] |= 0x10; /* Force the Multimedia engine on */
--#ifdef SAR04
-- ChipsNew->XR[0x4F] = 0x2A; /* SAR04 >352 pixel overlay width */
--#endif
-- ChipsNew->MR[0x1E] &= 0xE0; /* Set Zoom and Direction */
-- if ((!(cPtr->PanelType & ChipsLCD)) && (mode->Flags & V_INTERLACE))
-- ChipsNew->MR[0x1E] |= 0x10; /* Interlace */
-- ChipsNew->MR[0x1F] &= 0x14; /* Mask reserved bits */
-- ChipsNew->MR[0x1F] |= 0x08; /* RGB 16bpp */
-- if (pScrn->weight.green == 5)
-- ChipsNew->MR[0x1F] |= 0x01; /* RGB 15bpp */
--
-- ChipsNew->MR[0x20] &= 0x03; /* Mask reserved bits */
-- ChipsNew->MR[0x20] |= 0x80; /* Auto Centre, Use mem ptr1 */
-- ChipsNew->MR[0x22] = cPtr->FbOffset16 & 0xF8; /* Setup Pointer 1 */
-- ChipsNew->MR[0x23] = (cPtr->FbOffset16 >> 8) & 0xFF;
-- ChipsNew->MR[0x24] = (cPtr->FbOffset16 >> 16) & 0xFF;
-- ChipsNew->MR[0x25] = cPtr->FbOffset16 & 0xF8; /* Setup Pointer 2 */
-- ChipsNew->MR[0x26] = (cPtr->FbOffset16 >> 8) & 0xFF;
-- ChipsNew->MR[0x27] = (cPtr->FbOffset16 >> 16) & 0xFF;
-- ChipsNew->MR[0x28] = (pScrn->displayWidth >> 2) - 1; /* Width */
-- ChipsNew->MR[0x34] = (pScrn->displayWidth >> 2) - 1;
--
-- /* Left Edge of Overlay */
-- ChipsNew->MR[0x2A] = cPtr->OverlaySkewX;
-- ChipsNew->MR[0x2B] &= 0xF8; /* Mask reserved bits */
-- ChipsNew->MR[0x2B] |= ((cPtr->OverlaySkewX >> 8) & 0x7);
-- /* Right Edge of Overlay */
-- ChipsNew->MR[0x2C] = (cPtr->OverlaySkewX + pScrn->displayWidth -
-- 1) & 0xFF;
-- ChipsNew->MR[0x2D] &= 0xF8; /* Mask reserved bits */
-- ChipsNew->MR[0x2D] |= ((cPtr->OverlaySkewX + pScrn->displayWidth -
-- 1) >> 8) & 0x07;
-- /* Top Edge of Overlay */
-- ChipsNew->MR[0x2E] = cPtr->OverlaySkewY;
-- ChipsNew->MR[0x2F] &= 0xF8;
-- ChipsNew->MR[0x2F] |= ((cPtr->OverlaySkewY >> 8) & 0x7);
-- /* Bottom Edge of Overlay*/
-- ChipsNew->MR[0x30] = (cPtr->OverlaySkewY + pScrn->virtualY - 1 )& 0xFF;
-- ChipsNew->MR[0x31] &= 0xF8; /* Mask reserved bits */
-- ChipsNew->MR[0x31] |= ((cPtr->OverlaySkewY + pScrn->virtualY -
-- 1 ) >> 8) & 0x07;
--
-- ChipsNew->MR[0x3C] &= 0x18; /* Mask reserved bits */
-- ChipsNew->MR[0x3C] |= 0x07; /* Enable keyed overlay window */
-- ChipsNew->MR[0x3D] = 0x00;
-- ChipsNew->MR[0x3E] = 0x00;
-- ChipsNew->MR[0x3F] = pScrn->colorKey; /* 8bpp transparency key */
-- ChipsNew->MR[0x40] = 0xFF;
-- ChipsNew->MR[0x41] = 0xFF;
-- ChipsNew->MR[0x42] = 0x00;
-- } else if (cPtr->Flags & ChipsVideoSupport) {
-+ if (cPtr->Flags & ChipsVideoSupport) {
- #if 0 /* if we do this even though video isn't playing we kill performance */
- ChipsNew->XR[0xD0] |= 0x10; /* Force the Multimedia engine on */
- #endif
-@@ -6877,8 +6688,7 @@ chipsRestoreExtendedRegs(ScrnInfoPtr pScrn, CHIPSRegPtr Regs)
- }
-
- /* Set SAR04 multimedia register correctly */
-- if ((cPtr->Flags & ChipsOverlay8plus16)
-- || (cPtr->Flags & ChipsVideoSupport)) {
-+ if ((cPtr->Flags & ChipsVideoSupport)) {
- #ifdef SAR04
- cPtr->writeXR(cPtr, 0x4E, 0x04);
- if (cPtr->readXR(cPtr, 0x4F) != Regs->XR[0x4F])
-diff --git a/src/ct_driver.h b/src/ct_driver.h
-index d8ce228..10a24d4 100644
---- a/src/ct_driver.h
-+++ b/src/ct_driver.h
-@@ -114,7 +114,6 @@ typedef struct {
- /* Options flags for the C&T chipsets */
- #define ChipsHWCursor 0x00001000
- #define ChipsShadowFB 0x00002000
--#define ChipsOverlay8plus16 0x00004000
- #define ChipsUseNewFB 0x00008000
-
- /* Architecture type flags */
-diff --git a/src/ct_video.c b/src/ct_video.c
-index a68acb9..c9e5bb4 100644
---- a/src/ct_video.c
-+++ b/src/ct_video.c
-@@ -56,8 +56,7 @@ CHIPSInitVideo(ScreenPtr pScreen)
- CHIPSPtr cPtr = CHIPSPTR(pScrn);
- int num_adaptors;
-
-- if (!(cPtr->Flags & ChipsOverlay8plus16) &&
-- (cPtr->Flags & ChipsVideoSupport)) {
-+ if ((cPtr->Flags & ChipsVideoSupport)) {
- newAdaptor = CHIPSSetupImageVideo(pScreen);
- CHIPSInitOffscreenImages(pScreen);
- }
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0002-PciTag-is-unused-when-using-libpciaccess.patch b/source/x/x11/patch/xf86-video-chips/0002-PciTag-is-unused-when-using-libpciaccess.patch
deleted file mode 100644
index 6caaa210d..000000000
--- a/source/x/x11/patch/xf86-video-chips/0002-PciTag-is-unused-when-using-libpciaccess.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 5f8a7320123255408b393eab9ecfae783920622a Mon Sep 17 00:00:00 2001
-From: Mark Kettenis <kettenis@openbsd.org>
-Date: Mon, 26 Sep 2011 21:26:26 +0200
-Subject: [PATCH 2/9] PciTag is unused when using libpciaccess
-
-Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
-Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
-Reviewed-by: Julien Cristau <jcristau@debian.org>
----
- src/ct_driver.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/ct_driver.h b/src/ct_driver.h
-index 10a24d4..39eeb6e 100644
---- a/src/ct_driver.h
-+++ b/src/ct_driver.h
-@@ -271,7 +271,9 @@ typedef struct {
-
- typedef struct _CHIPSRec {
- pciVideoPtr PciInfo;
-+#ifndef XSERVER_LIBPCIACCESS
- PCITAG PciTag;
-+#endif
- int Chipset;
- EntityInfoPtr pEnt;
- IOADDRESS PIOBase;
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0003-Use-malloc-calloc-realloc-free-directly.patch b/source/x/x11/patch/xf86-video-chips/0003-Use-malloc-calloc-realloc-free-directly.patch
deleted file mode 100644
index de379e4dd..000000000
--- a/source/x/x11/patch/xf86-video-chips/0003-Use-malloc-calloc-realloc-free-directly.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 7ca1840f39d0216e44fe1ca938cfc3ced048da1d Mon Sep 17 00:00:00 2001
-From: Jeremy Huddleston <jeremyhu@apple.com>
-Date: Tue, 18 Oct 2011 22:24:54 -0700
-Subject: [PATCH 3/9] Use malloc/calloc/realloc/free directly
-
-Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
----
- src/ct_driver.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/ct_driver.c b/src/ct_driver.c
-index 08df050..e6538c6 100644
---- a/src/ct_driver.c
-+++ b/src/ct_driver.c
-@@ -949,7 +949,7 @@ CHIPSProbe(DriverPtr drv, int flags)
- }
-
- }
-- xfree(usedChips);
-+ free(usedChips);
- }
- }
-
-@@ -981,12 +981,12 @@ CHIPSProbe(DriverPtr drv, int flags)
- pScrn->ValidMode = CHIPSValidMode;
- foundScreen = TRUE;
- }
-- xfree(usedChips);
-+ free(usedChips);
- }
- }
- #endif
-
-- xfree(devSections);
-+ free(devSections);
- return foundScreen;
- }
- #endif
-@@ -4126,7 +4126,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- }
- if (!miInitializeBanking(pScreen, pScrn->virtualX, pScrn->virtualY,
- pScrn->displayWidth, pBankInfo)) {
-- xfree(pBankInfo);
-+ free(pBankInfo);
- pBankInfo = NULL;
- return FALSE;
- }
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0004-configure.ac-Remove-AM_PROG_CC_C_O.patch b/source/x/x11/patch/xf86-video-chips/0004-configure.ac-Remove-AM_PROG_CC_C_O.patch
deleted file mode 100644
index bcf6355a1..000000000
--- a/source/x/x11/patch/xf86-video-chips/0004-configure.ac-Remove-AM_PROG_CC_C_O.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From f5191838b70d67e991bef3491d2a60915988079c Mon Sep 17 00:00:00 2001
-From: Jeremy Huddleston <jeremyhu@apple.com>
-Date: Tue, 18 Oct 2011 22:37:00 -0700
-Subject: [PATCH 4/9] configure.ac: Remove AM_PROG_CC_C_O
-
-Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
----
- configure.ac | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 225e516..c0ed508 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -44,9 +44,6 @@ XORG_DEFAULT_OPTIONS
- AC_DISABLE_STATIC
- AC_PROG_LIBTOOL
-
--# Checks for programs.
--AM_PROG_CC_C_O
--
- AH_TOP([#include "xorg-server.h"])
-
- # Define a configure option for an alternate module directory
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0005-util-Consolidate-common-macros.patch b/source/x/x11/patch/xf86-video-chips/0005-util-Consolidate-common-macros.patch
deleted file mode 100644
index 77d0d5bc0..000000000
--- a/source/x/x11/patch/xf86-video-chips/0005-util-Consolidate-common-macros.patch
+++ /dev/null
@@ -1,283 +0,0 @@
-From 94a8b34528b42a4fe6f81c8b8bd1ddb6bebaeea9 Mon Sep 17 00:00:00 2001
-From: Jeremy Huddleston <jeremyhu@apple.com>
-Date: Tue, 18 Oct 2011 23:04:32 -0700
-Subject: [PATCH 5/9] util: Consolidate common macros
-
-Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
----
- util/dRegs.c | 57 +------------------------------------------------------
- util/iopl.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- util/mRegs.c | 57 +------------------------------------------------------
- util/modClock.c | 53 ++-------------------------------------------------
- 4 files changed, 58 insertions(+), 163 deletions(-)
- create mode 100644 util/iopl.h
-
-diff --git a/util/dRegs.c b/util/dRegs.c
-index b7edc8f..0d2f0cb 100644
---- a/util/dRegs.c
-+++ b/util/dRegs.c
-@@ -1,63 +1,8 @@
--
--
--
--
--
--
--#ifdef __NetBSD__
--# include <sys/types.h>
--# include <machine/pio.h>
--# include <machine/sysarch.h>
--#else
--# if defined(SVR4) && defined(i386)
--# include <sys/types.h>
--# ifdef NCR
-- /* broken NCR <sys/sysi86.h> */
--# define __STDC
--# include <sys/sysi86.h>
--# undef __STDC
--# else
--# include <sys/sysi86.h>
--# endif
--# ifdef SVR4
--# if !defined(sun)
--# include <sys/seg.h>
--# endif
--# endif
--# include <sys/v86.h>
--# if defined(sun)
--# include <sys/psw.h>
--# endif
--# endif
--# include "AsmMacros.h"
--#endif /* NetBSD */
--
- #include <unistd.h>
- #include <stdio.h>
- #include <stdlib.h>
-
--#ifdef __NetBSD__
--# define SET_IOPL() i386_iopl(3)
--# define RESET_IOPL() i386_iopl(0)
--#else
--# if defined(SVR4) && defined(i386)
--# ifndef SI86IOPL
--# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
--# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
--# else
--# define SET_IOPL() sysi86(SI86IOPL,3)
--# define RESET_IOPL() sysi86(SI86IOPL,0)
--# endif
--# else
--# ifdef linux
--# define SET_IOPL() iopl(3)
--# define RESET_IOPL() iopl(0)
--# else
--# define SET_IOPL() (void)0
--# define RESET_IOPL() (void)0
--# endif
--# endif
--#endif
-+#include "iopl.h"
-
- int main(void)
- {
-diff --git a/util/iopl.h b/util/iopl.h
-new file mode 100644
-index 0000000..d7890b3
---- /dev/null
-+++ b/util/iopl.h
-@@ -0,0 +1,54 @@
-+#ifdef __NetBSD__
-+# include <sys/types.h>
-+# include <machine/pio.h>
-+# include <machine/sysarch.h>
-+#else
-+# if defined(SVR4) && defined(i386)
-+# include <sys/types.h>
-+# ifdef NCR
-+ /* broken NCR <sys/sysi86.h> */
-+# define __STDC
-+# include <sys/sysi86.h>
-+# undef __STDC
-+# else
-+# include <sys/sysi86.h>
-+# endif
-+# ifdef SVR4
-+# if !defined(sun)
-+# include <sys/seg.h>
-+# endif
-+# endif
-+# include <sys/v86.h>
-+# if defined(sun)
-+# include <sys/psw.h>
-+# endif
-+# endif
-+# include "AsmMacros.h"
-+#endif /* NetBSD */
-+
-+#include <unistd.h>
-+#include <stdio.h>
-+#include <stdlib.h>
-+
-+#ifdef __NetBSD__
-+# define SET_IOPL() i386_iopl(3)
-+# define RESET_IOPL() i386_iopl(0)
-+#else
-+# if defined(SVR4) && defined(i386)
-+# ifndef SI86IOPL
-+# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
-+# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
-+# else
-+# define SET_IOPL() sysi86(SI86IOPL,3)
-+# define RESET_IOPL() sysi86(SI86IOPL,0)
-+# endif
-+# else
-+# ifdef linux
-+# define SET_IOPL() iopl(3)
-+# define RESET_IOPL() iopl(0)
-+# else
-+# define SET_IOPL() (void)0
-+# define RESET_IOPL() (void)0
-+# endif
-+# endif
-+#endif
-diff --git a/util/mRegs.c b/util/mRegs.c
-index f359738..843d01d 100644
---- a/util/mRegs.c
-+++ b/util/mRegs.c
-@@ -1,63 +1,8 @@
--
--
--
--
--
--
--#ifdef __NetBSD__
--# include <sys/types.h>
--# include <machine/pio.h>
--# include <machine/sysarch.h>
--#else
--# if defined(SVR4) && defined(i386)
--# include <sys/types.h>
--# ifdef NCR
-- /* broken NCR <sys/sysi86.h> */
--# define __STDC
--# include <sys/sysi86.h>
--# undef __STDC
--# else
--# include <sys/sysi86.h>
--# endif
--# ifdef SVR4
--# if !defined(sun)
--# include <sys/seg.h>
--# endif
--# endif
--# include <sys/v86.h>
--# if defined(sun)
--# include <sys/psw.h>
--# endif
--# endif
--# include "AsmMacros.h"
--#endif /* NetBSD */
--
- #include <unistd.h>
- #include <stdio.h>
- #include <stdlib.h>
-
--#ifdef __NetBSD__
--# define SET_IOPL() i386_iopl(3)
--# define RESET_IOPL() i386_iopl(0)
--#else
--# if defined(SVR4) && defined(i386)
--# ifndef SI86IOPL
--# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
--# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
--# else
--# define SET_IOPL() sysi86(SI86IOPL,3)
--# define RESET_IOPL() sysi86(SI86IOPL,0)
--# endif
--# else
--# ifdef linux
--# define SET_IOPL() iopl(3)
--# define RESET_IOPL() iopl(0)
--# else
--# define SET_IOPL() (void)0
--# define RESET_IOPL() (void)0
--# endif
--# endif
--#endif
-+#include "iopl.h"
-
- int hex2int(char* str);
-
-diff --git a/util/modClock.c b/util/modClock.c
-index 89a291a..45af19b 100644
---- a/util/modClock.c
-+++ b/util/modClock.c
-@@ -1,61 +1,12 @@
--
--#ifdef __NetBSD__
--# include <sys/types.h>
--# include <machine/pio.h>
--# include <machine/sysarch.h>
--#else
--# if defined(SVR4) && defined(i386)
--# include <sys/types.h>
--# ifdef NCR
-- /* broken NCR <sys/sysi86.h> */
--# define __STDC
--# include <sys/sysi86.h>
--# undef __STDC
--# else
--# include <sys/sysi86.h>
--# endif
--# ifdef SVR4
--# if !defined(sun)
--# include <sys/seg.h>
--# endif
--# endif
--# include <sys/v86.h>
--# if defined(sun)
--# include <sys/psw.h>
--# endif
--# endif
--# include "AsmMacros.h"
--#endif /* NetBSD */
--
- #include <unistd.h>
- #include <stdio.h>
- #include <stdlib.h>
-+
- #ifndef Lynx
- #include <fnmatch.h>
- #endif
-
--#ifdef __NetBSD__
--# define SET_IOPL() i386_iopl(3)
--# define RESET_IOPL() i386_iopl(0)
--#else
--# if defined(SVR4) && defined(i386)
--# ifndef SI86IOPL
--# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
--# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
--# else
--# define SET_IOPL() sysi86(SI86IOPL,3)
--# define RESET_IOPL() sysi86(SI86IOPL,0)
--# endif
--# else
--# ifdef linux
--# define SET_IOPL() iopl(3)
--# define RESET_IOPL() iopl(0)
--# else
--# define SET_IOPL() (void)0
--# define RESET_IOPL() (void)0
--# endif
--# endif
--#endif
-+#include "iopl.h"
-
- #define tolerance 0.01 /* +/- 1% */
-
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0006-Fix-implicit-declaration-of-iopl.patch b/source/x/x11/patch/xf86-video-chips/0006-Fix-implicit-declaration-of-iopl.patch
deleted file mode 100644
index a0b4bb4b9..000000000
--- a/source/x/x11/patch/xf86-video-chips/0006-Fix-implicit-declaration-of-iopl.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From c421f2477c99990d0dc712d6aece981fa6c961e5 Mon Sep 17 00:00:00 2001
-From: Jeremy Huddleston <jeremyhu@apple.com>
-Date: Tue, 18 Oct 2011 23:09:09 -0700
-Subject: [PATCH 6/9] Fix implicit declaration of iopl
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-warning: implicit declaration of function ‘iopl’ [-Wimplicit-function-declaration]
-
-Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
----
- util/iopl.h | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/util/iopl.h b/util/iopl.h
-index d7890b3..e08207c 100644
---- a/util/iopl.h
-+++ b/util/iopl.h
-@@ -3,6 +3,12 @@
- # include <machine/pio.h>
- # include <machine/sysarch.h>
- #else
-+# if defined(__linux__)
-+/* Can't because <sys/iopl.h> provides conflicting inb, outb, etc
-+ * # include <sys/io.h>
-+ */
-+int iopl(int level);
-+# endif
- # if defined(SVR4) && defined(i386)
- # include <sys/types.h>
- # ifdef NCR
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0007-Build-fix-for-ABI-Version-12.patch b/source/x/x11/patch/xf86-video-chips/0007-Build-fix-for-ABI-Version-12.patch
deleted file mode 100644
index 12dc51316..000000000
--- a/source/x/x11/patch/xf86-video-chips/0007-Build-fix-for-ABI-Version-12.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 8a5ea07f30cc71ecc413fad0713facff72f77472 Mon Sep 17 00:00:00 2001
-From: Jeremy Huddleston <jeremyhu@apple.com>
-Date: Tue, 18 Oct 2011 23:21:33 -0700
-Subject: [PATCH 7/9] Build fix for ABI Version 12
-
-ABI Version 12 removes support for multiple PCI domains. If you need to
-use this driver on a system with more than one PCI domain, you should
-either port this driver to using libpciaccess directly or stick with an
-older server.
-
-Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
----
- src/ct_driver.c | 5 +++++
- src/ct_driver.h | 4 ++--
- 2 files changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/src/ct_driver.c b/src/ct_driver.c
-index e6538c6..a2e5c94 100644
---- a/src/ct_driver.c
-+++ b/src/ct_driver.c
-@@ -1446,7 +1446,12 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags)
-
- hwp = VGAHWPTR(pScrn);
- vgaHWGetIOBase(hwp);
-+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
- cPtr->PIOBase = hwp->PIOOffset;
-+#else
-+ cPtr->PIOBase = 0;
-+#endif
-+
- /*
- * Must allow ensure that storage for the 2nd set of vga registers is
- * allocated for dual channel cards
-diff --git a/src/ct_driver.h b/src/ct_driver.h
-index 39eeb6e..9033867 100644
---- a/src/ct_driver.h
-+++ b/src/ct_driver.h
-@@ -276,8 +276,8 @@ typedef struct _CHIPSRec {
- #endif
- int Chipset;
- EntityInfoPtr pEnt;
-- IOADDRESS PIOBase;
-- CARD32 IOAddress;
-+ unsigned long PIOBase;
-+ unsigned long IOAddress;
- unsigned long FbAddress;
- unsigned int IOBase;
- unsigned char * FbBase;
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0008-Fall-back-to-shadowfb-if-XAA-is-unavailable.patch b/source/x/x11/patch/xf86-video-chips/0008-Fall-back-to-shadowfb-if-XAA-is-unavailable.patch
deleted file mode 100644
index 3478fa34b..000000000
--- a/source/x/x11/patch/xf86-video-chips/0008-Fall-back-to-shadowfb-if-XAA-is-unavailable.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 5d5753551609f1483801e5edd8d42b11713c981e Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Mon, 19 Dec 2011 16:18:34 -0500
-Subject: [PATCH 8/9] Fall back to shadowfb if XAA is unavailable
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
- src/ct_driver.c | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/ct_driver.c b/src/ct_driver.c
-index a2e5c94..95092a2 100644
---- a/src/ct_driver.c
-+++ b/src/ct_driver.c
-@@ -1345,10 +1345,9 @@ CHIPSPreInit(ScrnInfoPtr pScrn, int flags)
-
- if (cPtr->Flags & ChipsAccelSupport) {
- if (!xf86LoadSubModule(pScrn, "xaa")) {
-- vbeFree(cPtr->pVbe);
-- cPtr->pVbe = NULL;
-- CHIPSFreeRec(pScrn);
-- return FALSE;
-+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Falling back to shadowfb\n");
-+ cPtr->Flags &= ~(ChipsAccelSupport);
-+ cPtr->Flags |= ChipsShadowFB;
- }
- }
-
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/0009-Fix-for-new-vgaHW-ABI.patch b/source/x/x11/patch/xf86-video-chips/0009-Fix-for-new-vgaHW-ABI.patch
deleted file mode 100644
index 74ec37225..000000000
--- a/source/x/x11/patch/xf86-video-chips/0009-Fix-for-new-vgaHW-ABI.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 989cf4f1fb2ac57f38d363734b71a5cf749db146 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Mon, 19 Dec 2011 17:45:41 -0500
-Subject: [PATCH 9/9] Fix for new vgaHW ABI
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
- src/ct_driver.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/ct_driver.c b/src/ct_driver.c
-index 95092a2..08ccd72 100644
---- a/src/ct_driver.c
-+++ b/src/ct_driver.c
-@@ -1444,6 +1444,7 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags)
- return FALSE;
-
- hwp = VGAHWPTR(pScrn);
-+ vgaHWSetStdFuncs(hwp);
- vgaHWGetIOBase(hwp);
- #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
- cPtr->PIOBase = hwp->PIOOffset;
---
-1.7.9.4
-
diff --git a/source/x/x11/patch/xf86-video-chips/iopl.h b/source/x/x11/patch/xf86-video-chips/iopl.h
new file mode 100644
index 000000000..e08207c7f
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-chips/iopl.h
@@ -0,0 +1,60 @@
+#ifdef __NetBSD__
+# include <sys/types.h>
+# include <machine/pio.h>
+# include <machine/sysarch.h>
+#else
+# if defined(__linux__)
+/* Can't because <sys/iopl.h> provides conflicting inb, outb, etc
+ * # include <sys/io.h>
+ */
+int iopl(int level);
+# endif
+# if defined(SVR4) && defined(i386)
+# include <sys/types.h>
+# ifdef NCR
+ /* broken NCR <sys/sysi86.h> */
+# define __STDC
+# include <sys/sysi86.h>
+# undef __STDC
+# else
+# include <sys/sysi86.h>
+# endif
+# ifdef SVR4
+# if !defined(sun)
+# include <sys/seg.h>
+# endif
+# endif
+# include <sys/v86.h>
+# if defined(sun)
+# include <sys/psw.h>
+# endif
+# endif
+# include "AsmMacros.h"
+#endif /* NetBSD */
+
+#include <unistd.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#ifdef __NetBSD__
+# define SET_IOPL() i386_iopl(3)
+# define RESET_IOPL() i386_iopl(0)
+#else
+# if defined(SVR4) && defined(i386)
+# ifndef SI86IOPL
+# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL)
+# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0)
+# else
+# define SET_IOPL() sysi86(SI86IOPL,3)
+# define RESET_IOPL() sysi86(SI86IOPL,0)
+# endif
+# else
+# ifdef linux
+# define SET_IOPL() iopl(3)
+# define RESET_IOPL() iopl(0)
+# else
+# define SET_IOPL() (void)0
+# define RESET_IOPL() (void)0
+# endif
+# endif
+#endif
diff --git a/source/x/x11/patch/xf86-video-dummy.patch b/source/x/x11/patch/xf86-video-dummy.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-dummy.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-geode.patch b/source/x/x11/patch/xf86-video-geode.patch
new file mode 100644
index 000000000..6bbc3b34a
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-geode.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScrn);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScrn);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-glint.patch b/source/x/x11/patch/xf86-video-glint.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-glint.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-i128.patch b/source/x/x11/patch/xf86-video-i128.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-i128.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-i740.patch b/source/x/x11/patch/xf86-video-i740.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-i740.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-neomagic.patch b/source/x/x11/patch/xf86-video-neomagic.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-neomagic.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-nv.patch b/source/x/x11/patch/xf86-video-nv.patch
new file mode 100644
index 000000000..5e71368fe
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-nv.patch
@@ -0,0 +1,10 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l '#include <mibstore.h>' * | while read file ; do
+ sed -i "s/#include <mibstore.h>//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-r128.patch b/source/x/x11/patch/xf86-video-r128.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-r128.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-rendition.patch b/source/x/x11/patch/xf86-video-rendition.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-rendition.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-s3.patch b/source/x/x11/patch/xf86-video-s3.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-s3.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-s3virge.patch b/source/x/x11/patch/xf86-video-s3virge.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-s3virge.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-savage.patch b/source/x/x11/patch/xf86-video-savage.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-savage.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-siliconmotion.patch b/source/x/x11/patch/xf86-video-siliconmotion.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-siliconmotion.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-sis.patch b/source/x/x11/patch/xf86-video-sis.patch
new file mode 100644
index 000000000..45276b4c8
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-sis.patch
@@ -0,0 +1,2 @@
+zcat $CWD/patch/xf86-video-sis/sis-0.10.7-git.patch.gz | patch -p1 --verbose \
+ || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/x/x11/patch/xf86-video-sis/sis-0.10.7-git.patch b/source/x/x11/patch/xf86-video-sis/sis-0.10.7-git.patch
new file mode 100644
index 000000000..865237552
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-sis/sis-0.10.7-git.patch
@@ -0,0 +1,121 @@
+diff --git a/src/sis.h b/src/sis.h
+index 46fca2a..20e6134 100644
+--- a/src/sis.h
++++ b/src/sis.h
+@@ -75,7 +75,6 @@
+
+ #include "compiler.h"
+ #include "xf86Pci.h"
+-#include "xf86Priv.h"
+ #include "xf86_OSproc.h"
+ #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6
+ #include "xf86Resources.h"
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index 61e8075..0fd83d7 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -57,7 +57,6 @@
+ #include "fb.h"
+ #include "micmap.h"
+ #include "mipointer.h"
+-#include "mibstore.h"
+ #include "edid.h"
+
+ #define SIS_NEED_inSISREG
+@@ -94,6 +93,10 @@
+ #include "dri.h"
+ #endif
+
++#ifndef DEFAULT_DPI
++#define DEFAULT_DPI 96
++#endif
++
+ /*
+ * LookupWindow was removed with video abi 11.
+ */
+@@ -7344,7 +7347,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ if(pSiSEnt->MapCountIOBase) {
+ pSiSEnt->MapCountIOBase--;
+ if((pSiSEnt->MapCountIOBase == 0) || (pSiSEnt->forceUnmapIOBase)) {
++#ifndef XSERVER_LIBPCIACCESS
+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
++#else
++ pci_device_unmap_range(pSiS->PciInfo, pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
++#endif
+ pSiSEnt->IOBase = NULL;
+ pSiSEnt->MapCountIOBase = 0;
+ pSiSEnt->forceUnmapIOBase = FALSE;
+@@ -7355,7 +7362,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ if(pSiSEnt->MapCountIOBaseDense) {
+ pSiSEnt->MapCountIOBaseDense--;
+ if((pSiSEnt->MapCountIOBaseDense == 0) || (pSiSEnt->forceUnmapIOBaseDense)) {
++#ifndef XSERVER_LIBPCIACCESS
+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
++#else
++ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
++#endif
+ pSiSEnt->IOBaseDense = NULL;
+ pSiSEnt->MapCountIOBaseDense = 0;
+ pSiSEnt->forceUnmapIOBaseDense = FALSE;
+@@ -7366,7 +7377,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ if(pSiSEnt->MapCountFbBase) {
+ pSiSEnt->MapCountFbBase--;
+ if((pSiSEnt->MapCountFbBase == 0) || (pSiSEnt->forceUnmapFbBase)) {
++#ifndef XSERVER_LIBPCIACCESS
+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
++#else
++ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
++#endif
+ pSiSEnt->FbBase = pSiSEnt->RealFbBase = NULL;
+ pSiSEnt->MapCountFbBase = 0;
+ pSiSEnt->forceUnmapFbBase = FALSE;
+@@ -7376,13 +7391,25 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+ }
+ } else {
+ #endif
++#ifndef XSERVER_LIBPCIACCESS
+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
++#else
++ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
++#endif
+ pSiS->IOBase = NULL;
+ #ifdef __alpha__
++#ifndef XSERVER_LIBPCIACCESS
+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
++#else
++ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
++#endif
+ pSiS->IOBaseDense = NULL;
+ #endif
++#ifndef XSERVER_LIBPCIACCESS
+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
++#else
++ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
++#endif
+ pSiS->FbBase = pSiS->RealFbBase = NULL;
+ #ifdef SISDUALHEAD
+ }
+@@ -8859,7 +8886,6 @@ SISScreenInit(SCREEN_INIT_ARGS_DECL)
+ }
+ pSiS->SiSFastVidCopyDone = TRUE;
+
+- miInitializeBackingStore(pScreen);
+ xf86SetBackingStore(pScreen);
+ xf86SetSilkenMouse(pScreen);
+
+@@ -9352,7 +9378,14 @@ SISMergedPointerMoved(SCRN_ARG_TYPE arg, int x, int y)
+ }
+ if(doit) {
+ sigstate = xf86BlockSIGIO();
+-#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 18
++ {
++ double dx = x, dy = y;
++ miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy, NULL, NULL);
++ x = (int)dx;
++ y = (int)dy;
++ }
++#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
+ {
+ double dx = x, dy = y;
+ miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy);
diff --git a/source/x/x11/patch/xf86-video-sisusb.patch b/source/x/x11/patch/xf86-video-sisusb.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-sisusb.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-tdfx.patch b/source/x/x11/patch/xf86-video-tdfx.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-tdfx.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-tga.patch b/source/x/x11/patch/xf86-video-tga.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-tga.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-trident.patch b/source/x/x11/patch/xf86-video-trident.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-trident.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-tseng.patch b/source/x/x11/patch/xf86-video-tseng.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-tseng.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-vesa.patch b/source/x/x11/patch/xf86-video-vesa.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-vesa.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-vmware.patch b/source/x/x11/patch/xf86-video-vmware.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-vmware.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-voodoo.patch b/source/x/x11/patch/xf86-video-voodoo.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-voodoo.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-xgi.patch b/source/x/x11/patch/xf86-video-xgi.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-xgi.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xf86-video-xgixp.patch b/source/x/x11/patch/xf86-video-xgixp.patch
new file mode 100644
index 000000000..17d7e8297
--- /dev/null
+++ b/source/x/x11/patch/xf86-video-xgixp.patch
@@ -0,0 +1,7 @@
+# Remove obsolete references to mibstore.h and miInitializeBackingStore():
+grep -r -l '#include "mibstore.h"' * | while read file ; do
+ sed -i "s/#include \"mibstore.h\"//g" $file
+done
+grep -r -l 'miInitializeBackingStore(pScreen);' | while read file ; do
+ sed -i "s/miInitializeBackingStore(pScreen);//g" $file
+done
diff --git a/source/x/x11/patch/xorg-server.patch b/source/x/x11/patch/xorg-server.patch
index 01be43a3b..c0c4810fd 100644
--- a/source/x/x11/patch/xorg-server.patch
+++ b/source/x/x11/patch/xorg-server.patch
@@ -1 +1,2 @@
zcat $CWD/patch/xorg-server/x11.startwithblackscreen.diff.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
+zcat $CWD/patch/xorg-server/xorg-server.CVE-2013-4396.diff.gz | patch -p1 --verbose || { touch ${SLACK_X_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/x/x11/patch/xorg-server/xorg-server.CVE-2013-4396.diff b/source/x/x11/patch/xorg-server/xorg-server.CVE-2013-4396.diff
new file mode 100644
index 000000000..14c31782f
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/xorg-server.CVE-2013-4396.diff
@@ -0,0 +1,73 @@
+From 7bddc2ba16a2a15773c2ea8947059afa27727764 Mon Sep 17 00:00:00 2001
+From: Alan Coopersmith <alan.coopersmith at oracle.com>
+Date: Mon, 16 Sep 2013 21:47:16 -0700
+Subject: [PATCH] Avoid use-after-free in dix/dixfonts.c: doImageText()
+ [CVE-2013-4396]
+
+Save a pointer to the passed in closure structure before copying it
+and overwriting the *c pointer to point to our copy instead of the
+original. If we hit an error, once we free(c), reset c to point to
+the original structure before jumping to the cleanup code that
+references *c.
+
+Since one of the errors being checked for is whether the server was
+able to malloc(c->nChars * itemSize), the client can potentially pass
+a number of characters chosen to cause the malloc to fail and the
+error path to be taken, resulting in the read from freed memory.
+
+Since the memory is accessed almost immediately afterwards, and the
+X server is mostly single threaded, the odds of the free memory having
+invalid contents are low with most malloc implementations when not using
+memory debugging features, but some allocators will definitely overwrite
+the memory there, leading to a likely crash.
+
+Reported-by: Pedro Ribeiro <pedrib at gmail.com>
+Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
+Reviewed-by: Julien Cristau <jcristau at debian.org>
+---
+ dix/dixfonts.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/dix/dixfonts.c b/dix/dixfonts.c
+index feb765d..2e34d37 100644
+--- a/dix/dixfonts.c
++++ b/dix/dixfonts.c
+@@ -1425,6 +1425,7 @@ doImageText(ClientPtr client, ITclosurePtr c)
+ GC *pGC;
+ unsigned char *data;
+ ITclosurePtr new_closure;
++ ITclosurePtr old_closure;
+
+ /* We're putting the client to sleep. We need to
+ save some state. Similar problem to that handled
+@@ -1436,12 +1437,14 @@ doImageText(ClientPtr client, ITclosurePtr c)
+ err = BadAlloc;
+ goto bail;
+ }
++ old_closure = c;
+ *new_closure = *c;
+ c = new_closure;
+
+ data = malloc(c->nChars * itemSize);
+ if (!data) {
+ free(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
+@@ -1452,6 +1455,7 @@ doImageText(ClientPtr client, ITclosurePtr c)
+ if (!pGC) {
+ free(c->data);
+ free(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
+@@ -1464,6 +1468,7 @@ doImageText(ClientPtr client, ITclosurePtr c)
+ FreeScratchGC(pGC);
+ free(c->data);
+ free(c);
++ c = old_closure;
+ err = BadAlloc;
+ goto bail;
+ }
diff --git a/source/x/x11/post-install/xdm.post-install b/source/x/x11/post-install/xdm.post-install
index 73611b47e..a88899705 100644
--- a/source/x/x11/post-install/xdm.post-install
+++ b/source/x/x11/post-install/xdm.post-install
@@ -19,9 +19,14 @@ chmod 0755 $PKG/etc/X11/xdm/Xsession $PKG/etc/X11/xdm/Xsetup_0
for conffile in \
Xaccess Xreset Xresources Xservers Xsession Xsetup_0 Xstartup Xwilling \
- GiveConsole TakeConsole chooser xdm-config ../app-defaults/Chooser ;
+ GiveConsole TakeConsole xdm-config ../app-defaults/Chooser ;
do
- mv $PKG/etc/X11/xdm/${conffile} $PKG/etc/X11/xdm/${conffile}.new ;
+ # Use awk to strip leading blank lines... weird bug that cropped up in the
+ # pre Slackware-14.1 development cycle.
+ awk "/[^ ]/ { copy=1 }; copy { print }" $PKG/etc/X11/xdm/${conffile} > $PKG/etc/X11/xdm/${conffile}.new
+ touch -r $PKG/etc/X11/xdm/${conffile} $PKG/etc/X11/xdm/${conffile}.new
+ rm -f $PKG/etc/X11/xdm/${conffile}
+ #mv $PKG/etc/X11/xdm/${conffile} $PKG/etc/X11/xdm/${conffile}.new ;
done
mkdir -p $PKG/var/lib/xdm
diff --git a/source/x/x11/post-install/xsm.post-install b/source/x/x11/post-install/xsm.post-install
deleted file mode 100644
index 509b84477..000000000
--- a/source/x/x11/post-install/xsm.post-install
+++ /dev/null
@@ -1,5 +0,0 @@
-mkdir -p $PKG/etc/X11
-( cd $PKG/usr/lib/X11
- mv xsm $PKG/etc/X11
- ln -sf ../../../etc/X11/xsm .
-)
diff --git a/source/x/x11/slack-desc/xcb-util-cursor b/source/x/x11/slack-desc/xcb-util-cursor
new file mode 100644
index 000000000..003917741
--- /dev/null
+++ b/source/x/x11/slack-desc/xcb-util-cursor
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+xcb-util-cursor: xcb-util-cursor (XCB cursor management library)
+xcb-util-cursor:
+xcb-util-cursor: The xcb-util-cursor module implements the XCB cursor library, which
+xcb-util-cursor: is the XCB replacement for libXcursor.
+xcb-util-cursor:
+xcb-util-cursor:
+xcb-util-cursor:
+xcb-util-cursor:
+xcb-util-cursor:
+xcb-util-cursor:
+xcb-util-cursor:
diff --git a/source/x/x11/slack-desc/xcm b/source/x/x11/slack-desc/xcm
new file mode 100644
index 000000000..d7ba58362
--- /dev/null
+++ b/source/x/x11/slack-desc/xcm
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+xcm: xcm (X color management tools)
+xcm:
+xcm: Tools based on libXcm, a library for colour management on X.
+xcm: xcmddc requests EDID from a monitor over the i2c bus.
+xcm: xcmedid is for parsing EDID data blocks.
+xcm: xcmevents observes X11 colour management events.
+xcm:
+xcm:
+xcm:
+xcm:
+xcm:
diff --git a/source/x/x11/slack-desc/xf86-video-xgixp b/source/x/x11/slack-desc/xf86-video-xgixp
new file mode 100644
index 000000000..6ba3359e7
--- /dev/null
+++ b/source/x/x11/slack-desc/xf86-video-xgixp
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+xf86-video-xgixp: xf86-video-xgixp (XGI XGI Volari 8300 video driver)
+xf86-video-xgixp:
+xf86-video-xgixp: xf86-video-xgixp is part of X11.
+xf86-video-xgixp:
+xf86-video-xgixp: For more information about the X.Org Foundation (the providers of the
+xf86-video-xgixp: X.Org implementation of the X Window System), see their website:
+xf86-video-xgixp:
+xf86-video-xgixp: http://www.x.org
+xf86-video-xgixp:
+xf86-video-xgixp:
+xf86-video-xgixp:
diff --git a/source/x/x11/slack-desc/xfwp b/source/x/x11/slack-desc/xfwp
new file mode 100644
index 000000000..6ff16980c
--- /dev/null
+++ b/source/x/x11/slack-desc/xfwp
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+xfwp: xfwp (X Firewall Proxy)
+xfwp:
+xfwp: xfwp is part of X11.
+xfwp:
+xfwp: For more information about the X.Org Foundation (the providers of the
+xfwp: X.Org implementation of the X Window System), see their website:
+xfwp:
+xfwp: http://www.x.org
+xfwp:
+xfwp:
+xfwp:
diff --git a/source/x/x11/slack-desc/xproxymanagementprotocol b/source/x/x11/slack-desc/xproxymanagementprotocol
new file mode 100644
index 000000000..fa0b25501
--- /dev/null
+++ b/source/x/x11/slack-desc/xproxymanagementprotocol
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+xproxymanagementprotocol: xproxymanagementprotocol (X Proxy Management protocol)
+xproxymanagementprotocol:
+xproxymanagementprotocol: xproxymanagementprotocol is part of X11.
+xproxymanagementprotocol:
+xproxymanagementprotocol: For more information about the X.Org Foundation (the providers of the
+xproxymanagementprotocol: X.Org implementation of the X Window System), see their website:
+xproxymanagementprotocol:
+xproxymanagementprotocol: http://www.x.org
+xproxymanagementprotocol:
+xproxymanagementprotocol:
+xproxymanagementprotocol:
diff --git a/source/x/x11/x11.SlackBuild b/source/x/x11/x11.SlackBuild
index ca7297082..6da53346f 100755
--- a/source/x/x11/x11.SlackBuild
+++ b/source/x/x11/x11.SlackBuild
@@ -1,5 +1,5 @@
#!/bin/sh
-# Copyright 2007-2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2007-2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,6 +25,10 @@
# and the name of the package, like:
# ./x11.SlackBuild lib libX11
+# Upgrade packages as they are built.
+# This is default. To not upgrade, pass UPGRADE_PACKAGES=no (or anything else).
+UPGRADE_PACKAGES=${UPGRADE_PACKAGES:-yes}
+
pkgbase() {
PKGEXT=$(echo $1 | rev | cut -f 1 -d . | rev)
case $PKGEXT in
@@ -130,7 +134,7 @@ mkdir -p $SLACK_X_BUILD_DIR
# in the "magic order". I built mine by hand through trial-and-error
# before getting this script to work. It wasn't that hard... I think. ;-)
( cd src
- for x_source_dir in proto data util xcb lib app doc driver font xserver ; do
+ for x_source_dir in proto data util xcb lib app doc xserver driver font ; do
# See if $1 is a source directory like "lib":
if [ ! -z "$1" ]; then
if [ ! "$1" = "${x_source_dir}" ]; then
@@ -269,6 +273,9 @@ mkdir -p $SLACK_X_BUILD_DIR
BUILD=$MODBUILD . $CWD/makepkg/${PKGNAME}
else
/sbin/makepkg -l y -c n ${SLACK_X_BUILD_DIR}/${PKGNAME}-${MODULAR_PACKAGE_VERSION}-${PKGARCH}-${MODBUILD}.txz
+ if [ "$UPGRADE_PACKAGES" = "yes" ]; then
+ /sbin/upgradepkg --install-new ${SLACK_X_BUILD_DIR}/${PKGNAME}-${MODULAR_PACKAGE_VERSION}-${PKGARCH}-${MODBUILD}.txz
+ fi
fi
fi
@@ -320,6 +327,9 @@ mkdir -p $SLACK_X_BUILD_DIR
BUILD=$MODBUILD . $CWD/makepkg/${PKGNAME}
else
/sbin/makepkg -l y -c n ${SLACK_X_BUILD_DIR}/x11-${x_source_dir}-${VERSION}-${PKGARCH}-${SRCDIRBUILD}.txz
+ if [ "$UPGRADE_PACKAGES" = "yes" ]; then
+ /sbin/upgradepkg --install-new ${SLACK_X_BUILD_DIR}/x11-${x_source_dir}-${VERSION}-${PKGARCH}-${SRCDIRBUILD}.txz
+ fi
fi
)
done
diff --git a/source/x/xdg-utils/xdg-utils.SlackBuild b/source/x/xdg-utils/xdg-utils.SlackBuild
index ad05d7044..eabc72605 100755
--- a/source/x/xdg-utils/xdg-utils.SlackBuild
+++ b/source/x/xdg-utils/xdg-utils.SlackBuild
@@ -4,7 +4,7 @@
# Written by Erik Hanson erik@slackbuilds.org
# Modified for VERSION version by Patrick Volkerding <volkerdi@slackware.com>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@
PKGNAM=xdg-utils
VERSION=1.1.0-rc1
ARCH=noarch
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
PKG_VERSION=${VERSION/-/_}
@@ -47,6 +47,8 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.bz2 || exit 1
cd $PKGNAM-$VERSION || exit 1
+zcat $CWD/xdg-utils.mate.diff.gz | patch -p1 --verbose || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/x/xdg-utils/xdg-utils.mate.diff b/source/x/xdg-utils/xdg-utils.mate.diff
new file mode 100644
index 000000000..c2480e322
--- /dev/null
+++ b/source/x/xdg-utils/xdg-utils.mate.diff
@@ -0,0 +1,43 @@
+--- ./scripts/xdg-open.orig 2011-01-01 04:03:14.000000000 -0600
++++ ./scripts/xdg-open 2013-06-09 21:15:55.612892954 -0500
+@@ -308,6 +308,7 @@
+ elif `dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/null 2>&1` ; then DE=gnome;
+ elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce;
+ elif [ x"$DESKTOP_SESSION" == x"LXDE" ]; then DE=lxde;
++ elif [ x"$DESKTOP_SESSION" == x"mate" ]; then DE=mate;
+ else DE=""
+ fi
+ }
+@@ -371,6 +372,21 @@
+ fi
+ }
+
++open_mate()
++{
++ if gvfs-open --help 2>/dev/null 1>&2; then
++ gvfs-open "$1"
++ else
++ mate-open "$1"
++ fi
++
++ if [ $? -eq 0 ]; then
++ exit_success
++ else
++ exit_failure_operation_failed
++ fi
++}
++
+ open_xfce()
+ {
+ exo-open "$1"
+@@ -539,6 +555,10 @@
+ open_gnome "$url"
+ ;;
+
++ mate)
++ open_mate "$url"
++ ;;
++
+ xfce)
+ open_xfce "$url"
+ ;;
diff --git a/source/xap/MPlayer/MPlayer.SlackBuild b/source/xap/MPlayer/MPlayer.SlackBuild
index 663fe2f8b..f76652074 100755
--- a/source/xap/MPlayer/MPlayer.SlackBuild
+++ b/source/xap/MPlayer/MPlayer.SlackBuild
@@ -1,6 +1,7 @@
#!/bin/sh
# $Id: MPlayer.SlackBuild,v 1.27 2012/07/01 13:07:08 root Exp root $
# Copyright 2006, 2007, 2008, 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
+# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -80,6 +81,10 @@
# 1.1_20120701-1: 28/jun/2012 by alien@slackware.com
# * Update to the 1.1 branch (essentially this is MPlayer-1.1 but
# I like to check it out of SVN).
+# 1.1_20130819-1: 19/aug/2013 by volkerdi@slackware.com
+# * Update to the latest 1.1 branch, and the same ffmpeg that was
+# shipped with the 1.1.1 tarball. The official 1.1.1 release
+# did not start a new repo branch, so this is the latest.
#
# Run 'sh MPlayer.SlackBuild' to build a Slackware package.
# The package (.txz) plus descriptive .txt file are created in /tmp .
@@ -90,9 +95,9 @@
# Set initial variables:
PRGNAM=MPlayer
-VERSION=${VERSION:-20120701}
+VERSION=${VERSION:-20130819}
BRANCH=${BRANCH:-1.1} # leave empty if you want to build MPlayer trunk
-FFMPEG=${FFMPEG:-20120514}
+FFMPEG=${FFMPEG:-20130505}
BUILD=${BUILD:-2}
TAG=${TAG:-}
@@ -345,12 +350,8 @@ chown -R root:root *
chmod -R u+w,go+r-w,a+X-s *
cd ${PRGNAM}-${VERSION}
-# Prevent a compilation error:
-# "libm.h:54:74: error: expected identifier or '(' before 'sizeof'"
-# See also:
-# http://lists.mplayerhq.hu/pipermail/mplayer-users/2012-June/084871.html
-cat $SRCDIR/MPlayer_ffmpeg.patch | patch -p0 --verbose \
- 2>&1 | tee $OUTPUT/patch-${PRGNAM}.log
+# Apply patch to fix subtitles:
+zcat $SRCDIR/subreader-fix-srt-parsing.patch.gz | patch -p1 --verbose || exit 1
# Determine what X we're running (the modular X returns the prefix
# in the next command, while older versions stay silent):
diff --git a/source/xap/MPlayer/subreader-fix-srt-parsing.patch b/source/xap/MPlayer/subreader-fix-srt-parsing.patch
new file mode 100644
index 000000000..84f2de4d9
--- /dev/null
+++ b/source/xap/MPlayer/subreader-fix-srt-parsing.patch
@@ -0,0 +1,60 @@
+From d98e61ea438db66323734ad1b6bea66411a3c97b Mon Sep 17 00:00:00 2001
+From: wm4 <wm4@nowhere>
+Date: Tue, 30 Apr 2013 00:09:31 +0200
+Subject: [PATCH] subreader: fix out of bound write access when parsing .srt
+
+This broke .srt subtitles on gcc-4.8. The breakage was relatively
+subtle: it set all hour components to 0, while everything else was
+parsed successfully.
+
+But the problem is really that sscanf wrote 1 byte past the sep
+variable (or more, for invalid/specially prepared input). The %[..]
+format specifier is unbounded. Fix that by letting sscanf drop the
+parsed contents with "*", and also make it skip only one input
+character by adding "1" (=> "%*1[...").
+
+The out of bound write could easily lead to security issues.
+
+Also, this change makes .srt subtitle parsing slightly more strict.
+Strictly speaking this is an unrelated change, but do it anyway. It's
+more correct.
+---
+ sub/subreader.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+ (foutrelis: adjusted variable names in first hunk to apply to mplayer)
+
+diff --git a/sub/subreader.c b/sub/subreader.c
+index 23da4c7..0f1b6c9 100644
+--- a/sub/subreader.c
++++ b/sub/subreader.c
+@@ -386,14 +386,14 @@ static subtitle *sub_ass_read_line_subviewer(stream_t *st, subtitle *current,
+ int h1, m1, s1, ms1, h2, m2, s2, ms2, j = 0;
+
+ while (!current->text[0]) {
+- char line[LINE_LEN + 1], full_line[LINE_LEN + 1], sep;
++ char line[LINE_LEN + 1], full_line[LINE_LEN + 1];
+ int i;
+
+ /* Parse SubRip header */
+ if (!stream_read_line(st, line, LINE_LEN, utf16))
+ return NULL;
+- if (sscanf(line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d",
+- &h1, &m1, &s1, &sep, &ms1, &h2, &m2, &s2, &sep, &ms2) < 10)
++ if (sscanf(line, "%d:%d:%d%*1[,.:]%d --> %d:%d:%d%*1[,.:]%d",
++ &h1, &m1, &s1, &ms1, &h2, &m2, &s2, &ms2) < 8)
+ continue;
+
+ current->start = a1 * 360000 + a2 * 6000 + a3 * 100 + a4 / 10;
+@@ -450,7 +450,7 @@ static subtitle *sub_read_line_subviewer(stream_t *st,subtitle *current,
+ return sub_ass_read_line_subviewer(st, current, args);
+ while (!current->text[0]) {
+ if (!stream_read_line (st, line, LINE_LEN, utf16)) return NULL;
+- if ((len=sscanf (line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d",&a1,&a2,&a3,(char *)&i,&a4,&b1,&b2,&b3,(char *)&i,&b4)) < 10)
++ if ((len=sscanf (line, "%d:%d:%d%*1[,.:]%d --> %d:%d:%d%*1[,.:]%d",&a1,&a2,&a3,&a4,&b1,&b2,&b3,&b4)) < 8)
+ continue;
+ current->start = a1*360000+a2*6000+a3*100+a4/10;
+ current->end = b1*360000+b2*6000+b3*100+b4/10;
+--
+1.8.1.6
+
diff --git a/source/xap/audacious/audacious.SlackBuild b/source/xap/audacious/audacious.SlackBuild
index 66bb0f907..83662aec6 100755
--- a/source/xap/audacious/audacious.SlackBuild
+++ b/source/xap/audacious/audacious.SlackBuild
@@ -23,7 +23,7 @@
PKGNAM=audacious
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
diff --git a/source/xap/blueman/blueman.SlackBuild b/source/xap/blueman/blueman.SlackBuild
index f47aabb6b..5559f0db3 100755
--- a/source/xap/blueman/blueman.SlackBuild
+++ b/source/xap/blueman/blueman.SlackBuild
@@ -25,7 +25,7 @@
PKGNAM=blueman
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xap/ddd/ddd.SlackBuild b/source/xap/ddd/ddd.SlackBuild
new file mode 100755
index 000000000..fda06cc5e
--- /dev/null
+++ b/source/xap/ddd/ddd.SlackBuild
@@ -0,0 +1,123 @@
+#!/bin/sh
+# Copyright 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Slackware build script for ddd
+# Written by Ferenc Deak <ferenc.deak@gmail.com>
+
+# Slight modifications by the SlackBuilds projects
+# Modified by Ken Milmore 2009
+
+PKGNAM=ddd
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.*z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+# http://savannah.gnu.org/bugs/?26726
+zcat $CWD/strclass.C.diff.gz | patch -p0 --verbose || exit 1
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --build=$ARCH-slackware-linux
+
+make -j $NUMJOBS || exit 1
+make install DESTDIR=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# DDD installs a .desktop file, but not an icon...
+mkdir -p $PKG/usr/share/pixmaps
+cat $CWD/ddd.png > $PKG/usr/share/pixmaps/ddd.png
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
+rm -f $PKG/usr/info/dir
+gzip -9 $PKG/usr/info/*
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING* CREDITS NEWS PROBLEMS README TIPS TODO \
+ doc/html/ddd.html \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/xap/ddd/ddd.png b/source/xap/ddd/ddd.png
new file mode 100644
index 000000000..eec9b8cb5
--- /dev/null
+++ b/source/xap/ddd/ddd.png
Binary files differ
diff --git a/source/xap/ddd/doinst.sh b/source/xap/ddd/doinst.sh
new file mode 100644
index 000000000..4e8ba7071
--- /dev/null
+++ b/source/xap/ddd/doinst.sh
@@ -0,0 +1,4 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
diff --git a/source/xap/ddd/slack-desc b/source/xap/ddd/slack-desc
new file mode 100644
index 000000000..913884c82
--- /dev/null
+++ b/source/xap/ddd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also customary
+# to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+ddd: ddd (Data Display Debugger)
+ddd:
+ddd: GNU DDD is a graphical front-end for command-line debuggers such as
+ddd: GDB, DBX, WDB, Ladebug, JDB, XDB, the Perl debugger, the bash
+ddd: debugger, or the Python debugger. Besides "usual" front-end features
+ddd: such as viewing source texts, DDD has become famous through its
+ddd: interactive graphical data display, where data structures are
+ddd: displayed as graphs.
+ddd:
+ddd:
+ddd:
diff --git a/source/xap/ddd/strclass.C.diff b/source/xap/ddd/strclass.C.diff
new file mode 100644
index 000000000..6f5bbee7a
--- /dev/null
+++ b/source/xap/ddd/strclass.C.diff
@@ -0,0 +1,12 @@
+Index: ddd/strclass.C
+===================================================================
+--- ddd/strclass.C (revision 7209)
++++ ddd/strclass.C (working copy)
+@@ -38,6 +38,7 @@
+ #include <ctype.h>
+ #include <limits.h>
+ #include <new>
++#include <cstdio>
+ #include <stdlib.h>
+
+ void string::error(const char* msg) const
diff --git a/source/xap/fluxbox/fluxbox.SlackBuild b/source/xap/fluxbox/fluxbox.SlackBuild
index 52864abbc..25eedf3eb 100755
--- a/source/xap/fluxbox/fluxbox.SlackBuild
+++ b/source/xap/fluxbox/fluxbox.SlackBuild
@@ -23,7 +23,7 @@
PKGNAM=fluxbox
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
diff --git a/source/xap/gnuchess/doinst.sh b/source/xap/gnuchess/doinst.sh
new file mode 100644
index 000000000..cf0722d29
--- /dev/null
+++ b/source/xap/gnuchess/doinst.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+config() {
+ NEW="$1"
+ OLD="`dirname $NEW`/`basename $NEW .new`"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+config etc/xboard.conf.new
diff --git a/source/xap/gnuchess/eboard.ldl.diff b/source/xap/gnuchess/eboard.ldl.diff
new file mode 100644
index 000000000..45ef58da3
--- /dev/null
+++ b/source/xap/gnuchess/eboard.ldl.diff
@@ -0,0 +1,11 @@
+--- ./elifekam.orig 2008-02-22 09:51:22.000000000 -0600
++++ ./elifekam 2013-03-19 20:47:06.022315936 -0500
+@@ -24,7 +24,7 @@
+ all: eboard nls-dicts
+
+ eboard: $(OBJS)
+- $(CXX) $(LDFLAGS) -o eboard $(OBJS)
++ $(CXX) $(LDFLAGS) -ldl -o eboard $(OBJS)
+
+ .cc.o: $< $(HEADERS) $(XPMS)
+ $(CXX) $(CXXFLAGS) -c $< -o $@
diff --git a/source/xap/gnuchess/gnuchess.SlackBuild b/source/xap/gnuchess/gnuchess.SlackBuild
index b27193dc9..46bc29e0d 100755
--- a/source/xap/gnuchess/gnuchess.SlackBuild
+++ b/source/xap/gnuchess/gnuchess.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,10 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-VERGNUCHESS=5.08
+VERGNUCHESS=6.0.3
VERSJENG=11.2
VEREBOARD=1.1.1
-VERXBOARD=4.5.1
+VERXBOARD=4.7.1
BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
@@ -71,14 +71,14 @@ find . \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- $ARCH-slackware-linux
+ --infodir=/usr/info \
+ --build=$ARCH-slackware-linux
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
mkdir -p $PKG/usr/doc/gnuchess-$VERGNUCHESS
cp -a \
- doc/README* \
- AUTHORS COPYING* INSTALL NEWS TODO \
+ AUTHORS COPYING* INSTALL NEWS README TODO \
$PKG/usr/doc/gnuchess-$VERGNUCHESS
### Sjeng
@@ -96,7 +96,7 @@ find . \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- $ARCH-slackware-linux
+ --build=$ARCH-slackware-linux
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -111,6 +111,7 @@ rm -rf eboard-$VEREBOARD
tar xvf $CWD/eboard-$VEREBOARD.tar.bz2 || exit 1
cd eboard-$VEREBOARD || exit 1
zcat $CWD/eboard.assert.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/eboard.ldl.diff.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -120,7 +121,8 @@ find . \
./configure \
--prefix=/usr \
- --extra-flags=$(echo $SLKCFLAGS | sed -e "y/ /:/")
+ --extra-flags=$(echo $SLKCFLAGS | sed -e "y/ /:/") \
+ --build=$ARCH-slackware-linux
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -134,6 +136,7 @@ cd $TMP
rm -rf xboard-$VERXBOARD
tar xvf $CWD/xboard-$VERXBOARD.tar.?z* || exit 1
cd xboard-$VERXBOARD || exit 1
+zcat $CWD/xboard.conf.in.diff.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -141,42 +144,45 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# --infodir is fubar.
-#zcat $CWD/xboard.infodir.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --sysconfdir=/etc \
--infodir=/usr/info \
+ --mandir=/usr/man \
+ --with-gtk \
--enable-zippy \
--build=$ARCH-slackware-linux
make $NUMJOBS || make || exit 1
-install -c -s xboard $PKG/usr/bin/xboard
-install -c -s zic2xpm $PKG/usr/bin/zic2xpm
+make install DESTDIR=$PKG || exit 1
install -c cmail $PKG/usr/bin/cmail
-install -c ./pxboard $PKG/usr/bin/pxboard
-install -c -m 644 ./xboard.man $PKG/usr/man/man6/xboard.6
-install -c -m 644 ./zic2xpm.man $PKG/usr/man/man6/zic2xpm.6
-mkdir -p $PKG/usr/info
-install -c -m 644 xboard.info $PKG/usr/info/xboard.info
+#install -c -s xboard $PKG/usr/bin/xboard
+#install -c -s zic2xpm $PKG/usr/bin/zic2xpm
+#install -c ./pxboard $PKG/usr/bin/pxboard
+#install -c -m 644 ./xboard.man $PKG/usr/man/man6/xboard.6
+#install -c -m 644 ./zic2xpm.man $PKG/usr/man/man6/zic2xpm.6
+#mkdir -p $PKG/usr/info
+#install -c -m 644 xboard.info $PKG/usr/info/xboard.info
mkdir -p $PKG/usr/doc/xboard-$VERXBOARD
cp -a \
- AUTHORS COPYING COPYRIGHT FAQ FAQ.html NEWS READ_ME \
+ AUTHORS COPYING* COPYRIGHT FAQ.html NEWS README TODO \
$PKG/usr/doc/xboard-$VERXBOARD
-
-### Finish up...
-find $PKG | xargs file | grep -e "executable" -e "shared object" \
- | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
gzip -9 $PKG/usr/man/man?/*.?
gzip -9 $PKG/usr/info/*.info
mkdir -p $PKG/usr/share/pixmaps
cat $CWD/chess.png > $PKG/usr/share/pixmaps/chess.png
mkdir -p $PKG/usr/share/applications
cat $CWD/eboard.desktop > $PKG/usr/share/applications/eboard.desktop
-cat $CWD/xboard.desktop > $PKG/usr/share/applications/xboard.desktop
+rm -f $PKG/usr/info/dir
+mv $PKG/etc/xboard.conf $PKG/etc/xboard.conf.new
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $TMP/gnuchess-$VERGNUCHESS-$ARCH-$BUILD.txz
diff --git a/source/xap/gnuchess/xboard.conf.in.diff b/source/xap/gnuchess/xboard.conf.in.diff
new file mode 100644
index 000000000..488813800
--- /dev/null
+++ b/source/xap/gnuchess/xboard.conf.in.diff
@@ -0,0 +1,19 @@
+--- ./xboard.conf.in.orig 2013-02-20 23:59:30.000000000 -0600
++++ ./xboard.conf.in 2013-03-19 21:39:17.377182426 -0500
+@@ -67,12 +67,12 @@
+ ;
+ ; Engines & adjudicatons in engine-engine games
+ ;
+--firstChessProgram fairymax
+--secondChessProgram fairymax
+--firstChessProgramNames {fairymax
++-firstChessProgram gnuchess
++-secondChessProgram gnuchess
++-firstChessProgramNames {"GNU Chess" -fcp gnuchess
++fairymax
+ "Fruit 2.1" -fcp fruit -fUCI
+ "Crafty" -fcp crafty
+-"GNU Chess" -fcp gnuchess
+ }
+ -niceEngines 0
+ -polyglotDir ""
diff --git a/source/xap/gnuchess/xboard.desktop b/source/xap/gnuchess/xboard.desktop
deleted file mode 100644
index c1b2a2d3e..000000000
--- a/source/xap/gnuchess/xboard.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Name=XBoard
-GenericName=Chess Game
-Comment=A graphical chess engine frontend
-Exec=xboard -fcp gnuchess
-Icon=/usr/share/pixmaps/chess.png
-Terminal=false
-Type=Application
-Categories=Application;Game;BoardGame
diff --git a/source/xap/gucharmap/doinst.sh b/source/xap/gucharmap/doinst.sh
index f6a667688..5146862f5 100644
--- a/source/xap/gucharmap/doinst.sh
+++ b/source/xap/gucharmap/doinst.sh
@@ -1,10 +1,4 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -e usr/share/glib-2.0/schemas ]; then
- if [ -x /usr/bin/glib-compile-schemas ]; then
- /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
- fi
-fi
+# Try to run these. If they fail, no biggie.
+chroot . /usr/bin/update-desktop-database -q usr/share/applications 1> /dev/null 2> /dev/null
+chroot . /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas/ 1> /dev/null 2> /dev/null
diff --git a/source/xap/gucharmap/gucharmap.SlackBuild b/source/xap/gucharmap/gucharmap.SlackBuild
index 4ceef2337..56fe66c67 100755
--- a/source/xap/gucharmap/gucharmap.SlackBuild
+++ b/source/xap/gucharmap/gucharmap.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -60,7 +60,6 @@ cd $TMP
rm -rf gucharmap-$VERSION
tar xvf $CWD/gucharmap-$VERSION.tar.?z* || exit 1
cd gucharmap-$VERSION || exit 1
-#zcat $CWD/gucharmap.noscrollkeeper.diff.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,7 +75,6 @@ CFLAGS="$SLKCFLAGS" \
--localstatedir=/var/lib \
--docdir=/usr/doc/gucharmap-$VERSION \
--enable-static=no \
- --disable-scrollkeeper \
--build=$ARCH-slackware-linux
make -i $NUMJOBS || make || exit 1
@@ -102,6 +100,7 @@ if [ -r ChangeLog ]; then
fi
mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
diff --git a/source/xap/gv/gv.SlackBuild b/source/xap/gv/gv.SlackBuild
index 67353af10..751cefd8a 100755
--- a/source/xap/gv/gv.SlackBuild
+++ b/source/xap/gv/gv.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
PKGNAM=gv
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -58,8 +58,6 @@ rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
cd ${PKGNAM}-$VERSION || exit 1
-zcat $CWD/gv.libXaw3d.diff.gz | patch -p1 --verbose || exit 1
-
# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
diff --git a/source/xap/gv/gv.libXaw3d.diff b/source/xap/gv/gv.libXaw3d.diff
deleted file mode 100644
index b64cef007..000000000
--- a/source/xap/gv/gv.libXaw3d.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./src/Scrollbar.c.orig 2011-08-03 11:14:14.000000000 -0500
-+++ ./src/Scrollbar.c 2012-05-13 11:19:18.140324835 -0500
-@@ -1006,7 +1006,7 @@
- TOPLOC = newtop;
- SHOWNLENGTH = newbot-newtop+1;
-
-- (*swclass->threeD_class.shadowdraw) (w, event, region, FALSE);
-+ (*swclass->threeD_class.shadowdraw) (w, event, region, sbw->threeD.relief, FALSE);
-
- ENDMESSAGE(Redisplay)
- }
diff --git a/source/xap/imagemagick/imagemagick.SlackBuild b/source/xap/imagemagick/imagemagick.SlackBuild
index cf17f5f34..aca05857d 100755
--- a/source/xap/imagemagick/imagemagick.SlackBuild
+++ b/source/xap/imagemagick/imagemagick.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -29,14 +29,14 @@ BUILD=${BUILD:-1}
# This is a bit messy, so we'll explain it well. :-)
# This is the base version number, which is needed to cd into the source tree
-BASEVER=6.7.7-10
+BASEVER=6.8.6-10
# This is the version number used in the source tarball filename
-FILEVER=6.7.7-10
+FILEVER=6.8.6-10
# This is the version number used in the package, where a version number cannot
# contain a '-'
-PKGVER=6.7.7_10
+PKGVER=6.8.6_10
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -81,6 +81,7 @@ cd $TMP
rm -rf ImageMagick-$BASEVER
tar xvf $CWD/ImageMagick-$FILEVER.tar.?z* || exit 1
cd ImageMagick-$BASEVER || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -109,6 +110,7 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-static=no \
--enable-shared \
--with-perl \
+ --with-rsvg \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS INSTALLDIRS=vendor || make INSTALLDIRS=vendor || exit 1
diff --git a/source/xap/mozilla-firefox/firefox.png b/source/xap/mozilla-firefox/firefox.png
deleted file mode 100644
index 76204b5d2..000000000
--- a/source/xap/mozilla-firefox/firefox.png
+++ /dev/null
Binary files differ
diff --git a/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild b/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild
index a6f6c65c5..78f826750 100755
--- a/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild
+++ b/source/xap/mozilla-firefox/mozilla-firefox.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,22 +25,20 @@
VERSION=$(basename $(ls firefox-*.tar.bz2 | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)
RELEASEVER=$(echo $VERSION | cut -f 1 -d r | cut -f 1 -d b)
+# With esr releases we need to fix this
+if [ "${RELEASEVER}r" = "$VERSION" ]; then
+ RELEASEVER=$(echo $RELEASEVER | cut -f 1 -d e)
+ RELEASEVERMAJ=$(echo $RELEASEVER | cut -f 1 -d .)
+fi
BUILD=${BUILD:-1}
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-mozilla-firefox
-
-# Figure out if this is a beta, or a release:
-if echo $VERSION | grep -q b ; then # we think it is a beta
- if bzgrep -q mozilla-beta/ $CWD/firefox-$VERSION.source.tar.bz2 ; then
- MOZVERS=${MOZVERS:-beta}
- else # blindly assume it is a release
- MOZVERS=${MOZVERS:-release}
- fi
-else # release, no "b" in the tarball version:
- MOZVERS=${MOZVERS:-release}
-fi
+# Specify this variable for a localized build.
+# For example, to build a version of Firefox with Italian support, run
+# the build script like this:
+#
+# MOZLOCALIZE=it ./mozilla-firefox.SlackBuild
+#
+MOZLOCALIZE=${MOZLOCALIZE:-}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -52,6 +50,33 @@ if [ -z "$ARCH" ]; then
esac
fi
+# Use PGO? Doubles the time and drive space requirements for the build,
+# but should provide a performance increase. How much depends on which
+# benchmarks you believe, but I've typically seen around 2.5%. I've also
+# seen some which say it can be negligably (a fraction of a percent) slower
+# with this enganged. The anecdotal reports usually say there's a noticable
+# improvement in overall responsiveness. Seems like a good bet if you have
+# the time and your system is able to handle it. Set the variable to
+# anything else prior to the build to compile Firefox in less time (but
+# without the possible benefits of Profile-Guided Optimization).
+#
+# NOTE: The 23.0 release fails to compile with a GLib assert error if PGO
+# is enabled, so it is being disabled by default. I can't say I ever noticed
+# a lot of difference with this anyway (other than a much, much longer compile
+# time. But pass PGO=yes to the SlackBuild if you want to try it.
+#if [ "$ARCH" = "x86_64" ]; then
+# PGO=${PGO:-yes}
+#else
+# # 32-bit systems have problems compiling with PGO, as the per-process
+# # memory requirements are too large. Possibly compiling with a 64-bit
+# # kernel could be a workaround for this, but for now we will default to
+# # using PGO only for x86_64.
+# PGO=${PGO:-no}
+#fi
+#
+# PGO is disabled by default:
+PGO=${PGO:-no}
+
# Try to be gentle to the compiler, no optimizations:
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O"
@@ -70,6 +95,23 @@ elif [ "$ARCH" = "armel" ]; then
LIBDIRSUFFIX=""
fi
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-mozilla-firefox
+
+# If not specified, figure out if this is a beta, an esr
+# or a release (we start assuming this last):
+MOZVERS=${MOZVERS:-release}
+if echo $VERSION | grep -q b ; then # we think it is a beta
+ if bzgrep -q ^mozilla-beta/ $CWD/firefox-$VERSION.source.tar.bz2 ; then
+ MOZVERS=beta
+ fi
+elif echo $VERSION | grep -q esr ; then # we think it is an esr
+ if bzgrep -q ^mozilla-esr$RELEASEVERMAJ/ $CWD/firefox-$VERSION.source.tar.bz2 ; then
+ MOZVERS=esr$RELEASEVERMAJ
+ fi
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
rm -rf $PKG
@@ -80,6 +122,16 @@ rm -rf mozilla-$MOZVERS
tar xvf $CWD/firefox-$VERSION.source.tar.bz2 || exit 1
cd mozilla-$MOZVERS || exit 1
+# Fetch localization, if requested:
+if [ ! -z $MOZLOCALIZE ]; then
+ LOC_TAG="FIREFOX_$( echo $VERSION | tr \. _ )_RELEASE"
+ rm -f $LOC_TAG.tar.bz2
+ if echo $MOZVERS | grep -q esr ; then LOC_VERS=release ; else LOC_VERS=$MOZVERS ; fi
+ wget https://hg.mozilla.org/releases/l10n/mozilla-$LOC_VERS/$MOZLOCALIZE/archive/$LOC_TAG.tar.bz2
+ tar xvf $LOC_TAG.tar.bz2
+ mv $MOZLOCALIZE-$LOC_TAG $MOZLOCALIZE
+fi
+
# Fix a long standing bug that's prevented staying current on GTK+.
# Thanks to the BLFS folks. :-)
cat << EOF >> layout/build/Makefile.in
@@ -111,18 +163,8 @@ if gcc --version | grep -q "gcc (GCC) 4.7.0" ; then
sed -i 's# ""##' browser/base/Makefile.in
fi
-# Mozilla devs enforce using an objdir for building
-# and launching configure with the absolute path
-# https://developer.mozilla.org/en/Configuring_Build_Options#Building_with_an_objdir
-mkdir obj
-cd obj
-export MOZILLA_OFFICIAL="1" &&
-export BUILD_OFFICIAL="1" &&
-export MOZ_PHOENIX="1" &&
-export CFLAGS="$SLKCFLAGS" &&
-export CXXFLAGS="$SLKCFLAGS" &&
-export MOZ_MAKE_FLAGS="$NUMJOBS" &&
-$TMP/mozilla-$MOZVERS/configure \
+# Our building options, in a configure-like display ;)
+OPTIONS="\
--enable-official-branding \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -143,29 +185,75 @@ $TMP/mozilla-$MOZVERS/configure \
--enable-strip \
--enable-cpp-rtti \
--enable-single-profile \
+ --disable-gnomevfs \
--disable-ldap \
--disable-accessibility \
--disable-crashreporter \
--disable-debug \
- --disable-tests \
--disable-pedantic \
--disable-installer \
--disable-mailnews \
--disable-composer \
- --disable-profilesharing
- # Complains about missing APNG support in Slackware's libpng:
- #--with-system-png \
-
+ --disable-profilesharing"
+# Complains about missing APNG support in Slackware's libpng:
+# --with-system-png \
# This option breaks mozilla-12.0:
# --enable-system-cairo \
-#
+if [ ! -z $MOZLOCALIZE ]; then
+ OPTIONS=$OPTIONS" \
+ --enable-ui-locale=$MOZLOCALIZE
+ --with-l10n-base=.."
+ # There's no dictionaries in localized builds
+ sed -i "/@BINPATH@\/dictionaries\/\*/d" browser/installer/package-manifest.in || exit 1
+fi
+
+export MOZILLA_OFFICIAL="1"
+export BUILD_OFFICIAL="1"
+export MOZ_PHOENIX="1"
+export MOZ_PACKAGE_JSSHELL="1"
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+export MOZ_MAKE_FLAGS="$NUMJOBS"
+
+# Clear some variables that could break the build
+unset DBUS_SESSION_BUS_ADDRESS ORBIT_SOCKETDIR SESSION_MANAGER \
+ XDG_SESSION_COOKIE XAUTHORITY MAKEFLAGS
+
+# Assemble our .mozconfig, we use this method for building, seems
+# needed for PGO.
+echo ". \$topsrcdir/browser/config/mozconfig" > .mozconfig
+
+# Mozilla devs enforce using an objdir for building
+# https://developer.mozilla.org/en/Configuring_Build_Options#Building_with_an_objdir
+mkdir obj
+echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj" >> .mozconfig
+
+if [ "$MOZLOCALIZE" ]; then
+ echo "mk_add_options MOZ_CO_LOCALES=\"$MOZLOCALIZE\"" >> .mozconfig
+fi
+
+# Write in it the options above
+for option in $OPTIONS; do echo "ac_add_options $option" >> .mozconfig; done
-#make -f client.mk build MOZ_MAKE_FLAGS="$NUMJOBS" || exit 1
-make MOZ_MAKE_FLAGS="$NUMJOBS" $NUMJOBS || exit 1
-make install DESTDIR=$PKG || exit 1
+# https://developer.mozilla.org/en-US/docs/Building_with_Profile-Guided_Optimization
+# Thanks to ArchLinux and Gentoo for the additional hints.
+if [ "$PGO" = "yes" ]; then
+ # Do a PGO build, double time and disk space but worth it.
+ export MOZ_PGO=1
+ echo "mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 \$(MAKE) -C \$(MOZ_OBJDIR) pgo-profile-run'" >> .mozconfig
+ export DISPLAY=:99
+ # Launch Xvfb to let the profile scripts run in a X session.
+ # Ugly note: if the build breaks you may want to do a "killall Xvfb".
+ Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY &
+ dbus-launch --exit-with-session make -f client.mk build || exit 1
+ kill $! || true
+else
+ # Do a normal build
+ echo "ac_add_options --disable-tests" >> .mozconfig
+ make -f client.mk build || exit 1
+fi
-# Exit obj directory:
-cd ..
+make -f client.mk install DESTDIR=$PKG || exit 1
# We don't need these (just symlinks anyway):
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/firefox-devel-$RELEASEVER
@@ -190,8 +278,6 @@ rm -rf $PKG/usr/include
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
mkdir -p $PKG/usr/share/applications
cat $CWD/mozilla-firefox.desktop > $PKG/usr/share/applications/mozilla-firefox.desktop
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/firefox.png > $PKG/usr/share/pixmaps/firefox.png
# These files/directories are usually created if Firefox is run as root,
# which on many systems might (and possibly should) be never. Therefore, if we
@@ -208,14 +294,17 @@ cat $CWD/firefox.png > $PKG/usr/share/pixmaps/firefox.png
)
# Need some default icons in the right place:
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/chrome/icons/default
-install -m 644 other-licenses/branding/firefox/default16.png \
- $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/icons/
-install -m 644 other-licenses/branding/firefox/default16.png \
- $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/chrome/icons/default/
-( cd $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER
- install -m 644 icons/{default,mozicon50}.xpm chrome/icons/default/
-)
+for i in 16 22 24 32 48 256; do
+ install -m 0644 -D browser/branding/official/default${i}.png \
+ $PKG/usr/share/icons/hicolor/${i}x${i}/apps/firefox.png
+done
+mkdir -p $PKG/usr/share/pixmaps
+( cd $PKG/usr/share/pixmaps ; ln -sf /usr/share/icons/hicolor/256x256/apps/firefox.png . )
+mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/firefox-$RELEASEVER/chrome/icons/default
+install -m 644 browser/branding/official/default16.png \
+ $PKG/usr/lib$LIBDIRSUFFIX/firefox-$RELEASEVER/icons/
+install -m 644 browser/branding/official/default16.png \
+ $PKG/usr/lib$LIBDIRSUFFIX/firefox-$RELEASEVER/chrome/icons/default/
# Copy over the LICENSE
install -p -c -m 644 LICENSE $PKG/usr/lib${LIBDIRSUFFIX}/firefox-$RELEASEVER/
@@ -224,5 +313,9 @@ mkdir $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/mozilla-firefox-$VERSION-$ARCH-$BUILD.txz
+if [ -z $MOZLOCALIZE ]; then
+ /sbin/makepkg -l y -c n $TMP/mozilla-firefox-$VERSION-$ARCH-$BUILD.txz
+else
+ /sbin/makepkg -l y -c n $TMP/mozilla-firefox-$VERSION-$ARCH-${BUILD}_$MOZLOCALIZE.txz
+fi
diff --git a/source/xap/mozilla-firefox/mozilla-firefox.desktop b/source/xap/mozilla-firefox/mozilla-firefox.desktop
index 23be26f3a..e099dcade 100644
--- a/source/xap/mozilla-firefox/mozilla-firefox.desktop
+++ b/source/xap/mozilla-firefox/mozilla-firefox.desktop
@@ -76,5 +76,5 @@ GenericName[xh]=Umkhangeli zincwadi we Web
GenericName[zh_CN]=网页浏览器
GenericName[zh_TW]=網頁瀏覽器
GenericName[zu]=Umcingi we-Web
-MimeType=text/html;
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
X-KDE-StartupNotify=true
diff --git a/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild b/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild
index f0e910c40..24f58d6bf 100755
--- a/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild
+++ b/source/xap/mozilla-thunderbird/mozilla-thunderbird.SlackBuild
@@ -28,6 +28,7 @@
TARBALLVER=$(basename $(ls thunderbird-*.tar.bz2 | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)
# Strip the end from beta versions:
VERSION=$(echo $TARBALLVER | cut -f 1 -d b)
+MAJORVER=$(echo $TARBALLVER | cut -f 1 -d .)
BUILD=${BUILD:-1}
CWD=$(pwd)
@@ -42,7 +43,12 @@ if echo $TARBALLVER | grep -q b ; then # we think it is a beta
MOZVERS=${MOZVERS:-release}
fi
else # release, no "b" in the tarball version:
- MOZVERS=${MOZVERS:-release}
+ if bzgrep -q comm-esr${MAJORVER}/ $CWD/thunderbird-$TARBALLVER.source.tar.bz2 ; then
+ # Looks like we get this sometimes even when the tarball isn't labeled as esr...
+ MOZVERS=${MOZVERS:-esr${MAJORVER}}
+ else
+ MOZVERS=${MOZVERS:-release}
+ fi
fi
# Automatically determine the architecture we're building on:
diff --git a/source/xap/network-manager-applet/doinst.sh b/source/xap/network-manager-applet/doinst.sh
index 6da6f0c0b..96ae4b325 100644
--- a/source/xap/network-manager-applet/doinst.sh
+++ b/source/xap/network-manager-applet/doinst.sh
@@ -1,13 +1,3 @@
-schema_install() {
- SCHEMA="$1"
- GCONF_CONFIG_SOURCE="xml::etc/gconf/gconf.xml.defaults" \
- chroot . gconftool-2 --makefile-install-rule \
- /etc/gconf/schemas/$SCHEMA \
- 1>/dev/null 2> /dev/null
-}
-
-schema_install nm-applet.schemas
-
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications 1>/dev/null 2> /dev/null
fi
@@ -18,3 +8,9 @@ if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
fi
fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
+
diff --git a/source/xap/network-manager-applet/network-manager-applet.SlackBuild b/source/xap/network-manager-applet/network-manager-applet.SlackBuild
index 702215967..5eb17a861 100755
--- a/source/xap/network-manager-applet/network-manager-applet.SlackBuild
+++ b/source/xap/network-manager-applet/network-manager-applet.SlackBuild
@@ -24,7 +24,7 @@
PKGNAM=network-manager-applet
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -67,6 +67,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+sed -i 's/GtkBox/GtkHBox/g' src/connection-editor/ce-page-general.ui
+sed -i 's/GtkBox/GtkVBox/g' src/connection-editor/nm-connection-editor.ui
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -78,19 +81,33 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--with-gtkver=2 \
--disable-static \
- --disable-schemas-install \
--enable-more-warnings=no \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Compress and if needed symlink the man pages:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS CONTRIBUTING COPYING ChangeLog INSTALL NEWS README \
+ AUTHORS CONTRIBUTING COPYING* ChangeLog INSTALL NEWS README* \
$PKG/usr/doc/$PKGNAM-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/xap/pan/pan.SlackBuild b/source/xap/pan/pan.SlackBuild
index b3bbe857a..ab8915918 100755
--- a/source/xap/pan/pan.SlackBuild
+++ b/source/xap/pan/pan.SlackBuild
@@ -23,7 +23,7 @@
PKGNAM=pan
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xap/pidgin/link-libirc-to-libsasl2.patch b/source/xap/pidgin/link-libirc-to-libsasl2.patch
new file mode 100644
index 000000000..2858ac994
--- /dev/null
+++ b/source/xap/pidgin/link-libirc-to-libsasl2.patch
@@ -0,0 +1,65 @@
+--- ./libpurple/protocols/irc/Makefile.am.orig 2013-02-11 03:16:52.000000000 -0600
++++ ./libpurple/protocols/irc/Makefile.am 2013-02-15 15:18:32.950591016 -0600
+@@ -27,7 +27,7 @@
+ st =
+ pkg_LTLIBRARIES = libirc.la
+ libirc_la_SOURCES = $(IRCSOURCES)
+-libirc_la_LIBADD = $(GLIB_LIBS)
++libirc_la_LIBADD = $(GLIB_LIBS) $(SASL_LIBS)
+
+ endif
+
+--- ./libpurple/protocols/irc/Makefile.in.orig 2013-02-11 03:17:20.000000000 -0600
++++ ./libpurple/protocols/irc/Makefile.in 2013-02-15 15:18:43.256590687 -0600
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.11.5 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -92,7 +92,8 @@
+ am__installdirs = "$(DESTDIR)$(pkgdir)"
+ LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkg_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+-@STATIC_IRC_FALSE@libirc_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
++@STATIC_IRC_FALSE@libirc_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
++@STATIC_IRC_FALSE@ $(am__DEPENDENCIES_1)
+ am__libirc_la_SOURCES_DIST = cmds.c dcc_send.c irc.c irc.h msgs.c \
+ parse.c
+ am__objects_1 = libirc_la-cmds.lo libirc_la-dcc_send.lo \
+@@ -415,7 +416,7 @@
+ @STATIC_IRC_TRUE@libirc_la_SOURCES = $(IRCSOURCES)
+ @STATIC_IRC_TRUE@libirc_la_CFLAGS = $(AM_CFLAGS)
+ @STATIC_IRC_FALSE@pkg_LTLIBRARIES = libirc.la
+-@STATIC_IRC_FALSE@libirc_la_LIBADD = $(GLIB_LIBS)
++@STATIC_IRC_FALSE@libirc_la_LIBADD = $(GLIB_LIBS) $(SASL_LIBS)
+ AM_CPPFLAGS = \
+ -I$(top_srcdir)/libpurple \
+ -I$(top_builddir)/libpurple \
+--- ./libpurple/protocols/irc/Makefile.orig 2013-02-15 15:16:32.812594857 -0600
++++ ./libpurple/protocols/irc/Makefile 2013-02-15 15:18:53.684590354 -0600
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.11.5 from Makefile.am.
+ # libpurple/protocols/irc/Makefile. Generated from Makefile.in by configure.
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -92,7 +92,8 @@
+ am__installdirs = "$(DESTDIR)$(pkgdir)"
+ LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkg_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+-libirc_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
++libirc_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1)
+ am__libirc_la_SOURCES_DIST = cmds.c dcc_send.c irc.c irc.h msgs.c \
+ parse.c
+ am__objects_1 = libirc_la-cmds.lo libirc_la-dcc_send.lo \
+@@ -415,7 +416,7 @@
+ #libirc_la_SOURCES = $(IRCSOURCES)
+ #libirc_la_CFLAGS = $(AM_CFLAGS)
+ pkg_LTLIBRARIES = libirc.la
+-libirc_la_LIBADD = $(GLIB_LIBS)
++libirc_la_LIBADD = $(GLIB_LIBS) $(SASL_LIBS)
+ AM_CPPFLAGS = \
+ -I$(top_srcdir)/libpurple \
+ -I$(top_builddir)/libpurple \
diff --git a/source/xap/pidgin/pidgin.SlackBuild b/source/xap/pidgin/pidgin.SlackBuild
index 5fa20495f..cf28811be 100755
--- a/source/xap/pidgin/pidgin.SlackBuild
+++ b/source/xap/pidgin/pidgin.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@
PKGNAM=pidgin
VERSION=${VERSION:-$(echo $PKGNAM-2.*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
PIDGINENC=${PIDGINENC:-3.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -106,6 +106,8 @@ CXXFLAGS="$SLKCFLAGS" \
--program-suffix= \
--build=$ARCH-slackware-linux$ARCHQUADLET || exit 1
+zcat $CWD/link-libirc-to-libsasl2.patch.gz | patch -p1 --verbose || exit 1
+
# Fix install location:
grep -lr -- "lib/perl" . | xargs sed -i 's?lib/perl?lib'"$LIBDIRSUFFIX"'/perl?g'
diff --git a/source/xap/rdesktop/rdesktop-1.8.0-fix-missing-ui.diff b/source/xap/rdesktop/rdesktop-1.8.0-fix-missing-ui.diff
new file mode 100644
index 000000000..efad2f335
--- /dev/null
+++ b/source/xap/rdesktop/rdesktop-1.8.0-fix-missing-ui.diff
@@ -0,0 +1,77 @@
+From 8aeb027877c517510ea39c26c37c6dbd46401800 Mon Sep 17 00:00:00 2001
+From: mancha <mancha1@hush.com>
+Date: Sun, 20 Oct 2013
+Subject: Fix crash with -P and/or -N
+
+Make sure that ui is created if processing demand active PDU.
+
+Relevant upstream revisions:
+----------------------------
+http://sourceforge.net/p/rdesktop/code/1731/
+http://sourceforge.net/p/rdesktop/code/1732/
+http://sourceforge.net/p/rdesktop/code/1741/
+
+---
+ proto.h | 1 +
+ rdesktop.c | 20 +++++++++++++-------
+ rdp.c | 3 +++
+ 3 files changed, 17 insertions(+), 7 deletions(-)
+
+--- a/proto.h 2013-06-20
++++ b/proto.h 2013-10-20
+@@ -144,6 +144,7 @@ RD_BOOL subprocess(char *const argv[], s
+ char *l_to_a(long N, int base);
+ int load_licence(unsigned char **data);
+ void save_licence(unsigned char *data, int length);
++void rd_create_ui(void);
+ RD_BOOL rd_pstcache_mkdir(void);
+ int rd_open_file(char *filename);
+ void rd_close_file(int fd);
+--- a/rdesktop.c 2013-10-20
++++ b/rdesktop.c 2013-10-20
+@@ -1132,13 +1132,7 @@ main(int argc, char *argv[])
+ DEBUG(("Connection successful.\n"));
+ memset(password, 0, sizeof(password));
+
+- /* only create a window if we dont have one intialized */
+- if (!ui_have_window())
+- {
+- if (!ui_create_window())
+- return EX_OSERR;
+- }
+-
++ rd_create_ui();
+ tcp_run_ui(True);
+
+ g_redirect = False;
+@@ -1732,6 +1726,18 @@ save_licence(unsigned char *data, int le
+ close(fd);
+ }
+
++/* create rdesktop ui */
++void
++rd_create_ui()
++{
++ /* only create a window if we dont have one intialized */
++ if (!ui_have_window())
++ {
++ if (!ui_create_window())
++ exit(EX_OSERR);
++ }
++}
++
+ /* Create the bitmap cache directory */
+ RD_BOOL
+ rd_pstcache_mkdir(void)
+--- a/rdp.c 2013-06-20
++++ b/rdp.c 2013-10-20
+@@ -1044,6 +1044,9 @@ process_demand_active(STREAM s)
+ uint8 type;
+ uint16 len_src_descriptor, len_combined_caps;
+
++ /* at this point we need to ensure that we have ui created */
++ rd_create_ui();
++
+ in_uint32_le(s, g_rdp_shareid);
+ in_uint16_le(s, len_src_descriptor);
+ in_uint16_le(s, len_combined_caps);
diff --git a/source/xap/rdesktop/rdesktop.SlackBuild b/source/xap/rdesktop/rdesktop.SlackBuild
index ba6c67728..e1687e782 100755
--- a/source/xap/rdesktop/rdesktop.SlackBuild
+++ b/source/xap/rdesktop/rdesktop.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2006, 2008, 2009, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
PKGNAM=rdesktop
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -59,6 +59,8 @@ rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
cd ${PKGNAM}-$VERSION || exit 1
+zcat $CWD/rdesktop-1.8.0-fix-missing-ui.diff.gz | patch -p1 --verbose || exit 1
+
# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
@@ -73,7 +75,8 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--with-sound=alsa \
- --enable-smartcard \
+ --disable-smartcard \
+ --disable-credssp \
--with-ipv6 \
--mandir=/usr/man \
--build=$ARCH-slackware-linux
diff --git a/source/xap/sane/sane-backends-1.0.22-v4l.diff b/source/xap/sane/sane-backends-1.0.22-v4l.diff
deleted file mode 100644
index 4e240e0cf..000000000
--- a/source/xap/sane/sane-backends-1.0.22-v4l.diff
+++ /dev/null
@@ -1,64 +0,0 @@
-From 26c69b228b29f612faf4b0cc85db969ee7cc4ea6 Mon Sep 17 00:00:00 2001
-From: Nils Philippsen <nils@redhat.com>
-Date: Mon, 14 Mar 2011 13:35:05 +0100
-Subject: [PATCH] patch: v4l
-
-Squashed commit of the following:
-
-commit 23381932c76846191b42a48e505b37cd74711265
-Author: Julien BLACHE <jb@jblache.org>
-Date: Wed Feb 16 19:37:43 2011 +0100
-
- Fix v4l build with libv4l 0.8.3+
-
- (cherry picked from commit c5ca46c2d1be78c651afb843cc834cf2b5b24953)
-
- Conflicts:
-
- ChangeLog
-
- Signed-off-by: Nils Philippsen <nils@redhat.com>
----
- backend/v4l.c | 3 +--
- backend/v4l.h | 3 ++-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/backend/v4l.c b/backend/v4l.c
-index 6510ef0..38595ed 100644
---- a/backend/v4l.c
-+++ b/backend/v4l.c
-@@ -84,9 +84,8 @@
- #include "../include/sane/sanei_config.h"
- #define V4L_CONFIG_FILE "v4l.conf"
-
--#include "v4l.h"
--
- #include <libv4l1.h>
-+#include "v4l.h"
-
- static const SANE_Device **devlist = NULL;
- static int num_devices;
-diff --git a/backend/v4l.h b/backend/v4l.h
-index 588b96e..6aee586 100644
---- a/backend/v4l.h
-+++ b/backend/v4l.h
-@@ -29,6 +29,7 @@
- #ifndef v4l_h
- #define v4l_h
-
-+#ifndef __LINUX_VIDEODEV_H
- /* Kernel interface */
- /* Only the stuff we need. For more features, more defines are needed */
-
-@@ -165,7 +166,7 @@ struct video_channel
-
-
- /* end of kernel interface */
--
-+#endif /* !__LINUX_VIDEODEV_H */
-
- #include <../include/sane/sane.h>
-
---
-1.7.4
-
diff --git a/source/xap/sane/sane.SlackBuild b/source/xap/sane/sane.SlackBuild
index be9dd725d..39b0dfa25 100755
--- a/source/xap/sane/sane.SlackBuild
+++ b/source/xap/sane/sane.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-VERSION=1.0.22
-BACKVER=1.0.22
+VERSION=1.0.24
+BACKVER=1.0.24
FRONTVER=1.0.14
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -61,7 +61,7 @@ mkdir -p $TMP $PKG
# First, we'll build the backends
cd $TMP
rm -rf sane-backends-$BACKVER
-tar xvf $CWD/sane-backends-$BACKVER.tar.bz2 || exit 1
+tar xvf $CWD/sane-backends-$BACKVER.tar.xz || exit 1
cd sane-backends-$BACKVER
chown -R root:root .
@@ -69,9 +69,6 @@ chown -R root:root .
# everything else catches up with the API change...
zcat $CWD/sane-frontends-1.0.14-sane_cap_always_settable.diff.gz | patch -p1 || exit 1
-# Fix building against v4l-utils-0.8.3:
-zcat $CWD/sane-backends-1.0.22-v4l.diff.gz | patch -p1 --verbose || exit 1
-
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -93,16 +90,20 @@ make install DESTDIR=$PKG || exit 1
# Add the default udev rules. Use group "lp" rather than "scanner" to avoid
# breaking CUPS access for multifunction printer/scanner devices (possibly
# the most common type of scanner these days)
+#
+# Use ACTION!="add|change" to avoid skipping these rules if coming from an
+# initrd where udev was started.
mkdir -p $PKG/lib/udev/rules.d
cat tools/udev/libsane.rules \
| sed -e "s/GROUP=\"scanner\"/GROUP=\"lp\"/g" \
| sed -e "s/MODE=\"0664\"/MODE=\"0660\"/g" \
+ | sed -e "s/ACTION!=\"add\"/ACTION!=\"add|change\"/g" \
> $PKG/lib/udev/rules.d/80-libsane.rules
-# Add the hal fdi file:
-mkdir -p $PKG/usr/share/hal/fdi/policy/10osvendor/
-cat tools/hal/libsane.fdi \
- > $PKG/usr/share/hal/fdi/policy/10osvendor/10-libsane.fdi
+## Add the hal fdi file:
+#mkdir -p $PKG/usr/share/hal/fdi/policy/10osvendor/
+#cat tools/hal/libsane.fdi \
+# > $PKG/usr/share/hal/fdi/policy/10osvendor/10-libsane.fdi
# Install the pkgconfig file:
install -D -m644 tools/sane-backends.pc \
@@ -111,7 +112,7 @@ install -D -m644 tools/sane-backends.pc \
# Now let's build the frontends:
cd $TMP
rm -rf sane-frontends-$FRONTVER
-tar xvf $CWD/sane-frontends-$FRONTVER.tar.bz2 || exit 1
+tar xvf $CWD/sane-frontends-$FRONTVER.tar.xz || exit 1
cd sane-frontends-$FRONTVER
chown -R root:root .
diff --git a/source/xap/seamonkey/pkgconfig/seamonkey-js.pc b/source/xap/seamonkey/pkgconfig/seamonkey-js.pc
deleted file mode 100644
index 31433be28..000000000
--- a/source/xap/seamonkey/pkgconfig/seamonkey-js.pc
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=/usr
-exec_prefix=/usr
-libdir=/usr/@LIB@/seamonkey-@VERSION@
-includedir=/usr/include/seamonkey-@VERSION@
-
-Name: JavaScript
-Description: The Mozilla JavaScript Library
-Version: @VERSION@
-Requires: seamonkey-nspr >= 4.7.1
-Libs: -L${libdir} -lmozjs
-Cflags: -I${includedir}/js -DXP_UNIX -DJS_THREADSAFE
diff --git a/source/xap/seamonkey/seamonkey.SlackBuild b/source/xap/seamonkey/seamonkey.SlackBuild
index afc1bc963..fa0921e42 100755
--- a/source/xap/seamonkey/seamonkey.SlackBuild
+++ b/source/xap/seamonkey/seamonkey.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -38,8 +38,10 @@ fi
if [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
+ OPTIMIZE_FLAG="-O2"
else
LIBDIRSUFFIX=""
+ OPTIMIZE_FLAG="-Os"
fi
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -103,7 +105,7 @@ BUILD_OFFICIAL=1 MOZILLA_OFFICIAL=1 \
$TMP/comm-$COMM/configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --enable-optimize=-O2 \
+ --enable-optimize=$OPTIMIZE_FLAG \
--enable-cpp-rtti \
--enable-default-toolkit=cairo-gtk2 \
--enable-startup-notification \
@@ -118,12 +120,10 @@ $TMP/comm-$COMM/configure \
--enable-nspr-autoconf \
--enable-extensions=default,irc \
--enable-crypto \
- --enable-shared-js \
--enable-libxul \
--disable-xprint \
--without-system-nspr \
--with-system-zlib \
- --with-system-jpeg \
--with-system-mng \
--enable-application=suite \
--enable-xft \
@@ -136,7 +136,7 @@ $TMP/comm-$COMM/configure \
make $NUMJOBS || exit 1
DESTDIR=$PKG make install || exit 1
-# Install js/nspr/nss headers.
+# Install nspr/nss headers.
for includedir in nspr nspr/obsolete nspr/private ; do
mkdir -p $PKG/usr/include/seamonkey-${VERSION}/$includedir
cp -aL mozilla/dist/include/${includedir}/*.h $PKG/usr/include/seamonkey-${VERSION}/$includedir
@@ -146,8 +146,6 @@ cp -aL mozilla/dist/include/*.h $PKG/usr/include/seamonkey-${VERSION}
cp -aL mozilla/dist/sdk/include/* $PKG/usr/include/seamonkey-${VERSION}
# compat symlinks
( cd $PKG/usr/include/seamonkey-${VERSION}
- # make install seems to install js headers into a directory now, so don't make a symlink:
- #ln -sf . js
# Relocate anything that might be in the nss directory, and replace the directory with a symlink.
# make install was putting an empty directory here, which was breaking other compiles.
if [ -d nss ]; then
@@ -185,7 +183,6 @@ done
# Add symlinks for the pkgconfig files:
( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
- ln -s seamonkey-js.pc js.pc
ln -s seamonkey-libxul.pc libxul.pc
ln -s seamonkey-plugin.pc plugin.pc
ln -s seamonkey-xpcom.pc xpcom.pc
@@ -252,7 +249,7 @@ rm -r $TMP/package-seamonkey-solibs
mkdir -p $TMP/package-seamonkey-solibs/usr/doc
cp -a $PKG/usr/doc/seamonkey-$VERSION $TMP/package-seamonkey-solibs/usr/doc
mkdir -p $TMP/package-seamonkey-solibs/usr/lib${LIBDIRSUFFIX}/seamonkey-${VERSION}
-for file in libfreebl3.chk libfreebl3.so libmozjs.so libmozsqlite3.so \
+for file in libfreebl3.chk libfreebl3.so libmozsqlite3.so \
libnspr4.so libnss* libplc4.so libplds4.so libsmime3.so libsoftokn3.chk \
libsoftokn3.so libssl3.so ; do
cp -a $PKG/usr/lib${LIBDIRSUFFIX}/seamonkey-${VERSION}/$file \
@@ -274,8 +271,8 @@ cat << EOF > $TMP/package-seamonkey-solibs/install/slack-desc
seamonkey-solibs: seamonkey-solibs (Shared libraries from Seamonkey)
seamonkey-solibs:
seamonkey-solibs: This package contains a subset of the shared libraries from Seamonkey
-seamonkey-solibs: to provide runtime support for programs that require nss, nspr, and
-seamonkey-solibs: js. This package is built from the Seamonkey sources and is provided
+seamonkey-solibs: to provide runtime support for various programs.
+seamonkey-solibs: This package is built from the Seamonkey sources and is provided
seamonkey-solibs: as a standalone runtime package for people who do not want to install
seamonkey-solibs: the entire seamonkey package (as for server use).
seamonkey-solibs:
diff --git a/source/xap/seamonkey/seamonkey.desktop b/source/xap/seamonkey/seamonkey.desktop
index 7c988a769..eaf81ddff 100644
--- a/source/xap/seamonkey/seamonkey.desktop
+++ b/source/xap/seamonkey/seamonkey.desktop
@@ -5,4 +5,5 @@ Exec=/usr/bin/seamonkey
Icon=/usr/share/pixmaps/seamonkey-icon.png
Terminal=0
Type=Application
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
Categories=Application;Network;
diff --git a/source/xap/windowmaker/windowmaker.SlackBuild b/source/xap/windowmaker/windowmaker.SlackBuild
index da5ac6792..e1e8b2bb8 100755
--- a/source/xap/windowmaker/windowmaker.SlackBuild
+++ b/source/xap/windowmaker/windowmaker.SlackBuild
@@ -20,9 +20,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-VERSION=${VERSION:-0.95.3}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo WindowMaker-0*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
diff --git a/source/xap/xchat/xchat.SlackBuild b/source/xap/xchat/xchat.SlackBuild
index c02a71e5f..bef11065a 100755
--- a/source/xap/xchat/xchat.SlackBuild
+++ b/source/xap/xchat/xchat.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,7 +22,7 @@
VERSION=2.8.8
-BUILD=${BUILD:-6}
+BUILD=${BUILD:-8}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -58,13 +58,16 @@ mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf xchat-$VERSION
-tar xvf $CWD/xchat-$VERSION.tar.bz2 || exit 1
+tar xvf $CWD/xchat-$VERSION.tar.xz || exit 1
cd xchat-$VERSION || exit 1
if [ -d $CWD/patches ]; then
for file in $CWD/patches/*.diff.gz ; do
zcat $file | patch -p1 --verbose || exit 1
done
fi
+
+zcat $CWD/xchat.glib.g.diff.gz | patch -p1 --verbose || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/xap/xchat/xchat.glib.g.diff b/source/xap/xchat/xchat.glib.g.diff
new file mode 100644
index 000000000..143d3448d
--- /dev/null
+++ b/source/xap/xchat/xchat.glib.g.diff
@@ -0,0 +1,47 @@
+--- ./src/common/util.c.orig 2009-08-16 04:40:16.000000000 -0500
++++ ./src/common/util.c 2013-05-13 22:18:22.364370023 -0500
+@@ -39,7 +39,7 @@
+ #include <errno.h>
+ #include "xchat.h"
+ #include "xchatc.h"
+-#include <glib/gmarkup.h>
++#include <glib.h>
+ #include <ctype.h>
+ #include "util.h"
+ #include "../../config.h"
+--- ./src/common/text.c.orig 2010-05-29 21:14:41.000000000 -0500
++++ ./src/common/text.c 2013-05-13 22:17:58.028371777 -0500
+@@ -28,7 +28,7 @@
+ #include <sys/mman.h>
+
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ #include "cfgfiles.h"
+ #include "chanopt.h"
+ #include "plugin.h"
+--- ./src/common/xchat.h.orig 2009-08-16 04:40:16.000000000 -0500
++++ ./src/common/xchat.h 2013-05-13 22:16:41.332377305 -0500
+@@ -1,10 +1,6 @@
+ #include "../../config.h"
+
+-#include <glib/gslist.h>
+-#include <glib/glist.h>
+-#include <glib/gutils.h>
+-#include <glib/giochannel.h>
+-#include <glib/gstrfuncs.h>
++#include <glib.h>
+ #include <time.h> /* need time_t */
+
+ #ifndef XCHAT_H
+--- ./src/common/servlist.c.orig 2010-05-16 02:24:26.000000000 -0500
++++ ./src/common/servlist.c 2013-05-13 22:17:29.900373805 -0500
+@@ -24,7 +24,7 @@
+ #include <unistd.h>
+
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+
+ #include "cfgfiles.h"
+ #include "fe.h"
diff --git a/source/xap/xine-lib/xine-lib.SlackBuild b/source/xap/xine-lib/xine-lib.SlackBuild
index 97391f39a..510b83513 100755
--- a/source/xap/xine-lib/xine-lib.SlackBuild
+++ b/source/xap/xine-lib/xine-lib.SlackBuild
@@ -28,7 +28,7 @@ DIRVER=1.1.21
# Version used for the Slackware package
PKGVER=1.1.21
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xap/xine-ui/xine-ui-0.99.7-upstream_fix-1.patch b/source/xap/xine-ui/xine-ui-0.99.7-upstream_fix-1.patch
new file mode 100644
index 000000000..448c9d3e4
--- /dev/null
+++ b/source/xap/xine-ui/xine-ui-0.99.7-upstream_fix-1.patch
@@ -0,0 +1,27 @@
+Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
+Date: 2013-04-17
+Initial Package Version: 0.99.7
+Upstream Status: Applied
+Origin: Upstream (Torsten Jager)
+Description: The change to use a png logo before 0.99.7 overlooked
+that static graphics have a different status in xine-lib (they never
+stop). That broke opening a file from the 'Open' menu (opening from
+the MRL Browser, or from a file passed on the command lein were OK).
+
+Upstream revision r3135:
+
+open user file immediately when only logo is playing
+
+diff -r 653d3359d87a -r edb37ede1ab2 src/xitk/actions.c
+--- a/src/xitk/actions.c Tue Mar 19 22:29:33 2013 +0200
++++ b/src/xitk/actions.c Mon Apr 15 19:56:17 2013 +0300
+@@ -2148,7 +2148,8 @@
+
+ /* If an MRL is not being played, select the first file appended. If in "smart mode" start
+ playing the entry. If a an MRL is currently being played, let it continue normally */
+- if((first != gGui->playlist.num) && (xine_get_status(gGui->stream) == XINE_STATUS_STOP)) {
++ if((first != gGui->playlist.num) &&
++ (gGui->logo_mode || (xine_get_status(gGui->stream) == XINE_STATUS_STOP))) {
+ gGui->playlist.cur = first;
+ if(gGui->smart_mode) {
+ gui_set_current_mmk(mediamark_get_current_mmk());
diff --git a/source/xap/xine-ui/xine-ui.SlackBuild b/source/xap/xine-ui/xine-ui.SlackBuild
index 65a18c183..228936c0b 100755
--- a/source/xap/xine-ui/xine-ui.SlackBuild
+++ b/source/xap/xine-ui/xine-ui.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -57,7 +57,7 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-zcat $CWD/xine-ui.no.deprecated.curl.headers.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/xine-ui-0.99.7-upstream_fix-1.patch.gz | patch -p1 --verbose || exit 1
XINE_BUILD=$TARGET \
./configure \
@@ -66,7 +66,7 @@ XINE_BUILD=$TARGET \
--with-caca \
--disable-lirc \
--mandir=/usr/man \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/xap/xine-ui/xine-ui.no.deprecated.curl.headers.diff b/source/xap/xine-ui/xine-ui.no.deprecated.curl.headers.diff
deleted file mode 100644
index 63e577174..000000000
--- a/source/xap/xine-ui/xine-ui.no.deprecated.curl.headers.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./src/xitk/download.c.orig 2009-12-18 18:34:22.000000000 -0600
-+++ ./src/xitk/download.c 2012-09-09 12:47:15.757552304 -0500
-@@ -28,8 +28,6 @@
-
- #ifdef HAVE_CURL
- #include <curl/curl.h>
--#include <curl/types.h>
--#include <curl/easy.h>
- #endif
-
- #include "common.h"
diff --git a/source/xap/xlockmore/xlockmore.SlackBuild b/source/xap/xlockmore/xlockmore.SlackBuild
index c7ced75b1..4da13fe66 100755
--- a/source/xap/xlockmore/xlockmore.SlackBuild
+++ b/source/xap/xlockmore/xlockmore.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
diff --git a/source/xap/xmms/xmms.SlackBuild b/source/xap/xmms/xmms.SlackBuild
index 042d8310e..e66739532 100755
--- a/source/xap/xmms/xmms.SlackBuild
+++ b/source/xap/xmms/xmms.SlackBuild
@@ -22,7 +22,7 @@
VERSION=1.2.11
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -65,8 +65,9 @@ rm -rf xmms-$VERSION
tar xvf $CWD/xmms-$VERSION.tar.bz2 || exit 1
cd xmms-$VERSION || exit 1
-zcat $CWD/xmms.gtk.doublesize.diff.gz | patch -p1 || exit 1
-zcat $CWD/xmms.wmxmms_vis_depth_workaround.diff.gz | patch -p0 || exit 1
+zcat $CWD/xmms.gtk.doublesize.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/xmms.wmxmms_vis_depth_workaround.diff.gz | patch -p0 --verbose || exit 1
+zcat $CWD/xmms.alsa.default.diff.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
diff --git a/source/xap/xmms/xmms.alsa.default.diff b/source/xap/xmms/xmms.alsa.default.diff
new file mode 100644
index 000000000..22f378577
--- /dev/null
+++ b/source/xap/xmms/xmms.alsa.default.diff
@@ -0,0 +1,11 @@
+--- ./xmms/main.c.orig 2006-07-16 08:40:04.000000000 -0500
++++ ./xmms/main.c 2013-05-02 21:25:33.648185044 -0500
+@@ -502,7 +502,7 @@
+ if (cfg.outputplugin == NULL)
+ {
+ #ifdef HAVE_OSS
+- cfg.outputplugin = g_strdup_printf("%s/%s/libOSS.so", PLUGIN_DIR, plugin_dir_list[0]);
++ cfg.outputplugin = g_strdup_printf("%s/%s/libALSA.so", PLUGIN_DIR, plugin_dir_list[0]);
+ #elif defined(sun)
+ cfg.outputplugin = g_strdup_printf("%s/%s/libSolaris.so", PLUGIN_DIR, plugin_dir_list[0]);
+ #else
diff --git a/source/xap/xpdf/lang/xpdf-arabic.diff b/source/xap/xpdf/lang/xpdf-arabic.diff
index a6dfcf1f5..006e836ac 100644
--- a/source/xap/xpdf/lang/xpdf-arabic.diff
+++ b/source/xap/xpdf/lang/xpdf-arabic.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2003-02-16 16:54:40.000000000 -0600
-+++ ./add-to-xpdfrc 2008-03-02 01:24:14.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.102417270 -0500
@@ -1,3 +1,3 @@
- #----- begin Arabic support package (2003-feb-16)
+ #----- begin Arabic support package (2011-aug-15)
-unicodeMap ISO-8859-6 /usr/local/share/xpdf/arabic/ISO-8859-6.unicodeMap
+unicodeMap ISO-8859-6 /usr/share/xpdf/arabic/ISO-8859-6.unicodeMap
#----- end Arabic support package
diff --git a/source/xap/xpdf/lang/xpdf-chinese-simplified.diff b/source/xap/xpdf/lang/xpdf-chinese-simplified.diff
index adb125a49..bec5e25b1 100644
--- a/source/xap/xpdf/lang/xpdf-chinese-simplified.diff
+++ b/source/xap/xpdf/lang/xpdf-chinese-simplified.diff
@@ -1,19 +1,19 @@
---- ./add-to-xpdfrc.orig 2004-07-27 17:28:08.000000000 -0500
-+++ ./add-to-xpdfrc 2008-03-02 01:46:16.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-09-02 17:24:44.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:45:42.020412765 -0500
@@ -1,9 +1,9 @@
- #----- begin Chinese Simplified support package (2004-jul-27)
+ #----- begin Chinese Simplified support package (2011-sep-02)
-cidToUnicode Adobe-GB1 /usr/local/share/xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
-unicodeMap ISO-2022-CN /usr/local/share/xpdf/chinese-simplified/ISO-2022-CN.unicodeMap
-unicodeMap EUC-CN /usr/local/share/xpdf/chinese-simplified/EUC-CN.unicodeMap
-unicodeMap GBK /usr/local/share/xpdf/chinese-simplified/GBK.unicodeMap
-cMapDir Adobe-GB1 /usr/local/share/xpdf/chinese-simplified/CMap
-toUnicodeDir /usr/local/share/xpdf/chinese-simplified/CMap
--#displayCIDFontTT Adobe-GB1 /usr/..../gkai00mp.ttf
+-#fontFileCC Adobe-GB1 /usr/..../gkai00mp.ttf
+cidToUnicode Adobe-GB1 /usr/share/xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
+unicodeMap ISO-2022-CN /usr/share/xpdf/chinese-simplified/ISO-2022-CN.unicodeMap
+unicodeMap EUC-CN /usr/share/xpdf/chinese-simplified/EUC-CN.unicodeMap
+unicodeMap GBK /usr/share/xpdf/chinese-simplified/GBK.unicodeMap
+cMapDir Adobe-GB1 /usr/share/xpdf/chinese-simplified/CMap
+toUnicodeDir /usr/share/xpdf/chinese-simplified/CMap
-+displayCIDFontTT Adobe-GB1 /usr/share/fonts/TTF/wqy-zenhei.ttf
++fontFileCC Adobe-GB1 /usr/share/fonts/TTF/wqy-zenhei.ttc
#----- end Chinese Simplified support package
diff --git a/source/xap/xpdf/lang/xpdf-chinese-traditional.diff b/source/xap/xpdf/lang/xpdf-chinese-traditional.diff
index 71d35ee5d..24857f469 100644
--- a/source/xap/xpdf/lang/xpdf-chinese-traditional.diff
+++ b/source/xap/xpdf/lang/xpdf-chinese-traditional.diff
@@ -1,17 +1,17 @@
---- ./add-to-xpdfrc.orig 2004-07-27 17:28:07.000000000 -0500
-+++ ./add-to-xpdfrc 2008-03-02 01:45:16.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-09-02 17:24:44.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:46:03.285412085 -0500
@@ -1,8 +1,8 @@
- #----- begin Chinese Traditional support package (2004-jul-27)
+ #----- begin Chinese Traditional support package (2011-sep-02)
-cidToUnicode Adobe-CNS1 /usr/local/share/xpdf/chinese-traditional/Adobe-CNS1.cidToUnicode
-unicodeMap Big5 /usr/local/share/xpdf/chinese-traditional/Big5.unicodeMap
-unicodeMap Big5ascii /usr/local/share/xpdf/chinese-traditional/Big5ascii.unicodeMap
-cMapDir Adobe-CNS1 /usr/local/share/xpdf/chinese-traditional/CMap
-toUnicodeDir /usr/local/share/xpdf/chinese-traditional/CMap
--#displayCIDFontTT Adobe-CNS1 /usr/..../bkai00mp.ttf
+-#fontFileCC Adobe-CNS1 /usr/..../bkai00mp.ttf
+cidToUnicode Adobe-CNS1 /usr/share/xpdf/chinese-traditional/Adobe-CNS1.cidToUnicode
+unicodeMap Big5 /usr/share/xpdf/chinese-traditional/Big5.unicodeMap
+unicodeMap Big5ascii /usr/share/xpdf/chinese-traditional/Big5ascii.unicodeMap
+cMapDir Adobe-CNS1 /usr/share/xpdf/chinese-traditional/CMap
+toUnicodeDir /usr/share/xpdf/chinese-traditional/CMap
-+displayCIDFontTT Adobe-CNS1 /usr/share/fonts/TTF/wqy-zenhei.ttf
++fontFileCC Adobe-CNS1 /usr/share/fonts/TTF/wqy-zenhei.ttc
#----- end Chinese Traditional support package
diff --git a/source/xap/xpdf/lang/xpdf-cyrillic.diff b/source/xap/xpdf/lang/xpdf-cyrillic.diff
index ec841961e..c453271ab 100644
--- a/source/xap/xpdf/lang/xpdf-cyrillic.diff
+++ b/source/xap/xpdf/lang/xpdf-cyrillic.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2003-07-08 00:43:40.000000000 -0500
-+++ ./add-to-xpdfrc 2008-03-02 01:27:17.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.115417270 -0500
@@ -1,4 +1,4 @@
- #----- begin Cyrillic support package (2003-jun-28)
+ #----- begin Cyrillic support package (2011-aug-15)
-nameToUnicode /usr/local/share/xpdf/cyrillic/Bulgarian.nameToUnicode
-unicodeMap KOI8-R /usr/local/share/xpdf/cyrillic/KOI8-R.unicodeMap
+nameToUnicode /usr/share/xpdf/cyrillic/Bulgarian.nameToUnicode
diff --git a/source/xap/xpdf/lang/xpdf-greek.diff b/source/xap/xpdf/lang/xpdf-greek.diff
index fe47d4434..2e846160f 100644
--- a/source/xap/xpdf/lang/xpdf-greek.diff
+++ b/source/xap/xpdf/lang/xpdf-greek.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2003-07-08 00:43:40.000000000 -0500
-+++ ./add-to-xpdfrc 2008-03-02 01:28:00.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.116417270 -0500
@@ -1,4 +1,4 @@
- #----- begin Greek support package (2003-jun-28)
+ #----- begin Greek support package (2011-aug-15)
-nameToUnicode /usr/local/share/xpdf/greek/Greek.nameToUnicode
-unicodeMap ISO-8859-7 /usr/local/share/xpdf/greek/ISO-8859-7.unicodeMap
+nameToUnicode /usr/share/xpdf/greek/Greek.nameToUnicode
diff --git a/source/xap/xpdf/lang/xpdf-hebrew.diff b/source/xap/xpdf/lang/xpdf-hebrew.diff
index e7d091d00..2c27bb6fd 100644
--- a/source/xap/xpdf/lang/xpdf-hebrew.diff
+++ b/source/xap/xpdf/lang/xpdf-hebrew.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2008-03-02 01:28:33.000000000 -0600
-+++ ./add-to-xpdfrc 2008-03-02 01:28:45.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.117417269 -0500
@@ -1,4 +1,4 @@
- #----- begin Hebrew support package (2003-feb-16)
+ #----- begin Hebrew support package (2011-aug-15)
-unicodeMap ISO-8859-8 /usr/local/share/xpdf/hebrew/ISO-8859-8.unicodeMap
-unicodeMap Windows-1255 /usr/local/share/xpdf/hebrew/Windows-1255.unicodeMap
+unicodeMap ISO-8859-8 /usr/share/xpdf/hebrew/ISO-8859-8.unicodeMap
diff --git a/source/xap/xpdf/lang/xpdf-japanese.diff b/source/xap/xpdf/lang/xpdf-japanese.diff
index 5c1878fe8..ff0c6e981 100644
--- a/source/xap/xpdf/lang/xpdf-japanese.diff
+++ b/source/xap/xpdf/lang/xpdf-japanese.diff
@@ -1,57 +1,55 @@
---- ./add-to-xpdfrc.orig 2008-03-02 01:31:08.000000000 -0600
-+++ ./add-to-xpdfrc 2008-03-02 01:31:32.000000000 -0600
-@@ -1,9 +1,47 @@
- #----- begin Japanese support package (2004-jul-27)
+--- ./add-to-xpdfrc.orig 2013-03-29 14:49:00.000000000 +0900
++++ ./add-to-xpdfrc 2013-03-29 15:00:17.000000000 +0900
+@@ -1,9 +1,45 @@
+ #----- begin Japanese support package (2011-sep-02)
-cidToUnicode Adobe-Japan1 /usr/local/share/xpdf/japanese/Adobe-Japan1.cidToUnicode
-unicodeMap ISO-2022-JP /usr/local/share/xpdf/japanese/ISO-2022-JP.unicodeMap
-unicodeMap EUC-JP /usr/local/share/xpdf/japanese/EUC-JP.unicodeMap
-unicodeMap Shift-JIS /usr/local/share/xpdf/japanese/Shift-JIS.unicodeMap
-cMapDir Adobe-Japan1 /usr/local/share/xpdf/japanese/CMap
-toUnicodeDir /usr/local/share/xpdf/japanese/CMap
--#displayCIDFontTT Adobe-Japan1 /usr/..../kochi-mincho.ttf
-+cidToUnicode Adobe-Japan1 /usr/share/xpdf/japanese/Adobe-Japan1.cidToUnicode
-+unicodeMap ISO-2022-JP /usr/share/xpdf/japanese/ISO-2022-JP.unicodeMap
-+unicodeMap EUC-JP /usr/share/xpdf/japanese/EUC-JP.unicodeMap
-+unicodeMap Shift-JIS /usr/share/xpdf/japanese/Shift-JIS.unicodeMap
-+cMapDir Adobe-Japan1 /usr/share/xpdf/japanese/CMap
-+toUnicodeDir /usr/share/xpdf/japanese/CMap
-+
+-#fontFileCC Adobe-Japan1 /usr/..../kochi-mincho.ttf
++cidToUnicode Adobe-Japan1 /usr/share/xpdf/japanese/Adobe-Japan1.cidToUnicode
++unicodeMap ISO-2022-JP /usr/share/xpdf/japanese/ISO-2022-JP.unicodeMap
++unicodeMap EUC-JP /usr/share/xpdf/japanese/EUC-JP.unicodeMap
++unicodeMap Shift-JIS /usr/share/xpdf/japanese/Shift-JIS.unicodeMap
++cMapDir Adobe-Japan1 /usr/share/xpdf/japanese/CMap
++toUnicodeDir /usr/share/xpdf/japanese/CMap
+### use Sazanami by default
-+displayCIDFontTT Adobe-Japan1 /usr/share/fonts/TTF/sazanami-mincho.ttf
++fontFileCC Adobe-Japan1 /usr/share/fonts/TTF/sazanami-mincho.ttf
+### use Sazanami (Sazanami Gothic) if gothic font is required
-+displayNamedCIDFontTT ShinGo-Bold /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT ShinGo-regular /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT MidashiGo-MB31 /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT FutoGoB101-Bold /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT HeiseiKakuGo-W5 /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT HeiseiKakuGo-W9 /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT HeiseiMaruGo-W4 /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT MS-Gothic /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT HG-GothicB /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT Kochi-Gothic /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT GothicBBB-Medium-H /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT GothicBBB-Medium /usr/share/fonts/TTF/sazanami-gothic.ttf
-+displayNamedCIDFontTT Ryumin-Light-H /usr/share/fonts/TTF/sazanami-mincho.ttf
-+displayNamedCIDFontTT Ryumin-Light /usr/share/fonts/TTF/sazanami-mincho.ttf
-+
++fontFileCC ShinGo-Bold /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC ShinGo-regular /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC MidashiGo-MB31 /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC FutoGoB101-Bold /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC HeiseiKakuGo-W5 /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC HeiseiKakuGo-W9 /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC HeiseiMaruGo-W4 /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC MS-Gothic /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC HG-GothicB /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC Kochi-Gothic /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC GothicBBB-Medium-H /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC GothicBBB-Medium /usr/share/fonts/TTF/sazanami-gothic.ttf
++fontFileCC Ryumin-Light-H /usr/share/fonts/TTF/sazanami-mincho.ttf
++fontFileCC Ryumin-Light /usr/share/fonts/TTF/sazanami-mincho.ttf
+### make default font name to "Ryumin-Light" when converted to PostScript
-+psFont16 Adobe-Japan1 H Ryumin-Light-H ISO-2022-JP
-+psFont16 Adobe-Japan1 V Ryumin-Light-V ISO-2022-JP
++psResidentFontCC Adobe-Japan1 H Ryumin-Light-H ISO-2022-JP
++psResidentFontCC Adobe-Japan1 V Ryumin-Light-V ISO-2022-JP
+# use "Gothic-BBB-Medium" if gothic font is required
-+psNamedFont16 MidashiGo-MB31 H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 MidashiGo-MB31 V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 FutoGoB101-Bold H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 FutoGoB101-Bold V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 HeiseiKakuGo-W5 H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 HeiseiKakuGo-W5 V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 HeiseiKakuGo-W9 H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 HeiseiKakuGo-W9 V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 HeiseiMaruGo-W4 H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 HeiseiMaruGo-W4 V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 MS-Gothic H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 MS-Gothic V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 HG-GothicB H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 HG-GothicB V GothicBBB-Medium-V ISO-2022-JP
-+psNamedFont16 Kochi-Gothic H GothicBBB-Medium-H ISO-2022-JP
-+psNamedFont16 Kochi-Gothic V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 MidashiGo-MB31 H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 MidashiGo-MB31 V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 FutoGoB101-Bold H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 FutoGoB101-Bold V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 HeiseiKakuGo-W5 H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 HeiseiKakuGo-W5 V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 HeiseiKakuGo-W9 H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 HeiseiKakuGo-W9 V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 HeiseiMaruGo-W4 H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 HeiseiMaruGo-W4 V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 MS-Gothic H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 MS-Gothic V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 HG-GothicB H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 HG-GothicB V GothicBBB-Medium-V ISO-2022-JP
++psResidentFont16 Kochi-Gothic H GothicBBB-Medium-H ISO-2022-JP
++psResidentFont16 Kochi-Gothic V GothicBBB-Medium-V ISO-2022-JP
#----- end Japanese support package
diff --git a/source/xap/xpdf/lang/xpdf-korean.diff b/source/xap/xpdf/lang/xpdf-korean.diff
index 632fc2145..531ad6292 100644
--- a/source/xap/xpdf/lang/xpdf-korean.diff
+++ b/source/xap/xpdf/lang/xpdf-korean.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2005-07-07 13:05:05.000000000 -0500
-+++ ./add-to-xpdfrc 2008-03-02 01:33:52.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-09-02 17:24:45.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.119417269 -0500
@@ -1,8 +1,8 @@
- #----- begin Korean support package (2005-jul-07)
+ #----- begin Korean support package (2011-sep-02)
-cidToUnicode Adobe-Korea1 /usr/local/share/xpdf/korean/Adobe-Korea1.cidToUnicode
-unicodeMap ISO-2022-KR /usr/local/share/xpdf/korean/ISO-2022-KR.unicodeMap
-cMapDir Adobe-Korea1 /usr/local/share/xpdf/korean/CMap
@@ -10,6 +10,6 @@
+unicodeMap ISO-2022-KR /usr/share/xpdf/korean/ISO-2022-KR.unicodeMap
+cMapDir Adobe-Korea1 /usr/share/xpdf/korean/CMap
+toUnicodeDir /usr/share/xpdf/korean/CMap
- #displayCIDFontTT Adobe-Korea1 /usr/..../batang.ttf"
- #displayCIDFontTT Unidocs-Korea1 /usr/..../batang.ttf"
+ #fontFileCC Adobe-Korea1 /usr/..../batang.ttf"
+ #fontFileCC Unidocs-Korea1 /usr/..../batang.ttf"
#----- end Korean support package
diff --git a/source/xap/xpdf/lang/xpdf-latin2.diff b/source/xap/xpdf/lang/xpdf-latin2.diff
index 88ce2444e..cf88fa023 100644
--- a/source/xap/xpdf/lang/xpdf-latin2.diff
+++ b/source/xap/xpdf/lang/xpdf-latin2.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2002-11-03 17:49:15.000000000 -0600
-+++ ./add-to-xpdfrc 2008-03-02 01:35:51.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.120417269 -0500
@@ -1,3 +1,3 @@
- #----- begin Latin2 support package (2002-oct-22)
+ #----- begin Latin2 support package (2011-aug-15)
-unicodeMap Latin2 /usr/local/share/xpdf/latin2/Latin2.unicodeMap
+unicodeMap Latin2 /usr/share/xpdf/latin2/Latin2.unicodeMap
#----- end Latin2 support package
diff --git a/source/xap/xpdf/lang/xpdf-thai.diff b/source/xap/xpdf/lang/xpdf-thai.diff
index 75b9b1a28..30c480efb 100644
--- a/source/xap/xpdf/lang/xpdf-thai.diff
+++ b/source/xap/xpdf/lang/xpdf-thai.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2002-11-03 17:49:15.000000000 -0600
-+++ ./add-to-xpdfrc 2008-03-02 01:36:36.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.121417269 -0500
@@ -1,4 +1,4 @@
- #----- begin Thai support package (2002-jan-16)
+ #----- begin Thai support package (2011-aug-15)
-nameToUnicode /usr/local/share/xpdf/thai/Thai.nameToUnicode
-unicodeMap TIS-620 /usr/local/share/xpdf/thai/TIS-620.unicodeMap
+nameToUnicode /usr/share/xpdf/thai/Thai.nameToUnicode
diff --git a/source/xap/xpdf/lang/xpdf-turkish.diff b/source/xap/xpdf/lang/xpdf-turkish.diff
index ec7fe79f0..81a79cff7 100644
--- a/source/xap/xpdf/lang/xpdf-turkish.diff
+++ b/source/xap/xpdf/lang/xpdf-turkish.diff
@@ -1,7 +1,7 @@
---- ./add-to-xpdfrc.orig 2002-11-03 17:49:15.000000000 -0600
-+++ ./add-to-xpdfrc 2008-03-02 01:37:33.000000000 -0600
+--- ./add-to-xpdfrc.orig 2011-08-15 16:24:29.000000000 -0500
++++ ./add-to-xpdfrc 2013-03-28 15:43:21.122417269 -0500
@@ -1,3 +1,3 @@
- #----- begin Turkish support package (2002-apr-10)
+ #----- begin Turkish support package (2011-aug-15)
-unicodeMap ISO-8859-9 /usr/local/share/xpdf/turkish/ISO-8859-9.unicodeMap
+unicodeMap ISO-8859-9 /usr/share/xpdf/turkish/ISO-8859-9.unicodeMap
#----- end Turkish support package
diff --git a/source/xap/xpdf/patches/03-float.patch b/source/xap/xpdf/patches/03-float.patch
deleted file mode 100644
index 208c765ad..000000000
--- a/source/xap/xpdf/patches/03-float.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-description: fix a floating point quirk that is exposed by gcc 4.4
- (this was leading to slow pdf document scrolling on i386)
-author: Michael Gilbert <michael.s.gilbert@gmail.com>
-bug-debian: http://bugs.debian.org/577031
---- xpdf-3.02.orig/xpdf/PDFCore.h
-+++ xpdf-3.02/xpdf/PDFCore.h
-@@ -40,6 +40,7 @@ class PDFCore;
- #define zoomPage -1
- #define zoomWidth -2
- #define defZoom 125
-+#define EPSILON 1.0e-7 // 32-bit floating point machine precision
-
- //------------------------------------------------------------------------
-
---- xpdf-3.02.orig/xpdf/PDFCore.cc
-+++ xpdf-3.02/xpdf/PDFCore.cc
-@@ -445,7 +445,7 @@ void PDFCore::update(int topPageA, int s
- // object
- if (force || pages->getLength() == 0 ||
- (!continuousMode && topPageA != topPage) ||
-- zoomA != zoom || dpiA != dpi || rotateA != rotate) {
-+ zoomA != zoom || fabs( dpiA - dpi ) > EPSILON || rotateA != rotate) {
- needUpdate = gTrue;
- setSelection(0, 0, 0, 0, 0);
- while (pages->getLength() > 0) {
diff --git a/source/xap/xpdf/patches/xpdf-3.02pl1.patch b/source/xap/xpdf/patches/xpdf-3.02pl1.patch
deleted file mode 100644
index cd42fb962..000000000
--- a/source/xap/xpdf/patches/xpdf-3.02pl1.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-*** xpdf-3.02.orig/xpdf/Stream.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/Stream.cc Thu Jul 26 14:44:43 2007
-***************
-*** 410,424 ****
- ok = gFalse;
-
- nVals = width * nComps;
-- if (width <= 0 || nComps <= 0 || nBits <= 0 ||
-- nComps >= INT_MAX / nBits ||
-- width >= INT_MAX / nComps / nBits ||
-- nVals * nBits + 7 < 0) {
-- return;
-- }
- pixBytes = (nComps * nBits + 7) >> 3;
- rowBytes = ((nVals * nBits + 7) >> 3) + pixBytes;
-! if (rowBytes <= 0) {
- return;
- }
- predLine = (Guchar *)gmalloc(rowBytes);
---- 410,422 ----
- ok = gFalse;
-
- nVals = width * nComps;
- pixBytes = (nComps * nBits + 7) >> 3;
- rowBytes = ((nVals * nBits + 7) >> 3) + pixBytes;
-! if (width <= 0 || nComps <= 0 || nBits <= 0 ||
-! nComps > gfxColorMaxComps ||
-! nBits > 16 ||
-! width >= INT_MAX / nComps || // check for overflow in nVals
-! nVals >= (INT_MAX - 7) / nBits) { // check for overflow in rowBytes
- return;
- }
- predLine = (Guchar *)gmalloc(rowBytes);
diff --git a/source/xap/xpdf/patches/xpdf-3.02pl2.patch b/source/xap/xpdf/patches/xpdf-3.02pl2.patch
deleted file mode 100644
index ab9e3c671..000000000
--- a/source/xap/xpdf/patches/xpdf-3.02pl2.patch
+++ /dev/null
@@ -1,823 +0,0 @@
-diff -c -r xpdf-3.02pl1.orig/xpdf/Stream.cc xpdf-3.02/xpdf/Stream.cc
-*** xpdf-3.02pl1.orig/xpdf/Stream.cc Thu Oct 25 15:47:38 2007
---- xpdf-3.02/xpdf/Stream.cc Thu Oct 25 15:48:19 2007
-***************
-*** 1243,1265 ****
- columns = columnsA;
- if (columns < 1) {
- columns = 1;
-! }
-! if (columns + 4 <= 0) {
-! columns = INT_MAX - 4;
- }
- rows = rowsA;
- endOfBlock = endOfBlockA;
- black = blackA;
-! refLine = (short *)gmallocn(columns + 3, sizeof(short));
-! codingLine = (short *)gmallocn(columns + 2, sizeof(short));
-
- eof = gFalse;
- row = 0;
- nextLine2D = encoding < 0;
- inputBits = 0;
-! codingLine[0] = 0;
-! codingLine[1] = refLine[2] = columns;
-! a0 = 1;
-
- buf = EOF;
- }
---- 1243,1268 ----
- columns = columnsA;
- if (columns < 1) {
- columns = 1;
-! } else if (columns > INT_MAX - 2) {
-! columns = INT_MAX - 2;
- }
- rows = rowsA;
- endOfBlock = endOfBlockA;
- black = blackA;
-! // 0 <= codingLine[0] < codingLine[1] < ... < codingLine[n] = columns
-! // ---> max codingLine size = columns + 1
-! // refLine has one extra guard entry at the end
-! // ---> max refLine size = columns + 2
-! codingLine = (int *)gmallocn(columns + 1, sizeof(int));
-! refLine = (int *)gmallocn(columns + 2, sizeof(int));
-
- eof = gFalse;
- row = 0;
- nextLine2D = encoding < 0;
- inputBits = 0;
-! codingLine[0] = columns;
-! a0i = 0;
-! outputBits = 0;
-
- buf = EOF;
- }
-***************
-*** 1278,1286 ****
- row = 0;
- nextLine2D = encoding < 0;
- inputBits = 0;
-! codingLine[0] = 0;
-! codingLine[1] = columns;
-! a0 = 1;
- buf = EOF;
-
- // skip any initial zero bits and end-of-line marker, and get the 2D
---- 1281,1289 ----
- row = 0;
- nextLine2D = encoding < 0;
- inputBits = 0;
-! codingLine[0] = columns;
-! a0i = 0;
-! outputBits = 0;
- buf = EOF;
-
- // skip any initial zero bits and end-of-line marker, and get the 2D
-***************
-*** 1297,1507 ****
- }
- }
-
- int CCITTFaxStream::lookChar() {
- short code1, code2, code3;
-! int a0New;
-! GBool err, gotEOL;
-! int ret;
-! int bits, i;
-
-! // if at eof just return EOF
-! if (eof && codingLine[a0] >= columns) {
-! return EOF;
- }
-
- // read the next row
-! err = gFalse;
-! if (codingLine[a0] >= columns) {
-
- // 2-D encoding
- if (nextLine2D) {
-- // state:
-- // a0New = current position in coding line (0 <= a0New <= columns)
-- // codingLine[a0] = last change in coding line
-- // (black-to-white if a0 is even,
-- // white-to-black if a0 is odd)
-- // refLine[b1] = next change in reference line of opposite color
-- // to a0
-- // invariants:
-- // 0 <= codingLine[a0] <= a0New
-- // <= refLine[b1] <= refLine[b1+1] <= columns
-- // 0 <= a0 <= columns+1
-- // refLine[0] = 0
-- // refLine[n] = refLine[n+1] = columns
-- // -- for some 1 <= n <= columns+1
-- // end condition:
-- // 0 = codingLine[0] <= codingLine[1] < codingLine[2] < ...
-- // < codingLine[n-1] < codingLine[n] = columns
-- // -- where 1 <= n <= columns+1
- for (i = 0; codingLine[i] < columns; ++i) {
- refLine[i] = codingLine[i];
- }
-! refLine[i] = refLine[i + 1] = columns;
-! b1 = 1;
-! a0New = codingLine[a0 = 0] = 0;
-! do {
- code1 = getTwoDimCode();
- switch (code1) {
- case twoDimPass:
-! if (refLine[b1] < columns) {
-! a0New = refLine[b1 + 1];
-! b1 += 2;
- }
- break;
- case twoDimHoriz:
-! if ((a0 & 1) == 0) {
-! code1 = code2 = 0;
- do {
-! code1 += code3 = getWhiteCode();
- } while (code3 >= 64);
- do {
-! code2 += code3 = getBlackCode();
- } while (code3 >= 64);
- } else {
-- code1 = code2 = 0;
- do {
-! code1 += code3 = getBlackCode();
- } while (code3 >= 64);
- do {
-! code2 += code3 = getWhiteCode();
- } while (code3 >= 64);
- }
-! if (code1 > 0 || code2 > 0) {
-! if (a0New + code1 <= columns) {
-! codingLine[a0 + 1] = a0New + code1;
-! } else {
-! codingLine[a0 + 1] = columns;
-! }
-! ++a0;
-! if (codingLine[a0] + code2 <= columns) {
-! codingLine[a0 + 1] = codingLine[a0] + code2;
-! } else {
-! codingLine[a0 + 1] = columns;
-! }
-! ++a0;
-! a0New = codingLine[a0];
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
- }
- break;
-! case twoDimVert0:
-! if (refLine[b1] < columns) {
-! a0New = codingLine[++a0] = refLine[b1];
-! ++b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
-- } else {
-- a0New = codingLine[++a0] = columns;
- }
- break;
- case twoDimVertR1:
-! if (refLine[b1] + 1 < columns) {
-! a0New = codingLine[++a0] = refLine[b1] + 1;
-! ++b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
-- } else {
-- a0New = codingLine[++a0] = columns;
- }
- break;
-! case twoDimVertL1:
-! if (refLine[b1] - 1 > a0New || (a0 == 0 && refLine[b1] == 1)) {
-! a0New = codingLine[++a0] = refLine[b1] - 1;
-! --b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
- }
- break;
-! case twoDimVertR2:
-! if (refLine[b1] + 2 < columns) {
-! a0New = codingLine[++a0] = refLine[b1] + 2;
-! ++b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
-- } else {
-- a0New = codingLine[++a0] = columns;
- }
- break;
- case twoDimVertL2:
-! if (refLine[b1] - 2 > a0New || (a0 == 0 && refLine[b1] == 2)) {
-! a0New = codingLine[++a0] = refLine[b1] - 2;
-! --b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
-! }
-! break;
-! case twoDimVertR3:
-! if (refLine[b1] + 3 < columns) {
-! a0New = codingLine[++a0] = refLine[b1] + 3;
-! ++b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
-- } else {
-- a0New = codingLine[++a0] = columns;
- }
- break;
-! case twoDimVertL3:
-! if (refLine[b1] - 3 > a0New || (a0 == 0 && refLine[b1] == 3)) {
-! a0New = codingLine[++a0] = refLine[b1] - 3;
-! --b1;
-! while (refLine[b1] <= a0New && refLine[b1] < columns) {
-! b1 += 2;
- }
- }
- break;
- case EOF:
- eof = gTrue;
-! codingLine[a0 = 0] = columns;
-! return EOF;
- default:
- error(getPos(), "Bad 2D code %04x in CCITTFax stream", code1);
- err = gTrue;
- break;
- }
-! } while (codingLine[a0] < columns);
-
- // 1-D encoding
- } else {
-! codingLine[a0 = 0] = 0;
-! while (1) {
- code1 = 0;
-! do {
-! code1 += code3 = getWhiteCode();
-! } while (code3 >= 64);
-! codingLine[a0+1] = codingLine[a0] + code1;
-! ++a0;
-! if (codingLine[a0] >= columns) {
-! break;
-! }
-! code2 = 0;
-! do {
-! code2 += code3 = getBlackCode();
-! } while (code3 >= 64);
-! codingLine[a0+1] = codingLine[a0] + code2;
-! ++a0;
-! if (codingLine[a0] >= columns) {
-! break;
- }
- }
- }
-
-- if (codingLine[a0] != columns) {
-- error(getPos(), "CCITTFax row is wrong length (%d)", codingLine[a0]);
-- // force the row to be the correct length
-- while (codingLine[a0] > columns) {
-- --a0;
-- }
-- codingLine[++a0] = columns;
-- err = gTrue;
-- }
--
- // byte-align the row
- if (byteAlign) {
- inputBits &= ~7;
---- 1300,1529 ----
- }
- }
-
-+ inline void CCITTFaxStream::addPixels(int a1, int blackPixels) {
-+ if (a1 > codingLine[a0i]) {
-+ if (a1 > columns) {
-+ error(getPos(), "CCITTFax row is wrong length (%d)", a1);
-+ err = gTrue;
-+ a1 = columns;
-+ }
-+ if ((a0i & 1) ^ blackPixels) {
-+ ++a0i;
-+ }
-+ codingLine[a0i] = a1;
-+ }
-+ }
-+
-+ inline void CCITTFaxStream::addPixelsNeg(int a1, int blackPixels) {
-+ if (a1 > codingLine[a0i]) {
-+ if (a1 > columns) {
-+ error(getPos(), "CCITTFax row is wrong length (%d)", a1);
-+ err = gTrue;
-+ a1 = columns;
-+ }
-+ if ((a0i & 1) ^ blackPixels) {
-+ ++a0i;
-+ }
-+ codingLine[a0i] = a1;
-+ } else if (a1 < codingLine[a0i]) {
-+ if (a1 < 0) {
-+ error(getPos(), "Invalid CCITTFax code");
-+ err = gTrue;
-+ a1 = 0;
-+ }
-+ while (a0i > 0 && a1 <= codingLine[a0i - 1]) {
-+ --a0i;
-+ }
-+ codingLine[a0i] = a1;
-+ }
-+ }
-+
- int CCITTFaxStream::lookChar() {
- short code1, code2, code3;
-! int b1i, blackPixels, i, bits;
-! GBool gotEOL;
-
-! if (buf != EOF) {
-! return buf;
- }
-
- // read the next row
-! if (outputBits == 0) {
-!
-! // if at eof just return EOF
-! if (eof) {
-! return EOF;
-! }
-!
-! err = gFalse;
-
- // 2-D encoding
- if (nextLine2D) {
- for (i = 0; codingLine[i] < columns; ++i) {
- refLine[i] = codingLine[i];
- }
-! refLine[i++] = columns;
-! refLine[i] = columns;
-! codingLine[0] = 0;
-! a0i = 0;
-! b1i = 0;
-! blackPixels = 0;
-! // invariant:
-! // refLine[b1i-1] <= codingLine[a0i] < refLine[b1i] < refLine[b1i+1]
-! // <= columns
-! // exception at left edge:
-! // codingLine[a0i = 0] = refLine[b1i = 0] = 0 is possible
-! // exception at right edge:
-! // refLine[b1i] = refLine[b1i+1] = columns is possible
-! while (codingLine[a0i] < columns) {
- code1 = getTwoDimCode();
- switch (code1) {
- case twoDimPass:
-! addPixels(refLine[b1i + 1], blackPixels);
-! if (refLine[b1i + 1] < columns) {
-! b1i += 2;
- }
- break;
- case twoDimHoriz:
-! code1 = code2 = 0;
-! if (blackPixels) {
- do {
-! code1 += code3 = getBlackCode();
- } while (code3 >= 64);
- do {
-! code2 += code3 = getWhiteCode();
- } while (code3 >= 64);
- } else {
- do {
-! code1 += code3 = getWhiteCode();
- } while (code3 >= 64);
- do {
-! code2 += code3 = getBlackCode();
- } while (code3 >= 64);
- }
-! addPixels(codingLine[a0i] + code1, blackPixels);
-! if (codingLine[a0i] < columns) {
-! addPixels(codingLine[a0i] + code2, blackPixels ^ 1);
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
-! }
-! break;
-! case twoDimVertR3:
-! addPixels(refLine[b1i] + 3, blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
-! case twoDimVertR2:
-! addPixels(refLine[b1i] + 2, blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
- case twoDimVertR1:
-! addPixels(refLine[b1i] + 1, blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
-! case twoDimVert0:
-! addPixels(refLine[b1i], blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
-! case twoDimVertL3:
-! addPixelsNeg(refLine[b1i] - 3, blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! if (b1i > 0) {
-! --b1i;
-! } else {
-! ++b1i;
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
- case twoDimVertL2:
-! addPixelsNeg(refLine[b1i] - 2, blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! if (b1i > 0) {
-! --b1i;
-! } else {
-! ++b1i;
- }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
-! case twoDimVertL1:
-! addPixelsNeg(refLine[b1i] - 1, blackPixels);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < columns) {
-! if (b1i > 0) {
-! --b1i;
-! } else {
-! ++b1i;
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-! b1i += 2;
- }
- }
- break;
- case EOF:
-+ addPixels(columns, 0);
- eof = gTrue;
-! break;
- default:
- error(getPos(), "Bad 2D code %04x in CCITTFax stream", code1);
-+ addPixels(columns, 0);
- err = gTrue;
- break;
- }
-! }
-
- // 1-D encoding
- } else {
-! codingLine[0] = 0;
-! a0i = 0;
-! blackPixels = 0;
-! while (codingLine[a0i] < columns) {
- code1 = 0;
-! if (blackPixels) {
-! do {
-! code1 += code3 = getBlackCode();
-! } while (code3 >= 64);
-! } else {
-! do {
-! code1 += code3 = getWhiteCode();
-! } while (code3 >= 64);
- }
-+ addPixels(codingLine[a0i] + code1, blackPixels);
-+ blackPixels ^= 1;
- }
- }
-
- // byte-align the row
- if (byteAlign) {
- inputBits &= ~7;
-***************
-*** 1560,1573 ****
- // this if we know the stream contains end-of-line markers because
- // the "just plow on" technique tends to work better otherwise
- } else if (err && endOfLine) {
-! do {
- if (code1 == EOF) {
- eof = gTrue;
- return EOF;
- }
- eatBits(1);
-! code1 = lookBits(13);
-! } while ((code1 >> 1) != 0x001);
- eatBits(12);
- if (encoding > 0) {
- eatBits(1);
---- 1582,1598 ----
- // this if we know the stream contains end-of-line markers because
- // the "just plow on" technique tends to work better otherwise
- } else if (err && endOfLine) {
-! while (1) {
-! code1 = lookBits(13);
- if (code1 == EOF) {
- eof = gTrue;
- return EOF;
- }
-+ if ((code1 >> 1) == 0x001) {
-+ break;
-+ }
- eatBits(1);
-! }
- eatBits(12);
- if (encoding > 0) {
- eatBits(1);
-***************
-*** 1575,1585 ****
- }
- }
-
-! a0 = 0;
-! outputBits = codingLine[1] - codingLine[0];
-! if (outputBits == 0) {
-! a0 = 1;
-! outputBits = codingLine[2] - codingLine[1];
- }
-
- ++row;
---- 1600,1610 ----
- }
- }
-
-! // set up for output
-! if (codingLine[0] > 0) {
-! outputBits = codingLine[a0i = 0];
-! } else {
-! outputBits = codingLine[a0i = 1];
- }
-
- ++row;
-***************
-*** 1587,1625 ****
-
- // get a byte
- if (outputBits >= 8) {
-! ret = ((a0 & 1) == 0) ? 0xff : 0x00;
-! if ((outputBits -= 8) == 0) {
-! ++a0;
-! if (codingLine[a0] < columns) {
-! outputBits = codingLine[a0 + 1] - codingLine[a0];
-! }
- }
- } else {
- bits = 8;
-! ret = 0;
- do {
- if (outputBits > bits) {
-! i = bits;
-! bits = 0;
-! if ((a0 & 1) == 0) {
-! ret |= 0xff >> (8 - i);
- }
-! outputBits -= i;
- } else {
-! i = outputBits;
-! bits -= outputBits;
-! if ((a0 & 1) == 0) {
-! ret |= (0xff >> (8 - i)) << bits;
- }
- outputBits = 0;
-! ++a0;
-! if (codingLine[a0] < columns) {
-! outputBits = codingLine[a0 + 1] - codingLine[a0];
- }
- }
-! } while (bits > 0 && codingLine[a0] < columns);
- }
-- buf = black ? (ret ^ 0xff) : ret;
- return buf;
- }
-
---- 1612,1654 ----
-
- // get a byte
- if (outputBits >= 8) {
-! buf = (a0i & 1) ? 0x00 : 0xff;
-! outputBits -= 8;
-! if (outputBits == 0 && codingLine[a0i] < columns) {
-! ++a0i;
-! outputBits = codingLine[a0i] - codingLine[a0i - 1];
- }
- } else {
- bits = 8;
-! buf = 0;
- do {
- if (outputBits > bits) {
-! buf <<= bits;
-! if (!(a0i & 1)) {
-! buf |= 0xff >> (8 - bits);
- }
-! outputBits -= bits;
-! bits = 0;
- } else {
-! buf <<= outputBits;
-! if (!(a0i & 1)) {
-! buf |= 0xff >> (8 - outputBits);
- }
-+ bits -= outputBits;
- outputBits = 0;
-! if (codingLine[a0i] < columns) {
-! ++a0i;
-! outputBits = codingLine[a0i] - codingLine[a0i - 1];
-! } else if (bits > 0) {
-! buf <<= bits;
-! bits = 0;
- }
- }
-! } while (bits);
-! }
-! if (black) {
-! buf ^= 0xff;
- }
- return buf;
- }
-
-***************
-*** 1661,1666 ****
---- 1690,1698 ----
- code = 0; // make gcc happy
- if (endOfBlock) {
- code = lookBits(12);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if ((code >> 5) == 0) {
- p = &whiteTab1[code];
- } else {
-***************
-*** 1673,1678 ****
---- 1705,1713 ----
- } else {
- for (n = 1; n <= 9; ++n) {
- code = lookBits(n);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if (n < 9) {
- code <<= 9 - n;
- }
-***************
-*** 1684,1689 ****
---- 1719,1727 ----
- }
- for (n = 11; n <= 12; ++n) {
- code = lookBits(n);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if (n < 12) {
- code <<= 12 - n;
- }
-***************
-*** 1709,1717 ****
- code = 0; // make gcc happy
- if (endOfBlock) {
- code = lookBits(13);
- if ((code >> 7) == 0) {
- p = &blackTab1[code];
-! } else if ((code >> 9) == 0) {
- p = &blackTab2[(code >> 1) - 64];
- } else {
- p = &blackTab3[code >> 7];
---- 1747,1758 ----
- code = 0; // make gcc happy
- if (endOfBlock) {
- code = lookBits(13);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if ((code >> 7) == 0) {
- p = &blackTab1[code];
-! } else if ((code >> 9) == 0 && (code >> 7) != 0) {
- p = &blackTab2[(code >> 1) - 64];
- } else {
- p = &blackTab3[code >> 7];
-***************
-*** 1723,1728 ****
---- 1764,1772 ----
- } else {
- for (n = 2; n <= 6; ++n) {
- code = lookBits(n);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if (n < 6) {
- code <<= 6 - n;
- }
-***************
-*** 1734,1739 ****
---- 1778,1786 ----
- }
- for (n = 7; n <= 12; ++n) {
- code = lookBits(n);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if (n < 12) {
- code <<= 12 - n;
- }
-***************
-*** 1747,1752 ****
---- 1794,1802 ----
- }
- for (n = 10; n <= 13; ++n) {
- code = lookBits(n);
-+ if (code == EOF) {
-+ return 1;
-+ }
- if (n < 13) {
- code <<= 13 - n;
- }
-***************
-*** 1961,1966 ****
---- 2011,2022 ----
- // allocate a buffer for the whole image
- bufWidth = ((width + mcuWidth - 1) / mcuWidth) * mcuWidth;
- bufHeight = ((height + mcuHeight - 1) / mcuHeight) * mcuHeight;
-+ if (bufWidth <= 0 || bufHeight <= 0 ||
-+ bufWidth > INT_MAX / bufWidth / (int)sizeof(int)) {
-+ error(getPos(), "Invalid image size in DCT stream");
-+ y = height;
-+ return;
-+ }
- for (i = 0; i < numComps; ++i) {
- frameBuf[i] = (int *)gmallocn(bufWidth * bufHeight, sizeof(int));
- memset(frameBuf[i], 0, bufWidth * bufHeight * sizeof(int));
-***************
-*** 3036,3041 ****
---- 3092,3102 ----
- }
- scanInfo.firstCoeff = str->getChar();
- scanInfo.lastCoeff = str->getChar();
-+ if (scanInfo.firstCoeff < 0 || scanInfo.lastCoeff > 63 ||
-+ scanInfo.firstCoeff > scanInfo.lastCoeff) {
-+ error(getPos(), "Bad DCT coefficient numbers in scan info block");
-+ return gFalse;
-+ }
- c = str->getChar();
- scanInfo.ah = (c >> 4) & 0x0f;
- scanInfo.al = c & 0x0f;
-diff -c -r xpdf-3.02pl1.orig/xpdf/Stream.h xpdf-3.02/xpdf/Stream.h
-*** xpdf-3.02pl1.orig/xpdf/Stream.h Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/Stream.h Thu Oct 25 15:48:15 2007
-***************
-*** 528,540 ****
- int row; // current row
- int inputBuf; // input buffer
- int inputBits; // number of bits in input buffer
-! short *refLine; // reference line changing elements
-! int b1; // index into refLine
-! short *codingLine; // coding line changing elements
-! int a0; // index into codingLine
- int outputBits; // remaining ouput bits
- int buf; // character buffer
-
- short getTwoDimCode();
- short getWhiteCode();
- short getBlackCode();
---- 528,542 ----
- int row; // current row
- int inputBuf; // input buffer
- int inputBits; // number of bits in input buffer
-! int *codingLine; // coding line changing elements
-! int *refLine; // reference line changing elements
-! int a0i; // index into codingLine
-! GBool err; // error on current line
- int outputBits; // remaining ouput bits
- int buf; // character buffer
-
-+ void addPixels(int a1, int black);
-+ void addPixelsNeg(int a1, int black);
- short getTwoDimCode();
- short getWhiteCode();
- short getBlackCode();
diff --git a/source/xap/xpdf/patches/xpdf-3.02pl3.patch b/source/xap/xpdf/patches/xpdf-3.02pl3.patch
deleted file mode 100644
index b5988805f..000000000
--- a/source/xap/xpdf/patches/xpdf-3.02pl3.patch
+++ /dev/null
@@ -1,1145 +0,0 @@
-diff -r -c xpdf-3.02.orig/goo/gmem.cc xpdf-3.02/goo/gmem.cc
-*** xpdf-3.02.orig/goo/gmem.cc Tue Feb 27 14:05:51 2007
---- xpdf-3.02/goo/gmem.cc Thu Mar 19 15:47:25 2009
-***************
-*** 55,61 ****
- void *data;
- unsigned long *trl, *p;
-
-! if (size <= 0) {
- return NULL;
- }
- size1 = gMemDataSize(size);
---- 55,69 ----
- void *data;
- unsigned long *trl, *p;
-
-! if (size < 0) {
-! #if USE_EXCEPTIONS
-! throw GMemException();
-! #else
-! fprintf(stderr, "Invalid memory allocation size\n");
-! exit(1);
-! #endif
-! }
-! if (size == 0) {
- return NULL;
- }
- size1 = gMemDataSize(size);
-***************
-*** 91,97 ****
- #else
- void *p;
-
-! if (size <= 0) {
- return NULL;
- }
- if (!(p = malloc(size))) {
---- 99,113 ----
- #else
- void *p;
-
-! if (size < 0) {
-! #if USE_EXCEPTIONS
-! throw GMemException();
-! #else
-! fprintf(stderr, "Invalid memory allocation size\n");
-! exit(1);
-! #endif
-! }
-! if (size == 0) {
- return NULL;
- }
- if (!(p = malloc(size))) {
-***************
-*** 112,118 ****
- void *q;
- int oldSize;
-
-! if (size <= 0) {
- if (p) {
- gfree(p);
- }
---- 128,142 ----
- void *q;
- int oldSize;
-
-! if (size < 0) {
-! #if USE_EXCEPTIONS
-! throw GMemException();
-! #else
-! fprintf(stderr, "Invalid memory allocation size\n");
-! exit(1);
-! #endif
-! }
-! if (size == 0) {
- if (p) {
- gfree(p);
- }
-***************
-*** 131,137 ****
- #else
- void *q;
-
-! if (size <= 0) {
- if (p) {
- free(p);
- }
---- 155,169 ----
- #else
- void *q;
-
-! if (size < 0) {
-! #if USE_EXCEPTIONS
-! throw GMemException();
-! #else
-! fprintf(stderr, "Invalid memory allocation size\n");
-! exit(1);
-! #endif
-! }
-! if (size == 0) {
- if (p) {
- free(p);
- }
-diff -r -c xpdf-3.02.orig/xpdf/JBIG2Stream.cc xpdf-3.02/xpdf/JBIG2Stream.cc
-*** xpdf-3.02.orig/xpdf/JBIG2Stream.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/JBIG2Stream.cc Tue Mar 31 10:55:23 2009
-***************
-*** 422,433 ****
- table[i] = table[len];
-
- // assign prefixes
-! i = 0;
-! prefix = 0;
-! table[i++].prefix = prefix++;
-! for (; table[i].rangeLen != jbig2HuffmanEOT; ++i) {
-! prefix <<= table[i].prefixLen - table[i-1].prefixLen;
-! table[i].prefix = prefix++;
- }
- }
-
---- 422,435 ----
- table[i] = table[len];
-
- // assign prefixes
-! if (table[0].rangeLen != jbig2HuffmanEOT) {
-! i = 0;
-! prefix = 0;
-! table[i++].prefix = prefix++;
-! for (; table[i].rangeLen != jbig2HuffmanEOT; ++i) {
-! prefix <<= table[i].prefixLen - table[i-1].prefixLen;
-! table[i].prefix = prefix++;
-! }
- }
- }
-
-***************
-*** 491,497 ****
- }
- if (p->bits < 0) {
- error(str->getPos(), "Bad two dim code in JBIG2 MMR stream");
-! return 0;
- }
- bufLen -= p->bits;
- return p->n;
---- 493,499 ----
- }
- if (p->bits < 0) {
- error(str->getPos(), "Bad two dim code in JBIG2 MMR stream");
-! return EOF;
- }
- bufLen -= p->bits;
- return p->n;
-***************
-*** 507,513 ****
- ++nBytesRead;
- }
- while (1) {
-! if (bufLen >= 7 && ((buf >> (bufLen - 7)) & 0x7f) == 0) {
- if (bufLen <= 12) {
- code = buf << (12 - bufLen);
- } else {
---- 509,515 ----
- ++nBytesRead;
- }
- while (1) {
-! if (bufLen >= 11 && ((buf >> (bufLen - 7)) & 0x7f) == 0) {
- if (bufLen <= 12) {
- code = buf << (12 - bufLen);
- } else {
-***************
-*** 550,563 ****
- ++nBytesRead;
- }
- while (1) {
-! if (bufLen >= 6 && ((buf >> (bufLen - 6)) & 0x3f) == 0) {
- if (bufLen <= 13) {
- code = buf << (13 - bufLen);
- } else {
- code = buf >> (bufLen - 13);
- }
- p = &blackTab1[code & 0x7f];
-! } else if (bufLen >= 4 && ((buf >> (bufLen - 4)) & 0x0f) == 0) {
- if (bufLen <= 12) {
- code = buf << (12 - bufLen);
- } else {
---- 552,566 ----
- ++nBytesRead;
- }
- while (1) {
-! if (bufLen >= 10 && ((buf >> (bufLen - 6)) & 0x3f) == 0) {
- if (bufLen <= 13) {
- code = buf << (13 - bufLen);
- } else {
- code = buf >> (bufLen - 13);
- }
- p = &blackTab1[code & 0x7f];
-! } else if (bufLen >= 7 && ((buf >> (bufLen - 4)) & 0x0f) == 0 &&
-! ((buf >> (bufLen - 6)) & 0x03) != 0) {
- if (bufLen <= 12) {
- code = buf << (12 - bufLen);
- } else {
-***************
-*** 683,690 ****
- h = hA;
- line = (wA + 7) >> 3;
- if (w <= 0 || h <= 0 || line <= 0 || h >= (INT_MAX - 1) / line) {
-! data = NULL;
-! return;
- }
- // need to allocate one extra guard byte for use in combine()
- data = (Guchar *)gmalloc(h * line + 1);
---- 686,694 ----
- h = hA;
- line = (wA + 7) >> 3;
- if (w <= 0 || h <= 0 || line <= 0 || h >= (INT_MAX - 1) / line) {
-! // force a call to gmalloc(-1), which will throw an exception
-! h = -1;
-! line = 2;
- }
- // need to allocate one extra guard byte for use in combine()
- data = (Guchar *)gmalloc(h * line + 1);
-***************
-*** 698,705 ****
- h = bitmap->h;
- line = bitmap->line;
- if (w <= 0 || h <= 0 || line <= 0 || h >= (INT_MAX - 1) / line) {
-! data = NULL;
-! return;
- }
- // need to allocate one extra guard byte for use in combine()
- data = (Guchar *)gmalloc(h * line + 1);
---- 702,710 ----
- h = bitmap->h;
- line = bitmap->line;
- if (w <= 0 || h <= 0 || line <= 0 || h >= (INT_MAX - 1) / line) {
-! // force a call to gmalloc(-1), which will throw an exception
-! h = -1;
-! line = 2;
- }
- // need to allocate one extra guard byte for use in combine()
- data = (Guchar *)gmalloc(h * line + 1);
-***************
-*** 754,759 ****
---- 759,766 ----
- inline void JBIG2Bitmap::getPixelPtr(int x, int y, JBIG2BitmapPtr *ptr) {
- if (y < 0 || y >= h || x >= w) {
- ptr->p = NULL;
-+ ptr->shift = 0; // make gcc happy
-+ ptr->x = 0; // make gcc happy
- } else if (x < 0) {
- ptr->p = &data[y * line];
- ptr->shift = 7;
-***************
-*** 798,803 ****
---- 805,814 ----
- Guint src0, src1, src, dest, s1, s2, m1, m2, m3;
- GBool oneByte;
-
-+ // check for the pathological case where y = -2^31
-+ if (y < -0x7fffffff) {
-+ return;
-+ }
- if (y < 0) {
- y0 = -y;
- } else {
-***************
-*** 1011,1018 ****
---- 1022,1034 ----
- JBIG2SymbolDict::JBIG2SymbolDict(Guint segNumA, Guint sizeA):
- JBIG2Segment(segNumA)
- {
-+ Guint i;
-+
- size = sizeA;
- bitmaps = (JBIG2Bitmap **)gmallocn(size, sizeof(JBIG2Bitmap *));
-+ for (i = 0; i < size; ++i) {
-+ bitmaps[i] = NULL;
-+ }
- genericRegionStats = NULL;
- refinementRegionStats = NULL;
- }
-***************
-*** 1021,1027 ****
- Guint i;
-
- for (i = 0; i < size; ++i) {
-! delete bitmaps[i];
- }
- gfree(bitmaps);
- if (genericRegionStats) {
---- 1037,1045 ----
- Guint i;
-
- for (i = 0; i < size; ++i) {
-! if (bitmaps[i]) {
-! delete bitmaps[i];
-! }
- }
- gfree(bitmaps);
- if (genericRegionStats) {
-***************
-*** 1296,1301 ****
---- 1314,1326 ----
- goto eofError2;
- }
-
-+ // check for missing page information segment
-+ if (!pageBitmap && ((segType >= 4 && segType <= 7) ||
-+ (segType >= 20 && segType <= 43))) {
-+ error(getPos(), "First JBIG2 segment associated with a page must be a page information segment");
-+ goto syntaxError;
-+ }
-+
- // read the segment data
- switch (segType) {
- case 0:
-***************
-*** 1411,1416 ****
---- 1436,1443 ----
- Guint i, j, k;
- Guchar *p;
-
-+ symWidths = NULL;
-+
- // symbol dictionary flags
- if (!readUWord(&flags)) {
- goto eofError;
-***************
-*** 1466,1485 ****
- codeTables = new GList();
- numInputSyms = 0;
- for (i = 0; i < nRefSegs; ++i) {
-! seg = findSegment(refSegs[i]);
-! if (seg->getType() == jbig2SegSymbolDict) {
-! numInputSyms += ((JBIG2SymbolDict *)seg)->getSize();
-! } else if (seg->getType() == jbig2SegCodeTable) {
-! codeTables->append(seg);
- }
- }
-
- // compute symbol code length
-! symCodeLen = 0;
-! i = 1;
-! while (i < numInputSyms + numNewSyms) {
- ++symCodeLen;
-! i <<= 1;
- }
-
- // get the input symbol bitmaps
---- 1493,1524 ----
- codeTables = new GList();
- numInputSyms = 0;
- for (i = 0; i < nRefSegs; ++i) {
-! if ((seg = findSegment(refSegs[i]))) {
-! if (seg->getType() == jbig2SegSymbolDict) {
-! j = ((JBIG2SymbolDict *)seg)->getSize();
-! if (numInputSyms > UINT_MAX - j) {
-! error(getPos(), "Too many input symbols in JBIG2 symbol dictionary");
-! delete codeTables;
-! goto eofError;
-! }
-! numInputSyms += j;
-! } else if (seg->getType() == jbig2SegCodeTable) {
-! codeTables->append(seg);
-! }
- }
- }
-+ if (numInputSyms > UINT_MAX - numNewSyms) {
-+ error(getPos(), "Too many input symbols in JBIG2 symbol dictionary");
-+ delete codeTables;
-+ goto eofError;
-+ }
-
- // compute symbol code length
-! symCodeLen = 1;
-! i = (numInputSyms + numNewSyms) >> 1;
-! while (i) {
- ++symCodeLen;
-! i >>= 1;
- }
-
- // get the input symbol bitmaps
-***************
-*** 1491,1501 ****
- k = 0;
- inputSymbolDict = NULL;
- for (i = 0; i < nRefSegs; ++i) {
-! seg = findSegment(refSegs[i]);
-! if (seg->getType() == jbig2SegSymbolDict) {
-! inputSymbolDict = (JBIG2SymbolDict *)seg;
-! for (j = 0; j < inputSymbolDict->getSize(); ++j) {
-! bitmaps[k++] = inputSymbolDict->getBitmap(j);
- }
- }
- }
---- 1530,1541 ----
- k = 0;
- inputSymbolDict = NULL;
- for (i = 0; i < nRefSegs; ++i) {
-! if ((seg = findSegment(refSegs[i]))) {
-! if (seg->getType() == jbig2SegSymbolDict) {
-! inputSymbolDict = (JBIG2SymbolDict *)seg;
-! for (j = 0; j < inputSymbolDict->getSize(); ++j) {
-! bitmaps[k++] = inputSymbolDict->getBitmap(j);
-! }
- }
- }
- }
-***************
-*** 1510,1515 ****
---- 1550,1558 ----
- } else if (huffDH == 1) {
- huffDHTable = huffTableE;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffDHTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffDW == 0) {
-***************
-*** 1517,1533 ****
---- 1560,1585 ----
- } else if (huffDW == 1) {
- huffDWTable = huffTableC;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffDWTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffBMSize == 0) {
- huffBMSizeTable = huffTableA;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffBMSizeTable =
- ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffAggInst == 0) {
- huffAggInstTable = huffTableA;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffAggInstTable =
- ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
-***************
-*** 1560,1566 ****
- }
-
- // allocate symbol widths storage
-- symWidths = NULL;
- if (huff && !refAgg) {
- symWidths = (Guint *)gmallocn(numNewSyms, sizeof(Guint));
- }
---- 1612,1617 ----
-***************
-*** 1602,1607 ****
---- 1653,1662 ----
- goto syntaxError;
- }
- symWidth += dw;
-+ if (i >= numNewSyms) {
-+ error(getPos(), "Too many symbols in JBIG2 symbol dictionary");
-+ goto syntaxError;
-+ }
-
- // using a collective bitmap, so don't read a bitmap here
- if (huff && !refAgg) {
-***************
-*** 1638,1643 ****
---- 1693,1702 ----
- arithDecoder->decodeInt(&refDX, iardxStats);
- arithDecoder->decodeInt(&refDY, iardyStats);
- }
-+ if (symID >= numInputSyms + i) {
-+ error(getPos(), "Invalid symbol ID in JBIG2 symbol dictionary");
-+ goto syntaxError;
-+ }
- refBitmap = bitmaps[symID];
- bitmaps[numInputSyms + i] =
- readGenericRefinementRegion(symWidth, symHeight,
-***************
-*** 1704,1709 ****
---- 1763,1774 ----
- } else {
- arithDecoder->decodeInt(&run, iaexStats);
- }
-+ if (i + run > numInputSyms + numNewSyms ||
-+ (ex && j + run > numExSyms)) {
-+ error(getPos(), "Too many exported symbols in JBIG2 symbol dictionary");
-+ delete symbolDict;
-+ goto syntaxError;
-+ }
- if (ex) {
- for (cnt = 0; cnt < run; ++cnt) {
- symbolDict->setBitmap(j++, bitmaps[i++]->copy());
-***************
-*** 1713,1718 ****
---- 1778,1788 ----
- }
- ex = !ex;
- }
-+ if (j != numExSyms) {
-+ error(getPos(), "Too few symbols in JBIG2 symbol dictionary");
-+ delete symbolDict;
-+ goto syntaxError;
-+ }
-
- for (i = 0; i < numNewSyms; ++i) {
- delete bitmaps[numInputSyms + i];
-***************
-*** 1735,1740 ****
---- 1805,1814 ----
-
- return gTrue;
-
-+ codeTableError:
-+ error(getPos(), "Missing code table in JBIG2 symbol dictionary");
-+ delete codeTables;
-+
- syntaxError:
- for (i = 0; i < numNewSyms; ++i) {
- if (bitmaps[numInputSyms + i]) {
-***************
-*** 1837,1842 ****
---- 1911,1918 ----
- }
- } else {
- error(getPos(), "Invalid segment reference in JBIG2 text region");
-+ delete codeTables;
-+ return;
- }
- }
- symCodeLen = 0;
-***************
-*** 1871,1876 ****
---- 1947,1955 ----
- } else if (huffFS == 1) {
- huffFSTable = huffTableG;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffFSTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffDS == 0) {
-***************
-*** 1880,1885 ****
---- 1959,1967 ----
- } else if (huffDS == 2) {
- huffDSTable = huffTableJ;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffDSTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffDT == 0) {
-***************
-*** 1889,1894 ****
---- 1971,1979 ----
- } else if (huffDT == 2) {
- huffDTTable = huffTableM;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffDTTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffRDW == 0) {
-***************
-*** 1896,1901 ****
---- 1981,1989 ----
- } else if (huffRDW == 1) {
- huffRDWTable = huffTableO;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffRDWTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffRDH == 0) {
-***************
-*** 1903,1908 ****
---- 1991,1999 ----
- } else if (huffRDH == 1) {
- huffRDHTable = huffTableO;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffRDHTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffRDX == 0) {
-***************
-*** 1910,1915 ****
---- 2001,2009 ----
- } else if (huffRDX == 1) {
- huffRDXTable = huffTableO;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffRDXTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffRDY == 0) {
-***************
-*** 1917,1927 ****
---- 2011,2027 ----
- } else if (huffRDY == 1) {
- huffRDYTable = huffTableO;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffRDYTable = ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
- if (huffRSize == 0) {
- huffRSizeTable = huffTableA;
- } else {
-+ if (i >= (Guint)codeTables->getLength()) {
-+ goto codeTableError;
-+ }
- huffRSizeTable =
- ((JBIG2CodeTable *)codeTables->get(i++))->getHuffTable();
- }
-***************
-*** 2016,2023 ****
---- 2116,2130 ----
-
- return;
-
-+ codeTableError:
-+ error(getPos(), "Missing code table in JBIG2 text region");
-+ gfree(codeTables);
-+ delete syms;
-+ return;
-+
- eofError:
- error(getPos(), "Unexpected EOF in JBIG2 stream");
-+ return;
- }
-
- JBIG2Bitmap *JBIG2Stream::readTextRegion(GBool huff, GBool refine,
-***************
-*** 2324,2331 ****
- error(getPos(), "Bad symbol dictionary reference in JBIG2 halftone segment");
- return;
- }
-! seg = findSegment(refSegs[0]);
-! if (seg->getType() != jbig2SegPatternDict) {
- error(getPos(), "Bad symbol dictionary reference in JBIG2 halftone segment");
- return;
- }
---- 2431,2438 ----
- error(getPos(), "Bad symbol dictionary reference in JBIG2 halftone segment");
- return;
- }
-! if (!(seg = findSegment(refSegs[0])) ||
-! seg->getType() != jbig2SegPatternDict) {
- error(getPos(), "Bad symbol dictionary reference in JBIG2 halftone segment");
- return;
- }
-***************
-*** 2483,2489 ****
-
- // read the bitmap
- bitmap = readGenericBitmap(mmr, w, h, templ, tpgdOn, gFalse,
-! NULL, atx, aty, mmr ? 0 : length - 18);
-
- // combine the region bitmap into the page bitmap
- if (imm) {
---- 2590,2596 ----
-
- // read the bitmap
- bitmap = readGenericBitmap(mmr, w, h, templ, tpgdOn, gFalse,
-! NULL, atx, aty, mmr ? length - 18 : 0);
-
- // combine the region bitmap into the page bitmap
- if (imm) {
-***************
-*** 2505,2510 ****
---- 2612,2654 ----
- error(getPos(), "Unexpected EOF in JBIG2 stream");
- }
-
-+ inline void JBIG2Stream::mmrAddPixels(int a1, int blackPixels,
-+ int *codingLine, int *a0i, int w) {
-+ if (a1 > codingLine[*a0i]) {
-+ if (a1 > w) {
-+ error(getPos(), "JBIG2 MMR row is wrong length ({0:d})", a1);
-+ a1 = w;
-+ }
-+ if ((*a0i & 1) ^ blackPixels) {
-+ ++*a0i;
-+ }
-+ codingLine[*a0i] = a1;
-+ }
-+ }
-+
-+ inline void JBIG2Stream::mmrAddPixelsNeg(int a1, int blackPixels,
-+ int *codingLine, int *a0i, int w) {
-+ if (a1 > codingLine[*a0i]) {
-+ if (a1 > w) {
-+ error(getPos(), "JBIG2 MMR row is wrong length ({0:d})", a1);
-+ a1 = w;
-+ }
-+ if ((*a0i & 1) ^ blackPixels) {
-+ ++*a0i;
-+ }
-+ codingLine[*a0i] = a1;
-+ } else if (a1 < codingLine[*a0i]) {
-+ if (a1 < 0) {
-+ error(getPos(), "Invalid JBIG2 MMR code");
-+ a1 = 0;
-+ }
-+ while (*a0i > 0 && a1 <= codingLine[*a0i - 1]) {
-+ --*a0i;
-+ }
-+ codingLine[*a0i] = a1;
-+ }
-+ }
-+
- JBIG2Bitmap *JBIG2Stream::readGenericBitmap(GBool mmr, int w, int h,
- int templ, GBool tpgdOn,
- GBool useSkip, JBIG2Bitmap *skip,
-***************
-*** 2517,2523 ****
- JBIG2BitmapPtr atPtr0, atPtr1, atPtr2, atPtr3;
- int *refLine, *codingLine;
- int code1, code2, code3;
-! int x, y, a0, pix, i, refI, codingI;
-
- bitmap = new JBIG2Bitmap(0, w, h);
- bitmap->clearToZero();
---- 2661,2667 ----
- JBIG2BitmapPtr atPtr0, atPtr1, atPtr2, atPtr3;
- int *refLine, *codingLine;
- int code1, code2, code3;
-! int x, y, a0i, b1i, blackPixels, pix, i;
-
- bitmap = new JBIG2Bitmap(0, w, h);
- bitmap->clearToZero();
-***************
-*** 2527,2535 ****
- if (mmr) {
-
- mmrDecoder->reset();
- refLine = (int *)gmallocn(w + 2, sizeof(int));
-! codingLine = (int *)gmallocn(w + 2, sizeof(int));
-! codingLine[0] = codingLine[1] = w;
-
- for (y = 0; y < h; ++y) {
-
---- 2671,2688 ----
- if (mmr) {
-
- mmrDecoder->reset();
-+ if (w > INT_MAX - 2) {
-+ error(getPos(), "Bad width in JBIG2 generic bitmap");
-+ // force a call to gmalloc(-1), which will throw an exception
-+ w = -3;
-+ }
-+ // 0 <= codingLine[0] < codingLine[1] < ... < codingLine[n] = w
-+ // ---> max codingLine size = w + 1
-+ // refLine has one extra guard entry at the end
-+ // ---> max refLine size = w + 2
-+ codingLine = (int *)gmallocn(w + 1, sizeof(int));
- refLine = (int *)gmallocn(w + 2, sizeof(int));
-! codingLine[0] = w;
-
- for (y = 0; y < h; ++y) {
-
-***************
-*** 2537,2664 ****
- for (i = 0; codingLine[i] < w; ++i) {
- refLine[i] = codingLine[i];
- }
-! refLine[i] = refLine[i + 1] = w;
-
- // decode a line
-! refI = 0; // b1 = refLine[refI]
-! codingI = 0; // a1 = codingLine[codingI]
-! a0 = 0;
-! do {
- code1 = mmrDecoder->get2DCode();
- switch (code1) {
- case twoDimPass:
-! if (refLine[refI] < w) {
-! a0 = refLine[refI + 1];
-! refI += 2;
-! }
-! break;
- case twoDimHoriz:
-! if (codingI & 1) {
-! code1 = 0;
-! do {
-! code1 += code3 = mmrDecoder->getBlackCode();
-! } while (code3 >= 64);
-! code2 = 0;
-! do {
-! code2 += code3 = mmrDecoder->getWhiteCode();
-! } while (code3 >= 64);
-! } else {
-! code1 = 0;
-! do {
-! code1 += code3 = mmrDecoder->getWhiteCode();
-! } while (code3 >= 64);
-! code2 = 0;
-! do {
-! code2 += code3 = mmrDecoder->getBlackCode();
-! } while (code3 >= 64);
-! }
-! if (code1 > 0 || code2 > 0) {
-! a0 = codingLine[codingI++] = a0 + code1;
-! a0 = codingLine[codingI++] = a0 + code2;
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! }
-! break;
-! case twoDimVert0:
-! a0 = codingLine[codingI++] = refLine[refI];
-! if (refLine[refI] < w) {
-! ++refI;
-! }
-! break;
-! case twoDimVertR1:
-! a0 = codingLine[codingI++] = refLine[refI] + 1;
-! if (refLine[refI] < w) {
-! ++refI;
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! }
-! break;
-! case twoDimVertR2:
-! a0 = codingLine[codingI++] = refLine[refI] + 2;
-! if (refLine[refI] < w) {
-! ++refI;
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! }
-! break;
- case twoDimVertR3:
-! a0 = codingLine[codingI++] = refLine[refI] + 3;
-! if (refLine[refI] < w) {
-! ++refI;
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! }
-! break;
-! case twoDimVertL1:
-! a0 = codingLine[codingI++] = refLine[refI] - 1;
-! if (refI > 0) {
-! --refI;
-! } else {
-! ++refI;
-! }
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! break;
-! case twoDimVertL2:
-! a0 = codingLine[codingI++] = refLine[refI] - 2;
-! if (refI > 0) {
-! --refI;
-! } else {
-! ++refI;
-! }
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! break;
- case twoDimVertL3:
-! a0 = codingLine[codingI++] = refLine[refI] - 3;
-! if (refI > 0) {
-! --refI;
-! } else {
-! ++refI;
-! }
-! while (refLine[refI] <= a0 && refLine[refI] < w) {
-! refI += 2;
-! }
-! break;
- default:
- error(getPos(), "Illegal code in JBIG2 MMR bitmap data");
- break;
- }
-! } while (a0 < w);
-! codingLine[codingI++] = w;
-
- // convert the run lengths to a bitmap line
- i = 0;
-! while (codingLine[i] < w) {
- for (x = codingLine[i]; x < codingLine[i+1]; ++x) {
- bitmap->setPixel(x, y);
- }
- i += 2;
- }
- }
---- 2690,2846 ----
- for (i = 0; codingLine[i] < w; ++i) {
- refLine[i] = codingLine[i];
- }
-! refLine[i++] = w;
-! refLine[i] = w;
-
- // decode a line
-! codingLine[0] = 0;
-! a0i = 0;
-! b1i = 0;
-! blackPixels = 0;
-! // invariant:
-! // refLine[b1i-1] <= codingLine[a0i] < refLine[b1i] < refLine[b1i+1] <= w
-! // exception at left edge:
-! // codingLine[a0i = 0] = refLine[b1i = 0] = 0 is possible
-! // exception at right edge:
-! // refLine[b1i] = refLine[b1i+1] = w is possible
-! while (codingLine[a0i] < w) {
- code1 = mmrDecoder->get2DCode();
- switch (code1) {
- case twoDimPass:
-! mmrAddPixels(refLine[b1i + 1], blackPixels, codingLine, &a0i, w);
-! if (refLine[b1i + 1] < w) {
-! b1i += 2;
-! }
-! break;
- case twoDimHoriz:
-! code1 = code2 = 0;
-! if (blackPixels) {
-! do {
-! code1 += code3 = mmrDecoder->getBlackCode();
-! } while (code3 >= 64);
-! do {
-! code2 += code3 = mmrDecoder->getWhiteCode();
-! } while (code3 >= 64);
-! } else {
-! do {
-! code1 += code3 = mmrDecoder->getWhiteCode();
-! } while (code3 >= 64);
-! do {
-! code2 += code3 = mmrDecoder->getBlackCode();
-! } while (code3 >= 64);
-! }
-! mmrAddPixels(codingLine[a0i] + code1, blackPixels,
-! codingLine, &a0i, w);
-! if (codingLine[a0i] < w) {
-! mmrAddPixels(codingLine[a0i] + code2, blackPixels ^ 1,
-! codingLine, &a0i, w);
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! break;
- case twoDimVertR3:
-! mmrAddPixels(refLine[b1i] + 3, blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
-! case twoDimVertR2:
-! mmrAddPixels(refLine[b1i] + 2, blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
-! case twoDimVertR1:
-! mmrAddPixels(refLine[b1i] + 1, blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
-! case twoDimVert0:
-! mmrAddPixels(refLine[b1i], blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! ++b1i;
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
- case twoDimVertL3:
-! mmrAddPixelsNeg(refLine[b1i] - 3, blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! if (b1i > 0) {
-! --b1i;
-! } else {
-! ++b1i;
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
-! case twoDimVertL2:
-! mmrAddPixelsNeg(refLine[b1i] - 2, blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! if (b1i > 0) {
-! --b1i;
-! } else {
-! ++b1i;
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
-! case twoDimVertL1:
-! mmrAddPixelsNeg(refLine[b1i] - 1, blackPixels, codingLine, &a0i, w);
-! blackPixels ^= 1;
-! if (codingLine[a0i] < w) {
-! if (b1i > 0) {
-! --b1i;
-! } else {
-! ++b1i;
-! }
-! while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < w) {
-! b1i += 2;
-! }
-! }
-! break;
-! case EOF:
-! mmrAddPixels(w, 0, codingLine, &a0i, w);
-! break;
- default:
- error(getPos(), "Illegal code in JBIG2 MMR bitmap data");
-+ mmrAddPixels(w, 0, codingLine, &a0i, w);
- break;
- }
-! }
-
- // convert the run lengths to a bitmap line
- i = 0;
-! while (1) {
- for (x = codingLine[i]; x < codingLine[i+1]; ++x) {
- bitmap->setPixel(x, y);
- }
-+ if (codingLine[i+1] >= w || codingLine[i+2] >= w) {
-+ break;
-+ }
- i += 2;
- }
- }
-***************
-*** 2706,2712 ****
- ltp = !ltp;
- }
- if (ltp) {
-! bitmap->duplicateRow(y, y-1);
- continue;
- }
- }
---- 2888,2896 ----
- ltp = !ltp;
- }
- if (ltp) {
-! if (y > 0) {
-! bitmap->duplicateRow(y, y-1);
-! }
- continue;
- }
- }
-***************
-*** 2909,2916 ****
- return;
- }
- if (nRefSegs == 1) {
-! seg = findSegment(refSegs[0]);
-! if (seg->getType() != jbig2SegBitmap) {
- error(getPos(), "Bad bitmap reference in JBIG2 generic refinement segment");
- return;
- }
---- 3093,3100 ----
- return;
- }
- if (nRefSegs == 1) {
-! if (!(seg = findSegment(refSegs[0])) ||
-! seg->getType() != jbig2SegBitmap) {
- error(getPos(), "Bad bitmap reference in JBIG2 generic refinement segment");
- return;
- }
-***************
-*** 3004,3009 ****
---- 3188,3197 ----
- tpgrCX2 = refBitmap->nextPixel(&tpgrCXPtr2);
- tpgrCX2 = (tpgrCX2 << 1) | refBitmap->nextPixel(&tpgrCXPtr2);
- tpgrCX2 = (tpgrCX2 << 1) | refBitmap->nextPixel(&tpgrCXPtr2);
-+ } else {
-+ tpgrCXPtr0.p = tpgrCXPtr1.p = tpgrCXPtr2.p = NULL; // make gcc happy
-+ tpgrCXPtr0.shift = tpgrCXPtr1.shift = tpgrCXPtr2.shift = 0;
-+ tpgrCXPtr0.x = tpgrCXPtr1.x = tpgrCXPtr2.x = 0;
- }
-
- for (x = 0; x < w; ++x) {
-***************
-*** 3075,3080 ****
---- 3263,3272 ----
- tpgrCX2 = refBitmap->nextPixel(&tpgrCXPtr2);
- tpgrCX2 = (tpgrCX2 << 1) | refBitmap->nextPixel(&tpgrCXPtr2);
- tpgrCX2 = (tpgrCX2 << 1) | refBitmap->nextPixel(&tpgrCXPtr2);
-+ } else {
-+ tpgrCXPtr0.p = tpgrCXPtr1.p = tpgrCXPtr2.p = NULL; // make gcc happy
-+ tpgrCXPtr0.shift = tpgrCXPtr1.shift = tpgrCXPtr2.shift = 0;
-+ tpgrCXPtr0.x = tpgrCXPtr1.x = tpgrCXPtr2.x = 0;
- }
-
- for (x = 0; x < w; ++x) {
-diff -r -c xpdf-3.02.orig/xpdf/JBIG2Stream.h xpdf-3.02/xpdf/JBIG2Stream.h
-*** xpdf-3.02.orig/xpdf/JBIG2Stream.h Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/JBIG2Stream.h Tue Mar 31 10:50:07 2009
-***************
-*** 78,83 ****
---- 78,87 ----
- Guint *refSegs, Guint nRefSegs);
- void readGenericRegionSeg(Guint segNum, GBool imm,
- GBool lossless, Guint length);
-+ void mmrAddPixels(int a1, int blackPixels,
-+ int *codingLine, int *a0i, int w);
-+ void mmrAddPixelsNeg(int a1, int blackPixels,
-+ int *codingLine, int *a0i, int w);
- JBIG2Bitmap *readGenericBitmap(GBool mmr, int w, int h,
- int templ, GBool tpgdOn,
- GBool useSkip, JBIG2Bitmap *skip,
diff --git a/source/xap/xpdf/patches/xpdf-3.02pl4.patch b/source/xap/xpdf/patches/xpdf-3.02pl4.patch
deleted file mode 100644
index 082d11750..000000000
--- a/source/xap/xpdf/patches/xpdf-3.02pl4.patch
+++ /dev/null
@@ -1,282 +0,0 @@
-*** xpdf-3.02.orig/xpdf/Stream.cc Fri Jul 24 14:30:46 2009
---- xpdf-3.02/xpdf/Stream.cc Mon Oct 5 11:07:49 2009
-***************
-*** 323,328 ****
---- 323,332 ----
- } else {
- imgLineSize = nVals;
- }
-+ if (width > INT_MAX / nComps) {
-+ // force a call to gmallocn(-1,...), which will throw an exception
-+ imgLineSize = -1;
-+ }
- imgLine = (Guchar *)gmallocn(imgLineSize, sizeof(Guchar));
- imgIdx = nVals;
- }
-*** xpdf-3.02.orig/xpdf/PSOutputDev.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/PSOutputDev.cc Fri Oct 2 12:38:58 2009
-***************
-*** 4301,4307 ****
- width, -height, height);
-
- // allocate a line buffer
-! lineBuf = (Guchar *)gmalloc(4 * width);
-
- // set up to process the data stream
- imgStr = new ImageStream(str, width, colorMap->getNumPixelComps(),
---- 4301,4307 ----
- width, -height, height);
-
- // allocate a line buffer
-! lineBuf = (Guchar *)gmallocn(width, 4);
-
- // set up to process the data stream
- imgStr = new ImageStream(str, width, colorMap->getNumPixelComps(),
-diff -r -c xpdf-3.02.orig/splash/Splash.cc xpdf-3.02/splash/Splash.cc
-*** xpdf-3.02.orig/splash/Splash.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/splash/Splash.cc Fri Aug 14 14:05:08 2009
-***************
-*** 12,17 ****
---- 12,18 ----
-
- #include <stdlib.h>
- #include <string.h>
-+ #include <limits.h>
- #include "gmem.h"
- #include "SplashErrorCodes.h"
- #include "SplashMath.h"
-***************
-*** 1912,1918 ****
- xq = w % scaledWidth;
-
- // allocate pixel buffer
-! pixBuf = (SplashColorPtr)gmalloc((yp + 1) * w);
-
- // initialize the pixel pipe
- pipeInit(&pipe, 0, 0, state->fillPattern, NULL, state->fillAlpha,
---- 1913,1922 ----
- xq = w % scaledWidth;
-
- // allocate pixel buffer
-! if (yp < 0 || yp > INT_MAX - 1) {
-! return splashErrBadArg;
-! }
-! pixBuf = (SplashColorPtr)gmallocn(yp + 1, w);
-
- // initialize the pixel pipe
- pipeInit(&pipe, 0, 0, state->fillPattern, NULL, state->fillAlpha,
-***************
-*** 2208,2216 ****
- xq = w % scaledWidth;
-
- // allocate pixel buffers
-! colorBuf = (SplashColorPtr)gmalloc((yp + 1) * w * nComps);
- if (srcAlpha) {
-! alphaBuf = (Guchar *)gmalloc((yp + 1) * w);
- } else {
- alphaBuf = NULL;
- }
---- 2212,2223 ----
- xq = w % scaledWidth;
-
- // allocate pixel buffers
-! if (yp < 0 || yp > INT_MAX - 1 || w > INT_MAX / nComps) {
-! return splashErrBadArg;
-! }
-! colorBuf = (SplashColorPtr)gmallocn(yp + 1, w * nComps);
- if (srcAlpha) {
-! alphaBuf = (Guchar *)gmallocn(yp + 1, w);
- } else {
- alphaBuf = NULL;
- }
-diff -r -c xpdf-3.02.orig/splash/SplashErrorCodes.h xpdf-3.02/splash/SplashErrorCodes.h
-*** xpdf-3.02.orig/splash/SplashErrorCodes.h Tue Feb 27 14:05:52 2007
---- xpdf-3.02/splash/SplashErrorCodes.h Fri Aug 14 14:03:46 2009
-***************
-*** 29,32 ****
---- 29,34 ----
-
- #define splashErrSingularMatrix 8 // matrix is singular
-
-+ #define splashErrBadArg 9 // bad argument
-+
- #endif
-*** xpdf-3.02.orig/splash/SplashBitmap.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/splash/SplashBitmap.cc Wed Aug 19 14:55:39 2009
-***************
-*** 11,16 ****
---- 11,17 ----
- #endif
-
- #include <stdio.h>
-+ #include <limits.h>
- #include "gmem.h"
- #include "SplashErrorCodes.h"
- #include "SplashBitmap.h"
-***************
-*** 27,56 ****
- mode = modeA;
- switch (mode) {
- case splashModeMono1:
-! rowSize = (width + 7) >> 3;
- break;
- case splashModeMono8:
-! rowSize = width;
- break;
- case splashModeRGB8:
- case splashModeBGR8:
-! rowSize = width * 3;
- break;
- #if SPLASH_CMYK
- case splashModeCMYK8:
-! rowSize = width * 4;
- break;
- #endif
- }
-! rowSize += rowPad - 1;
-! rowSize -= rowSize % rowPad;
-! data = (SplashColorPtr)gmalloc(rowSize * height);
- if (!topDown) {
- data += (height - 1) * rowSize;
- rowSize = -rowSize;
- }
- if (alphaA) {
-! alpha = (Guchar *)gmalloc(width * height);
- } else {
- alpha = NULL;
- }
---- 28,75 ----
- mode = modeA;
- switch (mode) {
- case splashModeMono1:
-! if (width > 0) {
-! rowSize = (width + 7) >> 3;
-! } else {
-! rowSize = -1;
-! }
- break;
- case splashModeMono8:
-! if (width > 0) {
-! rowSize = width;
-! } else {
-! rowSize = -1;
-! }
- break;
- case splashModeRGB8:
- case splashModeBGR8:
-! if (width > 0 && width <= INT_MAX / 3) {
-! rowSize = width * 3;
-! } else {
-! rowSize = -1;
-! }
- break;
- #if SPLASH_CMYK
- case splashModeCMYK8:
-! if (width > 0 && width <= INT_MAX / 4) {
-! rowSize = width * 4;
-! } else {
-! rowSize = -1;
-! }
- break;
- #endif
- }
-! if (rowSize > 0) {
-! rowSize += rowPad - 1;
-! rowSize -= rowSize % rowPad;
-! }
-! data = (SplashColorPtr)gmallocn(height, rowSize);
- if (!topDown) {
- data += (height - 1) * rowSize;
- rowSize = -rowSize;
- }
- if (alphaA) {
-! alpha = (Guchar *)gmallocn(width, height);
- } else {
- alpha = NULL;
- }
-*** xpdf-3.02.orig/xpdf/XRef.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/XRef.cc Tue Oct 13 11:57:24 2009
-***************
-*** 52,57 ****
---- 52,59 ----
- // generation 0.
- ObjectStream(XRef *xref, int objStrNumA);
-
-+ GBool isOk() { return ok; }
-+
- ~ObjectStream();
-
- // Return the object number of this object stream.
-***************
-*** 67,72 ****
---- 69,75 ----
- int nObjects; // number of objects in the stream
- Object *objs; // the objects (length = nObjects)
- int *objNums; // the object numbers (length = nObjects)
-+ GBool ok;
- };
-
- ObjectStream::ObjectStream(XRef *xref, int objStrNumA) {
-***************
-*** 80,85 ****
---- 83,89 ----
- nObjects = 0;
- objs = NULL;
- objNums = NULL;
-+ ok = gFalse;
-
- if (!xref->fetch(objStrNum, 0, &objStr)->isStream()) {
- goto err1;
-***************
-*** 105,110 ****
---- 109,121 ----
- goto err1;
- }
-
-+ // this is an arbitrary limit to avoid integer overflow problems
-+ // in the 'new Object[nObjects]' call (Acrobat apparently limits
-+ // object streams to 100-200 objects)
-+ if (nObjects > 1000000) {
-+ error(-1, "Too many objects in an object stream");
-+ goto err1;
-+ }
- objs = new Object[nObjects];
- objNums = (int *)gmallocn(nObjects, sizeof(int));
- offsets = (int *)gmallocn(nObjects, sizeof(int));
-***************
-*** 161,170 ****
- }
-
- gfree(offsets);
-
- err1:
- objStr.free();
-- return;
- }
-
- ObjectStream::~ObjectStream() {
---- 172,181 ----
- }
-
- gfree(offsets);
-+ ok = gTrue;
-
- err1:
- objStr.free();
- }
-
- ObjectStream::~ObjectStream() {
-***************
-*** 837,842 ****
---- 848,858 ----
- delete objStr;
- }
- objStr = new ObjectStream(this, e->offset);
-+ if (!objStr->isOk()) {
-+ delete objStr;
-+ objStr = NULL;
-+ goto err;
-+ }
- }
- objStr->getObject(e->gen, num, obj);
- break;
diff --git a/source/xap/xpdf/patches/xpdf-3.02pl5.patch b/source/xap/xpdf/patches/xpdf-3.02pl5.patch
deleted file mode 100644
index 558eac554..000000000
--- a/source/xap/xpdf/patches/xpdf-3.02pl5.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-*** xpdf-3.02.orig/xpdf/Gfx.cc Tue Feb 27 14:05:52 2007
---- xpdf-3.02/xpdf/Gfx.cc Mon Oct 11 15:39:52 2010
-***************
-*** 461,466 ****
---- 461,467 ----
- baseMatrix[i] = state->getCTM()[i];
- }
- formDepth = 0;
-+ parser = NULL;
- abortCheckCbk = abortCheckCbkA;
- abortCheckCbkData = abortCheckCbkDataA;
-
-***************
-*** 500,505 ****
---- 501,507 ----
- baseMatrix[i] = state->getCTM()[i];
- }
- formDepth = 0;
-+ parser = NULL;
- abortCheckCbk = abortCheckCbkA;
- abortCheckCbkData = abortCheckCbkDataA;
-
-*** xpdf-3.02.orig/fofi/FoFiType1.cc Tue Feb 27 14:05:51 2007
---- xpdf-3.02/fofi/FoFiType1.cc Mon Oct 11 15:44:13 2010
-***************
-*** 224,230 ****
- code = code * 8 + (*p2 - '0');
- }
- }
-! if (code < 256) {
- for (p = p2; *p == ' ' || *p == '\t'; ++p) ;
- if (*p == '/') {
- ++p;
---- 224,230 ----
- code = code * 8 + (*p2 - '0');
- }
- }
-! if (code >= 0 && code < 256) {
- for (p = p2; *p == ' ' || *p == '\t'; ++p) ;
- if (*p == '/') {
- ++p;
diff --git a/source/xap/xpdf/patches/xpdf-3.02pl6.patch b/source/xap/xpdf/patches/xpdf-3.02pl6.patch
deleted file mode 100644
index b36491020..000000000
--- a/source/xap/xpdf/patches/xpdf-3.02pl6.patch
+++ /dev/null
@@ -1 +0,0 @@
-# There is not a patch 6... just a recompile without t1lib
diff --git a/source/xap/xpdf/patches/xpdf-3.03-CVE-2012-2142.diff b/source/xap/xpdf/patches/xpdf-3.03-CVE-2012-2142.diff
new file mode 100644
index 000000000..891c41fd3
--- /dev/null
+++ b/source/xap/xpdf/patches/xpdf-3.03-CVE-2012-2142.diff
@@ -0,0 +1,55 @@
+From 3945969e0072217c143fefa3044512a31ac2afa8 Mon Sep 17 00:00:00 2001
+From: mancha <mancha1@hush.com>
+Date: Sun, 11 Aug 2013
+Subject: CVE-2012-2142
+
+Filter stuff that might end up in the shell to address CVE-2012-2142.
+This code was adapted from the Poppler project.
+---
+ Error.cc | 21 ++++++++++++++++-----
+ 1 file changed, 16 insertions(+), 5 deletions(-)
+
+--- a/xpdf/Error.cc 2013-08-11
++++ b/xpdf/Error.cc 2013-08-11
+@@ -43,7 +43,7 @@ void setErrorCallback(void (*cbk)(void *
+
+ void CDECL error(ErrorCategory category, int pos, const char *msg, ...) {
+ va_list args;
+- GString *s;
++ GString *s, *sanitized;
+
+ // NB: this can be called before the globalParams object is created
+ if (!errorCbk && globalParams && globalParams->getErrQuiet()) {
+@@ -52,17 +52,28 @@ void CDECL error(ErrorCategory category,
+ va_start(args, msg);
+ s = GString::formatv(msg, args);
+ va_end(args);
++
++ sanitized = new GString ();
++ for (int i = 0; i < s->getLength(); ++i) {
++ const char c = s->getChar(i);
++ if (c < (char)0x20 || c >= (char)0x7f) {
++ sanitized->appendf("<{0:02x}>", c & 0xff);
++ } else {
++ sanitized->append(c);
++ }
++ }
++
+ if (errorCbk) {
+- (*errorCbk)(errorCbkData, category, pos, s->getCString());
++ (*errorCbk)(errorCbkData, category, pos, sanitized->getCString());
+ } else {
+ if (pos >= 0) {
+ fprintf(stderr, "%s (%d): %s\n",
+- errorCategoryNames[category], pos, s->getCString());
++ errorCategoryNames[category], pos, sanitized->getCString());
+ } else {
+ fprintf(stderr, "%s: %s\n",
+- errorCategoryNames[category], s->getCString());
++ errorCategoryNames[category], sanitized->getCString());
+ }
+ fflush(stderr);
+ }
+- delete s;
++ delete sanitized;
+ }
diff --git a/source/xap/xpdf/patches/xpdf-resizefix.diff b/source/xap/xpdf/patches/xpdf-resizefix.diff
deleted file mode 100644
index 4be7feb0a..000000000
--- a/source/xap/xpdf/patches/xpdf-resizefix.diff
+++ /dev/null
@@ -1,34 +0,0 @@
---- ./fofi/FoFiType1.cc.orig 2007-02-27 16:05:51.000000000 -0600
-+++ ./fofi/FoFiType1.cc 2007-04-11 19:58:28.000000000 -0500
-@@ -235,9 +235,14 @@
- }
- }
- } else {
-- if (strtok(buf, " \t") &&
-- (p = strtok(NULL, " \t\n\r")) && !strcmp(p, "def")) {
-- break;
-+ p = strtok(buf, " \t\n\r");
-+ if (p)
-+ {
-+ if (!strcmp(p, "def")) break;
-+ if (!strcmp(p, "readonly")) break;
-+ // the spec does not says this but i'm mantaining old xpdf behaviour that accepts "foo def" as end of the encoding array
-+ p = strtok(buf, " \t\n\r");
-+ if (p && !strcmp(p, "def")) break;
- }
- }
- }
---- ./splash/Splash.cc.orig 2007-02-27 16:05:52.000000000 -0600
-+++ ./splash/Splash.cc 2007-04-11 19:58:35.000000000 -0500
-@@ -1501,6 +1501,11 @@
- xPath->aaScale();
- }
- xPath->sort();
-+ if (!&xPath->segs[0])
-+ {
-+ delete xPath;
-+ return splashErrEmptyPath;
-+ }
- scanner = new SplashXPathScanner(xPath, eo);
-
- // get the min and max x and y values
diff --git a/source/xap/xpdf/patches/xpdf.XPDFViewer.diff b/source/xap/xpdf/patches/xpdf.XPDFViewer.diff
new file mode 100644
index 000000000..0aa4455d5
--- /dev/null
+++ b/source/xap/xpdf/patches/xpdf.XPDFViewer.diff
@@ -0,0 +1,11 @@
+--- ./xpdf/XPDFViewer.cc.orig 2011-08-15 16:08:53.000000000 -0500
++++ ./xpdf/XPDFViewer.cc 2013-03-28 15:35:31.589432279 -0500
+@@ -1803,7 +1803,7 @@
+ menuPane = XmCreatePulldownMenu(toolBar, "zoomMenuPane", args, n);
+ for (i = 0; i < nZoomMenuItems; ++i) {
+ n = 0;
+- s = XmStringCreateLocalized(zoomMenuInfo[i].label);
++ s = XmStringCreateLocalized((char *)zoomMenuInfo[i].label);
+ XtSetArg(args[n], XmNlabelString, s); ++n;
+ XtSetArg(args[n], XmNuserData, (XtPointer)i); ++n;
+ sprintf(buf, "zoom%d", i);
diff --git a/source/xap/xpdf/patches/xpdf_3.02-1.3.diff b/source/xap/xpdf/patches/xpdf_3.02-1.3.diff
deleted file mode 100644
index 6a769e5c9..000000000
--- a/source/xap/xpdf/patches/xpdf_3.02-1.3.diff
+++ /dev/null
@@ -1,4470 +0,0 @@
---- xpdf-3.02.orig/debian/README.Debian
-+++ xpdf-3.02/debian/README.Debian
-@@ -0,0 +1,16 @@
-+
-+This package incorporates the following Xpdf language
-+packages:
-+
-+xpdf-cyrillic 2002-jun-28
-+xpdf-greek 2002-jun-28
-+xpdf-hebrew 2003-feb-16
-+xpdf-latin2 2002-oct-22
-+xpdf-thai 2002-jan-16
-+xpdf-turkish 2002-apr-10
-+xpdf-arabic 2003-feb-16
-+
-+xpdf-chinese-simplified, xpdf-chinese-traditional, xpdf-korean
-+and xpdf-japanese are separate Debian packages in the "non-free"
-+section of the Debian archive.
-+
---- xpdf-3.02.orig/debian/xpdf-utils.files
-+++ xpdf-3.02/debian/xpdf-utils.files
-@@ -0,0 +1,10 @@
-+/usr/share/man/man1/pdftotext.1
-+/usr/share/man/man1/pdfinfo.1
-+/usr/share/man/man1/pdffonts.1
-+/usr/share/man/man1/pdfimages.1
-+/usr/share/man/man1/pdftops.1
-+/usr/bin/pdftops
-+/usr/bin/pdftotext
-+/usr/bin/pdfinfo
-+/usr/bin/pdffonts
-+/usr/bin/pdfimages
---- xpdf-3.02.orig/debian/patches-obselete/04_freetype-glyph.dpatch
-+++ xpdf-3.02/debian/patches-obselete/04_freetype-glyph.dpatch
-@@ -0,0 +1,20 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 04_freetype-glyph.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Bug fix for Freetype glyph handling
-+
-+@DPATCH@
-+
-+--- xpdf-3.00.orig/splash/SplashFTFont.cc
-++++ xpdf-3.00/splash/SplashFTFont.cc
-+@@ -238,6 +238,9 @@
-+ if (FT_Get_Glyph(slot, &glyph)) {
-+ return NULL;
-+ }
-++ if (glyph->format != FT_GLYPH_FORMAT_OUTLINE) {
-++ return NULL;
-++ }
-+ path.path = new SplashPath();
-+ path.needClose = gFalse;
-+ FT_Outline_Decompose(&((FT_OutlineGlyph)glyph)->outline,
---- xpdf-3.02.orig/debian/patches-obselete/07_decrypt.dpatch
-+++ xpdf-3.02/debian/patches-obselete/07_decrypt.dpatch
-@@ -0,0 +1,52 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 07_decrypt.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Avoid potential buffer overruns during decryption
-+
-+@DPATCH@
-+diff -urNad --exclude=CVS --exclude=.svn ./xpdf/Decrypt.cc /tmp/dpep-work.wRRwAu/xpdf-3.01/xpdf/Decrypt.cc
-+--- ./xpdf/Decrypt.cc 2005-08-17 15:34:31.000000000 +1000
-++++ /tmp/dpep-work.wRRwAu/xpdf-3.01/xpdf/Decrypt.cc 2005-08-19 18:47:09.000000000 +1000
-+@@ -75,6 +75,11 @@
-+ Guchar fx, fy;
-+ int len, i, j;
-+
-++ // check whether we have non-zero keyLength
-++ if ( !keyLength ) {
-++ return gFalse;
-++ }
-++
-+ // try using the supplied owner password to generate the user password
-+ *ownerPasswordOk = gFalse;
-+ if (ownerPassword) {
-+@@ -100,7 +105,7 @@
-+ } else {
-+ memcpy(test2, ownerKey->getCString(), 32);
-+ for (i = 19; i >= 0; --i) {
-+- for (j = 0; j < keyLength; ++j) {
-++ for (j = 0; j < keyLength && j < 16; ++j) {
-+ tmpKey[j] = test[j] ^ i;
-+ }
-+ rc4InitKey(tmpKey, keyLength, fState);
-+@@ -140,6 +145,11 @@
-+ int len, i, j;
-+ GBool ok;
-+
-++ // check whether we have non-zero keyLength
-++ if ( !keyLength ) {
-++ return gFalse;
-++ }
-++
-+ // generate file key
-+ buf = (Guchar *)gmalloc(72 + fileID->getLength());
-+ if (userPassword) {
-+@@ -184,7 +194,7 @@
-+ } else if (encRevision == 3) {
-+ memcpy(test, userKey->getCString(), 32);
-+ for (i = 19; i >= 0; --i) {
-+- for (j = 0; j < keyLength; ++j) {
-++ for (j = 0; j < keyLength && j < 16; ++j) {
-+ tmpKey[j] = fileKey[j] ^ i;
-+ }
-+ rc4InitKey(tmpKey, keyLength, fState);
---- xpdf-3.02.orig/debian/patches-obselete/03_freetype-build.dpatch
-+++ xpdf-3.02/debian/patches-obselete/03_freetype-build.dpatch
-@@ -0,0 +1,301 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 03_freetype-build.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Use pkg-config to locate FreeType build information
-+
-+@DPATCH@
-+diff -urNad --exclude=CVS --exclude=.svn ./configure.in /tmp/dpep-work.9fnwEh/xpdf-3.01/configure.in
-+--- ./configure.in 2005-08-19 17:06:04.000000000 +1000
-++++ /tmp/dpep-work.9fnwEh/xpdf-3.01/configure.in 2005-08-19 17:12:11.000000000 +1000
-+@@ -301,10 +301,8 @@
-+ AC_SUBST(t1_CFLAGS)
-+
-+ dnl ##### Check for FreeType 2.x.
-+-dnl ##### (Note: FT_Get_Name_Index was added in FT 2.0.5, and is
-+-dnl ##### the reason that Xpdf requires 2.0.5+.)
-+-smr_CHECK_LIB(freetype2, freetype, [FreeType2 font rasterizer - version 2.0.5+],
-+- FT_Get_Name_Index, ft2build.h, -lm)
-++PKG_CHECK_MODULES(freetype2, freetype2 >= 9.5.3, smr_have_freetype2_library="yes",
-++ smr_have_freetype2_library="no")
-+ AC_SUBST(freetype2_LIBS)
-+ AC_SUBST(freetype2_CFLAGS)
-+ if test "x$smr_have_freetype2_library" = xyes; then
-+diff -urNad --exclude=CVS --exclude=.svn ./smr.m4 /tmp/dpep-work.9fnwEh/xpdf-3.01/smr.m4
-+--- ./smr.m4 1970-01-01 10:00:00.000000000 +1000
-++++ /tmp/dpep-work.9fnwEh/xpdf-3.01/smr.m4 2005-08-19 17:12:05.000000000 +1000
-+@@ -0,0 +1,274 @@
-++# <<< smr.m4 from smr_macros 0.2.4 >>>
-++
-++dnl ####################### -*- Mode: M4 -*- ###########################
-++dnl smr.m4 --
-++dnl
-++dnl Copyright (C) 1999 Matthew D. Langston <langston at SLAC.Stanford.EDU>
-++dnl Copyright (C) 1998 Steve Robbins <stever at cs.mcgill.ca>
-++dnl
-++dnl This file is free software; you can redistribute it and/or modify it
-++dnl under the terms of the GNU General Public License as published by
-++dnl the Free Software Foundation; either version 2 of the License, or
-++dnl (at your option) any later version.
-++dnl
-++dnl This file is distributed in the hope that it will be useful, but
-++dnl WITHOUT ANY WARRANTY; without even the implied warranty of
-++dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-++dnl General Public License for more details.
-++dnl
-++dnl You should have received a copy of the GNU General Public License
-++dnl along with this file; if not, write to:
-++dnl
-++dnl Free Software Foundation, Inc.
-++dnl Suite 330
-++dnl 59 Temple Place
-++dnl Boston, MA 02111-1307, USA.
-++dnl ####################################################################
-++
-++
-++dnl NOTE: The macros in this file are extensively documented in the
-++dnl accompanying `smr_macros.texi' Texinfo file. Please see the
-++dnl Texinfo documentation for the definitive specification of how
-++dnl these macros are supposed to work. If the macros work
-++dnl differently than the Texinfo documentation says they should,
-++dnl then the macros (and not the Texinfo documentation) has the
-++dnl bug(s).
-++
-++dnl This is a convenient macro which translates illegal characters for
-++dnl bourne shell variables into legal characters. It has the same
-++dnl functionality as sed 'y%./+-:%__p__%'.
-++AC_DEFUN([smr_safe_translation], [patsubst(patsubst([$1], [+], [p]), [./-:], [_])])
-++
-++AC_DEFUN(smr_SWITCH,
-++[
-++ dnl Define convenient aliases for the arguments since there are so
-++ dnl many of them and I keep confusing myself whenever I have to edit
-++ dnl this macro.
-++ pushdef([smr_name], $1)
-++ pushdef([smr_help_string], $2)
-++ pushdef([smr_default], $3)
-++ pushdef([smr_yes_define], $4)
-++ pushdef([smr_no_define], $5)
-++
-++ dnl Do some sanity checking of the arguments.
-++ ifelse([regexp(smr_default, [^\(yes\|no\)$])], -1, [AC_MSG_ERROR($0: third arg must be either yes or no)])
-++
-++ dnl Create the help string
-++ pushdef([smr_lhs], [--ifelse(smr_default, yes, disable, enable)-smr_name])dnl
-++ pushdef([smr_rhs], [ifelse(smr_default, yes, disable, enable) smr_help_string (default is smr_default)])dnl
-++
-++ dnl Add the option to `configure --help'. We don't need to supply the
-++ dnl 4th argument to AC_ARG_ENABLE (i.e. the code to set the default
-++ dnl value) because that is done below by AC_CACHE_CHECK.
-++ AC_ARG_ENABLE([smr_name],
-++ AC_HELP_STRING([smr_lhs], [smr_rhs]),
-++ smr_cv_enable_[]smr_name=$enableval)
-++
-++ dnl We cache the result so that the user doesn't have to remember
-++ dnl which flags they passed to `configure'.
-++ AC_CACHE_CHECK([whether to enable smr_help_string],
-++ smr_cv_enable_[]smr_name,
-++ smr_cv_enable_[]smr_name=smr_default)
-++
-++ ifelse(smr_yes_define, , , test x"[$]smr_cv_enable_[]smr_name" = xyes && AC_DEFINE(smr_yes_define))
-++ ifelse(smr_no_define, , , test x"[$]smr_cv_enable_[]smr_name" = xno && AC_DEFINE(smr_no_define))
-++
-++ dnl Sanity check the value assigned to smr_cv_enable_$1 to force it to
-++ dnl be either `yes' or `no'.
-++ if test ! x"[$]smr_cv_enable_[]smr_name" = xyes; then
-++ if test ! x"[$]smr_cv_enable_[]smr_name" = xno; then
-++ AC_MSG_ERROR([smr_lhs must be either yes or no])
-++ fi
-++ fi
-++
-++ popdef([smr_name])
-++ popdef([smr_help_string])
-++ popdef([smr_default])
-++ popdef([smr_yes_define])
-++ popdef([smr_no_define])
-++ popdef([smr_lhs])
-++ popdef([smr_rhs])
-++])
-++
-++
-++AC_DEFUN(smr_ARG_WITHLIB,
-++[
-++ dnl Define convenient aliases for the arguments since there are so
-++ dnl many of them and I keep confusing myself whenever I have to edit
-++ dnl this macro.
-++ pushdef([smr_name], $1)
-++ pushdef([smr_libname], ifelse($2, , smr_name, $2))
-++ pushdef([smr_help_string], $3)
-++ pushdef([smr_safe_name], smr_safe_translation(smr_name))
-++
-++ dnl Add the option to `configure --help'. We don't need to supply the
-++ dnl 4th argument to AC_ARG_WITH (i.e. the code to set the default
-++ dnl value) because that is done below by AC_CACHE_CHECK.
-++ AC_ARG_WITH(smr_safe_name-library,
-++ AC_HELP_STRING([--with-smr_safe_name-library[[=PATH]]],
-++ [use smr_name library ifelse(smr_help_string, , , (smr_help_string))]),
-++ smr_cv_with_[]smr_safe_name[]_library=$withval)
-++
-++ dnl We cache the result so that the user doesn't have to remember
-++ dnl which flags they passed to `configure'.
-++ AC_CACHE_CHECK([whether to use smr_name library],
-++ smr_cv_with_[]smr_safe_name[]_library,
-++ smr_cv_with_[]smr_safe_name[]_library=maybe)
-++
-++
-++ case x"[$]smr_cv_with_[]smr_safe_name[]_library" in
-++ xyes | xmaybe)
-++ smr_safe_name[]_LIBS="-l[]smr_libname"
-++ with_[]smr_safe_name=[$]smr_cv_with_[]smr_safe_name[]_library
-++ ;;
-++ xno)
-++ smr_safe_name[]_LIBS=
-++ with_[]smr_safe_name=no
-++ ;;
-++ *)
-++ if test -f "[$]smr_cv_with_[]smr_safe_name[]_library"; then
-++ smr_safe_name[]_LIBS=[$]smr_cv_with_[]smr_safe_name[]_library
-++ elif test -d "[$]smr_cv_with_[]smr_safe_name[]_library"; then
-++ smr_safe_name[]_LIBS="-L[$]smr_cv_with_[]smr_safe_name[]_library -l[]smr_libname"
-++ else
-++ AC_MSG_ERROR([argument must be boolean, file, or directory])
-++ fi
-++ with_[]smr_safe_name=yes
-++ ;;
-++ esac
-++
-++ popdef([smr_name])
-++ popdef([smr_libname])
-++ popdef([smr_help_string])
-++ popdef([smr_safe_name])
-++])
-++
-++
-++AC_DEFUN(smr_ARG_WITHINCLUDES,
-++[
-++ dnl Define convenient aliases for the arguments since there are so
-++ dnl many of them and I keep confusing myself whenever I have to edit
-++ dnl this macro.
-++ pushdef([smr_name], $1)
-++ pushdef([smr_header], $2)
-++ pushdef([smr_extra_flags], $3)
-++ pushdef([smr_safe_name], smr_safe_translation(smr_name))
-++
-++ dnl Add the option to `configure --help'. We don't need to supply the
-++ dnl 4th argument to AC_ARG_WITH (i.e. the code to set the default
-++ dnl value) because that is done below by AC_CACHE_CHECK.
-++ AC_ARG_WITH(smr_safe_name-includes,
-++ AC_HELP_STRING([--with-smr_safe_name-includes[[=DIR]]],
-++ [set directory for smr_name headers]),
-++ smr_cv_with_[]smr_safe_name[]_includes=$withval)
-++
-++ dnl We cache the result so that the user doesn't have to remember
-++ dnl which flags they passed to `configure'.
-++ AC_CACHE_CHECK([where to find the smr_name header files],
-++ smr_cv_with_[]smr_safe_name[]_includes,
-++ smr_cv_with_[]smr_safe_name[]_includes=)
-++
-++ if test ! x"[$]smr_cv_with_[]smr_safe_name[]_includes" = x; then
-++ if test -d "[$]smr_cv_with_[]smr_safe_name[]_includes"; then
-++ smr_safe_name[]_CFLAGS="-I[$]smr_cv_with_[]smr_safe_name[]_includes"
-++ else
-++ AC_MSG_ERROR([argument must be a directory])
-++ fi
-++ else
-++ smr_safe_name[]_CFLAGS=
-++ fi
-++
-++ dnl This bit of logic comes from the autoconf AC_PROG_CC macro. We
-++ dnl need to put the given include directory into CPPFLAGS temporarily,
-++ dnl but then restore CPPFLAGS to its old value.
-++ smr_test_CPPFLAGS="${CPPFLAGS+set}"
-++ smr_save_CPPFLAGS="$CPPFLAGS"
-++ CPPFLAGS="$CPPFLAGS [$]smr_safe_name[]_CFLAGS smr_extra_flags"
-++
-++ dnl If the header file smr_header exists, then define
-++ dnl HAVE_[]smr_header (in all capitals).
-++ AC_CHECK_HEADERS([smr_header],
-++ smr_have_[]smr_safe_name[]_header=yes,
-++ smr_have_[]smr_safe_name[]_header=no)
-++
-++ if test x"$smr_test_CPPFLAGS" = xset; then
-++ CPPFLAGS=$smr_save_CPPFLAGS
-++ else
-++ unset CPPFLAGS
-++ fi
-++
-++ popdef([smr_name])
-++ popdef([smr_header])
-++ popdef([smr_extra_flags])
-++ popdef([smr_safe_name])
-++])
-++
-++
-++AC_DEFUN(smr_CHECK_LIB,
-++[
-++ dnl Define convenient aliases for the arguments since there are so
-++ dnl many of them and I keep confusing myself whenever I have to edit
-++ dnl this macro.
-++ pushdef([smr_name], $1)
-++ pushdef([smr_libname], ifelse($2, , smr_name, $2))
-++ pushdef([smr_help_string], $3)
-++ pushdef([smr_function], $4)
-++ pushdef([smr_header], $5)
-++ pushdef([smr_extra_libs], $6)
-++ pushdef([smr_extra_flags], $7)
-++ pushdef([smr_prototype], $8)
-++ pushdef([smr_safe_name], smr_safe_translation(smr_name))
-++
-++ dnl Give the user (via "configure --help") an interface to specify
-++ dnl whether we should use the library or not, and possibly where we
-++ dnl should find it.
-++ smr_ARG_WITHLIB([smr_name], [smr_libname], [smr_help_string])
-++
-++ if test ! x"$with_[]smr_safe_name" = xno; then
-++
-++ # If we got this far, then the user didn't explicitly ask not to use
-++ # the library.
-++
-++ dnl If the caller of smr_CHECK_LIB specified a header file for this
-++ dnl library, then give the user (via "configure --help") an
-++ dnl interface to specify where this header file can be found (if it
-++ dnl isn't found by the compiler by default).
-++ ifelse(smr_header, , , [smr_ARG_WITHINCLUDES(smr_name, smr_header, smr_extra_flags)])
-++
-++ # We need only look for the library if the header has been found
-++ # (or no header is needed).
-++ if test [$]smr_have_[]smr_safe_name[]_header != no; then
-++
-++ AC_CHECK_LIB(smr_libname,
-++ smr_function,
-++ smr_have_[]smr_safe_name[]_library=yes,
-++ smr_have_[]smr_safe_name[]_library=no,
-++ [$]smr_safe_name[]_CFLAGS [smr_extra_flags] [$]smr_safe_name[]_LIBS [smr_extra_libs],
-++ [ifelse(smr_prototype, , , [[#]include <smr_header>])],
-++ smr_prototype)
-++ fi
-++
-++ if test x"[$]smr_have_[]smr_safe_name[]_library" = xyes; then
-++ AC_MSG_RESULT([using smr_name library])
-++ else
-++ smr_safe_name[]_LIBS=
-++ smr_safe_name[]_CFLAGS=
-++
-++ if test x"$with_[]smr_safe_name" = xmaybe; then
-++ AC_MSG_RESULT([not using smr_name library])
-++ else
-++ AC_MSG_WARN([requested smr_name library not found!])
-++ fi
-++ fi
-++ fi
-++
-++ popdef([smr_name])
-++ popdef([smr_libname])
-++ popdef([smr_help_string])
-++ popdef([smr_function])
-++ popdef([smr_header])
-++ popdef([smr_extra_libs])
-++ popdef([smr_extra_flags])
-++ popdef([smr_prototype])
-++ popdef([smr_safe_name])
-++])
---- xpdf-3.02.orig/debian/patches-obselete/05_gmem.dpatch
-+++ xpdf-3.02/debian/patches-obselete/05_gmem.dpatch
-@@ -0,0 +1,97 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 05_gmem.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Change all size parameters to size_t (why?)
-+
-+@DPATCH@
-+diff -urNad --exclude=CVS --exclude=.svn ./goo/gmem.c /tmp/dpep-work.0qyf6L/xpdf-3.01/goo/gmem.c
-+--- ./goo/gmem.c 2005-08-19 19:02:18.000000000 +1000
-++++ /tmp/dpep-work.0qyf6L/xpdf-3.01/goo/gmem.c 2005-08-19 19:05:34.000000000 +1000
-+@@ -54,9 +54,9 @@
-+
-+ #endif /* DEBUG_MEM */
-+
-+-void *gmalloc(int size) {
-++void *gmalloc(size_t size) {
-+ #ifdef DEBUG_MEM
-+- int size1;
-++ size_t size1;
-+ char *mem;
-+ GMemHdr *hdr;
-+ void *data;
-+@@ -96,11 +96,11 @@
-+ #endif
-+ }
-+
-+-void *grealloc(void *p, int size) {
-++void *grealloc(void *p, size_t size) {
-+ #ifdef DEBUG_MEM
-+ GMemHdr *hdr;
-+ void *q;
-+- int oldSize;
-++ size_t oldSize;
-+
-+ if (size == 0) {
-+ if (p)
-+@@ -137,8 +137,8 @@
-+ #endif
-+ }
-+
-+-void *gmallocn(int nObjs, int objSize) {
-+- int n;
-++void *gmallocn(int nObjs, size_t objSize) {
-++ size_t n;
-+
-+ n = nObjs * objSize;
-+ if (objSize == 0 || n / objSize != nObjs) {
-+@@ -148,8 +148,8 @@
-+ return gmalloc(n);
-+ }
-+
-+-void *greallocn(void *p, int nObjs, int objSize) {
-+- int n;
-++void *greallocn(void *p, int nObjs, size_t objSize) {
-++ size_t n;
-+
-+ n = nObjs * objSize;
-+ if (objSize == 0 || n / objSize != nObjs) {
-+@@ -161,7 +161,7 @@
-+
-+ void gfree(void *p) {
-+ #ifdef DEBUG_MEM
-+- int size;
-++ size_t size;
-+ GMemHdr *hdr;
-+ GMemHdr *prevHdr, *q;
-+ int lst;
-+diff -urNad --exclude=CVS --exclude=.svn ./goo/gmem.h /tmp/dpep-work.0qyf6L/xpdf-3.01/goo/gmem.h
-+--- ./goo/gmem.h 2005-08-19 19:02:18.000000000 +1000
-++++ /tmp/dpep-work.0qyf6L/xpdf-3.01/goo/gmem.h 2005-08-19 19:04:24.000000000 +1000
-+@@ -19,13 +19,13 @@
-+ * Same as malloc, but prints error message and exits if malloc()
-+ * returns NULL.
-+ */
-+-extern void *gmalloc(int size);
-++extern void *gmalloc(size_t size);
-+
-+ /*
-+ * Same as realloc, but prints error message and exits if realloc()
-+ * returns NULL. If <p> is NULL, calls malloc instead of realloc().
-+ */
-+-extern void *grealloc(void *p, int size);
-++extern void *grealloc(void *p, size_t size);
-+
-+ /*
-+ * These are similar to gmalloc and grealloc, but take an object count
-+@@ -33,8 +33,8 @@
-+ * bytes, but there is an additional error check that the total size
-+ * doesn't overflow an int.
-+ */
-+-extern void *gmallocn(int nObjs, int objSize);
-+-extern void *greallocn(void *p, int nObjs, int objSize);
-++extern void *gmallocn(int nObjs, size_t objSize);
-++extern void *greallocn(void *p, int nObjs, size_t objSize);
-+
-+ /*
-+ * Same as free, but checks for and ignores NULL pointers.
---- xpdf-3.02.orig/debian/patches-obselete/00list
-+++ xpdf-3.02/debian/patches-obselete/00list
-@@ -0,0 +1,10 @@
-+# Security fixes:
-+04_freetype-glyph.dpatch
-+05_gmem.dpatch
-+06_splashpath.dpatch
-+07_decrypt.dpatch
-+08_core_action.dpatch
-+23_security3.dpatch
-+# Fix for full screen handling (bug#247602)
-+31_fullscreen.patch
-+32_vscroll.patch
---- xpdf-3.02.orig/debian/patches-obselete/31_fullscreen.dpatch
-+++ xpdf-3.02/debian/patches-obselete/31_fullscreen.dpatch
-@@ -0,0 +1,45 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 31_fullscreen.dpatch by Junichi Uekawa <dancer@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: NETWM support, rediff of 247602 by Eugeniy Meshcheryakov <eugen@univ.kiev.ua>
-+
-+@DPATCH@
-+diff -urNad xpdf-3.01~/xpdf/XPDFViewer.cc xpdf-3.01/xpdf/XPDFViewer.cc
-+--- xpdf-3.01~/xpdf/XPDFViewer.cc 2006-07-12 23:58:06.000000000 +0900
-++++ xpdf-3.01/xpdf/XPDFViewer.cc 2006-07-12 23:59:42.000000000 +0900
-+@@ -1049,6 +1049,9 @@
-+ #endif
-+ int depth;
-+ Pixel fg, bg, arm;
-++ Atom wmStateAtom;
-++ Atom wmStateFullscreenAtom;
-++ XClientMessageEvent event;
-+
-+ // show the window
-+ XtPopup(win, XtGrabNone);
-+@@ -1240,6 +1243,24 @@
-+ about_height,
-+ fg, arm, depth),
-+ NULL);
-++ if (app->getFullScreen()) {
-++ XtUnmanageChild(toolBar);
-++ wmStateAtom = XInternAtom(display, "_NET_WM_STATE", False);
-++ wmStateFullscreenAtom = XInternAtom(display, "_NET_WM_STATE_FULLSCREEN", False);
-++ event.type = ClientMessage;
-++ event.serial = 0;
-++ event.send_event = True;
-++ event.window = XtWindow(win);
-++ event.message_type = wmStateAtom;
-++ event.format = 32;
-++ event.data.l[0] = 1; /* _NET_WM_STATE_ADD */
-++ event.data.l[1] = wmStateFullscreenAtom;
-++ event.data.l[2] = 0;
-++ event.data.l[3] = 0;
-++ event.data.l[4] = 0;
-++ XSendEvent(display, RootWindow(display, screenNum), False,
-++ SubstructureRedirectMask | SubstructureNotifyMask, (XEvent *)&event);
-++ }
-+ }
-+
-+ void XPDFViewer::closeWindow() {
---- xpdf-3.02.orig/debian/patches-obselete/08_core_action.dpatch
-+++ xpdf-3.02/debian/patches-obselete/08_core_action.dpatch
-@@ -0,0 +1,20 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 08_core_action.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: No description.
-+
-+@DPATCH@
-+diff -urNad --exclude=CVS --exclude=.svn ./xpdf/XPDFCore.cc /tmp/dpep-work.ujprcX/xpdf-3.01/xpdf/XPDFCore.cc
-+--- ./xpdf/XPDFCore.cc 2005-08-19 18:27:53.000000000 +1000
-++++ /tmp/dpep-work.ujprcX/xpdf-3.01/xpdf/XPDFCore.cc 2005-08-19 18:52:50.000000000 +1000
-+@@ -452,6 +452,9 @@
-+ GString *msg;
-+ int i;
-+
-++ if (action == 0)
-++ return;
-++
-+ switch (kind = action->getKind()) {
-+
-+ // GoTo / GoToR action
---- xpdf-3.02.orig/debian/patches-obselete/32_vscroll.dpatch
-+++ xpdf-3.02/debian/patches-obselete/32_vscroll.dpatch
-@@ -0,0 +1,98 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 32_vscroll.dpatch by Junichi Uekawa <dancer@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: remove scrollbar patch, updated from 247602 by Eugeniy Meshcheryakov <eugen@univ.kiev.ua>
-+
-+@DPATCH@
-+diff -urNad xpdf-3.01~/xpdf/XPDFCore.cc xpdf-3.01/xpdf/XPDFCore.cc
-+--- xpdf-3.01~/xpdf/XPDFCore.cc 2006-07-13 00:06:46.000000000 +0900
-++++ xpdf-3.01/xpdf/XPDFCore.cc 2006-07-13 00:08:17.000000000 +0900
-+@@ -881,39 +881,40 @@
-+ XtSetArg(args[n], XmNvisualPolicy, XmVARIABLE); ++n;
-+ scrolledWin = XmCreateScrolledWindow(parentWidget, "scroll", args, n);
-+ XtManageChild(scrolledWin);
-+- n = 0;
-+- XtSetArg(args[n], XmNorientation, XmHORIZONTAL); ++n;
-+- XtSetArg(args[n], XmNminimum, 0); ++n;
-+- XtSetArg(args[n], XmNmaximum, 1); ++n;
-+- XtSetArg(args[n], XmNsliderSize, 1); ++n;
-+- XtSetArg(args[n], XmNvalue, 0); ++n;
-+- XtSetArg(args[n], XmNincrement, 1); ++n;
-+- XtSetArg(args[n], XmNpageIncrement, 1); ++n;
-+- hScrollBar = XmCreateScrollBar(scrolledWin, "hScrollBar", args, n);
-+- XtManageChild(hScrollBar);
-+- XtAddCallback(hScrollBar, XmNvalueChangedCallback,
-+- &hScrollChangeCbk, (XtPointer)this);
-++ if (!fullScreen) {
-++ n = 0;
-++ XtSetArg(args[n], XmNorientation, XmHORIZONTAL); ++n;
-++ XtSetArg(args[n], XmNminimum, 0); ++n;
-++ XtSetArg(args[n], XmNmaximum, 1); ++n;
-++ XtSetArg(args[n], XmNsliderSize, 1); ++n;
-++ XtSetArg(args[n], XmNvalue, 0); ++n;
-++ XtSetArg(args[n], XmNincrement, 1); ++n;
-++ XtSetArg(args[n], XmNpageIncrement, 1); ++n;
-++ hScrollBar = XmCreateScrollBar(scrolledWin, "hScrollBar", args, n);
-++ XtManageChild(hScrollBar);
-++ XtAddCallback(hScrollBar, XmNvalueChangedCallback,
-++ &hScrollChangeCbk, (XtPointer)this);
-+ #ifndef DISABLE_SMOOTH_SCROLL
-+- XtAddCallback(hScrollBar, XmNdragCallback,
-+- &hScrollDragCbk, (XtPointer)this);
-++ XtAddCallback(hScrollBar, XmNdragCallback,
-++ &hScrollDragCbk, (XtPointer)this);
-+ #endif
-+- n = 0;
-+- XtSetArg(args[n], XmNorientation, XmVERTICAL); ++n;
-+- XtSetArg(args[n], XmNminimum, 0); ++n;
-+- XtSetArg(args[n], XmNmaximum, 1); ++n;
-+- XtSetArg(args[n], XmNsliderSize, 1); ++n;
-+- XtSetArg(args[n], XmNvalue, 0); ++n;
-+- XtSetArg(args[n], XmNincrement, 1); ++n;
-+- XtSetArg(args[n], XmNpageIncrement, 1); ++n;
-+- vScrollBar = XmCreateScrollBar(scrolledWin, "vScrollBar", args, n);
-+- XtManageChild(vScrollBar);
-+- XtAddCallback(vScrollBar, XmNvalueChangedCallback,
-+- &vScrollChangeCbk, (XtPointer)this);
-++ n = 0;
-++ XtSetArg(args[n], XmNorientation, XmVERTICAL); ++n;
-++ XtSetArg(args[n], XmNminimum, 0); ++n;
-++ XtSetArg(args[n], XmNmaximum, 1); ++n;
-++ XtSetArg(args[n], XmNsliderSize, 1); ++n;
-++ XtSetArg(args[n], XmNvalue, 0); ++n;
-++ XtSetArg(args[n], XmNincrement, 1); ++n;
-++ XtSetArg(args[n], XmNpageIncrement, 1); ++n;
-++ vScrollBar = XmCreateScrollBar(scrolledWin, "vScrollBar", args, n);
-++ XtManageChild(vScrollBar);
-++ XtAddCallback(vScrollBar, XmNvalueChangedCallback,
-++ &vScrollChangeCbk, (XtPointer)this);
-+ #ifndef DISABLE_SMOOTH_SCROLL
-+- XtAddCallback(vScrollBar, XmNdragCallback,
-+- &vScrollDragCbk, (XtPointer)this);
-++ XtAddCallback(vScrollBar, XmNdragCallback,
-++ &vScrollDragCbk, (XtPointer)this);
-+ #endif
-+-
-++ }
-+ // create the drawing area
-+ n = 0;
-+ XtSetArg(args[n], XmNshadowType, XmSHADOW_IN); ++n;
-+@@ -1459,7 +1460,7 @@
-+ XtSetArg(args[n], XmNsliderSize, drawAreaWidth); ++n;
-+ XtSetArg(args[n], XmNincrement, 16); ++n;
-+ XtSetArg(args[n], XmNpageIncrement, drawAreaWidth); ++n;
-+- XtSetValues(hScrollBar, args, n);
-++ if (hScrollBar) XtSetValues(hScrollBar, args, n);
-+
-+ if (pages->getLength() > 0) {
-+ if (continuousMode) {
-+@@ -1479,7 +1480,7 @@
-+ XtSetArg(args[n], XmNsliderSize, drawAreaHeight); ++n;
-+ XtSetArg(args[n], XmNincrement, 16); ++n;
-+ XtSetArg(args[n], XmNpageIncrement, drawAreaHeight); ++n;
-+- XtSetValues(vScrollBar, args, n);
-++ if (vScrollBar) XtSetValues(vScrollBar, args, n);
-+ }
-+
-+ void XPDFCore::setCursor(Cursor cursor) {
---- xpdf-3.02.orig/debian/patches-obselete/23_security3.dpatch
-+++ xpdf-3.02/debian/patches-obselete/23_security3.dpatch
-@@ -0,0 +1,45 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 23_security3.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Red Hat-supplied patch for CAN-2006-0301
-+
-+@DPATCH@
-+diff -urNad xpdf-3.01~/splash/Splash.cc xpdf-3.01/splash/Splash.cc
-+--- xpdf-3.01~/splash/Splash.cc 2006-02-01 20:41:14.000000000 +1100
-++++ xpdf-3.01/splash/Splash.cc 2006-02-01 20:41:41.000000000 +1100
-+@@ -931,6 +931,10 @@
-+ int alpha2, ialpha2;
-+ Guchar t;
-+
-++ if ( (unsigned) x >= (unsigned) bitmap->getWidth() ||
-++ (unsigned) y >= (unsigned) bitmap->getHeight())
-++ return;
-++
-+ if (noClip || state->clip->test(x, y)) {
-+ if (alpha != 1 || softMask || state->blendFunc) {
-+ blendFunc = state->blendFunc ? state->blendFunc : &blendNormal;
-+@@ -1198,6 +1202,11 @@
-+ updateModY(y);
-+ }
-+
-++ if ((unsigned) x0 >= (unsigned) bitmap->getWidth() ||
-++ (unsigned) x1 >= (unsigned) bitmap->getWidth() ||
-++ (unsigned) y >= (unsigned) bitmap->getHeight())
-++ return;
-++
-+ if (alpha != 1 || softMask || state->blendFunc) {
-+ blendFunc = state->blendFunc ? state->blendFunc : &blendNormal;
-+ if (softMask) {
-+@@ -1828,6 +1837,11 @@
-+ updateModY(y);
-+ }
-+
-++ if ((unsigned) x0 >= (unsigned) bitmap->getWidth() ||
-++ (unsigned) x1 >= (unsigned) bitmap->getWidth() ||
-++ (unsigned) y >= (unsigned) bitmap->getHeight())
-++ return;
-++
-+ switch (bitmap->mode) {
-+ case splashModeMono1:
-+ p = &bitmap->data[y * bitmap->rowSize + (x0 >> 3)];
---- xpdf-3.02.orig/debian/patches-obselete/06_splashpath.dpatch
-+++ xpdf-3.02/debian/patches-obselete/06_splashpath.dpatch
-@@ -0,0 +1,20 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 06_splashpath.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: No description.
-+
-+@DPATCH@
-+diff -urNad --exclude=CVS --exclude=.svn ./splash/Splash.cc /tmp/dpep-work.Z6NPbI/xpdf-3.01/splash/Splash.cc
-+--- ./splash/Splash.cc 2005-08-17 15:34:30.000000000 +1000
-++++ /tmp/dpep-work.Z6NPbI/xpdf-3.01/splash/Splash.cc 2005-08-19 18:36:11.000000000 +1000
-+@@ -820,6 +820,9 @@
-+ if (path->length == 0) {
-+ return splashErrEmptyPath;
-+ }
-++ if (path->length == 1) {
-++ return splashErrBogusPath;
-++ }
-+ xPath = new SplashXPath(path, state->flatness, gTrue);
-+ xPath->sort();
-+ scanner = new SplashXPathScanner(xPath, eo);
---- xpdf-3.02.orig/debian/xpdfrc
-+++ xpdf-3.02/debian/xpdfrc
-@@ -0,0 +1,96 @@
-+#========================================================================
-+#
-+# System-wide xpdfrc file
-+#
-+# The Xpdf tools look for a config file in two places:
-+# 1. ~/.xpdfrc
-+# 2. /etc/xpdf/xpdfrc
-+#
-+# Note that if ~/.xpdfrc exists, Xpdf will NOT read the system
-+# configuration file /etc/xpdf/xpdfrc. You may wish to include it
-+# from your ~/.xpdfrc using:
-+# include /etc/xpdf/xpdfrc
-+# and then add additional settings.
-+#
-+# For complete details on config file syntax and available options,
-+# please see the xpdfrc(5) man page.
-+#
-+# http://www.foolabs.com/xpdf/
-+#
-+#========================================================================
-+
-+#----- display fonts
-+
-+# These map the Base-14 fonts to the Type 1 fonts that ship with
-+# ghostscript (gsfonts package).
-+
-+displayFontT1 Times-Roman /usr/share/fonts/type1/gsfonts/n021003l.pfb
-+displayFontT1 Times-Italic /usr/share/fonts/type1/gsfonts/n021023l.pfb
-+displayFontT1 Times-Bold /usr/share/fonts/type1/gsfonts/n021004l.pfb
-+displayFontT1 Times-BoldItalic /usr/share/fonts/type1/gsfonts/n021024l.pfb
-+displayFontT1 Helvetica /usr/share/fonts/type1/gsfonts/n019003l.pfb
-+displayFontT1 Helvetica-Oblique /usr/share/fonts/type1/gsfonts/n019023l.pfb
-+displayFontT1 Helvetica-Bold /usr/share/fonts/type1/gsfonts/n019004l.pfb
-+displayFontT1 Helvetica-BoldOblique /usr/share/fonts/type1/gsfonts/n019024l.pfb
-+displayFontT1 Courier /usr/share/fonts/type1/gsfonts/n022003l.pfb
-+displayFontT1 Courier-Oblique /usr/share/fonts/type1/gsfonts/n022023l.pfb
-+displayFontT1 Courier-Bold /usr/share/fonts/type1/gsfonts/n022004l.pfb
-+displayFontT1 Courier-BoldOblique /usr/share/fonts/type1/gsfonts/n022024l.pfb
-+displayFontT1 Symbol /usr/share/fonts/type1/gsfonts/s050000l.pfb
-+displayFontT1 ZapfDingbats /usr/share/fonts/type1/gsfonts/d050000l.pfb
-+
-+# If you need to display PDF files that refer to non-embedded fonts,
-+# you should add one or more fontDir options to point to the
-+# directories containing the font files. Xpdf will only look at .pfa,
-+# .pfb, and .ttf files in those directories (other files will simply
-+# be ignored).
-+
-+#fontDir /usr/local/fonts/bakoma
-+
-+#----- PostScript output control
-+
-+# Set the default PostScript file or command.
-+
-+psFile "|lpr"
-+
-+# Set the default PostScript paper size -- this can be letter, legal,
-+# A4, or A3. You can also specify a paper size as width and height
-+# (in points). Xpdf uses the paper size in /etc/papersize by default.
-+
-+#psPaperSize letter
-+
-+#----- text output control
-+
-+# Choose a text encoding for copy-and-paste and for pdftotext output.
-+# The Latin1, ASCII7, and UTF-8 encodings are built into Xpdf. Other
-+# encodings are available in the language support packages.
-+
-+#textEncoding UTF-8
-+
-+# Choose the end-of-line convention for multi-line copy-and-past and
-+# for pdftotext output. The available options are unix, mac, and dos.
-+
-+#textEOL unix
-+
-+#----- misc settings
-+
-+# Enable Type 1 font rasterizing with t1lib. Default "yes".
-+
-+#enableT1lib no
-+
-+# Enable TrueType and Type 1 font rasterizing with FreeType. Default "yes".
-+
-+#enableFreeType no
-+
-+# Enable anti-aliasing of fonts. Default "yes".
-+
-+#antialias no
-+
-+# Set the command used to run a web browser when a URL hyperlink is
-+# clicked.
-+
-+urlCommand "sensible-browser '%s'"
-+
-+# Include the language configuration file list generated by update-xpdfrc
-+include /etc/xpdf/includes
-+
---- xpdf-3.02.orig/debian/xpdf-common.postinst
-+++ xpdf-3.02/debian/xpdf-common.postinst
-@@ -0,0 +1,20 @@
-+#!/bin/sh
-+set -e
-+
-+if [ "$1" = "configure" ]; then
-+ /usr/sbin/update-xpdfrc
-+fi
-+
-+# Remove old /etc/xpdfrc if present
-+rm -f /etc/xpdfrc
-+
-+# Move accidental /etc/xpdf/xpdf-* language files
-+# to their proper names (bug in 2.01-1)
-+for i in cyrillic greek hebrew latin2 thai turkish; do
-+ if [ -e /etc/xpdf/xpdf-$i ]; then
-+ mv /etc/xpdf/xpdf-$i /etc/xpdf/xpdfrc-$i
-+ fi
-+done
-+
-+#DEBHELPER#
-+
---- xpdf-3.02.orig/debian/control
-+++ xpdf-3.02/debian/control
-@@ -0,0 +1,75 @@
-+Source: xpdf
-+Section: text
-+Priority: optional
-+Maintainer: Hamish Moffatt <hamish@debian.org>
-+Standards-Version: 3.7.2
-+Build-Depends: libt1-dev (>= 5.0.2-3), libxext-dev, libxp-dev, libxt-dev, libxpm-dev, libx11-dev, lesstif2-dev | libmotif-dev, x-dev, debhelper (>= 4.2.21), libfreetype6-dev (>= 2.1.2-1), libpaper-dev | libpaperg-dev, pkg-config, dpatch, automake1.9, autoconf
-+Build-Conflicts: libttf-dev, libstroke0-dev, autoconf2.13
-+
-+Package: xpdf
-+Architecture: all
-+Depends: xpdf-reader, xpdf-utils, xpdf-common
-+Conflicts: xpdf-i (<= 0.90-8)
-+Replaces: xpdf-i (<= 0.90-8)
-+Description: Portable Document Format (PDF) suite
-+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
-+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
-+ .
-+ The tools include xpdf, a PDF viewer (in the package xpdf-reader),
-+ and PDF converters (including to/from PostScript) (in the package
-+ xpdf-utils).
-+ .
-+ This package is intended for compatibility with previous versions of
-+ this package only. You can safely remove it from your system.
-+
-+Package: xpdf-common
-+Architecture: all
-+Conflicts: xpdf (<= 0.93-6), xpdf-cyrillic, xpdf-greek, xpdf-hebrew, xpdf-latin2, xpdf-thai, xpdf-turkish
-+Replaces: xpdf-cyrillic, xpdf-greek, xpdf-hebrew, xpdf-latin2, xpdf-thai, xpdf-turkish
-+Suggests: xpdf-reader | xpdf-utils
-+Recommends: gsfonts-x11
-+Description: Portable Document Format (PDF) suite -- common files
-+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
-+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
-+ .
-+ This package contains common files needed by the other xpdf packages.
-+
-+Package: xpdf-reader
-+Architecture: any
-+Depends: ${shlibs:Depends}, gsfonts (>= 6.0-1), xpdf-common (>= ${source:Version}), xpdf-common (<< ${source:Version}.1~)
-+Provides: pdf-viewer, postscript-preview
-+Conflicts: xpdf-i (<= 0.90-8), xpdf (<= 0.93-6)
-+Suggests: www-browser
-+Description: Portable Document Format (PDF) suite -- viewer for X11
-+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
-+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
-+ .
-+ This package contains xpdf itself, a PDF viewer for X11.
-+ xpdf is designed to be small and efficient. xpdf supports encrypted
-+ PDF files. Standard X fonts, Truetype fonts and Type 1 fonts are supported.
-+ .
-+ This package also contains pdftoppm, a utility for converting
-+ PDF files to PBM, PGM and PPM formats.
-+ .
-+ See also the xpdf-utils package for conversion utilities and the
-+ other xpdf-* packages for additional language support.
-+
-+Package: xpdf-utils
-+Architecture: any
-+Depends: ${shlibs:Depends}, gsfonts (>= 6.0-1), xpdf-common (>= ${source:Version}), xpdf-common (<< ${source:Version}.1~)
-+Provides: pdf-viewer, postscript-preview, poppler-utils
-+Conflicts: xpdf-i (<= 0.90-8), xpdf (<= 0.93-6), poppler-utils
-+Replaces: poppler-utils
-+Suggests: pdftk
-+Description: Portable Document Format (PDF) suite -- utilities
-+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
-+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
-+ .
-+ This package contains pdftops (PDF to PostScript converter),
-+ pdfinfo (PDF document information extractor), pdfimages
-+ (PDF image extractor), pdftotext (PDF to text converter), and
-+ pdffonts (PDF font analyzer).
-+ .
-+ To view PDF files, see the xpdf-reader package. That package
-+ also contains pdftoppm (PDF to Portable Bitmap converter).
-+
---- xpdf-3.02.orig/debian/xpdf-reader.mime
-+++ xpdf-3.02/debian/xpdf-reader.mime
-@@ -0,0 +1,2 @@
-+application/pdf; /usr/bin/xpdf %s; test=test "$DISPLAY" != ""; description=Portable Document Format; nametemplate=%s.pdf; priority=6
-+application/x-pdf; /usr/bin/xpdf %s; test=test "$DISPLAY" != ""; description=Portable Document Format; nametemplate=%s.pdf; priority=6
---- xpdf-3.02.orig/debian/xpdf-common.dirs
-+++ xpdf-3.02/debian/xpdf-common.dirs
-@@ -0,0 +1,7 @@
-+usr/share/doc/xpdf-common
-+usr/share/doc/xpdf-common/examples
-+usr/share/man/man5
-+usr/share/man/man8
-+usr/share/xpdf
-+usr/sbin
-+etc/xpdf
---- xpdf-3.02.orig/debian/update-xpdfrc
-+++ xpdf-3.02/debian/update-xpdfrc
-@@ -0,0 +1,22 @@
-+#!/bin/sh
-+set -e
-+
-+TARGET=/etc/xpdf/includes
-+
-+# Generate /etc/xpdf/includes from /etc/xpdf/*
-+# This allows the xpdf-* language add-on packages
-+# to supply configuration file snippets.
-+
-+echo \# DO NOT EDIT THIS FILE DIRECTLY. >> $TARGET
-+echo \# This file was automatically generated by /usr/sbin/update-xpdfrc. > $TARGET
-+echo \# Instead, add or remove files in /etc/xpdf/ then run >> $TARGET
-+echo \# /usr/sbin/update-xpdfrc to regenerate this file. >> $TARGET
-+echo >> $TARGET
-+
-+find /etc/xpdf \
-+ -name xpdfrc-\* \
-+ -and -not -name \*.dpkg\* \
-+ -and -not -name \*~ \
-+ -and -not -name \*,v \
-+ -printf "include %p\n" >> $TARGET
-+
---- xpdf-3.02.orig/debian/xpdf-reader.files
-+++ xpdf-3.02/debian/xpdf-reader.files
-@@ -0,0 +1,4 @@
-+usr/share/man/man1/pdftoppm.1
-+usr/share/man/man1/xpdf.1
-+usr/bin/xpdf
-+usr/bin/pdftoppm
---- xpdf-3.02.orig/debian/update-xpdfrc.8
-+++ xpdf-3.02/debian/update-xpdfrc.8
-@@ -0,0 +1,46 @@
-+.\" Please adjust this date whenever revising the manpage.
-+.\"
-+.\" Some roff macros, for reference:
-+.\" .nh disable hyphenation
-+.\" .hy enable hyphenation
-+.\" .ad l left justify
-+.\" .ad b justify to both left and right margins
-+.\" .nf disable filling
-+.\" .fi enable filling
-+.\" .br insert line break
-+.\" .sp <n> insert n+1 empty lines
-+.\" for manpage-specific macros, see man(7)
-+.TH "update-xpdfrc" "8" "October 22, 2002" "Hamish Moffatt"
-+.SH "NAME"
-+update\-xpdfrc \- program to generate xpdf's configuration file
-+.SH "SYNOPSIS"
-+.B update\-xdfrc
-+.SH "DESCRIPTION"
-+.B \fBupdate\-xpdfrc\fR
-+is a program used to generate part of the \fIxpdfrc(5)\fR file used
-+by xpdf. The generated configuration file contains a list of the
-+configuration snippets provided by the xpdf-* language packages.
-+
-+You may edit the file \fI/etc/xpdfrc\fR to configure xpdf.
-+However, do not edit the generated file \fI/etc/xpdf/includes\fR.
-+It is updated whenever a language package is added or removed.
-+You must include the file /etc/xpdf/includes in your xpdfrc
-+to make use of this functionality.
-+
-+The language support packages (xpdf-japanese etc) provide additional
-+configuration files such as \fI/etc/xpdf/xpdfrc-japanese\fR, which will be
-+listed in the generated \fI/etc/xpdf/includes\fR.
-+
-+.SH "FILES"
-+.nf
-+.ta \w'/etc/xpdf/xpdfrc\-* 'u
-+/etc/xpdf/xpdfrc main configuration file
-+.br
-+/etc/xpdf/xpdf\-* additional configuration files
-+.SH "SEE ALSO"
-+.BR xpdfrc (5),
-+.BR xpdf (1).
-+.SH "AUTHOR"
-+This manual page and the update-xpdfrc utility was written by Hamish Moffatt <hamish@debian.org>
-+for the Debian GNU/Linux system (but may be used by others).
-+.\" vim:syn=nroff
---- xpdf-3.02.orig/debian/xpdf.postinst
-+++ xpdf-3.02/debian/xpdf.postinst
-@@ -0,0 +1,18 @@
-+#!/bin/sh
-+set -e
-+
-+# Attempt to remove the /usr/share/doc/xpdf directory.
-+# If it exists. dpkg won't replace it with the symbolic
-+# link.
-+
-+if [ "$1" = "configure" ]; then
-+
-+ if [ -d /usr/share/doc/xpdf ]; then
-+ rm -rf /usr/share/doc/xpdf
-+ ln -sf xpdf-common /usr/share/doc/xpdf
-+ fi
-+
-+fi
-+
-+#DEBHELPER#
-+
---- xpdf-3.02.orig/debian/xpdf-utils.dirs
-+++ xpdf-3.02/debian/xpdf-utils.dirs
-@@ -0,0 +1,3 @@
-+usr/share/doc
-+usr/share/man/man1
-+usr/bin
---- xpdf-3.02.orig/debian/compat
-+++ xpdf-3.02/debian/compat
-@@ -0,0 +1 @@
-+4
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-cyrillic
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-cyrillic
-@@ -0,0 +1,4 @@
-+#----- begin Cyrillic support package (2003-jun-28)
-+nameToUnicode /usr/share/xpdf/cyrillic/Bulgarian.nameToUnicode
-+unicodeMap KOI8-R /usr/share/xpdf/cyrillic/KOI8-R.unicodeMap
-+#----- end Cyrillic support package
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-hebrew
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-hebrew
-@@ -0,0 +1,4 @@
-+#----- begin Hebrew support package (2003-feb-16)
-+unicodeMap ISO-8859-8 /usr/share/xpdf/hebrew/ISO-8859-8.unicodeMap
-+unicodeMap Windows-1255 /usr/share/xpdf/hebrew/Windows-1255.unicodeMap
-+#----- end Hebrew support package
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-latin2
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-latin2
-@@ -0,0 +1,3 @@
-+#----- begin Latin2 support package (2002-oct-22)
-+unicodeMap Latin2 /usr/share/xpdf/latin2/Latin2.unicodeMap
-+#----- end Latin2 support package
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-turkish
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-turkish
-@@ -0,0 +1,3 @@
-+#----- begin Turkish support package (2002-apr-10)
-+unicodeMap ISO-8859-9 /usr/share/xpdf/turkish/ISO-8859-9.unicodeMap
-+#----- end Turkish support package
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-greek
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-greek
-@@ -0,0 +1,4 @@
-+#----- begin Greek support package (2002-feb-13)
-+nameToUnicode /usr/share/xpdf/greek/Greek.nameToUnicode
-+unicodeMap ISO-8859-7 /usr/share/xpdf/greek/ISO-8859-7.unicodeMap
-+#----- end Greek support package
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-arabic
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-arabic
-@@ -0,0 +1,3 @@
-+#----- begin Arabic support package (2003-feb-16)
-+unicodeMap ISO-8859-6 /usr/share/xpdf/arabic/ISO-8859-6.unicodeMap
-+#----- end Arabic support package
---- xpdf-3.02.orig/debian/lang/etc/xpdf/xpdfrc-thai
-+++ xpdf-3.02/debian/lang/etc/xpdf/xpdfrc-thai
-@@ -0,0 +1,4 @@
-+#----- begin Thai support package (2002-jan-16)
-+nameToUnicode /usr/share/xpdf/thai/Thai.nameToUnicode
-+unicodeMap TIS-620 /usr/share/xpdf/thai/TIS-620.unicodeMap
-+#----- end Thai support package
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/hebrew/Windows-1255.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/hebrew/Windows-1255.unicodeMap
-@@ -0,0 +1,66 @@
-+000a 000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 00a3 a0
-+00a5 00a9 a5
-+00ab 00b9 ab
-+00bb 00bf bb
-+00d7 aa
-+00f7 ba
-+010c 43
-+010d 63
-+0131 69
-+0141 4c
-+0142 6c
-+0152 4f45
-+0153 6f65
-+0160 53
-+0161 73
-+0178 59
-+017d 5a
-+017e 7a
-+0192 83
-+02c6 88
-+02da b0
-+02dc 98
-+05b0 05b9 c0
-+05bb 05c3 cb
-+05f0 05f4 d4
-+05d0 05ea e0
-+200e 200f fd
-+2013 2014 96
-+2018 2019 91
-+201a 82
-+201c 201d 93
-+201e 84
-+2020 86
-+2021 87
-+2022 95
-+2026 85
-+2030 89
-+2039 8b
-+203a 9b
-+2044 2f
-+20aa a4
-+20ac 80
-+2122 99
-+2212 2d
-+f6f9 4c
-+f6fa 4f45
-+f6fc b0
-+f6fd 53
-+f6fe 7e
-+f6ff 5a
-+f721 21
-+f724 24
-+f726 26
-+f730 f739 30
-+f73f 3f
-+f761 f77a 41
-+f7a1 f7a2 a1
-+f7bf bf
-+fb00 6666
-+fb01 6669
-+fb02 666c
-+fb03 666669
-+fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/hebrew/ISO-8859-8.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/hebrew/ISO-8859-8.unicodeMap
-@@ -0,0 +1,63 @@
-+000a 000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 00a0 20
-+00a2 00a9 a2
-+00ab 00b9 ab
-+00bb 00be bb
-+010c 43
-+010d 63
-+0131 69
-+0141 4c
-+0142 6c
-+0152 4f45
-+0153 6f65
-+0160 53
-+0161 73
-+0178 59
-+017d 5a
-+017e 7a
-+02c6 5e
-+02da b0
-+02dc 7e
-+05d0 05ea e0
-+05f0 e5e5
-+05f1 e5e9
-+05f2 e9e9
-+2013 ad
-+2014 2d2d
-+2018 60
-+2019 27
-+201a 2c
-+201c 22
-+201d 22
-+201e 2c2c
-+2022 b7
-+2026 2e2e2e
-+2039 3c
-+203a 3e
-+2044 2f
-+2122 544d
-+2212 2d
-+f6f9 4c
-+f6fa 4f45
-+f6fc b0
-+f6fd 53
-+f6fe 7e
-+f6ff 5a
-+f721 21
-+f724 24
-+f726 26
-+f730 f739 30
-+f73f 3f
-+f761 f77a 41
-+f7a1 f7a2 a1
-+f7bf bf
-+f7e0 f7f6 c0
-+f7f8 f7fe d8
-+f7ff 59
-+fb00 6666
-+fb01 6669
-+fb02 666c
-+fb03 666669
-+fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/arabic/ISO-8859-6.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/arabic/ISO-8859-6.unicodeMap
-@@ -0,0 +1,40 @@
-+000a 000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 00a0 20
-+00a4 a4
-+00ad ad
-+02c6 5e
-+02dc 7e
-+060c 060c ac
-+061b 061b bb
-+061f 061f bf
-+0621 063a c1
-+0640 0652 e0
-+2013 2013 ad
-+2014 2014 2d2d
-+2018 2018 60
-+2019 2019 27
-+201a 201a 2c
-+201c 201c 22
-+201d 201d 22
-+201e 201e 2c2c
-+2026 2026 2e2e2e
-+2039 2039 3c
-+203a 203a 3e
-+2044 2044 2f
-+2122 2122 544d
-+2212 2212 2d
-+f6f9 f6f9 4c
-+f6fe f6fe 7e
-+f721 f721 21
-+f724 f724 24
-+f726 f726 26
-+f730 f739 30
-+f73f f73f 3f
-+f761 f77a 41
-+fb00 fb00 6666
-+fb01 fb01 6669
-+fb02 fb02 666c
-+fb03 fb03 666669
-+fb04 fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/thai/Thai.nameToUnicode
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/thai/Thai.nameToUnicode
-@@ -0,0 +1,116 @@
-+0e01 ThaiCharacterKoKai
-+0e02 ThaiCharacterKhoKhai
-+0e03 ThaiCharacterKhoKhuat
-+0e04 ThaiCharacterKhoKhwai
-+0e05 ThaiCharacterKhoKhon
-+0e06 ThaiCharacterKhoRakhang
-+0e07 ThaiCharacterNgoNgu
-+0e08 ThaiCharacterChoChan
-+0e09 ThaiCharacterChoChing
-+0e0a ThaiCharacterChoChang
-+0e0b ThaiCharacterSoSo
-+0e0c ThaiCharacterChoChoe
-+0e0d ThaiCharacterYoYing
-+0e0e ThaiCharacterDoChada
-+0e0f ThaiCharacterToPatak
-+0e10 ThaiCharacterThoThan
-+0e11 ThaiCharacterThoNangmontho
-+0e12 ThaiCharacterThoPhuthao
-+0e13 ThaiCharacterNoNen
-+0e14 ThaiCharacterDoDek
-+0e15 ThaiCharacterToTao
-+0e16 ThaiCharacterThoThung
-+0e17 ThaiCharacterThoThahan
-+0e18 ThaiCharacterThoThong
-+0e19 ThaiCharacterNoNu
-+0e1a ThaiCharacterBoBaimai
-+0e1b ThaiCharacterPoPla
-+0e1c ThaiCharacterPhoPhung
-+0e1d ThaiCharacterFoFa
-+0e1e ThaiCharacterPhoPhan
-+0e1f ThaiCharacterFoFan
-+0e20 ThaiCharacterPhoSamphao
-+0e21 ThaiCharacterMoMa
-+0e22 ThaiCharacterYoYak
-+0e23 ThaiCharacterRoRua
-+0e24 ThaiCharacterRu
-+0e25 ThaiCharacterLoLing
-+0e26 ThaiCharacterLu
-+0e27 ThaiCharacterWoWaen
-+0e28 ThaiCharacterSoSala
-+0e29 ThaiCharacterSoRusi
-+0e2a ThaiCharacterSoSua
-+0e2b ThaiCharacterHoHip
-+0e2c ThaiCharacterLoChula
-+0e2d ThaiCharacterOAng
-+0e2e ThaiCharacterHoNokhuk
-+0e2f ThaiCharacterPaiyannoi
-+0e30 ThaiCharacterSaraA
-+0e31 ThaiCharacterMaiHan-akat
-+0e32 ThaiCharacterSaraAa
-+0e33 ThaiCharacterSaraAm
-+0e34 ThaiCharacterSaraI
-+0e35 ThaiCharacterSaraIi
-+0e36 ThaiCharacterSaraUe
-+0e37 ThaiCharacterSaraUee
-+0e38 ThaiCharacterSaraU
-+0e39 ThaiCharacterSaraUu
-+0e3a ThaiCharacterPhinthu
-+0e3f ThaiCurrencySymbolBaht
-+0e40 ThaiCharacterSaraE
-+0e41 ThaiCharacterSaraAe
-+0e42 ThaiCharacterSaraO
-+0e43 ThaiCharacterSaraAiMaimuan
-+0e44 ThaiCharacterSaraAiMaimalai
-+0e45 ThaiCharacterLakkhangyao
-+0e46 ThaiCharacterMaiyamok
-+0e47 ThaiCharacterMaitaikhu
-+0e48 ThaiCharacterMaiEk
-+0e49 ThaiCharacterMaiTho
-+0e4a ThaiCharacterMaiTri
-+0e4b ThaiCharacterMaiChattawa
-+0e4c ThaiCharacterThanthakhat
-+0e4d ThaiCharacterNikhahit
-+0e4e ThaiCharacterYamakkan
-+0e4f ThaiCharacterFongman
-+0e50 ThaiDigitZero
-+0e51 ThaiDigitOne
-+0e52 ThaiDigitTwo
-+0e53 ThaiDigitThree
-+0e54 ThaiDigitFour
-+0e55 ThaiDigitFive
-+0e56 ThaiDigitSix
-+0e57 ThaiDigitSeven
-+0e58 ThaiDigitEight
-+0e59 ThaiDigitNine
-+0e5a ThaiCharacterAngkhankhu
-+0e5b ThaiCharacterKhomut
-+0e4c ThaiCharacterThanthakhatLowLeft
-+0e49 ThaiCharacterMaiThoLeft
-+0e38 ThaiCharacterSaraULow
-+0e31 ThaiCharacterMaiHanAkat
-+0e4b ThaiCharacterMaiChattawaLeft
-+0e37 ThaiCharacterSaraUeeLeft
-+0e4a ThaiCharacterMaiTriLeft
-+0e3a ThaiCharacterPhinthuLow
-+0e48 ThaiCharacterMaiEkLeft
-+0e49 ThaiCharacterMaiThoLow
-+0e0d ThaiCharacterYoYingDescless
-+0e4b ThaiCharacterMaiChattawaLow
-+0e4a ThaiCharacterMaiTriLow
-+0e48 ThaiCharacterMaiEkLow
-+0e31 ThaiCharacterMaiHanAkatLeft
-+0e4c ThaiCharacterThanthakhatLeft
-+0e34 ThaiCharacterSaraILeft
-+0e4d ThaiCharacterNikhahitLeft
-+0e3f ThaiCharacterBaht
-+0e49 ThaiCharacterMaiThoLowLeft
-+0e4b ThaiCharacterMaiChattawaLowLeft
-+0e4c ThaiCharacterThanthakhatLow
-+0e39 ThaiCharacterSaraUuLow
-+0e4a ThaiCharacterMaiTriLowLeft
-+0e35 ThaiCharacterSaraIiLeft
-+0e48 ThaiCharacterMaiEkLowLeft
-+0e47 ThaiCharacterMaitaikhuLeft
-+0e10 ThaiCharacterThoThanDescless
-+0e36 ThaiCharacterSaraUeLeft
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/thai/TIS-620.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/thai/TIS-620.unicodeMap
-@@ -0,0 +1,47 @@
-+000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 20
-+0131 69
-+0141 4c
-+0142 6c
-+0152 4f45
-+0153 6f65
-+0160 53
-+0161 73
-+0178 59
-+017d 5a
-+017e 7a
-+02c6 5e
-+02dc 7e
-+0e01 0e3a a1
-+0e3f 0e5b df
-+2013 2d2d
-+2014 2d2d
-+2018 60
-+2019 27
-+201a 2c
-+201c 22
-+201d 22
-+201e 2c2c
-+2022 2a
-+2026 2e2e2e
-+2039 3c
-+203a 3e
-+2044 2f
-+2122 544d
-+2212 2d
-+f700 b0
-+f701 f704 d4
-+f705 f709 e8
-+f70a f70e e8
-+f70f ad
-+f710 d1
-+f711 ed
-+f712 f717 e7
-+f718 f71a d8
-+fb00 6666
-+fb01 6669
-+fb02 666c
-+fb03 666669
-+fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/greek/ISO-8859-7.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/greek/ISO-8859-7.unicodeMap
-@@ -0,0 +1,63 @@
-+000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 a0
-+00a3 a3
-+00a6 00a9 a6
-+00ab 00ad ab
-+00b0 00b4 b0
-+00b5 ec
-+00b7 b7
-+00bb bb
-+00bd bd
-+02c6 5e
-+02da b0
-+02dc 7e
-+0374 b4
-+037e 3b
-+0384 038a b4
-+038c bc
-+038e 03a1 be
-+03a3 03ce d3
-+03d0 e2
-+03d1 e8
-+03d2 d5
-+03d3 be
-+03d4 db
-+03d5 f6
-+03d6 f0
-+03d7 eae1e9
-+03da d3d4
-+03db f3f4
-+03f0 ea
-+03f1 f1
-+03f2 63
-+03f3 6a
-+03f4 c8
-+03f5 e5
-+2013 ad
-+2014 af
-+2018 60
-+2019 a2
-+201a 2c
-+201b a1
-+201c 22
-+201d 22
-+201e 2c2c
-+2022 b7
-+2026 2e2e2e
-+2039 3c
-+203a 3e
-+2044 2f
-+20ac c5f5f1fe
-+20af c4f1f7
-+2122 544d
-+2126 d9
-+2206 c4
-+2212 2d
-+2219 b7
-+fb00 6666
-+fb01 6669
-+fb02 666c
-+fb03 666669
-+fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/greek/Greek.nameToUnicode
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/greek/Greek.nameToUnicode
-@@ -0,0 +1,11 @@
-+0396 Dzeta
-+039e Ksi
-+039f Omikron
-+03a7 Khi
-+03b2 betatwo
-+03b6 dzeta
-+03be ksi
-+03bf omikron
-+03c3 sigmafinal
-+03c6 phitwo
-+03c7 khi
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/cyrillic/KOI8-R.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/cyrillic/KOI8-R.unicodeMap
-@@ -0,0 +1,100 @@
-+000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 9a
-+00a9 bf
-+00b0 9c
-+00b2 9d
-+00b7 9e
-+00f7 9f
-+02c6 5e
-+02da 9c
-+02dc 7e
-+0401 b3
-+0410 0411 e1
-+0412 f7
-+0413 e7
-+0414 0415 e4
-+0416 f6
-+0417 fa
-+0418 041f e9
-+0420 0423 f2
-+0424 e6
-+0425 e8
-+0426 e3
-+0427 fe
-+0428 fb
-+0429 fd
-+042a ff
-+042b f9
-+042c f8
-+042d fc
-+042e e0
-+042f f1
-+0430 0431 c1
-+0432 d7
-+0433 c7
-+0434 0435 c4
-+0436 d6
-+0437 da
-+0438 c9
-+0439 043f ca
-+0440 0443 d2
-+0444 c6
-+0445 c8
-+0446 c3
-+0447 de
-+0448 db
-+0449 dd
-+044a df
-+044b d9
-+044c d8
-+044d dc
-+044e c0
-+044f d1
-+0451 a3
-+2013 2d
-+2014 2d2d
-+2018 60
-+2019 27
-+201a 2c
-+201c 22
-+201d 22
-+201e 2c2c
-+2022 9e
-+2026 2e2e2e
-+2039 3c
-+203a 3e
-+2044 2f
-+2122 544d
-+2212 2d
-+2219 221a 95
-+2248 97
-+2264 2265 98
-+2320 93
-+2321 9b
-+2500 80
-+2502 81
-+250c 82
-+2510 83
-+2514 84
-+2518 85
-+251c 86
-+2524 87
-+252c 88
-+2534 89
-+253c 8a
-+2550 2552 a0
-+2553 2561 a4
-+2562 256c b4
-+2580 8b
-+2584 8c
-+2588 8d
-+258c 8e
-+2590 2593 8f
-+25a0 94
-+fb00 6666
-+fb01 6669
-+fb02 666c
-+fb03 666669
-+fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/cyrillic/Bulgarian.nameToUnicode
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/cyrillic/Bulgarian.nameToUnicode
-@@ -0,0 +1,58 @@
-+0410 As
-+0411 Buki
-+0412 Wjedi
-+0413 Glagol
-+0414 Dobro
-+0415 Jest
-+0416 Schiwete
-+0417 Selmja
-+0418 Ische
-+0419 Ischebreve
-+041a Kako
-+041b Ljudi
-+041c Muislete
-+041d Nasche
-+041e On
-+041f Pakoj
-+0420 Rzui
-+0421 Slovo
-+0422 Twerdo
-+0423 Uk
-+0424 Fert
-+0425 Cherr
-+0426 Zui
-+0427 Tscherw
-+0428 Scha
-+0429 Schtscha
-+042a Jerr
-+042e Ju
-+042f Ja
-+0430 as
-+0431 buki
-+0432 wjedi
-+0433 glagol
-+0434 dobro
-+0435 jest
-+0436 schiwete
-+0437 selmja
-+0438 ische
-+0439 ischebreve
-+043a kako
-+043b ljudi
-+043c muislete
-+043d nasche
-+043e on
-+043f pakoj
-+0440 rzui
-+0441 slovo
-+0442 twerdo
-+0443 uk
-+0444 fert
-+0445 cherr
-+0446 zui
-+0447 tscherw
-+0448 scha
-+0449 schtscha
-+044a jerr
-+044e ju
-+044f ja
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/latin2/Latin2.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/latin2/Latin2.unicodeMap
-@@ -0,0 +1,134 @@
-+000a 000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 00a0 20
-+00a4 a4
-+00a7 00a8 a7
-+00ad ad
-+00b0 b0
-+00b4 b4
-+00b8 b8
-+00c1 00c2 c1
-+00c4 c4
-+00c7 c7
-+00c9 c9
-+00cb cb
-+00cd 00ce cd
-+00d3 00d4 d3
-+00d6 00d7 d6
-+00da da
-+00dc 00dd dc
-+00df df
-+00e1 00e2 e1
-+00e4 e4
-+00e7 e7
-+00e9 e9
-+00eb eb
-+00ed 00ee ed
-+00f3 00f4 f3
-+00f6 00f7 f6
-+00fa fa
-+00fc 00fd fc
-+0102 c3
-+0103 e3
-+0104 a1
-+0105 b1
-+0106 c6
-+0107 e6
-+010c c8
-+010d e8
-+010e cf
-+010f ef
-+0110 d0
-+0111 f0
-+0118 ca
-+0119 ea
-+011a cc
-+011b ec
-+0131 69
-+0132 494a
-+0133 696a
-+0139 c5
-+013a e5
-+013d a5
-+013e b5
-+0141 a3
-+0142 b3
-+0143 d1
-+0144 f1
-+0147 d2
-+0148 f2
-+0150 d5
-+0151 f5
-+0152 4f45
-+0153 6f65
-+0154 c0
-+0155 e0
-+0158 d8
-+0159 f8
-+015a a6
-+015b b6
-+015e aa
-+015f ba
-+0160 a9
-+0161 b9
-+0162 de
-+0163 fe
-+0164 ab
-+0165 bb
-+016e d9
-+016f f9
-+0170 db
-+0171 fb
-+0178 59
-+0179 ac
-+017a bc
-+017b af
-+017c bf
-+017d ae
-+017e be
-+02c6 5e
-+02c7 b7
-+02d8 a2
-+02d9 ff
-+02da b0
-+02db b2
-+02dc 7e
-+02dd bd
-+2013 2013 ad
-+2014 2014 2d2d
-+2018 2018 60
-+2019 2019 27
-+201a 201a 2c
-+201c 201c 22
-+201d 201d 22
-+201e 201e 2c2c
-+2022 2022 b7
-+2026 2026 2e2e2e
-+2039 2039 3c
-+203a 203a 3e
-+2044 2044 2f
-+2122 2122 544d
-+2212 2212 2d
-+f6f9 f6f9 4c
-+f6fa f6fa 4f45
-+f6fc f6fc b0
-+f6fd f6fd 53
-+f6fe f6fe 7e
-+f6ff f6ff 5a
-+f721 f721 21
-+f724 f724 24
-+f726 f726 26
-+f730 f739 30
-+f73f f73f 3f
-+f761 f77a 41
-+f7a1 f7a2 a1
-+f7bf f7bf bf
-+f7e0 f7f6 c0
-+f7f8 f7fe d8
-+f7ff f7ff 59
-+fb00 fb00 6666
-+fb01 fb01 6669
-+fb02 fb02 666c
-+fb03 fb03 666669
-+fb04 fb04 66666c
---- xpdf-3.02.orig/debian/lang/usr/share/xpdf/turkish/ISO-8859-9.unicodeMap
-+++ xpdf-3.02/debian/lang/usr/share/xpdf/turkish/ISO-8859-9.unicodeMap
-@@ -0,0 +1,67 @@
-+000a 0a
-+000c 000d 0c
-+0020 007e 20
-+00a0 20
-+00a1 00ac a1
-+00ae 00cf ae
-+00d1 00dc d1
-+00df 00ef df
-+00f1 00fc f1
-+00ff ff
-+010c 43
-+010d 63
-+011e d0
-+011f f0
-+0130 dd
-+0131 fd
-+0141 4c
-+0142 6c
-+0152 4f45
-+0153 6f65
-+015e de
-+015f fe
-+0160 53
-+0161 73
-+0178 59
-+017d 5a
-+017e 7a
-+02c6 5e
-+02da b0
-+02dc 7e
-+2013 ad
-+2014 2d2d
-+2018 60
-+2019 27
-+201a 2c
-+201c 22
-+201d 22
-+201e 2c2c
-+2022 b7
-+2026 2e2e2e
-+2039 3c
-+203a 3e
-+2044 2f
-+2122 544d
-+2212 2d
-+f6f9 4c
-+f6fa 4f45
-+f6fc b0
-+f6fd 53
-+f6fe 7e
-+f6ff 5a
-+f721 21
-+f724 24
-+f726 26
-+f730 f739 30
-+f73f 3f
-+f761 f77a 41
-+f7a1 f7a2 a1
-+f7bf bf
-+f7e0 f7f6 c0
-+f7f8 f7fe d8
-+f7ff 59
-+fb00 6666
-+fb01 6669
-+fb02 666c
-+fb03 666669
-+fb04 66666c
---- xpdf-3.02.orig/debian/changelog
-+++ xpdf-3.02/debian/changelog
-@@ -0,0 +1,801 @@
-+xpdf (3.02-1.3) unstable; urgency=high
-+
-+ * Non-maintainer upload by testing security team.
-+ * Included fix-CVE-2007-5393_2007-5392_2007-4352.dpatch to address the
-+ following security issues (Closes: #450629)
-+ - CVE-2007-5393 buffer overflow in the CCITTFaxStream::lookChar leading
-+ to arbitrary code execution via a crafted pdf file.
-+ - CVE-2007-5392 integer overflow in the DCTStream::reset resulting in a
-+ heap based buffer overflow allows code execution.
-+ - CVE-2007-4352 array index error in DCTStream::readProgressiveDataUnit
-+ leads to memory corruption and possibly arbitrary code execution.
-+
-+ -- Nico Golde <nion@debian.org> Fri, 09 Nov 2007 09:22:19 +0100
-+
-+xpdf (3.02-1.2) unstable; urgency=high
-+
-+ * Non-maintainer upload by testing security team.
-+ * Removed post-3.5.7-kdegraphics-CVE-2007-3387.diff.dpatch and
-+ created fix-CVE-2007-3387_CVE-2007-5049.dpatch to have a fix
-+ for CVE-2007-3387 and a buffer overflow in GetNextLine()
-+ (CVE-2007-5049) since they are related (Closes: #443906).
-+
-+ -- Nico Golde <nion@debian.org> Thu, 27 Sep 2007 12:05:46 +0200
-+
-+xpdf (3.02-1.1) unstable; urgency=high
-+
-+ * Non-maintainer upload with permission of the maintainer
-+ * Fix integer overflow in the StreamPredictor::StreamPredictor
-+ function by adding post-3.5.7-kdegraphics-CVE-2007-3387.diff.dpatch
-+ (Closes: #435462) Fixes: CVE-2007-3387
-+
-+ -- Steffen Joeris <white@debian.org> Tue, 07 Aug 2007 14:00:34 +1000
-+
-+xpdf (3.02-1) unstable; urgency=low
-+
-+ * New upstream release (closes: #413611)
-+ * Adds PDF 1.6 and 1.7 support (closes: #320509, #329372)
-+ * Fixes segfault on Postscript conversion (in xpdf or pdftops)
-+ with libc6 2.5-1, though probably also fixed in libc6 already
-+ (closes: #419618)
-+ * Improved rendering of some PDFs (closes: #409759, #242294, #280767)
-+ * Improved full screen handling (obseletes patches incorporated
-+ in 3.01-9; 31_fullscreen.dpatch, 32_vscroll.dpatch)
-+ * Adds new options to the xpdfrc(5) (closes: #384024)
-+ * Fixed handling of some broken PDFs (closes: #330711)
-+ * On-the-fly switch to full screen is possible (closes: #281479)
-+ * Adds configurable keybindings
-+
-+ * Patched Latin2 unicode map to include IJ sequences; thanks to
-+ Petr Peringer for the patch (closes: #402757)
-+ * Fix reference to /etc/xpdf/xpdf-* -> /etc/xpdf/xpdfrc-* in
-+ update-xpdfrc(8) (closes: #402852)
-+ * Added -title support to zxpdf (closes: #338096)
-+ * Updated debian/copyright (closes: #407888)
-+ * Modified xpdfrc(5) to note that options are case sensitive (closes:
-+ #417979)
-+ * Fix package relationships so that package is bin-NMU safe
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 25 Apr 2007 02:42:16 +1000
-+
-+xpdf (3.01-9) unstable; urgency=low
-+
-+ * Incorporate patches from Eugeniy Meshcheryakov and Junichi Uekawa to
-+ fix fullscreen mode when using a NETWM-compliant window manager
-+ (closes: #247602, #362496, #367845, #168970, #192397, #165047)
-+ (31_fullscreen.dpatch, 32_vscroll.dpatch)
-+ * Nasty, nasty patch to workaround FTBFS due to incompatility
-+ between latest g++-4.1 and lesstif - bug#377230 (40_lesstif_copy.dpatch,
-+ 41_lesstif_cpp.dpatch)
-+ * Upgrade to standards-revision 3.7.2
-+ * Made xpdf-common recommend gsfonts-x11 (closes: #329804)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 15 Jul 2006 16:01:16 +1000
-+
-+xpdf (3.01-8) unstable; urgency=low
-+
-+ * Add patch 05_freetype-2.2.dpatch: make splash/SplashFTFont.cc
-+ compatible with FreeType 2.2 (ie don't use FreeType internals
-+ directly any more). Fixes unreported FTBFS.
-+ * Enable additional compile-time options: --enable-opi,
-+ --enable-multithreaded, --enable-wordlist
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 27 May 2006 00:58:12 +1000
-+
-+xpdf (3.01-7) unstable; urgency=high
-+
-+ * SECURITY UPDATE: incorporated upstream patch revision 3.01pl2
-+ (obseletes several patches collected from Red Hat, Ubuntu etc).
-+ * References: CAN-2005-3191/3192/3193/3624/3625/2626/2627/3628,
-+ CAN-2006-0301 (all included, some improved by this patch)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Thu, 16 Feb 2006 00:22:13 +1100
-+
-+xpdf (3.01-6) unstable; urgency=high
-+
-+ * SECURITY UPDATE: fixed buffer overflow in splash image handling
-+ (Splash/splash.cc) using patch supplied by Red Hat:
-+ https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=179046
-+ (closes: #350785, #350783)
-+ * References: CVE-2006-0301
-+ * My first upload from the side of the road on borrowed wifi
-+ in a foreign country...
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 1 Feb 2006 22:42:42 +1300
-+
-+xpdf (3.01-5) unstable; urgency=low
-+
-+ * Changed build-dep on libpaperg-dev to libpaper-dev (closes: #346397)
-+ * Made xpdf-utils conflicts/replaces/provides poppler-utils
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 8 Jan 2006 13:25:57 +1100
-+
-+xpdf (3.01-4) unstable; urgency=high
-+
-+ * SECURITY UPDATE: added additional precautionary checks
-+ supplied by Martin Pitt, Chris Evans and Ludwid Nussel
-+ * Changed build-dep on xlibs-dev to individual lib*-dev packages
-+
-+ -- Hamish Moffatt <hamish@debian.org> Fri, 6 Jan 2006 18:55:24 +1100
-+
-+xpdf (3.01-3) unstable; urgency=high
-+
-+ * SECURITY UPDATE: fix several potential buffer overflows:
-+ DCTStream Baseline Heap Overflow, DCTStream Progressive Heap Overflow,
-+ StreamPredictor Heap Overflow, JPX Stream Reader Heap Overflow
-+ (closes: #322462) (21_security.dpatch)
-+ * References: CAN-2005-3193, CAN-2005-3191
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 6 Dec 2005 23:05:10 +0000
-+
-+xpdf (3.01-2) unstable; urgency=low
-+
-+ * Incorporate upstream patch to fix resize issues with some
-+ window managers (20_resize.dpatch)
-+ (closes: #325112, #326888, #327572, #329112, #324172)
-+ * Fix incorrect escape sequences in xpdf.1 (closes: #320631)
-+ Thanks to Erik Schanze for the patch. (01_manpage.dpatch)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 10 Oct 2005 23:34:46 +1000
-+
-+xpdf (3.01-1) unstable; urgency=low
-+
-+ * New upstream release (closes: #323715)
-+ * Added initial transparency support (closes: #181958, #284504, #243533)
-+ * Improved performance of pattern handling (closes: #220628)
-+ * Rasterizer optimisations (closes: #229714, #283549)
-+ * Handle negative font sizes (closes: #267790, #269495)
-+ * Fixed bugs in the Type 1C font parser
-+ (closes: #280291, #308547, #316895, #322906, #317708)
-+ and TrueType (closes: #270086)
-+ * Fix borders with some files (closes: #284307)
-+ * Fixed copy/paste losing text (closes: #310042)
-+ * Window is sized to fit the document page (closes: #249039, #254843)
-+ * Background window is now gray to show page size (closes: #295696)
-+ * Directories are not scanned until open dialog used (closes: #298742)
-+ * Fixed other crashes (closes: #251057, #264298, #303710),
-+ PostScript output bugs (closes: #295685)
-+
-+ * Added build-conflicts with libstroke0-dev, as it supplies
-+ autoconf macros that conflict with xpdf's own
-+ * Added category and generic name entries to the Desktop file
-+ (closes: #302546); thanks to Alejandro Exojo for the patch
-+ * Register for MIME type application/x-pdf in addition to
-+ application/pdf (closes: #319057)
-+ * Updated to standards-revision 3.6.2
-+
-+ -- Hamish Moffatt <hamish@debian.org> Fri, 19 Aug 2005 22:48:35 +1000
-+
-+xpdf (3.00-15) unstable; urgency=low
-+
-+ * SECURITY UPDATE: fix potiential DoS attack through hand-crafted
-+ PDFs with corrupt loca tables (closes: #322462)
-+ * References: CAN-2005-2097
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 17 Aug 2005 07:55:17 +1000
-+
-+xpdf (3.00-14) unstable; urgency=low
-+
-+ * Use dpatch for patch management; added build-dep on dpatch
-+ * Fix FTBFS with gcc-4.0 (closes: #316836);
-+ thanks to Daniel Schepler for the patch
-+ * xpdf-utils now suggests: pdftk (closes: #306624)
-+ * Fix page parameter handling in zxpdf (closes: #315458)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 17 Jul 2005 01:07:20 +1000
-+
-+xpdf (3.00-13) unstable; urgency=low
-+
-+ * SECURITY UPDATE: fix buffer overflow for PDF documents with an /Encrypt
-+ /Length value > 16 (xpdf/XRef.cc) (upstream xpdf-3.00pl3.patch)
-+ * References: CAN-2005-0064 (in addition to previous changes)
-+
-+ * Added desktop entry to xpdf-reader (adapted from Ubuntu with thanks)
-+ (closes: #280812)
-+ * Updated build-dependency on debhelper to 4.2.21 to get dh_desktop
-+
-+ * Fixed FTBFS on amd64 with gcc-4.0 resulting from cast from void*
-+ to int in xpdf/XPDFViewer.cc (closes: #288727)
-+ Thanks to Andreas Jochens for the patch.
-+
-+ * Added note to header of source files modified to remove PDF
-+ permission checking as requested by upstream in bug#298584
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 22 Mar 2005 23:33:52 +1100
-+
-+xpdf (3.00-12) unstable; urgency=high
-+
-+ * SECURITY UPDATE: Fixed buffer overflow that could overwrite the stack
-+ and hence cause the execution of arbitrary code as reported by
-+ iDEFENSE (xpdf/Decrypt.cc)
-+ * References: CAN-2005-0064
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 19 Jan 2005 23:48:56 +1100
-+
-+xpdf (3.00-11) unstable; urgency=high
-+
-+ * SECURITY UPDATE: fix potential buffer overflow
-+ Applied patch to colour map handling in xpdf/Gfx.cc (closes: #286742)
-+ * References: CAN-2004-1125
-+
-+ -- Hamish Moffatt <hamish@debian.org> Thu, 23 Dec 2004 08:16:24 +1100
-+
-+xpdf (3.00-10) unstable; urgency=high
-+
-+ * SECURITY UPDATE: fix potential buffer overflow
-+ * goo/gmem.[ch]: change declarations of gmalloc and grealloc to use size_t
-+ instead of int; int truncated sizes to 32 bits, which made xpdf still
-+ vulnerable to integer (and eventually buffer) overflow attacks on 64 bit
-+ platforms like amd64.
-+ * Thanks to Marcus Meissner <meissner@suse.de> for providing the patch
-+ and Martin Pitt <mpitt@debian.org> for providing the changes for
-+ Debian in the form of 3.00-9ubuntu2
-+ * References:
-+ CAN-2004-0889 (incomplete fix in version 3.00-9)
-+
-+ * Incorporated patch from Arnaud Giersch to fix crashes with
-+ certain PDFs (closes: #278693, #279292)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 8 Nov 2004 00:23:22 +1100
-+
-+xpdf (3.00-9) unstable; urgency=high
-+
-+ * Applied patch to fix vulnerability CAN-2004:0889: integer overflow
-+ issues that could allow denial of service or possibly arbitrary
-+ code execution
-+
-+ -- Hamish Moffatt <hamish@debian.org> Thu, 21 Oct 2004 23:49:32 +1000
-+
-+xpdf (3.00-8) unstable; urgency=low
-+
-+ * Final cleanup for sarge.
-+ * Fixed handling of some PDFs causing crashes (Closes: #254864)
-+ Modified splash/SplashFTFont.cc to prevent crash caused by calling
-+ FreeType's FT_Decompose_Outline with a non-outline object
-+ * Cleaned up dependency on libt1-5 to prevent duplicate depends
-+ * Moved pixmaps to /usr/share/pixmaps
-+ * Cleaned up lintian warnings
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 18 Aug 2004 23:32:07 +1000
-+
-+xpdf (3.00-7) unstable; urgency=low
-+
-+ * Changed wrapper script to use /bin/bash explicitly
-+ (closes: #245943, #248090)
-+ * Add /usr/share/bug/xpdf/control so that bugs submitted to 'xpdf'
-+ go to 'xpdf-reader' instead
-+ * Update supplied configuration file for new configuration options
-+ (closes: #246351)
-+ * Added menu icon (closes: #244504)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 9 May 2004 23:24:30 +1000
-+
-+xpdf (3.00-6) unstable; urgency=low
-+
-+ * Add dependency on libt1-5 >= 5.0.2 to fix several Xpdf crashes
-+ (closes: #238946, #243847, #243879)
-+ * Fixed wrapper script so that X resources are still located
-+ correctly (closes: #242513)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 25 Apr 2004 21:48:25 +1000
-+
-+xpdf (3.00-5) unstable; urgency=low
-+
-+ * Fix crash when clicking bookmarks in some PDFs (closes: #236007)
-+ * Not uploaded
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 30 Mar 2004 23:31:16 +1000
-+
-+xpdf (3.00-4) unstable; urgency=low
-+
-+ * Build with new libt1 rather than old t1lib (closes: #234273)
-+ * Fixed repeated text in pdfimages(1) (closes: #202139)
-+ * Fix crash on some PDFs due to empty paths (closes: #231709, #240187)
-+ (thanks to Guillaume Morin for the patch)
-+ * Applied upstream patch to add TrueType font collection (TTC) support
-+ (closes: #232340)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 30 Mar 2004 22:30:35 +1000
-+
-+xpdf (3.00-3) unstable; urgency=low
-+
-+ * Add upstream patch to fix handling of 16-bit TrueType fonts
-+ * Added note to /etc/xpdf/xpdfrc file warning that user configuration
-+ files (~/.xpdfrc) override the system-wide file, rather than supplement
-+ it (closes: #230853)
-+ * Updated /etc/xpdf/xpdfrc to remove obselete X font mappings
-+ (no longer supported)
-+ * Updated /usr/share/doc/xpdf-common/examples/sample-xpdfrc for 3.00
-+ (closes: #229874) by supplying the debian package version instead
-+ of upstream's
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 10 Feb 2004 23:00:02 +1100
-+
-+xpdf (3.00-2) unstable; urgency=low
-+
-+ * Added build-dep for pkg-config
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 28 Jan 2004 00:38:31 +1100
-+
-+xpdf (3.00-1) unstable; urgency=low
-+
-+ * New upstream release
-+ * Enter now works in Find dialog to start searching (closes: #167975)
-+ * Find dialog text input grows when window is resized (closes: #205208)
-+ * Fixed crashes with some PDFs (closes: #223989, #224943, #225289, #229264)
-+ * Fixed inverted horizontal mouse wheel behaviour (closes: #224849)
-+ * Fixed slow rendering of some documents (closes: #222254)
-+ * Corrected location of upstream sources in copyright file
-+ (closes: #229670)
-+ * Fixed location of configuration file in manual pages
-+ (/etc/xpdfrc -> /etc/xpdf/xpdfrc)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 26 Jan 2004 14:39:30 +1100
-+
-+xpdf (2.03-2) unstable; urgency=low
-+
-+ * Applied upstream patch to fix reading of JBIG encoded files (closes:
-+ #220450)
-+ * Wrapper script will now use exec when calling xpdf.bin
-+ (closes: #219736) and zxpdf will do the same when calling xpdf
-+
-+ -- Hamish Moffatt <hamish@debian.org> Fri, 14 Nov 2003 09:08:11 +1100
-+
-+xpdf (2.03-1) unstable; urgency=low
-+
-+ * New upstream release
-+ * Fixes crashes with some documents (closes: #215867, #212990)
-+ * Supports PDF outline (bookmarks) (closes: #166926)
-+ * Supports clipping to text which makes some more PDF files
-+ display correctly (closes: #184070)
-+ * Fix PDF BitsPerComponent handling (closes: #185950)
-+ * Handle PDFs with broken Unicode cmap table (closes: #188532)
-+ * Handle PDFs with broken DCT streams (closes: #193718)
-+ * Improved text extraction with right-to-left scripts (closes: #176745)
-+ * If the print command is changed in the print dialog, it won't
-+ be reset if another file is opened (closes: #200466)
-+
-+ * Updated Greek and Cyrillic language support to 2003-jun-28 versions
-+ * Provided manual page for xpdf.bin (symlink to xpdf(1)) (closes: #211887)
-+ * update-xpdfrc will now ignore backup (*~) and RCS files (closes: #194124)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 22 Oct 2003 22:43:47 +1000
-+
-+xpdf (2.02pl1-1) unstable; urgency=high
-+
-+ * Upstream patch release to fix security hole in URL handling
-+ (closes: #198032)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Thu, 19 Jun 2003 23:06:21 +1000
-+
-+xpdf (2.02-2) unstable; urgency=low
-+
-+ * Modified xpdf(1) to include information about zxpdf
-+ (closes: #175535)
-+ * Modified zxpdf to work with no command line parameters
-+ * Modified zxpdf to recognise .PDF (upper case) file extension
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 23 Apr 2003 00:27:50 +1000
-+
-+xpdf (2.02-1) unstable; urgency=low
-+
-+ * New upstream release
-+ * Incorporated new Arabic language package 2003-feb-16
-+ * Updated Hebrew language support to 2003-feb-16
-+ * Upstream: fixed display problems in some PDFs (closes: #181076,
-+ #144047, #167827, #176856, #180829)
-+ * Upstream: fixed crash on find-next before find (closes: #172973)
-+ * Upstream: fixed color handling in buttons (closes: #171398)
-+ * Upstream: fixed crash if Ctrl-W pressed while file open (closes: #177698)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 30 Mar 2003 14:06:43 +1000
-+
-+xpdf (2.01-3) unstable; urgency=low
-+
-+ * Fixed wrapper script bug: incorrect handling of command line
-+ parameters (closes: #174965, #174851)
-+ * Fixed wrapper script bug: should set $LC_ALL as well as $LANG
-+ (closes: #174717)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 4 Jan 2003 15:59:01 +1100
-+
-+xpdf (2.01-2) unstable; urgency=low
-+
-+ * Applied patch to fix buffer overflow as reported by iDEFENSE
-+ * Fixed name of language configuration files (/etc/xpdf/xpdf-* renamed
-+ back to xpdfrc-*) (closes: #173046)
-+ * Modified update-xpdfrc to ignore .dpkg* files in /etc/xpdf
-+ (closes: #173268)
-+ * Made xpdf a wrapper script which calls real xpdf binary to work
-+ around locale problems (closes: #167956, #168717, #169339, #172009)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 28 Dec 2002 00:35:52 +1100
-+
-+xpdf (2.01-1) unstable; urgency=low
-+
-+ * New upstream release
-+ * Merged in the small and free xpdf language packages xpdf-cyrillic,
-+ xpdf-greek, xpdf-hebrew, xpdf-latin2, xpdf-thai and xpdf-turkish;
-+ the others remain as seperate packages in non-free.
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 8 Dec 2002 00:02:37 +1100
-+
-+xpdf (2.00-2) unstable; urgency=low
-+
-+ * Recompile with lesstif2 (closes: #170624)
-+ * Change the default urlCommand to sensible-browser, which will make it
-+ honour the BROWSER variable, and run a good default browser that is
-+ installed if that is not set. Sure beats hardcoding non-free netscape.
-+ (closes: #170085)
-+ * Suggest www-browser.
-+ * Fixed incorrect resource names in xpdf(1) (closes: #168730)
-+ * Set a default print command (closes: #168520)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 30 Nov 2002 13:08:38 +1100
-+
-+xpdf (2.00-1) unstable; urgency=low
-+
-+ * New upstream release - uses Lesstif instead of old Xpdf-specific toolkit
-+ * Upstream: Control-P now brings up the print dialog (closes: #157225)
-+ * Upstream: Worked around problems with fonts in some PDF files
-+ (closes: #159778)
-+ * Upstream: 'Save as' now uses the standard Motif save dialog, so any
-+ filename can be entered (closes: #158423)
-+ * Upstream: handles malformed PDFs with error messages rather than
-+ silently as happened previously in some cases (closes: #151241)
-+ * Upstream: fullscreen behaviour is working fine in this version
-+ (closes: #156252)
-+ * Upstream: Enter works in save dialog (closes: #166942)
-+ * Upstream: now uses standard Motif file selector dialog (closes: #160255)
-+ * No performance issues observed with resizing the window (closes: #165847)
-+ * Tweaked configuration mechanism not to build /etc/xpdfrc now,
-+ but an include file for the main configuration file instead.
-+ No changes to the language packages are required to support this.
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 5 Nov 2002 11:49:24 +1100
-+
-+xpdf (1.01-3) unstable; urgency=low
-+
-+ * Recompile with more recent FreeType, updated dependencies to match
-+ (closes: #155946)
-+ * Made xpdf handle missing default paper name from libpaper
-+ (eg if $PAPERSIZE is set to a non-existent file) (closes: #150360)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 4 Sep 2002 21:49:41 +1000
-+
-+xpdf (1.01-2) unstable; urgency=low
-+
-+ * Fixed dependencies to ensure that xpdf-common, xpdf-reader and
-+ xpdf-utils versions are always synchronised (closes: #147897,
-+ #151683)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 7 Jul 2002 01:24:00 +1000
-+
-+xpdf (1.01-1) unstable; urgency=low
-+
-+ * New upstream release (closes: #146286, #147428)
-+ including support for Type 3 fonts (closes: #128686, #137378,
-+ #137416, #143245, #145541, #147614)
-+ * Removed empty examples directory (closes: #145057, #146336)
-+ * Changed dependency on gsfonts to require the woody version
-+ or newer (>= 6.0-1) (closes: #146398)
-+ * Applied patch to allow copying and printing of protected
-+ PDF files (closes: #145558)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 22 May 2002 23:16:47 +1000
-+
-+xpdf (1.00-4) unstable; urgency=low
-+
-+ * xpdf-reader: added zxpdf script contributed by Yann Dirson to allow
-+ viewing of compressed PDF files (closes: #87316, #14227)
-+ * xpdf-reader, xpdf-utils: corrected location of the configuration
-+ files in the manual pages (closes: #139982)
-+ * xpdf-common: added note to /etc/xpdf/xpdfrc describing configuration
-+ file scheme (closes: #143372)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Thu, 25 Apr 2002 10:57:47 +1000
-+
-+xpdf (1.00-3) unstable; urgency=low
-+
-+ * Fixed conflicts with xpdf-i (should conflict with versions
-+ <= 0.90-8, not 0.90-7) (closes: #136385, #136157)
-+ * Applied patch from the upstream author to fix the missing
-+ initialZoom X resource (closes: #135712)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 9 Mar 2002 00:23:33 +1100
-+
-+xpdf (1.00-2) unstable; urgency=low
-+
-+ * Fixed problem with building the arch-specific packages when
-+ xpdf-common was not installed (tried to overwrite /etc/xpdfrc)
-+ (closes: #134336, #134338)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 18 Feb 2002 08:36:59 +1100
-+
-+xpdf (1.00-1) unstable; urgency=low
-+
-+ * New upstream release (closes: #131961)
-+ * Split the xpdf package into xpdf-reader, xpdf-utils and a
-+ metapackage, xpdf. This reduces the number of library packages
-+ required if you just want pdf2ps, for example. (closes: #122786)
-+ * The new upstream release has the language support split into
-+ seperate packages. See xpdf-chinese-simplified,
-+ xpdf-chinese-traditional, xpdf-korean, xpdf-japanese,
-+ xpdf-thai and xpdf-cyrillic. NOTE: some of these are
-+ non-free.
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 2 Feb 2002 23:44:20 +1100
-+
-+xpdf (0.93-6) unstable; urgency=low
-+
-+ * Applied patch from the upstream author Derek Noonburg
-+ to fix an unitialized variable which causes xpdf
-+ to sometimes crash on Alpha systems (closes: #124314)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 16 Jan 2002 21:30:53 +1100
-+
-+xpdf (0.93-5) unstable; urgency=low
-+
-+ * Applied patch from the upstream author Derek Noonburg
-+ to fix TrueType font embedding bugs (closes: #123913)
-+ * Added Build-Conflicts: with libttf-dev; the compile gets
-+ mixed up between freetype1 and freetype2 when libttf-dev
-+ is installed (closes: #123565)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 9 Jan 2002 22:46:49 +1100
-+
-+xpdf (0.93-4) unstable; urgency=low
-+
-+ * Added menu hint "Documents" (closes: #121029)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 25 Nov 2001 13:02:24 +1100
-+
-+xpdf (0.93-3) unstable; urgency=low
-+
-+ * Added app-defaults file mapping for Type 1 base-14 fonts (requires
-+ gsfonts) (closes: #120649, #120994)
-+ * Added libpaper support; xpdf now gets the default paper size from
-+ X resources, $PAPERSIZE, /etc/papersize, or defaults to letter
-+ (closes: #120645)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 25 Nov 2001 11:38:19 +1100
-+
-+xpdf (0.93-2) unstable; urgency=low
-+
-+ * Removed final references to install-mime (closes: #120423)
-+ * Linked with libfreetype6 (closes: #116283)
-+ * Configuration file moved to /etc/xpdfrc (was /usr/etc/xpdfrc by mistake)
-+ * Also linked with t1lib
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 24 Nov 2001 16:20:23 +1100
-+
-+xpdf (0.93-1) unstable; urgency=low
-+
-+ * New upstream release (closes: #81911, #107448)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 7 Nov 2001 23:54:52 +1100
-+
-+xpdf (0.92-5) unstable; urgency=low
-+
-+ * Fixed freetype file locations which caused the build to fail if
-+ libfreetype6-dev wasn't installed (but isn't actually used)
-+ (closes: #111745)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 11 Sep 2001 20:21:47 +1000
-+
-+xpdf (0.92-4) unstable; urgency=low
-+
-+ * Added libttf-dev to build-deps so that xpdf will be built with
-+ TrueType font support (closes: #108667)
-+ * Increased xpdf's priority in mailcap from 4 to 6 to be above
-+ gv and acroread (closes: #106858)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 2 Sep 2001 14:54:11 +1000
-+
-+xpdf (0.92-3) unstable; urgency=low
-+
-+ * Changed build-dep on xpm4g-dev to xlibs-dev (closes: #83814)
-+ * Re-enabled Chinese language support (closes: #74974)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 29 Jan 2001 08:23:06 +1100
-+
-+xpdf (0.92-2) unstable; urgency=low
-+
-+ * Recompiled with latest X libraries
-+
-+ -- Hamish Moffatt <hamish@debian.org> Thu, 18 Jan 2001 08:21:23 +1100
-+
-+xpdf (0.92-1) unstable; urgency=low
-+
-+ * New upstream release
-+ * Updated Standards-Version
-+
-+ -- Hamish Moffatt <hamish@debian.org> Wed, 6 Dec 2000 21:16:34 +1100
-+
-+xpdf (0.91-3) unstable; urgency=low
-+
-+ * Enabled Chinese language support (closes: #74974)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 7 Nov 2000 15:52:41 +1100
-+
-+xpdf (0.91-2) unstable; urgency=low
-+
-+ * Changed replaces/conflicts with xpdf-i to allow installation
-+ of xpdf-i 0.91-1 (dummy package) as well as xpdf >= 0.91
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 19 Sep 2000 22:55:44 +1100
-+
-+xpdf (0.91-1) unstable; urgency=low
-+
-+ * New upstream version (closes: #43604, #47391, #61055, #67591, #50170)
-+ * Upstream source now includes decryption; xpdf-i is now obselete
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 20 Aug 2000 18:25:07 +1000
-+
-+xpdf (0.90-6) unstable; urgency=low
-+
-+ * Added build-depends for debhelper, xpm4g-dev and xlib6g-dev
-+ (closes: #68464, #61585)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 7 Aug 2000 19:29:08 +1000
-+
-+xpdf (0.90-5) unstable; urgency=low
-+
-+ * Added build-depends for t1lib-dev (closes: #55658)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 1 Aug 2000 21:03:43 +1000
-+
-+xpdf (0.90-4) unstable; urgency=low
-+
-+ * Recompile for t1lib1
-+
-+ -- Hamish Moffatt <hamish@debian.org> Mon, 3 Jan 2000 09:45:45 +1100
-+
-+xpdf (0.90-3) unstable; urgency=low
-+
-+ * FHS compliant
-+ * Converted to debhelper
-+ * Moved xpdf binary from /usr/X11R6/bin to /usr/bin
-+
-+ -- Hamish Moffatt <hamish@debian.org> Fri, 1 Oct 1999 23:51:31 +1000
-+
-+xpdf (0.90-2) unstable; urgency=low
-+
-+ * Recompiled with t1lib 0.9.1-4 to get correct dependencies
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 11 Sep 1999 00:59:17 +1000
-+
-+xpdf (0.90-1) unstable; urgency=low
-+
-+ * New upstream version
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 14 Aug 1999 14:31:00 +1000
-+
-+xpdf (0.80-6) unstable; urgency=low
-+
-+ * Added code in postinst and postrm to remove old MIME entries
-+ added using install-mime (fixes #37724, #31293)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 23 May 1999 00:25:00 +1000
-+
-+xpdf (0.80-5) unstable; urgency=low
-+
-+ * Fixed error in /usr/lib/mime/packages/xpdf (fixes #37537)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 15 May 1999 22:35:00 +1000
-+
-+xpdf (0.80-4) unstable; urgency=low
-+
-+ * Fixed bug in postinst introduced in 0.80-3 (fixes #37009, #37026)
-+ * xpdf now Conflicts with and Replaces xpdf-i
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 02 May 1999 18:20:00 +1000
-+
-+xpdf (0.80-3) unstable; urgency=low
-+
-+ * Fixed incorrect mime support handling with patch from David Rocher
-+ (fixes bug#36901)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 01 May 1999 18:45:00 +1000
-+
-+xpdf (0.80-2) unstable; urgency=low
-+
-+ * Enabled support for 16-bit Japanese fonts (fixes bug#30671)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Fri, 18 Dec 1998 00:18:00 +1100
-+
-+xpdf (0.80-1) unstable; urgency=low
-+
-+ * New upstream release
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sun, 29 Nov 1998 01:03:00 +1100
-+
-+xpdf (0.7a-3) unstable; urgency=low
-+
-+ * Previous upload had wrong section and was rejected
-+ * Change of license; xpdf is now GPL (see
-+ http://www.debian.org/Lists-Archives/debian-devel-9809/msg00193.html)
-+
-+ -- Hamish Moffatt <hamish@debian.org> Sat, 10 Oct 1998 11:12:00 +1000
-+
-+xpdf (0.7a-2) unstable; urgency=low
-+
-+ * New maintainer
-+ * Updated to use update-mime (fixes#26532)
-+ * Removed dependency on mime-support, as instructed by update-mime(1)
-+ * Rebuilt with new libstdc++
-+
-+ -- Hamish Moffatt <hamish@debian.org> Tue, 06 Oct 1998 19:43:00 +1000
-+
-+xpdf (0.7a-1) non-free; urgency=low
-+
-+ * Upgraded to new upstream release xpdf-0.7a
-+
-+ -- Dirk Eddelbuettel <edd@debian.org> Mon, 2 Mar 1998 19:24:35 -0500
-+
-+xpdf (0.7-3) non-free; urgency=low
-+
-+ * Moved to non-free as the copyright violated #3 of the DFSG (fixes #14360)
-+
-+ -- Dirk Eddelbuettel <edd@debian.org> Tue, 4 Nov 1997 20:44:26 -0500
-+
-+xpdf (0.7-2) unstable; urgency=low
-+
-+ * Compiled with GNU libc2 aka libc6
-+ * Linked against xlib6g and xpm4g (fixes bug #12915)
-+ * Uses pristine upstream sources as xpdf_0.7.orig.tar.gz
-+ * Upgraded to Debian Policy 2.3.0.0
-+ * Added menu file for xpdf
-+
-+ -- Dirk Eddelbuettel <edd@debian.org> Tue, 30 Sep 1997 20:34:09 -0400
-+
-+xpdf (0.7-1) unstable; urgency=low
-+
-+ * New upstream release xpdf-0.7
-+
-+ -- Dirk Eddelbuettel <edd@debian.org> Thu, 29 May 1997 21:22:38 -0400
-+
-+xpdf (0.6-1) unstable frozen; urgency=low
-+
-+ * New upstream release xpdf-0.6 (fixes bug #4476)
-+
-+ * Changed Priority: to optional as per override file on master
-+
-+ * Converted package management files to Debian Standard 2.1.1.0
-+ * Changed maintainer email address to <edd@debian.org>
-+
-+ -- Dirk Eddelbuettel <edd@debian.org> Sun, 24 Nov 1996 16:50:23 -0500
-+
-+Sat Aug 10 16:22:28 1996 Dirk Eddelbuettel <edd@miles.econ.queensu.ca>
-+
-+ * xpdf-0.5-1 release: only changes to Debian package files
-+
-+ * debian.control: now Depends on mime-support, suitable postinst
-+ and postrm scripts added (with thanks to Brian White);
-+ also updated virtual package dependencies, now Provides: a
-+ pdf-viewer as well as postscript-preview and Depends changed
-+ to X11R6 from elf-x11r6lib
-+
-+ * debian.rules: install xpdf.1x, not xpdf.1
-+
-+Mon May 27 20:58:19 1996 Dirk Eddelbuettel <edd@miles.econ.queensu.ca>
-+
-+ * xpdf-0.5-0 release: upgraded to upstream version 0.5
-+
-+Sun Apr 28 09:51:02 1996 Dirk Eddelbuettel <edd@miles.econ.queensu.ca>
-+
-+ * xpdf-0.4-0 release: upgraded to upstream version 0.4
-+
-+ * debian.control: added Architecture:, changed Section: to text,
-+ added note that xpdftops is now included
-+
-+Wed Feb 14 21:49:17 1996 Dirk Eddelbuettel <edd@miles.econ.queensu.ca>
-+
-+ * xpdf-0.3-1 release
-+
-+ * debian.rules: fix location of README to /usr/doc/xpdf (bug#2333)
-+
-+Sun Jan 28 17:36:31 1996 Dirk Eddelbuettel <edd@miles.econ.queensu.ca>
-+
-+ * xpdf-0.3-0: Initial Debian release
-+
---- xpdf-3.02.orig/debian/xpdf.dirs
-+++ xpdf-3.02/debian/xpdf.dirs
-@@ -0,0 +1,2 @@
-+usr/share/doc
-+usr/share/bug/xpdf
---- xpdf-3.02.orig/debian/xpdf-common.postrm
-+++ xpdf-3.02/debian/xpdf-common.postrm
-@@ -0,0 +1,9 @@
-+#!/bin/sh
-+set -e
-+
-+if [ "$1" = "purge" ]; then
-+ rm -f /etc/xpdf/includes
-+fi
-+
-+#DEBHELPER#
-+
---- xpdf-3.02.orig/debian/xpdf.desktop
-+++ xpdf-3.02/debian/xpdf.desktop
-@@ -0,0 +1,11 @@
-+[Desktop Entry]
-+Encoding=UTF-8
-+Name=xpdf
-+GenericName=PDF viewer
-+Comment=View PDF files
-+Exec=xpdf
-+Icon=xpdf.xpm
-+Terminal=false
-+Type=Application
-+MimeType=application/pdf;
-+Categories=PDFViewer;Viewer;Graphics;
---- xpdf-3.02.orig/debian/xpdf-reader.menu
-+++ xpdf-3.02/debian/xpdf-reader.menu
-@@ -0,0 +1,8 @@
-+?package(xpdf-reader):\
-+ needs="x11" \
-+ section="Apps/Viewers" \
-+ command="/usr/bin/xpdf" \
-+ title="Xpdf" \
-+ hints="Documents" \
-+ icon="/usr/share/pixmaps/xpdf.xpm" \
-+ longtitle="Xpdf: Portable Document Format (PDF) file viewer for X"
---- xpdf-3.02.orig/debian/xpdf-bug-control
-+++ xpdf-3.02/debian/xpdf-bug-control
-@@ -0,0 +1 @@
-+Submit-As: xpdf-reader
---- xpdf-3.02.orig/debian/xpdf-reader.dirs
-+++ xpdf-3.02/debian/xpdf-reader.dirs
-@@ -0,0 +1,7 @@
-+usr/share/doc
-+usr/share/applications
-+usr/share/man/man1
-+usr/lib/mime/packages
-+usr/lib/menu
-+usr/bin
-+usr/share/pixmaps
---- xpdf-3.02.orig/debian/patches/40_lesstif_copy.dpatch
-+++ xpdf-3.02/debian/patches/40_lesstif_copy.dpatch
-@@ -0,0 +1,18 @@
-+#! /bin/sh -e
-+## DP: make local copy of lesstif headers for use in patch 41
-+
-+dpatch_patch ()
-+{
-+ mkdir lesstif
-+ cp -a /usr/include/Xm lesstif/
-+}
-+
-+dpatch_unpatch ()
-+{
-+ rm -rf lesstif
-+}
-+
-+DPATCH_LIB_NO_DEFAULT=1
-+
-+. /usr/share/dpatch/dpatch.lib.sh
-+
---- xpdf-3.02.orig/debian/patches/01_manpage.dpatch
-+++ xpdf-3.02/debian/patches/01_manpage.dpatch
-@@ -0,0 +1,258 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 01_manpage.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Manual page updates
-+
-+@DPATCH@
-+diff -urNad xpdf-3.02~/doc/pdffonts.1 xpdf-3.02/doc/pdffonts.1
-+--- xpdf-3.02~/doc/pdffonts.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/pdffonts.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -73,9 +73,7 @@
-+ .SH CONFIGURATION FILE
-+ Pdffonts reads a configuration file at startup. It first tries to
-+ find the user's private config file, ~/.xpdfrc. If that doesn't
-+-exist, it looks for a system-wide config file, typically
-+-/usr/local/etc/xpdfrc (but this location can be changed when pdffonts
-+-is built). See the
-++exist, it looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+diff -urNad xpdf-3.02~/doc/pdfimages.1 xpdf-3.02/doc/pdfimages.1
-+--- xpdf-3.02~/doc/pdfimages.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/pdfimages.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -12,9 +12,9 @@
-+ saves images from a Portable Document Format (PDF) file as Portable
-+ Pixmap (PPM), Portable Bitmap (PBM), or JPEG files.
-+ .PP
-+-Pdfimages reads the PDF file, scans one or more pages,
-++Pdfimages reads the PDF file
-+ .IR PDF-file ,
-+-and writes one PPM, PBM, or JPEG file for each image,
-++scans one or more pages, and writes one PPM, PBM, or JPEG file for each image,
-+ .IR image-root - nnn . xxx ,
-+ where
-+ .I nnn
-+@@ -28,9 +28,7 @@
-+ .SH CONFIGURATION FILE
-+ Pdfimages reads a configuration file at startup. It first tries to
-+ find the user's private config file, ~/.xpdfrc. If that doesn't
-+-exist, it looks for a system-wide config file, typically
-+-/usr/local/etc/xpdfrc (but this location can be changed when pdfimages
-+-is built). See the
-++exist, it looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+diff -urNad xpdf-3.02~/doc/pdfinfo.1 xpdf-3.02/doc/pdfinfo.1
-+--- xpdf-3.02~/doc/pdfinfo.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/pdfinfo.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -71,8 +71,7 @@
-+ .SH CONFIGURATION FILE
-+ Pdfinfo reads a configuration file at startup. It first tries to find
-+ the user's private config file, ~/.xpdfrc. If that doesn't exist, it
-+-looks for a system-wide config file, typically /usr/local/etc/xpdfrc
-+-(but this location can be changed when pdfinfo is built). See the
-++looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+diff -urNad xpdf-3.02~/doc/pdftoppm.1 xpdf-3.02/doc/pdftoppm.1
-+--- xpdf-3.02~/doc/pdftoppm.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/pdftoppm.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -24,9 +24,7 @@
-+ .SH CONFIGURATION FILE
-+ Pdftoppm reads a configuration file at startup. It first tries to
-+ find the user's private config file, ~/.xpdfrc. If that doesn't
-+-exist, it looks for a system-wide config file, typically
-+-/usr/local/etc/xpdfrc (but this location can be changed when pdftoppm
-+-is built). See the
-++exist, it looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+diff -urNad xpdf-3.02~/doc/pdftops.1 xpdf-3.02/doc/pdftops.1
-+--- xpdf-3.02~/doc/pdftops.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/pdftops.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -31,8 +31,7 @@
-+ .SH CONFIGURATION FILE
-+ Pdftops reads a configuration file at startup. It first tries to find
-+ the user's private config file, ~/.xpdfrc. If that doesn't exist, it
-+-looks for a system-wide config file, typically /usr/local/etc/xpdfrc
-+-(but this location can be changed when pdftops is built). See the
-++looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+diff -urNad xpdf-3.02~/doc/pdftotext.1 xpdf-3.02/doc/pdftotext.1
-+--- xpdf-3.02~/doc/pdftotext.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/pdftotext.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -28,9 +28,7 @@
-+ .SH CONFIGURATION FILE
-+ Pdftotext reads a configuration file at startup. It first tries to
-+ find the user's private config file, ~/.xpdfrc. If that doesn't
-+-exist, it looks for a system-wide config file, typically
-+-/usr/local/etc/xpdfrc (but this location can be changed when pdftotext
-+-is built). See the
-++exist, it looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+diff -urNad xpdf-3.02~/doc/xpdf.1 xpdf-3.02/doc/xpdf.1
-+--- xpdf-3.02~/doc/xpdf.1 2007-04-25 01:26:52.000000000 +1000
-++++ xpdf-3.02/doc/xpdf.1 2007-04-25 01:26:55.000000000 +1000
-+@@ -7,10 +7,15 @@
-+ [options]
-+ .RI [ PDF-file
-+ .RI [ page " | +" dest ]]
-++.sp
-++.B zxpdf
-++[options]
-++.RI [ PDF-file
-++.RI [ page " | +" dest ]]
-+ .SH DESCRIPTION
-+ .B Xpdf
-+ is a viewer for Portable Document Format (PDF) files. (These are also
-+-sometimes also called \'Acrobat' files, from the name of Adobe's PDF
-++sometimes also called 'Acrobat' files, from the name of Adobe's PDF
-+ software.) Xpdf runs under the X Window System on UNIX, VMS, and
-+ OS/2.
-+ .PP
-+@@ -29,7 +34,7 @@
-+ xpdf file.pdf 18
-+ .RE
-+ .PP
-+-You can also give a named destination, prefixed with \'+' in place of
-++You can also give a named destination, prefixed with '+' in place of
-+ the page number. (This is only useful with PDF files that provide
-+ named destination targets.)
-+ .PP
-+@@ -38,11 +43,17 @@
-+ .RS
-+ xpdf
-+ .RE
-++.PP
-++Compressed files (gz and bz2) may be viewed using the command:
-++.PP
-++.RS
-++zxpdf file.pdf.gz
-++.RE
-++.PP
-+ .SH CONFIGURATION FILE
-+ Xpdf reads a configuration file at startup. It first tries to find
-+ the user's private config file, ~/.xpdfrc. If that doesn't exist, it
-+-looks for a system-wide config file, typically /usr/local/etc/xpdfrc
-+-(but this location can be changed when xpdf is built). See the
-++looks for a system-wide config file, /etc/xpdf/xpdfrc. See the
-+ .BR xpdfrc (5)
-+ man page for details.
-+ .SH OPTIONS
-+@@ -92,8 +103,8 @@
-+ .TP
-+ .BI \-z " zoom"
-+ Set the initial zoom factor. A number specifies a zoom percentage,
-+-where 100 means 72 dpi.You may also specify \'page', to fit the page
-+-to the window size, or \'width', to fit the page width to the window
-++where 100 means 72 dpi.You may also specify 'page', to fit the page
-++to the window size, or 'width', to fit the page width to the window
-+ width.
-+ .RB "[config file: " initialZoom "; or X resource: " xpdf.initialZoom ]
-+ .TP
-+@@ -123,7 +134,7 @@
-+ .BI \-ps " PS-file"
-+ Set the default file name for PostScript output (i.e., the name which
-+ will appear in the print dialog). This can also be of the form
-+-\'|command' to pipe the PostScript through a command.
-++'|command' to pipe the PostScript through a command.
-+ .RB "[config file: " psFile ]
-+ .TP
-+ .BI \-paper " size"
-+@@ -231,7 +242,7 @@
-+ .RB "[X resource: " xpdf*fontList ]
-+ .PP
-+ The color and font options only affect the user interface elements,
-+-not the PDF display (the \'paper').
-++not the PDF display (the 'paper').
-+ .PP
-+ The following X resources do not have command line option equivalents:
-+ .TP
-+@@ -254,7 +265,7 @@
-+ .B "dashed left/right arrow buttons"
-+ Move backward or forward along the history path.
-+ .TP
-+-.B "\'Page' entry box"
-++.B "'Page' entry box"
-+ Move to a specific page number. Click in the box to activate it, type
-+ the page number, then hit return.
-+ .TP
-+@@ -267,17 +278,17 @@
-+ .B "print button"
-+ Bring up a dialog for generating a PostScript file. The dialog has
-+ options to set the pages to be printed and the PostScript file name.
-+-The file name can be \'-' for stdout or \'|command' to pipe the
-+-PostScript through a command, e.g., \'|lpr'.
-++The file name can be '-' for stdout or '|command' to pipe the
-++PostScript through a command, e.g., '|lpr'.
-+ .TP
-+-.B "\'?' button"
-+-Bring up the \'about xpdf' window.
-++.B "'?' button"
-++Bring up the 'about xpdf' window.
-+ .TP
-+ .B "link info"
-+-The space between the \'?' and \'Quit' buttons is used to show the URL
-++The space between the '?' and 'Quit' buttons is used to show the URL
-+ or external file name when the mouse is over a link.
-+ .TP
-+-.B "\'Quit' button"
-++.B "'Quit' button"
-+ Quit xpdf.
-+ .PP
-+ .SS Menu
-+@@ -333,9 +344,9 @@
-+ .PP
-+ .SS Links
-+ Clicking on a hyperlink will jump to the link's destination. A link
-+-to another PDF document will make xpdf load that document. A
-+-\'launch' link to an executable program will display a dialog, and if
-+-you click \'ok', execute the program. URL links call an external
-++to another PDF document will make xpdf load that document. A 'launch'
-++link to an executable program will display a dialog, and if
-++you click 'ok', execute the program. URL links call an external
-+ command (see the
-+ .B WEB BROWSERS
-+ section below).
-+@@ -458,7 +469,7 @@
-+ .PP
-+ When you click on a URL link in a PDF file, xpdf will execute the
-+ command specified by the urlCommand config file option, replacing an
-+-occurrence of \'%s' with the URL. For example, to call netscape with
-++occurrence of '%s' with the URL. For example, to call netscape with
-+ the URL, add this line to your config file:
-+ .PP
-+ .RS
-+@@ -809,8 +820,8 @@
-+ xpdf -remote myServer file.pdf
-+ .RE
-+ .PP
-+-If there is currently no xpdf running in server mode with the name
-+-\'myServer', a new xpdf window will be opened. If another command:
-++If there is currently no xpdf running in server mode with the name 'myServer',
-++a new xpdf window will be opened. If another command:
-+ .PP
-+ .RS
-+ xpdf -remote myServer another.pdf 9
-+diff -urNad xpdf-3.02~/doc/xpdfrc.5 xpdf-3.02/doc/xpdfrc.5
-+--- xpdf-3.02~/doc/xpdfrc.5 2007-02-28 09:05:51.000000000 +1100
-++++ xpdf-3.02/doc/xpdfrc.5 2007-04-25 01:28:30.000000000 +1000
-+@@ -19,6 +19,9 @@
-+ .PP
-+ The following sections list all of the configuration options, sorted
-+ into functional groups. There is an examples section at the end.
-++.PP
-++Note that all settings are case-sensitive; in particular, boolean options
-++are "yes" and "no" (rather than "Yes" or "No").
-+ .SH INCLUDE FILES
-+ .TP
-+ .BI include " config\-file"
---- xpdf-3.02.orig/debian/patches/00list
-+++ xpdf-3.02/debian/patches/00list
-@@ -0,0 +1,24 @@
-+01_manpage.dpatch
-+02_permissions.dpatch
-+#10_add_accelerators.dpatch # doesn't work
-+
-+# Security fixes:
-+#04_freetype-glyph.dpatch # Not obvious
-+#05_gmem.dpatch # Not obvious
-+#06_splashpath.dpatch # Not obvious
-+#07_decrypt.dpatch # Not obvious
-+#08_core_action.dpatch # Not obvious
-+#23_security3.dpatch # Not obvious
-+
-+# Lesstif bug#377230 workaround:
-+40_lesstif_copy.dpatch
-+41_lesstif_cpp.dpatch
-+
-+# Final cleanup:
-+99_autoconf.dpatch
-+
-+# Fix CVE-2007-3387 and CVE-2007-5049
-+fix-CVE-2007-3387_CVE-2007-5049.dpatch
-+
-+# Fix CVE-2007-5393, CVE-2007-5392, CVE-2007-4352
-+fix-CVE-2007-5393_2007-5392_2007-4352.dpatch
---- xpdf-3.02.orig/debian/patches/02_permissions.dpatch
-+++ xpdf-3.02/debian/patches/02_permissions.dpatch
-@@ -0,0 +1,176 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## permissions.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Remove PDF file permission checks
-+
-+@DPATCH@
-+diff -urNad xpdf-3.02~/xpdf/PDFCore.cc xpdf-3.02/xpdf/PDFCore.cc
-+--- xpdf-3.02~/xpdf/PDFCore.cc 2007-02-28 09:05:52.000000000 +1100
-++++ xpdf-3.02/xpdf/PDFCore.cc 2007-04-24 23:43:59.000000000 +1000
-+@@ -4,6 +4,8 @@
-+ //
-+ // Copyright 2004 Glyph & Cog, LLC
-+ //
-++// Modified for Debian by Hamish Moffatt, 18 August 2005.
-++//
-+ //========================================================================
-+
-+ #include <aconf.h>
-+@@ -1563,9 +1565,11 @@
-+ int x0, y0, x1, y1, t;
-+ GString *s;
-+
-++#ifdef ENFORCE_PERMISSIONS
-+ if (!doc->okToCopy()) {
-+ return NULL;
-+ }
-++#endif
-+ if ((page = findPage(pg))) {
-+ cvtUserToDev(pg, xMin, yMin, &x0, &y0);
-+ cvtUserToDev(pg, xMax, yMax, &x1, &y1);
-+diff -urNad xpdf-3.02~/xpdf/XPDFCore.cc xpdf-3.02/xpdf/XPDFCore.cc
-+--- xpdf-3.02~/xpdf/XPDFCore.cc 2007-02-28 09:05:52.000000000 +1100
-++++ xpdf-3.02/xpdf/XPDFCore.cc 2007-04-24 23:46:39.000000000 +1000
-+@@ -4,6 +4,8 @@
-+ //
-+ // Copyright 2002-2003 Glyph & Cog, LLC
-+ //
-++// Modified for Debian by Hamish Moffatt, 22 May 2002.
-++//
-+ //========================================================================
-+
-+ #include <aconf.h>
-+@@ -384,11 +386,15 @@
-+ #ifndef NO_TEXT_SELECT
-+ if (selectULX != selectLRX &&
-+ selectULY != selectLRY) {
-++#ifdef ENFORCE_PERMISSIONS
-+ if (doc->okToCopy()) {
-+ copySelection();
-+ } else {
-+ error(-1, "Copying of text from this document is not allowed.");
-+ }
-++#else
-++ copySelection();
-++#endif
-+ }
-+ #endif
-+ }
-+@@ -407,9 +413,11 @@
-+ int pg;
-+ double ulx, uly, lrx, lry;
-+
-++#ifdef ENFORCE_PERMISSIONS
-+ if (!doc->okToCopy()) {
-+ return;
-+ }
-++#endif
-+ if (getSelection(&pg, &ulx, &uly, &lrx, &lry)) {
-+ //~ for multithreading: need a mutex here
-+ if (currentSelection) {
-+diff -urNad xpdf-3.02~/xpdf/XPDFViewer.cc xpdf-3.02/xpdf/XPDFViewer.cc
-+--- xpdf-3.02~/xpdf/XPDFViewer.cc 2007-02-28 09:05:52.000000000 +1100
-++++ xpdf-3.02/xpdf/XPDFViewer.cc 2007-04-24 23:43:59.000000000 +1000
-+@@ -4,6 +4,8 @@
-+ //
-+ // Copyright 2002-2003 Glyph & Cog, LLC
-+ //
-++// Modified for Debian by Hamish Moffatt, 22 May 2002.
-++//
-+ //========================================================================
-+
-+ #include <aconf.h>
-+@@ -3406,10 +3408,12 @@
-+ PSOutputDev *psOut;
-+
-+ doc = viewer->core->getDoc();
-++#ifdef ENFORCE_PERMISSIONS
-+ if (!doc->okToPrint()) {
-+ error(-1, "Printing this document is not allowed.");
-+ return;
-+ }
-++#endif
-+
-+ viewer->core->setBusyCursor(gTrue);
-+
-+diff -urNad xpdf-3.02~/xpdf/pdfimages.cc xpdf-3.02/xpdf/pdfimages.cc
-+--- xpdf-3.02~/xpdf/pdfimages.cc 2007-02-28 09:05:52.000000000 +1100
-++++ xpdf-3.02/xpdf/pdfimages.cc 2007-04-24 23:43:59.000000000 +1000
-+@@ -4,6 +4,8 @@
-+ //
-+ // Copyright 1998-2003 Glyph & Cog, LLC
-+ //
-++// Modified for Debian by Hamish Moffatt, 22 May 2002.
-++//
-+ //========================================================================
-+
-+ #include <aconf.h>
-+@@ -119,11 +121,13 @@
-+ }
-+
-+ // check for copy permission
-++#ifdef ENFORCE_PERMISSIONS
-+ if (!doc->okToCopy()) {
-+ error(-1, "Copying of images from this document is not allowed.");
-+ exitCode = 3;
-+ goto err1;
-+ }
-++#endif
-+
-+ // get page range
-+ if (firstPage < 1)
-+diff -urNad xpdf-3.02~/xpdf/pdftops.cc xpdf-3.02/xpdf/pdftops.cc
-+--- xpdf-3.02~/xpdf/pdftops.cc 2007-02-28 09:05:52.000000000 +1100
-++++ xpdf-3.02/xpdf/pdftops.cc 2007-04-24 23:43:59.000000000 +1000
-+@@ -4,6 +4,8 @@
-+ //
-+ // Copyright 1996-2003 Glyph & Cog, LLC
-+ //
-++// Modified for Debian by Hamish Moffatt, 22 May 2002.
-++//
-+ //========================================================================
-+
-+ #include <aconf.h>
-+@@ -278,12 +280,14 @@
-+ goto err1;
-+ }
-+
-++#ifdef ENFORCE_PERMISSIONS
-+ // check for print permission
-+ if (!doc->okToPrint()) {
-+ error(-1, "Printing this document is not allowed.");
-+ exitCode = 3;
-+ goto err1;
-+ }
-++#endif
-+
-+ // construct PostScript file name
-+ if (argc == 3) {
-+diff -urNad xpdf-3.02~/xpdf/pdftotext.cc xpdf-3.02/xpdf/pdftotext.cc
-+--- xpdf-3.02~/xpdf/pdftotext.cc 2007-02-28 09:05:52.000000000 +1100
-++++ xpdf-3.02/xpdf/pdftotext.cc 2007-04-24 23:43:59.000000000 +1000
-+@@ -4,6 +4,8 @@
-+ //
-+ // Copyright 1997-2003 Glyph & Cog, LLC
-+ //
-++// Modified for Debian by Hamish Moffatt, 22 May 2002.
-++//
-+ //========================================================================
-+
-+ #include <aconf.h>
-+@@ -160,12 +162,14 @@
-+ goto err2;
-+ }
-+
-++#ifdef ENFORCE_PERMISSIONS
-+ // check for copy permission
-+ if (!doc->okToCopy()) {
-+ error(-1, "Copying of text from this document is not allowed.");
-+ exitCode = 3;
-+ goto err2;
-+ }
-++#endif
-+
-+ // construct text file name
-+ if (argc == 3) {
---- xpdf-3.02.orig/debian/patches/fix-CVE-2007-5393_2007-5392_2007-4352.dpatch
-+++ xpdf-3.02/debian/patches/fix-CVE-2007-5393_2007-5392_2007-4352.dpatch
-@@ -0,0 +1,652 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## fix-CVE-2007-5393_2007-5392_2007-4352.dpatch by Nico Golde <nion@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: No description.
-+
-+@DPATCH@
-+diff -urNad xpdf-3.02~/xpdf/Stream.cc xpdf-3.02/xpdf/Stream.cc
-+--- xpdf-3.02~/xpdf/Stream.cc 2007-02-27 23:05:52.000000000 +0100
-++++ xpdf-3.02/xpdf/Stream.cc 2007-11-09 09:20:09.000000000 +0100
-+@@ -1245,23 +1245,26 @@
-+ columns = columnsA;
-+ if (columns < 1) {
-+ columns = 1;
-+- }
-+- if (columns + 4 <= 0) {
-+- columns = INT_MAX - 4;
-++ } else if (columns > INT_MAX - 2) {
-++ columns = INT_MAX - 2;
-+ }
-+ rows = rowsA;
-+ endOfBlock = endOfBlockA;
-+ black = blackA;
-+- refLine = (short *)gmallocn(columns + 3, sizeof(short));
-+- codingLine = (short *)gmallocn(columns + 2, sizeof(short));
-++ // 0 <= codingLine[0] < codingLine[1] < ... < codingLine[n] = columns
-++ // ---> max codingLine size = columns + 1
-++ // refLine has one extra guard entry at the end
-++ // ---> max refLine size = columns + 2
-++ codingLine = (int *)gmallocn(columns + 1, sizeof(int));
-++ refLine = (int *)gmallocn(columns + 2, sizeof(int));
-+
-+ eof = gFalse;
-+ row = 0;
-+ nextLine2D = encoding < 0;
-+ inputBits = 0;
-+- codingLine[0] = 0;
-+- codingLine[1] = refLine[2] = columns;
-+- a0 = 1;
-++ codingLine[0] = columns;
-++ a0i = 0;
-++ outputBits = 0;
-+
-+ buf = EOF;
-+ }
-+@@ -1280,9 +1283,9 @@
-+ row = 0;
-+ nextLine2D = encoding < 0;
-+ inputBits = 0;
-+- codingLine[0] = 0;
-+- codingLine[1] = columns;
-+- a0 = 1;
-++ codingLine[0] = columns;
-++ a0i = 0;
-++ outputBits = 0;
-+ buf = EOF;
-+
-+ // skip any initial zero bits and end-of-line marker, and get the 2D
-+@@ -1299,211 +1302,230 @@
-+ }
-+ }
-+
-++inline void CCITTFaxStream::addPixels(int a1, int blackPixels) {
-++ if (a1 > codingLine[a0i]) {
-++ if (a1 > columns) {
-++ error(getPos(), "CCITTFax row is wrong length (%d)", a1);
-++ err = gTrue;
-++ a1 = columns;
-++ }
-++ if ((a0i & 1) ^ blackPixels) {
-++ ++a0i;
-++ }
-++ codingLine[a0i] = a1;
-++ }
-++}
-++
-++inline void CCITTFaxStream::addPixelsNeg(int a1, int blackPixels) {
-++ if (a1 > codingLine[a0i]) {
-++ if (a1 > columns) {
-++ error(getPos(), "CCITTFax row is wrong length (%d)", a1);
-++ err = gTrue;
-++ a1 = columns;
-++ }
-++ if ((a0i & 1) ^ blackPixels) {
-++ ++a0i;
-++ }
-++ codingLine[a0i] = a1;
-++ } else if (a1 < codingLine[a0i]) {
-++ if (a1 < 0) {
-++ error(getPos(), "Invalid CCITTFax code");
-++ err = gTrue;
-++ a1 = 0;
-++ }
-++ while (a0i > 0 && a1 <= codingLine[a0i - 1]) {
-++ --a0i;
-++ }
-++ codingLine[a0i] = a1;
-++ }
-++}
-++
-+ int CCITTFaxStream::lookChar() {
-+ short code1, code2, code3;
-+- int a0New;
-+- GBool err, gotEOL;
-+- int ret;
-+- int bits, i;
-++ int b1i, blackPixels, i, bits;
-++ GBool gotEOL;
-+
-+- // if at eof just return EOF
-+- if (eof && codingLine[a0] >= columns) {
-+- return EOF;
-++ if (buf != EOF) {
-++ return buf;
-+ }
-+
-+ // read the next row
-+- err = gFalse;
-+- if (codingLine[a0] >= columns) {
-++ if (outputBits == 0) {
-++
-++ // if at eof just return EOF
-++ if (eof) {
-++ return EOF;
-++ }
-++
-++ err = gFalse;
-+
-+ // 2-D encoding
-+ if (nextLine2D) {
-+- // state:
-+- // a0New = current position in coding line (0 <= a0New <= columns)
-+- // codingLine[a0] = last change in coding line
-+- // (black-to-white if a0 is even,
-+- // white-to-black if a0 is odd)
-+- // refLine[b1] = next change in reference line of opposite color
-+- // to a0
-+- // invariants:
-+- // 0 <= codingLine[a0] <= a0New
-+- // <= refLine[b1] <= refLine[b1+1] <= columns
-+- // 0 <= a0 <= columns+1
-+- // refLine[0] = 0
-+- // refLine[n] = refLine[n+1] = columns
-+- // -- for some 1 <= n <= columns+1
-+- // end condition:
-+- // 0 = codingLine[0] <= codingLine[1] < codingLine[2] < ...
-+- // < codingLine[n-1] < codingLine[n] = columns
-+- // -- where 1 <= n <= columns+1
-+ for (i = 0; codingLine[i] < columns; ++i) {
-+ refLine[i] = codingLine[i];
-+ }
-+- refLine[i] = refLine[i + 1] = columns;
-+- b1 = 1;
-+- a0New = codingLine[a0 = 0] = 0;
-+- do {
-++ refLine[i++] = columns;
-++ refLine[i] = columns;
-++ codingLine[0] = 0;
-++ a0i = 0;
-++ b1i = 0;
-++ blackPixels = 0;
-++ // invariant:
-++ // refLine[b1i-1] <= codingLine[a0i] < refLine[b1i] < refLine[b1i+1]
-++ // <= columns
-++ // exception at left edge:
-++ // codingLine[a0i = 0] = refLine[b1i = 0] = 0 is possible
-++ // exception at right edge:
-++ // refLine[b1i] = refLine[b1i+1] = columns is possible
-++ while (codingLine[a0i] < columns) {
-+ code1 = getTwoDimCode();
-+ switch (code1) {
-+ case twoDimPass:
-+- if (refLine[b1] < columns) {
-+- a0New = refLine[b1 + 1];
-+- b1 += 2;
-++ addPixels(refLine[b1i + 1], blackPixels);
-++ if (refLine[b1i + 1] < columns) {
-++ b1i += 2;
-+ }
-+ break;
-+ case twoDimHoriz:
-+- if ((a0 & 1) == 0) {
-+- code1 = code2 = 0;
-++ code1 = code2 = 0;
-++ if (blackPixels) {
-+ do {
-+- code1 += code3 = getWhiteCode();
-++ code1 += code3 = getBlackCode();
-+ } while (code3 >= 64);
-+ do {
-+- code2 += code3 = getBlackCode();
-++ code2 += code3 = getWhiteCode();
-+ } while (code3 >= 64);
-+ } else {
-+- code1 = code2 = 0;
-+ do {
-+- code1 += code3 = getBlackCode();
-++ code1 += code3 = getWhiteCode();
-+ } while (code3 >= 64);
-+ do {
-+- code2 += code3 = getWhiteCode();
-++ code2 += code3 = getBlackCode();
-+ } while (code3 >= 64);
-+ }
-+- if (code1 > 0 || code2 > 0) {
-+- if (a0New + code1 <= columns) {
-+- codingLine[a0 + 1] = a0New + code1;
-+- } else {
-+- codingLine[a0 + 1] = columns;
-+- }
-+- ++a0;
-+- if (codingLine[a0] + code2 <= columns) {
-+- codingLine[a0 + 1] = codingLine[a0] + code2;
-+- } else {
-+- codingLine[a0 + 1] = columns;
-+- }
-+- ++a0;
-+- a0New = codingLine[a0];
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ addPixels(codingLine[a0i] + code1, blackPixels);
-++ if (codingLine[a0i] < columns) {
-++ addPixels(codingLine[a0i] + code2, blackPixels ^ 1);
-++ }
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-++ }
-++ break;
-++ case twoDimVertR3:
-++ addPixels(refLine[b1i] + 3, blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ ++b1i;
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+ }
-+ break;
-+- case twoDimVert0:
-+- if (refLine[b1] < columns) {
-+- a0New = codingLine[++a0] = refLine[b1];
-+- ++b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ case twoDimVertR2:
-++ addPixels(refLine[b1i] + 2, blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ ++b1i;
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+- } else {
-+- a0New = codingLine[++a0] = columns;
-+ }
-+ break;
-+ case twoDimVertR1:
-+- if (refLine[b1] + 1 < columns) {
-+- a0New = codingLine[++a0] = refLine[b1] + 1;
-+- ++b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ addPixels(refLine[b1i] + 1, blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ ++b1i;
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+- } else {
-+- a0New = codingLine[++a0] = columns;
-+ }
-+ break;
-+- case twoDimVertL1:
-+- if (refLine[b1] - 1 > a0New || (a0 == 0 && refLine[b1] == 1)) {
-+- a0New = codingLine[++a0] = refLine[b1] - 1;
-+- --b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ case twoDimVert0:
-++ addPixels(refLine[b1i], blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ ++b1i;
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+ }
-+ break;
-+- case twoDimVertR2:
-+- if (refLine[b1] + 2 < columns) {
-+- a0New = codingLine[++a0] = refLine[b1] + 2;
-+- ++b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ case twoDimVertL3:
-++ addPixelsNeg(refLine[b1i] - 3, blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ if (b1i > 0) {
-++ --b1i;
-++ } else {
-++ ++b1i;
-++ }
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+- } else {
-+- a0New = codingLine[++a0] = columns;
-+ }
-+ break;
-+ case twoDimVertL2:
-+- if (refLine[b1] - 2 > a0New || (a0 == 0 && refLine[b1] == 2)) {
-+- a0New = codingLine[++a0] = refLine[b1] - 2;
-+- --b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ addPixelsNeg(refLine[b1i] - 2, blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ if (b1i > 0) {
-++ --b1i;
-++ } else {
-++ ++b1i;
-+ }
-+- }
-+- break;
-+- case twoDimVertR3:
-+- if (refLine[b1] + 3 < columns) {
-+- a0New = codingLine[++a0] = refLine[b1] + 3;
-+- ++b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+- } else {
-+- a0New = codingLine[++a0] = columns;
-+ }
-+ break;
-+- case twoDimVertL3:
-+- if (refLine[b1] - 3 > a0New || (a0 == 0 && refLine[b1] == 3)) {
-+- a0New = codingLine[++a0] = refLine[b1] - 3;
-+- --b1;
-+- while (refLine[b1] <= a0New && refLine[b1] < columns) {
-+- b1 += 2;
-++ case twoDimVertL1:
-++ addPixelsNeg(refLine[b1i] - 1, blackPixels);
-++ blackPixels ^= 1;
-++ if (codingLine[a0i] < columns) {
-++ if (b1i > 0) {
-++ --b1i;
-++ } else {
-++ ++b1i;
-++ }
-++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
-++ b1i += 2;
-+ }
-+ }
-+ break;
-+ case EOF:
-++ addPixels(columns, 0);
-+ eof = gTrue;
-+- codingLine[a0 = 0] = columns;
-+- return EOF;
-++ break;
-+ default:
-+ error(getPos(), "Bad 2D code %04x in CCITTFax stream", code1);
-++ addPixels(columns, 0);
-+ err = gTrue;
-+ break;
-+ }
-+- } while (codingLine[a0] < columns);
-++ }
-+
-+ // 1-D encoding
-+ } else {
-+- codingLine[a0 = 0] = 0;
-+- while (1) {
-++ codingLine[0] = 0;
-++ a0i = 0;
-++ blackPixels = 0;
-++ while (codingLine[a0i] < columns) {
-+ code1 = 0;
-+- do {
-+- code1 += code3 = getWhiteCode();
-+- } while (code3 >= 64);
-+- codingLine[a0+1] = codingLine[a0] + code1;
-+- ++a0;
-+- if (codingLine[a0] >= columns) {
-+- break;
-+- }
-+- code2 = 0;
-+- do {
-+- code2 += code3 = getBlackCode();
-+- } while (code3 >= 64);
-+- codingLine[a0+1] = codingLine[a0] + code2;
-+- ++a0;
-+- if (codingLine[a0] >= columns) {
-+- break;
-++ if (blackPixels) {
-++ do {
-++ code1 += code3 = getBlackCode();
-++ } while (code3 >= 64);
-++ } else {
-++ do {
-++ code1 += code3 = getWhiteCode();
-++ } while (code3 >= 64);
-+ }
-++ addPixels(codingLine[a0i] + code1, blackPixels);
-++ blackPixels ^= 1;
-+ }
-+ }
-+
-+- if (codingLine[a0] != columns) {
-+- error(getPos(), "CCITTFax row is wrong length (%d)", codingLine[a0]);
-+- // force the row to be the correct length
-+- while (codingLine[a0] > columns) {
-+- --a0;
-+- }
-+- codingLine[++a0] = columns;
-+- err = gTrue;
-+- }
-+-
-+ // byte-align the row
-+ if (byteAlign) {
-+ inputBits &= ~7;
-+@@ -1562,14 +1584,17 @@
-+ // this if we know the stream contains end-of-line markers because
-+ // the "just plow on" technique tends to work better otherwise
-+ } else if (err && endOfLine) {
-+- do {
-++ while (1) {
-++ code1 = lookBits(13);
-+ if (code1 == EOF) {
-+ eof = gTrue;
-+ return EOF;
-+ }
-++ if ((code1 >> 1) == 0x001) {
-++ break;
-++ }
-+ eatBits(1);
-+- code1 = lookBits(13);
-+- } while ((code1 >> 1) != 0x001);
-++ }
-+ eatBits(12);
-+ if (encoding > 0) {
-+ eatBits(1);
-+@@ -1577,11 +1602,11 @@
-+ }
-+ }
-+
-+- a0 = 0;
-+- outputBits = codingLine[1] - codingLine[0];
-+- if (outputBits == 0) {
-+- a0 = 1;
-+- outputBits = codingLine[2] - codingLine[1];
-++ // set up for output
-++ if (codingLine[0] > 0) {
-++ outputBits = codingLine[a0i = 0];
-++ } else {
-++ outputBits = codingLine[a0i = 1];
-+ }
-+
-+ ++row;
-+@@ -1589,39 +1614,43 @@
-+
-+ // get a byte
-+ if (outputBits >= 8) {
-+- ret = ((a0 & 1) == 0) ? 0xff : 0x00;
-+- if ((outputBits -= 8) == 0) {
-+- ++a0;
-+- if (codingLine[a0] < columns) {
-+- outputBits = codingLine[a0 + 1] - codingLine[a0];
-+- }
-++ buf = (a0i & 1) ? 0x00 : 0xff;
-++ outputBits -= 8;
-++ if (outputBits == 0 && codingLine[a0i] < columns) {
-++ ++a0i;
-++ outputBits = codingLine[a0i] - codingLine[a0i - 1];
-+ }
-+ } else {
-+ bits = 8;
-+- ret = 0;
-++ buf = 0;
-+ do {
-+ if (outputBits > bits) {
-+- i = bits;
-+- bits = 0;
-+- if ((a0 & 1) == 0) {
-+- ret |= 0xff >> (8 - i);
-++ buf <<= bits;
-++ if (!(a0i & 1)) {
-++ buf |= 0xff >> (8 - bits);
-+ }
-+- outputBits -= i;
-++ outputBits -= bits;
-++ bits = 0;
-+ } else {
-+- i = outputBits;
-+- bits -= outputBits;
-+- if ((a0 & 1) == 0) {
-+- ret |= (0xff >> (8 - i)) << bits;
-++ buf <<= outputBits;
-++ if (!(a0i & 1)) {
-++ buf |= 0xff >> (8 - outputBits);
-+ }
-++ bits -= outputBits;
-+ outputBits = 0;
-+- ++a0;
-+- if (codingLine[a0] < columns) {
-+- outputBits = codingLine[a0 + 1] - codingLine[a0];
-++ if (codingLine[a0i] < columns) {
-++ ++a0i;
-++ outputBits = codingLine[a0i] - codingLine[a0i - 1];
-++ } else if (bits > 0) {
-++ buf <<= bits;
-++ bits = 0;
-+ }
-+ }
-+- } while (bits > 0 && codingLine[a0] < columns);
-++ } while (bits);
-++ }
-++ if (black) {
-++ buf ^= 0xff;
-+ }
-+- buf = black ? (ret ^ 0xff) : ret;
-+ return buf;
-+ }
-+
-+@@ -1663,6 +1692,9 @@
-+ code = 0; // make gcc happy
-+ if (endOfBlock) {
-+ code = lookBits(12);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if ((code >> 5) == 0) {
-+ p = &whiteTab1[code];
-+ } else {
-+@@ -1675,6 +1707,9 @@
-+ } else {
-+ for (n = 1; n <= 9; ++n) {
-+ code = lookBits(n);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if (n < 9) {
-+ code <<= 9 - n;
-+ }
-+@@ -1686,6 +1721,9 @@
-+ }
-+ for (n = 11; n <= 12; ++n) {
-+ code = lookBits(n);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if (n < 12) {
-+ code <<= 12 - n;
-+ }
-+@@ -1711,9 +1749,12 @@
-+ code = 0; // make gcc happy
-+ if (endOfBlock) {
-+ code = lookBits(13);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if ((code >> 7) == 0) {
-+ p = &blackTab1[code];
-+- } else if ((code >> 9) == 0) {
-++ } else if ((code >> 9) == 0 && (code >> 7) != 0) {
-+ p = &blackTab2[(code >> 1) - 64];
-+ } else {
-+ p = &blackTab3[code >> 7];
-+@@ -1725,6 +1766,9 @@
-+ } else {
-+ for (n = 2; n <= 6; ++n) {
-+ code = lookBits(n);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if (n < 6) {
-+ code <<= 6 - n;
-+ }
-+@@ -1736,6 +1780,9 @@
-+ }
-+ for (n = 7; n <= 12; ++n) {
-+ code = lookBits(n);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if (n < 12) {
-+ code <<= 12 - n;
-+ }
-+@@ -1749,6 +1796,9 @@
-+ }
-+ for (n = 10; n <= 13; ++n) {
-+ code = lookBits(n);
-++ if (code == EOF) {
-++ return 1;
-++ }
-+ if (n < 13) {
-+ code <<= 13 - n;
-+ }
-+@@ -1963,6 +2013,12 @@
-+ // allocate a buffer for the whole image
-+ bufWidth = ((width + mcuWidth - 1) / mcuWidth) * mcuWidth;
-+ bufHeight = ((height + mcuHeight - 1) / mcuHeight) * mcuHeight;
-++ if (bufWidth <= 0 || bufHeight <= 0 ||
-++ bufWidth > INT_MAX / bufWidth / (int)sizeof(int)) {
-++ error(getPos(), "Invalid image size in DCT stream");
-++ y = height;
-++ return;
-++ }
-+ for (i = 0; i < numComps; ++i) {
-+ frameBuf[i] = (int *)gmallocn(bufWidth * bufHeight, sizeof(int));
-+ memset(frameBuf[i], 0, bufWidth * bufHeight * sizeof(int));
-+@@ -3038,6 +3094,11 @@
-+ }
-+ scanInfo.firstCoeff = str->getChar();
-+ scanInfo.lastCoeff = str->getChar();
-++ if (scanInfo.firstCoeff < 0 || scanInfo.lastCoeff > 63 ||
-++ scanInfo.firstCoeff > scanInfo.lastCoeff) {
-++ error(getPos(), "Bad DCT coefficient numbers in scan info block");
-++ return gFalse;
-++ }
-+ c = str->getChar();
-+ scanInfo.ah = (c >> 4) & 0x0f;
-+ scanInfo.al = c & 0x0f;
-+diff -urNad xpdf-3.02~/xpdf/Stream.h xpdf-3.02/xpdf/Stream.h
-+--- xpdf-3.02~/xpdf/Stream.h 2007-02-27 23:05:52.000000000 +0100
-++++ xpdf-3.02/xpdf/Stream.h 2007-11-09 09:20:09.000000000 +0100
-+@@ -528,13 +528,15 @@
-+ int row; // current row
-+ int inputBuf; // input buffer
-+ int inputBits; // number of bits in input buffer
-+- short *refLine; // reference line changing elements
-+- int b1; // index into refLine
-+- short *codingLine; // coding line changing elements
-+- int a0; // index into codingLine
-++ int *codingLine; // coding line changing elements
-++ int *refLine; // reference line changing elements
-++ int a0i; // index into codingLine
-++ GBool err; // error on current line
-+ int outputBits; // remaining ouput bits
-+ int buf; // character buffer
-+
-++ void addPixels(int a1, int black);
-++ void addPixelsNeg(int a1, int black);
-+ short getTwoDimCode();
-+ short getWhiteCode();
-+ short getBlackCode();
---- xpdf-3.02.orig/debian/patches/10_add_accelerators.dpatch
-+++ xpdf-3.02/debian/patches/10_add_accelerators.dpatch
-@@ -0,0 +1,33 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 10_add_accelerators.dpatch by <hamish@noddy.cloud.net.au>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Add keyboard accelerators for rotate (#385962)
-+
-+@DPATCH@
-+diff -urNad xpdf-3.02~/xpdf/XPDFViewer.cc xpdf-3.02/xpdf/XPDFViewer.cc
-+--- xpdf-3.02~/xpdf/XPDFViewer.cc 2007-04-25 01:40:50.000000000 +1000
-++++ xpdf-3.02/xpdf/XPDFViewer.cc 2007-04-25 01:42:13.000000000 +1000
-+@@ -1958,16 +1958,22 @@
-+ n = 0;
-+ s = XmStringCreateLocalized("Rotate counterclockwise");
-+ XtSetArg(args[n], XmNlabelString, s); ++n;
-++ s2 = XmStringCreateLocalized("[");
-++ XtSetArg(args[n], XmNacceleratorText, s2); ++n;
-+ btn = XmCreatePushButton(popupMenu, "rotateCCW", args, n);
-+ XmStringFree(s);
-++ XmStringFree(s2);
-+ XtManageChild(btn);
-+ XtAddCallback(btn, XmNactivateCallback,
-+ &rotateCCWCbk, (XtPointer)this);
-+ n = 0;
-+ s = XmStringCreateLocalized("Rotate clockwise");
-+ XtSetArg(args[n], XmNlabelString, s); ++n;
-++ s2 = XmStringCreateLocalized("]");
-++ XtSetArg(args[n], XmNacceleratorText, s2); ++n;
-+ btn = XmCreatePushButton(popupMenu, "rotateCW", args, n);
-+ XmStringFree(s);
-++ XmStringFree(s2);
-+ XtManageChild(btn);
-+ XtAddCallback(btn, XmNactivateCallback,
-+ &rotateCWCbk, (XtPointer)this);
---- xpdf-3.02.orig/debian/patches/fix-CVE-2007-3387_CVE-2007-5049.dpatch
-+++ xpdf-3.02/debian/patches/fix-CVE-2007-3387_CVE-2007-5049.dpatch
-@@ -0,0 +1,31 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## fix-CVE-2007-3387_CVE-2007-5049.dpatch by Nico Golde <nion@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: No description.
-+
-+@DPATCH@
-+diff -urNad xpdf-3.02~/xpdf/Stream.cc xpdf-3.02/xpdf/Stream.cc
-+--- xpdf-3.02~/xpdf/Stream.cc 2007-02-27 23:05:52.000000000 +0100
-++++ xpdf-3.02/xpdf/Stream.cc 2007-09-27 12:04:52.000000000 +0200
-+@@ -410,15 +410,13 @@
-+ ok = gFalse;
-+
-+ nVals = width * nComps;
-+- if (width <= 0 || nComps <= 0 || nBits <= 0 ||
-+- nComps >= INT_MAX / nBits ||
-+- width >= INT_MAX / nComps / nBits ||
-+- nVals * nBits + 7 < 0) {
-+- return;
-+- }
-+ pixBytes = (nComps * nBits + 7) >> 3;
-+ rowBytes = ((nVals * nBits + 7) >> 3) + pixBytes;
-+- if (rowBytes <= 0) {
-++ if (width <= 0 || nComps <= 0 || nBits <= 0 ||
-++ nComps > gfxColorMaxComps ||
-++ nBits > 16 ||
-++ width >= INT_MAX / nComps || // check for overflow in nVals
-++ nVals >= (INT_MAX - 7) / nBits) { // check for overflow in rowBytes
-+ return;
-+ }
-+ predLine = (Guchar *)gmalloc(rowBytes);
---- xpdf-3.02.orig/debian/patches/99_autoconf.dpatch
-+++ xpdf-3.02/debian/patches/99_autoconf.dpatch
-@@ -0,0 +1,19 @@
-+#! /bin/sh -e
-+## DP: run aclocal and autoconf
-+
-+dpatch_patch ()
-+{
-+ tar cf debian/patched/autoconf.tar configure aclocal.m4
-+ aclocal-1.9 -I .
-+ autoconf
-+}
-+
-+dpatch_unpatch ()
-+{
-+ tar xf debian/patched/autoconf.tar
-+}
-+
-+DPATCH_LIB_NO_DEFAULT=1
-+
-+. /usr/share/dpatch/dpatch.lib.sh
-+
---- xpdf-3.02.orig/debian/patches/41_lesstif_cpp.dpatch
-+++ xpdf-3.02/debian/patches/41_lesstif_cpp.dpatch
-@@ -0,0 +1,30 @@
-+#! /bin/sh /usr/share/dpatch/dpatch-run
-+## 41_lesstif_cpp.dpatch by <hamish@debian.org>
-+##
-+## All lines beginning with `## DP:' are a description of the patch.
-+## DP: Work around mixed C/C++ linkages in lesstif - #377230
-+
-+@DPATCH@
-+diff -urNad xpdf-3.01~/lesstif/Xm/VendorSP.h xpdf-3.01/lesstif/Xm/VendorSP.h
-+--- xpdf-3.01~/lesstif/Xm/VendorSP.h 2006-05-28 08:30:56.000000000 +1000
-++++ xpdf-3.01/lesstif/Xm/VendorSP.h 2006-07-15 14:42:38.000000000 +1000
-+@@ -30,10 +30,6 @@
-+ #include <Xm/VendorS.h>
-+ #include <X11/ShellP.h>
-+
-+-#ifdef __cplusplus
-+-extern "C" {
-+-#endif
-+-
-+ XMLIBEXPORT extern Cardinal _XmFilterResources(XtResource *resources,
-+ Cardinal numResources,
-+ WidgetClass filterClass,
-+@@ -58,8 +54,5 @@
-+ XMLIBEXPORT extern VendorShellClassRec vendorShellClassRec;
-+
-+
-+-#ifdef __cplusplus
-+-}
-+-#endif
-+
-+ #endif /* _XM_VENDORSP_H */
---- xpdf-3.02.orig/debian/zxpdf
-+++ xpdf-3.02/debian/zxpdf
-@@ -0,0 +1,52 @@
-+#!/bin/bash
-+
-+# Copyright (c) 2001 Alcove - http://www.alcove.com/
-+# Please distribute under the terms of the GNU GPL, version 2
-+
-+# Author: Yann Dirson <yann.dirson@fr.alcove.com>
-+# $Id: zxpdf,v 1.1 2001/09/28 10:23:35 ydirson Exp $
-+
-+set -e
-+
-+file=
-+flags=
-+title="zxpdf"
-+while [ $# -gt 0 ]
-+do
-+ case "$1" in
-+ -z|-g|-geometry|-remote|-rgb|-papercolor|-eucjp|-t1lib|-ps|-paperw|-paperh)
-+ flags="$flags $1 $2"; shift ;;
-+ -title) title="$2"; shift ;;
-+ -*) flags="$flags $1" ;;
-+ *.pdf|*.PDF) file="$1"; shift; pages="$@"; cat=; break ;;
-+ *.gz|*.Z) file="$1"; shift; pages="$@"; cat=zcat; break ;;
-+ *.bz2) file="$1"; shift; pages="$@"; cat=bzcat; break ;;
-+ *) echo >&2 "ERROR: unknown suffix in file \`$1'"; exit 1 ;;
-+ esac
-+ shift
-+done
-+
-+if [ $# -ge 1 ] # optional page argument
-+then
-+ echo >&2 "ERROR: Too many arguments"
-+fi
-+
-+if [ x"$title" == x -a x"$tmp" != x ]
-+then
-+ title="zxpdf: $file"
-+fi
-+
-+if [ -z "$cat" ]
-+then
-+ tmp="$file"
-+else
-+ tmp=$(basename "$file")
-+ tmp=$(tempfile -p "${tmp%.pdf*}" -s .pdf)
-+ $cat "$file" >"$tmp"
-+fi
-+
-+if [ "$tmp" == "" ]; then
-+ exec xpdf -title $title $flags
-+else
-+ exec xpdf -title $title $flags "$tmp" $pages
-+fi
---- xpdf-3.02.orig/debian/copyright
-+++ xpdf-3.02/debian/copyright
-@@ -0,0 +1,42 @@
-+
-+This is Debian GNU/Linux's prepackaged version of the 'xpdf' viewer written
-+by Derek B. Noonburg. This package was original built by
-+Dirk Eddelbuettel <edd@qed.econ.queensu.ca> and since 1998 has been
-+maintained by Hamish Moffatt <hamish@debian.org>. Current sources are found
-+at
-+ http://www.foolabs.com/xpdf
-+
-+
-+The upstream author's email address is: derekn@foolabs.com
-+
-+Copyright:
-+
-+Xpdf is copyright 1996-2007 Derek B. Noonburg.
-+
-+Xpdf is licensed under the GNU General Public License (GPL), version
-+2. In my opinion, the GPL is a convoluted, confusing, ambiguous mess.
-+But it's also pervasive, and I'm sick of arguing. And even if it is
-+confusing, the basic idea is good.
-+
-+In order to cut down on the confusion a little bit, here are some
-+informal clarifications:
-+
-+- I don't mind if you redistribute xpdf in source and/or binary form,
-+ as long as you include all of the documentation: README, man pages
-+ (or help files), and COPYING. (Note that the README file contains a
-+ pointer to a web page with the source code.)
-+
-+- Selling a CD-ROM that contains xpdf is fine with me, as long as it
-+ includes the documentation. I wouldn't mind receiving a sample
-+ copy, but it's not necessary.
-+
-+- If you make useful changes to xpdf, please make the source code
-+ available -- post it on a web site, email it to me, whatever.
-+
-+For information on commercial licensing and consulting, please see the
-+Glyph & Cog web site:
-+
-+ http://www.glyphandcog.com/
-+
-+The full text of the GPL can be found in /usr/share/common-licenses/GPL.
-+
---- xpdf-3.02.orig/debian/xpdf.xpm
-+++ xpdf-3.02/debian/xpdf.xpm
-@@ -0,0 +1,177 @@
-+/* XPM */
-+static char *xpdf[] = {
-+/* columns rows colors chars-per-pixel */
-+"32 32 139 2",
-+" c #003D000F000F",
-+". c #0CE40CE00CE0",
-+"X c #1E7600000000",
-+"o c #138D13B413B4",
-+"O c #19E816001600",
-+"+ c #1B021CF31CF3",
-+"@ c #26B900000000",
-+"# c #2D20004E004E",
-+"$ c #2DCD0F260F26",
-+"% c #342B0C290C29",
-+"& c #39F700000000",
-+"* c #35BB16E016E0",
-+"= c #3F3D10DC10DC",
-+"- c #23C023C023C0",
-+"; c #2DB72DF22DF2",
-+": c #32B02C2C2C2C",
-+"> c #331533153315",
-+", c #3D4F3DAB3DAB",
-+"< c #412900000000",
-+"1 c #4E4400000000",
-+"2 c #438A16751675",
-+"3 c #552E00090009",
-+"4 c #589D00000000",
-+"5 c #553814381438",
-+"6 c #466A40084008",
-+"7 c #578D29C429C4",
-+"8 c #63DD00000000",
-+"9 c #706515B015B0",
-+"0 c #708517F717F7",
-+"q c #71D819011901",
-+"w c #42B142B242B2",
-+"e c #4AB94AB64AB6",
-+"r c #5F30420C420C",
-+"t c #52F852745274",
-+"y c #553A59885988",
-+"u c #5C0B535A535A",
-+"i c #599959D559D5",
-+"p c #618059D459D4",
-+"a c #7FA2562B562B",
-+"s c #63F465206520",
-+"d c #699169916991",
-+"f c #7B317B717B71",
-+"g c #AE2F00880088",
-+"h c #B26E00000000",
-+"j c #B8C604F204F2",
-+"k c #B90308810881",
-+"l c #B13817391739",
-+"z c #BFF611DD11DD",
-+"x c #A7343C313C31",
-+"c c #B6A136E436E4",
-+"v c #B14F39523952",
-+"b c #A7CA44514451",
-+"n c #AC7B5BE65BE6",
-+"m c #ABF678C378C3",
-+"M c #C79F00000000",
-+"N c #CD5500170017",
-+"B c #C4B212E112E1",
-+"V c #CED416B516B5",
-+"C c #DD5300000000",
-+"Z c #DCAC0C610C61",
-+"A c #D83D139D139D",
-+"S c #DCCB13C113C1",
-+"D c #D90D194E194E",
-+"F c #D87234623462",
-+"G c #D84A3CFC3CFC",
-+"H c #DED13D643D64",
-+"J c #E229000B000B",
-+"K c #E2CE09930993",
-+"L c #E45115631563",
-+"P c #E54D19161916",
-+"I c #E2BC21232123",
-+"U c #CE1D46944694",
-+"Y c #CD8C53CB53CB",
-+"T c #D70F42BB42BB",
-+"R c #DA5454E754E7",
-+"E c #D9295CAA5CAA",
-+"W c #CAFD63A163A1",
-+"Q c #C9846E7E6E7E",
-+"! c #DEBA65C865C8",
-+"~ c #DD2D7F957F95",
-+"^ c #E4DA44214421",
-+"/ c #E3A452AE52AE",
-+"( c #ED3959C459C4",
-+") c #E22F650D650D",
-+"_ c #845284888488",
-+"` c #86F188C288C2",
-+"' c #8DE18DEE8DEE",
-+"] c #935A941B941B",
-+"[ c #9CE89CF49CF4",
-+"{ c #A7A8850E850E",
-+"} c #AA8084FC84FC",
-+"| c #AFF888F088F0",
-+" . c #B29381928192",
-+".. c #B6EE8A448A44",
-+"X. c #A3FDA3EBA3EB",
-+"o. c #AB35AC0CAC0C",
-+"O. c #B246B246B246",
-+"+. c #B969B4DDB4DD",
-+"@. c #BB90BB8FBB8F",
-+"#. c #CD068F7A8F7A",
-+"$. c #CDC0936A936A",
-+"%. c #D20085B385B3",
-+"&. c #D6699ED29ED2",
-+"*. c #DC829C599C59",
-+"=. c #CD42A62FA62F",
-+"-. c #CE21ABF7ABF7",
-+";. c #CD9AB2CBB2CB",
-+":. c #CD0CC08AC08A",
-+">. c #D8C2A77BA77B",
-+",. c #EAE89F659F65",
-+"<. c #EC71BE37BE37",
-+"1. c #F4BBA0EAA0EA",
-+"2. c #F5C9AB37AB37",
-+"3. c #FB7DAD09AD09",
-+"4. c #C526C505C505",
-+"5. c #CD07CC65CC65",
-+"6. c #D032D33DD33D",
-+"7. c #D630C522C522",
-+"8. c #DA43C538C538",
-+"9. c #DFD0CAA7CAA7",
-+"0. c #D260D3EFD3EF",
-+"q. c #D4D9D990D990",
-+"w. c #DB0BDBC3DBC3",
-+"e. c #E08DE8F0E8F0",
-+"r. c #E76CC6A0C6A0",
-+"t. c #E78BD27BD27B",
-+"y. c #EFD9D5B1D5B1",
-+"u. c #EAC6DCDCDCDC",
-+"i. c #E5DCE474E474",
-+"p. c #E7BFEA2AEA2A",
-+"a. c #ED83E7CCE7CC",
-+"s. c #EBD0EBC8EBC8",
-+"d. c #EE64F2ADF2AD",
-+"f. c #F714E461E461",
-+"g. c #F915E48FE48F",
-+"h. c #FD3EEA64EA64",
-+"j. c #F276F27AF27A",
-+"k. c #FCA4F400F400",
-+"l. c #FFF3FFF3FFF3",
-+/* pixels */
-+" ",
-+" ",
-+"< 1 1 3 3 & @ 1 1 @ ",
-+"8 N J J J N 4 # g J h # ",
-+" 4 N J J J N 4 O w w o o 6 b A h # ",
-+" 4 N J C J N 4 , w.5.> O X.4.7.>.% ",
-+" 4 N J J J N 4 O.O. ` y.F ! q.O ",
-+" 4 N J J J N 4 - 0.o. # ;.2.h 2 , ",
-+" 4 N J J J N 4 w s.] @ x p.| # ",
-+" 4 N J J J N 4 w p.} g T p._ ",
-+" 3 N J J J N 4 e d.%.C U s.f ",
-+" . . 3 M J J J N 4 X i k.H g a s.> ",
-+" ; @.f t n / D J J B 6 y u .h.l 7 ] j.d t . ",
-+" > @.l.w.] s 6.*.K A #.8.W ! u.a.* ; [ d.d t ",
-+" o _ 4.l.d d h.A Q e.R C A r.6.o . +.5.o ",
-+" + _ j.e i s.0 &.<.A J A 8.4.. . 4.4.o ",
-+" _ s.w i p.O o.3.C J S t.4.. o 5.@.. ",
-+" ] s.w . ] 6.= -.2.C J P h.~ 4 O i.f ",
-+" X.j.w w w...j ,.r.c N ^ k.( N 0 s.i ",
-+" o.s.] ' o...z J c 4.5.$.=.f.1.K ) g.X.. ",
-+" O 4.O.O + 2 k J g # o + + 5 V P K L D q ",
-+" w s.] # g J h # 4 N J J C N 4 ",
-+" w p._ @ h J g # 4 N J J J N 4 ",
-+" e d.} g J h # 4 N J J J N 4 ",
-+" i k.Y J g # 4 N J J J N 4 ",
-+" s h.I g # 4 N J J J N 4 ",
-+" $ +.s.m # 4 N J J J N 4 ",
-+" # g T b : 4 N J J J N 4 ",
-+" # h J g # 4 N J J J N < ",
-+" @ 1 1 @ & 1 3 1 3 X ",
-+" ",
-+" "
-+};
---- xpdf-3.02.orig/debian/xpdf-wrapper
-+++ xpdf-3.02/debian/xpdf-wrapper
-@@ -0,0 +1,5 @@
-+#!/bin/bash
-+LANG=C
-+LC_ALL=C
-+export LANG LC_ALL
-+exec -a xpdf xpdf.bin "$@"
---- xpdf-3.02.orig/debian/rules
-+++ xpdf-3.02/debian/rules
-@@ -0,0 +1,110 @@
-+#!/usr/bin/make -f
-+# -*- makefile -*-
-+# debian.rules file for the Debian GNU/Linux xpdf package
-+# Copyright 1996,1997,1998 by Dirk Eddelbuettel <edd@debian.org>
-+# Copyright 1998-2006 by Hamish Moffatt <hamish@debian.org>
-+
-+build: build-stamp
-+build-stamp: patch
-+ dh_testdir
-+ #CC=gcc-4.0 CXX=g++-4.0 ./configure
-+ ./configure \
-+ --prefix=/usr \
-+ --sysconfdir=/etc/xpdf \
-+ --mandir=/usr/share/man \
-+ --with-x \
-+ --enable-freetype2 \
-+ --enable-opi \
-+ --enable-wordlist \
-+ --enable-multithreaded \
-+ --with-Xm-includes=$(shell pwd)/lesstif \
-+ --with-freetype2-includes=/usr/include/freetype2 \
-+ --with-t1-includes=/usr/include
-+ $(MAKE)
-+ touch build-stamp
-+
-+clean: clean1 unpatch
-+clean1:
-+ dh_testdir
-+ -$(MAKE) -i distclean
-+ rm -rf *~ debian/*~ debian/files* build-stamp aconf.h
-+ rm -rf fofi/Makefile splash/Makefile
-+ dh_clean
-+
-+binary-indep: # Nothing to build
-+ dh_testdir
-+ dh_installdirs -i
-+ ln -sf xpdf-common debian/xpdf/usr/share/doc/xpdf
-+
-+ cp doc/xpdfrc.5 debian/xpdf-common/usr/share/man/man5
-+ cp debian/xpdfrc debian/xpdf-common/usr/share/doc/xpdf-common/examples/sample-xpdfrc
-+ cp debian/update-xpdfrc debian/xpdf-common/usr/sbin
-+ chmod +x debian/xpdf-common/usr/sbin/update-xpdfrc
-+ cp debian/xpdfrc debian/xpdf-common/etc/xpdf
-+ cp debian/xpdf-bug-control debian/xpdf/usr/share/bug/xpdf/control
-+
-+ dh_installdocs -pxpdf-common README debian/README.Debian
-+ dh_installchangelogs -pxpdf-common CHANGES
-+ cp debian/update-xpdfrc.8 debian/xpdf-common/usr/share/man/man8
-+
-+ cp -a debian/lang/* debian/xpdf-common/
-+
-+ dh_compress -i
-+ dh_fixperms -i
-+ dh_installdeb -i
-+ dh_shlibdeps -i
-+ dh_gencontrol -i
-+ dh_md5sums -i
-+ dh_builddeb -i
-+
-+binary-arch: build
-+ dh_testdir
-+
-+ dh_installdirs -a
-+ mkdir -p debian/tmp
-+ mkdir -p debian/tmp/usr/share
-+ $(MAKE) install DESTDIR=`pwd`/debian/tmp
-+
-+ ln -sf xpdf-common debian/xpdf-reader/usr/share/doc/xpdf-reader
-+ ln -sf xpdf-common debian/xpdf-utils/usr/share/doc/xpdf-utils
-+
-+ cp debian/zxpdf debian/xpdf-reader/usr/bin
-+ chmod +x debian/xpdf-reader/usr/bin/zxpdf
-+ ln -sf xpdf.1.gz debian/xpdf-reader/usr/share/man/man1/zxpdf.1.gz
-+ ln -sf xpdf.1.gz debian/xpdf-reader/usr/share/man/man1/xpdf.bin.1.gz
-+
-+ cp debian/xpdf.xpm debian/xpdf-reader/usr/share/pixmaps
-+
-+ dh_installdocs -a
-+ dh_movefiles -a
-+ rm -rf debian/tmp
-+
-+ # rename xpdf binary and install wrapper script
-+ mv debian/xpdf-reader/usr/bin/xpdf debian/xpdf-reader/usr/bin/xpdf.bin
-+ cp debian/xpdf-wrapper debian/xpdf-reader/usr/bin/xpdf
-+ chmod +x debian/xpdf-reader/usr/bin/xpdf
-+ cp debian/xpdf.desktop debian/xpdf-reader/usr/share/applications/
-+
-+ dh_installmime -pxpdf-reader
-+ dh_installmenu -pxpdf-reader
-+ dh_strip -a
-+ dh_desktop -a
-+ dh_compress -a
-+ dh_fixperms -a
-+ dh_installdeb -a
-+ dh_shlibdeps -a
-+ dh_gencontrol -a
-+ dh_md5sums -a
-+ dh_builddeb -a
-+
-+patch: patch-stamp
-+patch-stamp:
-+ dpatch apply-all
-+ #dpatch call-all -a=pkg-info >patch-stamp
-+ touch patch-stamp
-+
-+unpatch:
-+ dpatch deapply-all
-+ rm -rf patch-stamp debian/patched
-+
-+binary: binary-indep binary-arch
diff --git a/source/xap/xpdf/patches/xpdfrc.diff b/source/xap/xpdf/patches/xpdfrc.diff
index f005414e0..c136f9970 100644
--- a/source/xap/xpdf/patches/xpdfrc.diff
+++ b/source/xap/xpdf/patches/xpdfrc.diff
@@ -1,43 +1,43 @@
---- ./doc/sample-xpdfrc.orig 2005-08-17 00:34:30.000000000 -0500
-+++ ./doc/sample-xpdfrc 2007-02-17 21:26:12.000000000 -0600
+--- ./doc/sample-xpdfrc.orig 2013-03-28 15:29:16.957444255 -0500
++++ ./doc/sample-xpdfrc 2013-03-28 15:32:11.413438678 -0500
@@ -29,20 +29,20 @@
# installed in a "standard" location, xpdf will find them
# automatically.)
--#displayFontT1 Times-Roman /usr/local/share/ghostscript/fonts/n021003l.pfb
--#displayFontT1 Times-Italic /usr/local/share/ghostscript/fonts/n021023l.pfb
--#displayFontT1 Times-Bold /usr/local/share/ghostscript/fonts/n021004l.pfb
--#displayFontT1 Times-BoldItalic /usr/local/share/ghostscript/fonts/n021024l.pfb
--#displayFontT1 Helvetica /usr/local/share/ghostscript/fonts/n019003l.pfb
--#displayFontT1 Helvetica-Oblique /usr/local/share/ghostscript/fonts/n019023l.pfb
--#displayFontT1 Helvetica-Bold /usr/local/share/ghostscript/fonts/n019004l.pfb
--#displayFontT1 Helvetica-BoldOblique /usr/local/share/ghostscript/fonts/n019024l.pfb
--#displayFontT1 Courier /usr/local/share/ghostscript/fonts/n022003l.pfb
--#displayFontT1 Courier-Oblique /usr/local/share/ghostscript/fonts/n022023l.pfb
--#displayFontT1 Courier-Bold /usr/local/share/ghostscript/fonts/n022004l.pfb
--#displayFontT1 Courier-BoldOblique /usr/local/share/ghostscript/fonts/n022024l.pfb
--#displayFontT1 Symbol /usr/local/share/ghostscript/fonts/s050000l.pfb
--#displayFontT1 ZapfDingbats /usr/local/share/ghostscript/fonts/d050000l.pfb
-+displayFontT1 Times-Roman /usr/share/ghostscript/fonts/n021003l.pfb
-+displayFontT1 Times-Italic /usr/share/ghostscript/fonts/n021023l.pfb
-+displayFontT1 Times-Bold /usr/share/ghostscript/fonts/n021004l.pfb
-+displayFontT1 Times-BoldItalic /usr/share/ghostscript/fonts/n021024l.pfb
-+displayFontT1 Helvetica /usr/share/ghostscript/fonts/n019003l.pfb
-+displayFontT1 Helvetica-Oblique /usr/share/ghostscript/fonts/n019023l.pfb
-+displayFontT1 Helvetica-Bold /usr/share/ghostscript/fonts/n019004l.pfb
-+displayFontT1 Helvetica-BoldOblique /usr/share/ghostscript/fonts/n019024l.pfb
-+displayFontT1 Courier /usr/share/ghostscript/fonts/n022003l.pfb
-+displayFontT1 Courier-Oblique /usr/share/ghostscript/fonts/n022023l.pfb
-+displayFontT1 Courier-Bold /usr/share/ghostscript/fonts/n022004l.pfb
-+displayFontT1 Courier-BoldOblique /usr/share/ghostscript/fonts/n022024l.pfb
-+displayFontT1 Symbol /usr/share/ghostscript/fonts/s050000l.pfb
-+displayFontT1 ZapfDingbats /usr/share/ghostscript/fonts/d050000l.pfb
+-#fontFile Times-Roman /usr/local/share/ghostscript/fonts/n021003l.pfb
+-#fontFile Times-Italic /usr/local/share/ghostscript/fonts/n021023l.pfb
+-#fontFile Times-Bold /usr/local/share/ghostscript/fonts/n021004l.pfb
+-#fontFile Times-BoldItalic /usr/local/share/ghostscript/fonts/n021024l.pfb
+-#fontFile Helvetica /usr/local/share/ghostscript/fonts/n019003l.pfb
+-#fontFile Helvetica-Oblique /usr/local/share/ghostscript/fonts/n019023l.pfb
+-#fontFile Helvetica-Bold /usr/local/share/ghostscript/fonts/n019004l.pfb
+-#fontFile Helvetica-BoldOblique /usr/local/share/ghostscript/fonts/n019024l.pfb
+-#fontFile Courier /usr/local/share/ghostscript/fonts/n022003l.pfb
+-#fontFile Courier-Oblique /usr/local/share/ghostscript/fonts/n022023l.pfb
+-#fontFile Courier-Bold /usr/local/share/ghostscript/fonts/n022004l.pfb
+-#fontFile Courier-BoldOblique /usr/local/share/ghostscript/fonts/n022024l.pfb
+-#fontFile Symbol /usr/local/share/ghostscript/fonts/s050000l.pfb
+-#fontFile ZapfDingbats /usr/local/share/ghostscript/fonts/d050000l.pfb
++fontFile Times-Roman /usr/share/ghostscript/fonts/n021003l.pfb
++fontFile Times-Italic /usr/share/ghostscript/fonts/n021023l.pfb
++fontFile Times-Bold /usr/share/ghostscript/fonts/n021004l.pfb
++fontFile Times-BoldItalic /usr/share/ghostscript/fonts/n021024l.pfb
++fontFile Helvetica /usr/share/ghostscript/fonts/n019003l.pfb
++fontFile Helvetica-Oblique /usr/share/ghostscript/fonts/n019023l.pfb
++fontFile Helvetica-Bold /usr/share/ghostscript/fonts/n019004l.pfb
++fontFile Helvetica-BoldOblique /usr/share/ghostscript/fonts/n019024l.pfb
++fontFile Courier /usr/share/ghostscript/fonts/n022003l.pfb
++fontFile Courier-Oblique /usr/share/ghostscript/fonts/n022023l.pfb
++fontFile Courier-Bold /usr/share/ghostscript/fonts/n022004l.pfb
++fontFile Courier-BoldOblique /usr/share/ghostscript/fonts/n022024l.pfb
++fontFile Symbol /usr/share/ghostscript/fonts/s050000l.pfb
++fontFile ZapfDingbats /usr/share/ghostscript/fonts/d050000l.pfb
# If you need to display PDF files that refer to non-embedded fonts,
# you should add one or more fontDir options to point to the
-@@ -88,4 +88,4 @@
- # Set the command used to run a web browser when a URL hyperlink is
+@@ -89,4 +89,4 @@
# clicked.
+ #launchCommand viewer-script
-#urlCommand "netscape -remote 'openURL(%s)'"
+#urlCommand "firefox -remote 'openURL(%s)'"
diff --git a/source/xap/xpdf/xpdf.SlackBuild b/source/xap/xpdf/xpdf.SlackBuild
index 6093f21d8..6aa5e1b45 100755
--- a/source/xap/xpdf/xpdf.SlackBuild
+++ b/source/xap/xpdf/xpdf.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,9 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-VERSION=3.02
-PATCHLEVEL=pl6
-BUILD=${BUILD:-4}
+VERSION=3.03
+PATCHLEVEL=
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -70,15 +70,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-zcat $CWD/patches/xpdf-resizefix.diff.gz | patch -p1 --verbose || exit 1
-cat $CWD/patches/xpdf-3.02pl1.patch | patch -p1 --verbose || exit 1
-cat $CWD/patches/xpdf-3.02pl2.patch | patch -p1 --verbose || exit 1
-cat $CWD/patches/xpdf-3.02pl3.patch | patch -p1 --verbose || exit 1
-cat $CWD/patches/xpdf-3.02pl4.patch | patch -p1 --verbose || exit 1
-cat $CWD/patches/xpdf-3.02pl5.patch | patch -p1 --verbose || exit 1
-zcat $CWD/patches/xpdf_3.02-1.3.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/xpdfrc.diff.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/03-float.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/xpdf.XPDFViewer.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/xpdf-3.03-CVE-2012-2142.diff.gz | patch -p1 --verbose || exit 1
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -87,9 +81,7 @@ CXXFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--sysconfdir=/etc \
- --with-gzip \
--with-freetype2-includes=/usr/include/freetype2 \
- --without-t1-library \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
@@ -120,15 +112,16 @@ cat xpdf/xpdfIcon.xpm > $PKG/usr/share/pixmaps/xpdfIcon.xpm
# Add additional language support:
for language in xpdf-arabic xpdf-chinese-simplified xpdf-chinese-traditional xpdf-cyrillic xpdf-greek xpdf-hebrew xpdf-japanese xpdf-korean xpdf-latin2 xpdf-thai xpdf-turkish ; do
rm -rf ${language}
- tar xf $CWD/lang/${language}.tar.gz
+ tar xf $CWD/lang/${language}*.tar.gz
( cd ${language}
+ echo "Patching for ${language}:"
zcat $CWD/lang/${language}.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
chown -R root:root .
find . -type f -exec chmod 644 {} \;
cat add-to-xpdfrc >> $PKG/etc/xpdfrc.new
mkdir -p $PKG/usr/share/xpdf/$(echo ${language} | cut -f2- -d -)
cp -a * $PKG/usr/share/xpdf/$(echo ${language} | cut -f2- -d -)
- )
+ ) || exit 1
done
find $PKG | xargs file | grep -e "executable" -e "shared object" \
diff --git a/source/xap/xsane/xsane.SlackBuild b/source/xap/xsane/xsane.SlackBuild
index b301d081e..991cea302 100755
--- a/source/xap/xsane/xsane.SlackBuild
+++ b/source/xap/xsane/xsane.SlackBuild
@@ -22,7 +22,7 @@
VERSION=0.998
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xap/xscreensaver/dump.osx.sources.sh b/source/xap/xscreensaver/dump.osx.sources.sh
new file mode 100755
index 000000000..fc3c5f461
--- /dev/null
+++ b/source/xap/xscreensaver/dump.osx.sources.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+# Repacks the xscreensaver tarball to remove the unneeded OSX sources.
+
+VERSION=${VERSION:-$(echo xscreensaver-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+
+tar xf xscreensaver-${VERSION}.tar.xz || exit 1
+mv xscreensaver-${VERSION}.tar.xz xscreensaver-${VERSION}.tar.xz.orig
+rm -r xscreensaver-${VERSION}/OSX/*
+tar cf xscreensaver-${VERSION}.tar xscreensaver-${VERSION}
+rm -r xscreensaver-${VERSION}
+xz -9 xscreensaver-${VERSION}.tar
+touch -r xscreensaver-${VERSION}.tar.xz.orig xscreensaver-${VERSION}.tar.xz
+rm xscreensaver-${VERSION}.tar.xz.orig
diff --git a/source/xap/xscreensaver/slack-desc b/source/xap/xscreensaver/slack-desc
index 85e2b909c..ea0efe024 100644
--- a/source/xap/xscreensaver/slack-desc
+++ b/source/xap/xscreensaver/slack-desc
@@ -13,7 +13,7 @@ xscreensaver: customizable: allows the use of any program that can draw on the
xscreensaver: root window as a display mode. More than 100 display modes are
xscreensaver: included in this package.
xscreensaver:
-xscreensaver:
+xscreensaver: Homepage: http://www.jwz.org/xscreensaver
xscreensaver:
xscreensaver:
xscreensaver:
diff --git a/source/xap/xscreensaver/xscreensaver.SlackBuild b/source/xap/xscreensaver/xscreensaver.SlackBuild
index 830c4dd9d..b7ca3799b 100755
--- a/source/xap/xscreensaver/xscreensaver.SlackBuild
+++ b/source/xap/xscreensaver/xscreensaver.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,7 +22,7 @@
VERSION=${VERSION:-$(echo xscreensaver-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xap/xxgdb/slack-desc b/source/xap/xxgdb/slack-desc
deleted file mode 100644
index 4905df862..000000000
--- a/source/xap/xxgdb/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-xxgdb: xxgdb (graphical program debugger interface)
-xxgdb:
-xxgdb: Xxgdb is a graphical user interface to the gdb debugger under the X
-xxgdb: Window System. It provides visual feedback and mouse input for the
-xxgdb: user to control program execution through breakpoints, to examine and
-xxgdb: traverse the function call stack, and to display values of variables
-xxgdb: and data structures.
-xxgdb:
-xxgdb:
-xxgdb:
-xxgdb:
diff --git a/source/xap/xxgdb/xxgdb-1.08-glibc.patch b/source/xap/xxgdb/xxgdb-1.08-glibc.patch
deleted file mode 100644
index 6ec7032cd..000000000
--- a/source/xap/xxgdb/xxgdb-1.08-glibc.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- xxgdb/calldbx.c.ewt Thu Aug 29 15:39:07 1996
-+++ xxgdb/calldbx.c Thu Aug 29 15:39:31 1996
-@@ -76,6 +76,7 @@
- #include "global.h"
- #if !(defined(OLDSUNOS) || defined(BSD))
- #include <termio.h>
-+#include <sys/ioctl.h>
- #else
- #include <sgtty.h>
- #endif
diff --git a/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch b/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch
deleted file mode 100644
index c8595731e..000000000
--- a/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- xxgdb-1.12/filemenu.c.build 2009-03-29 12:26:26.000000000 +0200
-+++ xxgdb-1.12/filemenu.c 2009-03-29 12:26:26.000000000 +0200
-@@ -83,6 +83,7 @@
-
- #ifdef SYSV
- #include <stdio.h>
-+#include <stdlib.h>
- #include <sys/param.h>
- #include <sys/types.h>
- #include <dirent.h>
diff --git a/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch b/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch
deleted file mode 100644
index 7a56971f4..000000000
--- a/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff -urNad xxgdb-1.12~/calldbx.c xxgdb-1.12/calldbx.c
---- xxgdb-1.12~/calldbx.c 1996-10-02 10:59:45.000000000 +0200
-+++ xxgdb-1.12/calldbx.c 2008-05-16 17:44:05.000000000 +0200
-@@ -85,8 +85,10 @@
- #include <sys/un.h>
- #endif /* CREATE_IO_WINDOW */
-
--#ifdef SVR4
-+#if defined(SVR4) || defined(UNIX98)
- #define MASTER_CLONE "/dev/ptmx"
-+#endif
-+#ifdef SVR4
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <sys/stropts.h>
-@@ -125,13 +127,14 @@
- {
- int master;
-
--#ifdef SVR4 /* (MJH) Use STREAMS */
-+#if defined(SVR4) || defined(UNIX98)
-
- if((master = open(MASTER_CLONE, O_RDWR)) < 0)
- perror(MASTER_CLONE);
- else
- return master;
--#else
-+#endif
-+#if !defined(SVR4) && !defined(UNIX98)
- int i;
- char c;
-
-@@ -150,7 +153,7 @@
- #ifndef sco
- }
- #endif
--#endif /* SVR4 */
-+#endif /* !defined(SVR4) && !defined(UNIX98) */
-
- #ifdef GDB
- fprintf(stderr, "xxgdb: all ptys in use\n");
-@@ -166,6 +169,25 @@
- {
- int slave;
-
-+#if defined(UNIX98)
-+
-+ int n;
-+ int zero=0;
-+ char ptsname[16];
-+
-+ if (ioctl(master, TIOCGPTN, &n) < 0)
-+ exit(2);
-+ snprintf(ptsname,sizeof(ptsname),"/dev/pts/%i", n);
-+ if (ioctl(master, TIOCSPTLCK, &zero) < 0)
-+ exit(3);
-+ if ((slave = open(ptsname, O_RDWR)) < 0) {
-+ perror(ptsname);
-+ exit(4);
-+ }
-+ return slave;
-+
-+#else
-+
- #ifdef SVR4 /* (MJH) */
- char *slave_name = "unknown";
- extern char *ptsname(int master);
-@@ -193,6 +215,8 @@
- }
- return slave;
- #endif /* SVR4 */
-+
-+#endif /* UNIX98 */
- }
-
- #ifdef CREATE_IO_WINDOW
diff --git a/source/xap/xxgdb/xxgdb-1.12-mandriva.patch b/source/xap/xxgdb/xxgdb-1.12-mandriva.patch
deleted file mode 100644
index 3d384f32c..000000000
--- a/source/xap/xxgdb/xxgdb-1.12-mandriva.patch
+++ /dev/null
@@ -1,993 +0,0 @@
-diff -p -up xxgdb-1.12/command.c.orig xxgdb-1.12/command.c
---- xxgdb-1.12/command.c.orig 2010-05-06 21:43:37.932032547 -0300
-+++ xxgdb-1.12/command.c 2010-05-06 21:43:56.618036569 -0300
-@@ -74,7 +74,7 @@
- *
- * forwardSearch() : forward string search
- * reverseSearch() : reverse string search
-- * Search() : call either forwardSearch() or reverseSearch()
-+ * search() : call either forwardSearch() or reverseSearch()
- * PopupSearch() : command callback for search button
- * DoneSearch() : command callback for DONE button in search panel
- * CreateSearchPopup() : create search panel
-@@ -657,10 +657,8 @@ void PopupSearch(w, client_data, call_da
- * If no text has been entered, the contents of the cut buffer are used
- * for searching.
- */
--static void Search(w, direction, call_data)
-- Widget w;
-- XtPointer direction;
-- XtPointer call_data;
-+static void
-+search(Widget w, XtPointer direction, XtPointer call_data)
- {
- XawTextBlock textblock;
- XawTextPosition pos, left, right;
-@@ -716,7 +714,7 @@ static void Activate(w, event, params, n
- String *params;
- Cardinal *num_params;
- {
-- Search(w, (XtPointer)FORWARD, NULL);
-+ search(w, (XtPointer)FORWARD, NULL);
- DoneSearch(w, (XtPointer)searchPopupShell, NULL);
- }
-
-@@ -747,8 +745,8 @@ static void CreateSearchPopup()
- searchPopup = XtCreateManagedWidget("searchPopup", dialogWidgetClass,
- searchPopupShell, args, n);
-
-- AddButton(searchPopup, "<<", Search, (XtPointer) REVERSE);
-- AddButton(searchPopup, ">>", Search, (XtPointer) FORWARD);
-+ AddButton(searchPopup, "<<", search, (XtPointer) REVERSE);
-+ AddButton(searchPopup, ">>", search, (XtPointer) FORWARD);
- AddButton(searchPopup, "DONE", DoneSearch, (XtPointer)searchPopupShell);
-
- dialogValue = XtNameToWidget(searchPopup, "value");
-diff -p -up xxgdb-1.12/dialog.c.orig xxgdb-1.12/dialog.c
---- xxgdb-1.12/dialog.c.orig 2010-05-06 21:43:37.934032296 -0300
-+++ xxgdb-1.12/dialog.c 2010-05-06 21:44:28.258027728 -0300
-@@ -86,6 +86,12 @@ Boolean FalseSignal = FALSE; /* set to
- static char DialogText[DIALOGSIZE]; /* text buffer for widget */
- static XawTextPosition StartPos; /* starting position of input text */
-
-+static XawTextEditType
-+BeginDelete(Widget w);
-+
-+static void
-+EndDelete(Widget w, XawTextEditType type);
-+
-
- /* This procedure prevents the user from deleting past the prompt, or
- * any text appended by AppendDialogText() to the dialog window.
-@@ -94,11 +100,8 @@ static XawTextPosition StartPos;
- * character() can only delete the space character.
- */
- /* ARGSUSED */
--static void InsertSpace(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+InsertSpace(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- XawTextBlock textblock;
- XawTextPosition lastPos;
-@@ -115,16 +118,70 @@ static void InsertSpace(w, event, params
- }
- }
-
-+static XawTextEditType
-+BeginDelete(Widget w)
-+{
-+ Widget src;
-+ XawTextEditType type;
-+ Arg args[1];
-+
-+ src = XawTextGetSource(w);
-+ XtSetArg(args[0], XtNeditType, &type);
-+ XtGetValues(src, args, 1);
-+ if (type != XawtextEdit) {
-+ XtSetArg(args[0], XtNeditType, XawtextEdit);
-+ XtSetValues(src, args, 1);
-+ }
-+
-+ return (type);
-+}
-+
-+static void
-+EndDelete(Widget w, XawTextEditType type)
-+{
-+ Widget src;
-+ Arg args[1];
-+
-+ if (type != XawtextEdit) {
-+ src = XawTextGetSource(w);
-+ XtSetArg(args[0], XtNeditType, type);
-+ XtSetValues(src, args, 1);
-+ }
-+}
-+
-+/*
-+ * Previous logic of calling actions:
-+ * InsertSpace() delete-previous-char()
-+ * is not going to work because it must create a text in append only
-+ * mode, so, hack it here to actually delete a character...
-+ */
-+void
-+DeleteChar(Widget w, XEvent *event, String *params, Cardinal *num_params)
-+{
-+ XawTextEditType type;
-+ XawTextBlock block;
-+ XawTextPosition point;
-+
-+ if (StartPos < (point = XawTextGetInsertionPoint(w))) {
-+ type = BeginDelete(w);
-+ block.firstPos = 0;
-+ block.length = 0;
-+ block.ptr = "";
-+ block.format = 8;
-+ XawTextReplace(w, point - 1, point, &block);
-+ XawTextSetInsertionPoint(w, point - 1);
-+ EndDelete(w, type);
-+ }
-+}
-+
- /* Erases the preceding word.
- * Simulates the action of the WERASE character (ctrl-W).
- */
- /* ARGSUSED */
--void DeleteWord(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+DeleteWord(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
-+ XawTextEditType type;
- XawTextBlock textblock;
- XawTextPosition pos;
- Cardinal i;
-@@ -138,8 +195,10 @@ void DeleteWord(w, event, params, num_pa
- pos = TextGetLastPos(w);
- for (i=pos; i > StartPos && DialogText[i-1] == ' '; i--);
- for (; i > StartPos && DialogText[i-1] != ' '; i--);
-+ type = BeginDelete(w);
- XawTextReplace(w, i, pos, &textblock);
- XawTextSetInsertionPoint(w, i);
-+ EndDelete(w, type);
- }
-
-
-@@ -147,12 +206,10 @@ void DeleteWord(w, event, params, num_pa
- * simulates the action of the KILL character (ctrl-U).
- */
- /* ARGSUSED */
--void DeleteLine(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+DeleteLine(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
-+ XawTextEditType type;
- XawTextBlock textblock;
- XawTextPosition pos, beginPos;
- Cardinal i;
-@@ -172,8 +229,10 @@ void DeleteLine(w, event, params, num_pa
- return;
- }
- for (i=pos; i > beginPos && s[i-1] != '\n'; i--);
-+ type = BeginDelete(w);
- XawTextReplace(w, i, pos, &textblock);
- XawTextSetInsertionPoint(w, i);
-+ EndDelete(w, type);
- }
-
-
-@@ -183,11 +242,8 @@ void DeleteLine(w, event, params, num_pa
- * it is stored in the global variable, Command.
- */
- /* ARGSUSED */
--static void Dispatch(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+Dispatch(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- #ifdef GDB
- /*
-@@ -249,22 +305,16 @@ void signal_interrupt_dbx()
- * Simulates the action of the INTR character (ctrl-C).
- */
- /* ARGSUSED */
--static void SigInt(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+SigInt(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- signal_interrupt_dbx ();
- }
-
- /* Sends an EOF signal to dbx. (ctrl-D) */
- /* ARGSUSED */
--static void SigEof(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+SigEof(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- write_dbx("\04");
- }
-@@ -274,11 +324,8 @@ static void SigEof(w, event, params, num
- * Simulates the action of the QUIT character (ctrl-\)
- */
- /* ARGSUSED */
--static void SigQuit(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+SigQuit(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- FalseSignal = TRUE;
-
-@@ -301,29 +348,8 @@ Widget parent;
- Arg args[MAXARGS];
- Cardinal n;
-
-- static XtActionsRec dialog_actions[] = {
-- {"SigInt", (XtActionProc) SigInt},
-- {"SigEof", (XtActionProc) SigEof},
-- {"SigQuit", (XtActionProc) SigQuit},
-- {"InsertSpace", (XtActionProc) InsertSpace},
-- {"Dispatch", (XtActionProc) Dispatch},
-- {NULL, NULL}
-- };
--
-- static String translations = "#override\n\
-- Ctrl<Key>C: SigInt()\n\
-- Ctrl<Key>D: SigEof()\n\
-- Ctrl<Key>|: SigQuit()\n\
-- Ctrl<Key>W: DeleteWord()\n\
-- Ctrl<Key>U: DeleteLine()\n\
-- Ctrl<Key>H: InsertSpace() delete-previous-character()\n\
-- <Key>Delete: InsertSpace() delete-previous-character()\n\
-- <Key>BackSpace: InsertSpace() delete-previous-character()\n\
-- <Key>Return: newline() Dispatch()\n\
-- ";
--
- n = 0;
-- XtSetArg(args[n], XtNuseStringInPlace, True); n++;
-+ XtSetArg(args[n], XtNuseStringInPlace, True); n++;
- XtSetArg(args[n], XtNstring, (XtArgVal) DialogText); n++;
- XtSetArg(args[n], XtNlength, (XtArgVal) DIALOGSIZE); n++;
- XtSetArg(args[n], XtNeditType, (XtArgVal) XawtextAppend); n++;
-@@ -331,8 +357,6 @@ Widget parent;
- XtSetArg(args[n], XtNwrap, XawtextWrapWord); n++;
- dialogWindow = XtCreateManagedWidget("dialogWindow", asciiTextWidgetClass,
- parent, args, n );
-- XtOverrideTranslations(dialogWindow, XtParseTranslationTable(translations));
-- XtAppAddActions(app_context, dialog_actions, XtNumber(dialog_actions));
- }
-
- #if 0 /* never used */
-diff -p -up xxgdb-1.12/gdb_parser.c.orig xxgdb-1.12/gdb_parser.c
---- xxgdb-1.12/gdb_parser.c.orig 2010-05-06 21:43:37.936032292 -0300
-+++ xxgdb-1.12/gdb_parser.c 2010-05-06 21:44:36.001027757 -0300
-@@ -1053,7 +1053,6 @@ FILE *f;
- if(errno == EAGAIN || errno == EWOULDBLOCK) {
- break;
- }
-- perror("read from gdb");
- exit(1);
- /*NOTREACHED*/
- }
-diff -p -up xxgdb-1.12/global.h.orig xxgdb-1.12/global.h
---- xxgdb-1.12/global.h.orig 2010-05-06 21:43:37.938031470 -0300
-+++ xxgdb-1.12/global.h 2010-05-06 21:44:48.480028375 -0300
-@@ -111,10 +111,34 @@ extern void read_dbx(); /* get data f
- extern void write_dbx(); /* send data to dbx */
- extern void query_dbx(); /* ask dbx for info */
-
-+extern void
-+PopupSearch(Widget w, XtPointer client_data, XtPointer call_data);
-+
- /* dialog.c */
-+extern void
-+DeleteChar(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+DeleteLine(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+DeleteWord(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+Dispatch(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+InsertSpace(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+SigInt(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+SigEof(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+SigQuit(Widget w, XEvent *event, String *params, Cardinal *num_params);
-
--extern void DeleteLine(); /* delete line action proc */
--extern void DeleteWord(); /* delete word action proc */
- extern void CreateDialogWindow();
- extern void AppendDialogText(); /* append text to buffer */
-
-@@ -163,18 +187,53 @@ extern void UpdateUpdown(); /* update
- extern void UpdateBomb(); /* update position of bomb */
-
- /* source.c */
-+extern void
-+CreateSourceWindow(Widget parent);
-+
-+extern char *
-+GetPathname(char *filename);
-+
-+extern int
-+LoadCurrentFile(void);
-+
-+extern int
-+LoadFile(char *filename);
-+
-+extern void
-+MakeDirList(char *output);
-+
-+extern void
-+NotifyResize(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+PrintSelection(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+Search(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+SelectEnd(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+SelectStart(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+SelectWord(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+source_init(void);
-+
-+extern void
-+Update(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+#ifdef EDIT_BUTTON
-+extern void
-+EdAction(Widget w, XEvent *event, String *params, Cardinal *num_params);
-+
-+extern void
-+StartEditor(void);
-+#endif
-
--extern void SelectStart(); /* modified select-start */
--extern void SelectEnd(); /* modified select-end */
--extern void SelectWord(); /* my select word */
--extern void PrintSelection(); /* select variable and print */
--extern void Update(); /* update line label */
--extern void source_init(); /* init routine */
--extern void CreateSourceWindow();
--extern int LoadFile(); /* display source file */
--extern int LoadCurrentFile(); /* display source file */
--extern char *GetPathname(); /* get full path name of file */
--extern void MakeDirList(); /* maintain list of dirs */
-
- /* utils.c */
-
-diff -p -up xxgdb-1.12/source.c.orig xxgdb-1.12/source.c
---- xxgdb-1.12/source.c.orig 2010-05-06 21:43:37.940032123 -0300
-+++ xxgdb-1.12/source.c 2010-05-06 21:43:56.626028358 -0300
-@@ -106,7 +106,8 @@ static FileRec **fileTable; /* table of
- static int fileTableSize; /* size of file table */
- static char *dirList[MAXDIRS]; /* list of dirs for searching files */
-
--void source_init()
-+void
-+source_init(void)
- {
- dirList[0] = NULL;
- }
-@@ -116,11 +117,8 @@ void source_init()
- * line label.
- */
- /* ARGSUSED */
--void Update(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+extern void
-+Update(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- XawTextPosition pos;
- int topline;
-@@ -171,11 +169,8 @@ void Update(w, event, params, num_params
- * Invoked by ConfigureNotify event.
- */
- /* ARGSUSED */
--static void NotifyResize(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+NotifyResize(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- XawTextPosition pos;
- TextWidget ctx = (TextWidget) sourceWindow;
-@@ -216,11 +211,8 @@ void UpdateLine(w, event, params, num_pa
- * near the bottom of an Athena text widget window.
- */
- /* ARGSUSED */
--void SelectStart(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+SelectStart(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- XawTextPosition topPosition;
-
-@@ -241,11 +233,8 @@ void SelectStart(w, event, params, num_p
- * selection and cut buffer 0.
- */
- /* ARGSUSED */
--void SelectEnd(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+extern void
-+SelectEnd(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- XawTextPosition begin, end, start;
- Widget textsrc;
-@@ -274,11 +263,8 @@ void SelectEnd(w, event, params, num_par
- * It selects a word delimited by DELIMITERS, not whitespace.
- */
- /* ARGSUSED */
--void SelectWord(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+SelectWord(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- XawTextPosition pos, left, right, start;
- XawTextBlock buffer;
-@@ -328,11 +314,8 @@ void SelectWord(w, event, params, num_pa
-
- /* Print the value of the expression in cut buffer 0. */
- /* ARGSUSED */
--void PrintSelection(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+PrintSelection(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- char command[LINESIZ];
- char *string;
-@@ -351,24 +334,16 @@ void PrintSelection(w, event, params, nu
-
- #ifdef EDIT_BUTTON
- /* allow invocation of favorite editor from within interface */
--extern void StartEditor();
--void EdAction(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+EdAction(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- StartEditor();
- }
- #endif /* EDIT_BUTTON */
-
- /* fixes keybindings in source window */
--extern PopupSearch();
--void Search(w, event, params, num_params)
-- Widget w;
-- XEvent *event;
-- String *params;
-- Cardinal *num_params;
-+void
-+Search(Widget w, XEvent *event, String *params, Cardinal *num_params)
- {
- PopupSearch(w, NULL, NULL);
- }
-@@ -383,134 +358,12 @@ void Search(w, event, params, num_params
- have operative keys in the editor window for moving around (move stop
- signs and such around too) */
-
--void CreateSourceWindow(parent)
--Widget parent;
-+void
-+CreateSourceWindow(Widget parent)
- {
-- TextWidget ctx;
- Arg args[MAXARGS];
- Cardinal n;
-
-- static XtActionsRec sbar_actions[] = {
-- {"NotifyResize", NotifyResize},
-- {"Update", Update},
-- {NULL, NULL}
-- };
--
-- /* fixes keybindings in source window */
-- static XtActionsRec text_actions[] = {
-- {"Update", Update},
--#ifdef EDIT_BUTTON
-- {"Editor", EdAction},
--#endif
-- {"Search", Search},
-- {NULL, NULL}
-- };
--
--#ifdef EDIT_BUTTON
--
-- static String eTextTranslations = "#override \n\
-- Ctrl<Key>V: next-page() Update(warp) \n\
-- Meta<Key>V: previous-page() Update(warp) \n\
-- Ctrl<Key>N: next-line() Update() \n\
-- Ctrl<Key>P: previous-line() Update() \n\
-- Ctrl<Key>Z: scroll-one-line-up() Update(warp) \n\
-- Meta<Key>Z: scroll-one-line-down() Update(warp) \n\
-- Meta<Key>]: forward-paragraph() Update(warp) \n\
-- Meta<Key>[: backward-paragraph() Update(warp) \n\
-- Meta<Key>F: forward-word() Update() \n\
-- Meta<Key>B: backward-word() Update() \n\
-- Ctrl<Key>F: forward-character() Update() \n\
-- Ctrl<Key>B: backward-character() Update() \n\
-- Meta<Key>E: Editor() \n\
-- Meta<Key><: beginning-of-file() Update(warp) \n\
-- Meta<Key>>: end-of-file() Update(warp) \n\
-- <Key>L: redraw-display() Update() \n\
-- <Key>S: Search() Update() \n\
-- <Key>R: Search() Update() \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\
-- <Btn1Up>: Update() SelectEnd() \n\
-- ";
--
-- static String vTextTranslations = "#override \n\
-- Ctrl<Key>F: next-page() Update(warp) \n\
-- Ctrl<Key>B: previous-page() Update(warp) \n\
-- Ctrl<Key>D: next-page() Update() \n\
-- Ctrl<Key>U: previous-page() Update() \n\
-- <Key>Return: next-line() Update() \n\
-- <Key>-: previous-line() Update() \n\
-- <Key>j: next-line() Update() \n\
-- <Key>k: previous-line() Update() \n\
-- <Key>space: forward-character() Update() \n\
-- <Key>BackSpace: backward-character() Update() \n\
-- <Key>1: beginning-of-file() Update(warp) \n\
-- <Key>G: end-of-file() Update(warp) \n\
-- <Key>E: Editor() \n\
-- <Key>L: redraw-display() Update() \n\
-- <Key>/: Search() Update() \n\
-- <Key>?: Search() Update() \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\
-- <Btn1Up>: Update() SelectEnd() \n\
-- ";
--
--#else /* not EDIT_BUTTON */
--
-- static String eTextTranslations = "#override \n\
-- Ctrl<Key>V: next-page() Update(warp) \n\
-- Meta<Key>V: previous-page() Update(warp) \n\
-- Ctrl<Key>N: next-line() Update() \n\
-- Ctrl<Key>P: previous-line() Update() \n\
-- Ctrl<Key>Z: scroll-one-line-up() Update(warp) \n\
-- Meta<Key>Z: scroll-one-line-down() Update(warp) \n\
-- Meta<Key>]: forward-paragraph() Update(warp) \n\
-- Meta<Key>[: backward-paragraph() Update(warp) \n\
-- Meta<Key>F: forward-word() Update() \n\
-- Meta<Key>B: backward-word() Update() \n\
-- Ctrl<Key>F: forward-character() Update() \n\
-- Ctrl<Key>B: backward-character() Update() \n\
-- Meta<Key><: beginning-of-file() Update(warp) \n\
-- Meta<Key>>: end-of-file() Update(warp) \n\
-- <Key>L: redraw-display() Update() \n\
-- <Key>S: Search() Update() \n\
-- <Key>R: Search() Update() \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\
-- <Btn1Up>: Update() SelectEnd() \n\
-- ";
--
-- static String vTextTranslations = "#override \n\
-- Ctrl<Key>F: next-page() Update(warp) \n\
-- Ctrl<Key>B: previous-page() Update(warp) \n\
-- Ctrl<Key>D: next-page() Update() \n\
-- Ctrl<Key>U: previous-page() Update() \n\
-- <Key>Return: next-line() Update() \n\
-- <Key>-: previous-line() Update() \n\
-- <Key>j: next-line() Update() \n\
-- <Key>k: previous-line() Update() \n\
-- <Key>space: forward-character() Update() \n\
-- <Key>BackSpace: backward-character() Update() \n\
-- <Key>1: beginning-of-file() Update(warp) \n\
-- <Key>G: end-of-file() Update(warp) \n\
-- <Key>L: redraw-display() Update() \n\
-- <Key>/: Search() Update() \n\
-- <Key>?: Search() Update() \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\
-- <Btn1Up>: Update() SelectEnd() \n\
-- ";
--
--#endif /* EDIT_BUTTON */
--
-- /* fixes keybindings in source window */
-- static String sbarTranslations = "\
-- <Configure>: NotifyResize() \n\
-- <Btn2Down>: StartScroll(Continuous) MoveThumb() NotifyThumb() \
-- Update() \n\
-- <Btn2Motion>: MoveThumb() NotifyThumb() Update() \n\
-- <BtnUp>: NotifyScroll(Proportional) EndScroll() Update() \n\
-- ";
--
- n = 0;
- XtSetArg(args[n], XtNdefaultDistance, 0); n++;
- sourceForm = XtCreateManagedWidget("sourceForm", formWidgetClass,
-@@ -523,27 +376,6 @@ Widget parent;
- XtSetArg(args[n], XtNscrollVertical, (XtArgVal) XawtextScrollAlways);n++;
- sourceWindow = XtCreateManagedWidget("sourceWindow", asciiTextWidgetClass,
- sourceForm, args, n);
--
-- ctx = (TextWidget) sourceWindow;
-- if (ctx->text.vbar)
-- XtOverrideTranslations(ctx->text.vbar,
-- XtParseTranslationTable(sbarTranslations));
-- XtAppAddActions(app_context, sbar_actions, XtNumber(sbar_actions));
--
-- /* fixes keybindings in source window */
-- XtAppAddActions(app_context, text_actions, XtNumber(text_actions));
-- if (app_resources.bindings && strcmp(app_resources.bindings, "vi") == 0)
-- XtOverrideTranslations((Widget) ctx, XtParseTranslationTable(vTextTranslations));
-- else
-- XtOverrideTranslations((Widget) ctx, XtParseTranslationTable(eTextTranslations));
--
-- /* setup tabulation */
-- if (app_resources.tabstop >= 0) {
-- int tab, tabs[256];
-- for (n = 0, tab = 0; n < sizeof tabs / sizeof *tabs; n++)
-- tabs[n] = (tab += app_resources.tabstop);
-- XawTextSinkSetTabs(ctx->text.sink, sizeof tabs / sizeof *tabs, tabs);
-- }
- }
-
-
-@@ -553,8 +385,8 @@ Widget parent;
- * > Starting position of line #1 is 0, and is stored in linepos[1].
- * > Search for '\n' till end of buffer.
- */
--static void BuildLinePos(file)
--FileRec *file;
-+static void
-+BuildLinePos(FileRec *file)
- {
- char *p;
- int line, nlines;
-@@ -587,7 +419,8 @@ FileRec *file;
- * there might be another path to the same files.
- */
-
--static void CheckLookUpFileTable()
-+static void
-+CheckLookUpFileTable(void)
- {
- int i;
- char * newfullname;
-@@ -639,7 +472,8 @@ static void CheckLookUpFileTable()
- * display if necessary.
- *
- */
--void CleanUpFileTable ()
-+void
-+CleanUpFileTable(void)
- {
- CheckLookUpFileTable();
- if (displayedFile == NULL)
-@@ -651,9 +485,8 @@ void CleanUpFileTable ()
- * If not found, create an entry and initialize proper fields,
- * else, return pointer to entry found.
- */
--static int LookUpFileTable(pathname, filename, file)
--char *pathname, *filename;
--FileRec **file;
-+static int
-+LookUpFileTable(char *pathname, char *filename, FileRec **file)
- {
- struct stat fileinfo;
- int fd;
-@@ -754,7 +587,8 @@ FileRec **file;
- /*
- * Remember file position and current line before closing.
- */
--static void SaveDisplayedFileInfo()
-+static void
-+SaveDisplayedFileInfo(void)
- {
- XawTextPosition pos;
-
-@@ -771,8 +605,8 @@ static void SaveDisplayedFileInfo()
- * must recalculate bottomline because the window size might be
- * different.
- */
--static void DisplayFile(file)
--FileRec *file;
-+static void
-+DisplayFile(FileRec *file)
- {
- Arg args[MAXARGS];
- Cardinal n;
-@@ -792,8 +626,8 @@ FileRec *file;
- * the home directory of that user, or to the login home directory if user
- * is not specified.
- */
--static char *expand(filename)
--char *filename;
-+static char *
-+expand(char *filename)
- {
- struct passwd *pwd;
- char *string, *name, newfile[MAXNAME];
-@@ -821,8 +655,8 @@ char *filename;
- *
- * With fix from Dave Gagne (daveg@fs1.ee.ubc.ca) 7/30/90
- */
--void MakeDirList(output)
--char *output;
-+void
-+MakeDirList(char *output)
- {
- /* fix bug where if text of a directories command is > 1k, crashes. Now works to 4k */
- char *s, list[LINESIZ], command[LINESIZ];
-@@ -889,8 +723,8 @@ char *output;
- /* Returns the full pathname of a given file.
- * It searches for the file from a list of directories.
- */
--char *GetPathname(filename)
--char *filename;
-+char *
-+GetPathname(char *filename)
- {
- char pathname[LINESIZ];
- int i;
-@@ -949,8 +783,8 @@ char *filename;
- * 5. update the file label and the various signs on the source window.
- * LoadFile returns 0 upon successful completion, -1 otherwise.
- */
--int LoadFile(filename)
--char *filename;
-+int
-+LoadFile(char *filename)
- {
- FileRec *file;
- char *pathname;
-@@ -980,7 +814,8 @@ char *filename;
- }
- }
-
--int LoadCurrentFile()
-+int
-+LoadCurrentFile(void)
- {
- #ifdef GDB
- query_gdb ("info line\n", PARSE_ON | ECHO_OFF | FILTER_OFF);
-@@ -991,10 +826,11 @@ int LoadCurrentFile()
- }
-
- #ifdef EDIT_BUTTON
--/* simply add editor button that calls $XXGDBWINEDIT, $WINEDIT, xxgdbedit in that order */
-+/* simply add editor button that calls $EDITOR and xedit in that order */
- /* allow invocation of fav. editor from within interface */
- /* button and the EdAction action procedure for the source window */
--void StartEditor ()
-+void
-+StartEditor(void)
- {
- XawTextPosition pos;
- char* editor;
-@@ -1002,11 +838,9 @@ void StartEditor ()
- int result;
-
- if (displayedFile == NULL) return;
-- editor = (char *) getenv("XXGDBWINEDIT");
-- if (editor == NULL)
-- editor = (char *) getenv("WINEDIT");
-+ editor = (char *) getenv("EDITOR");
- if (editor == NULL)
-- editor = "xxgdbedit";
-+ editor = "xedit";
- pos = XawTextGetInsertionPoint(sourceWindow);
- displayedFile->currentline = TextPositionToLine(pos);
- sprintf(string, "nohup %s +%d %s&\n",
-@@ -1043,8 +877,7 @@ void StartEditor ()
- *
- */
- char *
--GetSourcePathname (filename)
--char *filename;
-+GetSourcePathname(char *filename)
- {
- char *srcpath;
- char curr_src [MAXPATHLEN];
-diff -p -up xxgdb-1.12/XDbx.ad.orig xxgdb-1.12/XDbx.ad
---- xxgdb-1.12/XDbx.ad.orig 2010-05-06 21:43:37.942032512 -0300
-+++ xxgdb-1.12/XDbx.ad 2010-05-06 21:43:56.626028358 -0300
-@@ -19,31 +19,41 @@
- *sourceForm.preferredPaneSize: 320
- *sourceWindow.leftMargin: 35
- *sourceWindow.scrollHorizontal: whenNeeded
--*sourceWindow.translations: #override \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: Update(warp) SelectEnd() PrintSelection() \n\
-- <Btn1Up>: Update(warp) SelectEnd() \n\
-- <Key>Down: next-line() Update()\n\
-- <Key>Up: previous-line() Update() \n\
-- Ctrl<Key>L: redraw-display() Update() \n\
-- Ctrl<Key>N: next-line() Update() \n\
-- Ctrl<Key>P: previous-line() Update() \n\
-- Ctrl<Key>V: next-page() Update() \n\
-- Ctrl<Key>Z: scroll-one-line-up() Update() \n\
-- Meta<Key>V: previous-page() Update() \n\
-- Meta<Key>Z: scroll-one-line-down() Update() \n\
-- :Meta<Key>\>: end-of-file() Update() \n\
-- :Meta<Key>]: forward-paragraph() Update() \n\
-- :Meta<Key>[: backward-paragraph() Update()
-+*sourceWindow.translations: #override \
-+ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\
-+ Shift<Btn1Up>: Update(warp) SelectEnd() PrintSelection()\n\
-+ <Btn1Up>: Update(warp) SelectEnd()\n\
-+ <Key>Down: next-line() Update()\n\
-+ <Key>Up: previous-line() Update()\n\
-+ Ctrl<Key>L: redraw-display() Update()\n\
-+ Ctrl<Key>N: next-line() Update()\n\
-+ Ctrl<Key>P: previous-line() Update()\n\
-+ Ctrl<Key>V: next-page() Update()\n\
-+ Ctrl<Key>Z: scroll-one-line-up() Update()\n\
-+ Meta<Key>V: previous-page() Update()\n\
-+ Meta<Key>Z: scroll-one-line-down() Update()\n\
-+ :Meta<Key>\>: end-of-file() Update()\n\
-+ :Meta<Key>]: forward-paragraph() Update()\n\
-+ :Meta<Key>[: backward-paragraph() Update()
- *messageWindow*font: variable
- *messageWindow.min: 30
- *messageWindow.max: 30
- *dialogWindow.preferredPaneSize: 200
- *dialogWindow.resizeToPreferred: True
--*dialogWindow.translations: #override \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: SelectEnd() PrintSelection() \n\
-- <Btn1Up>: SelectEnd() \n
-+*dialogWindow.translations: #override \
-+ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\
-+ Shift<Btn1Up>: SelectEnd() PrintSelection()\n\
-+ <Btn1Up>: SelectEnd()\n\
-+ Ctrl<Key>C: SigInt()\n\
-+ Ctrl<Key>D: SigEof()\n\
-+ Ctrl<Key>|: SigQuit()\n\
-+ <Key>Tab: no-op(r)\n\
-+ Ctrl<Key>W: DeleteWord()\n\
-+ Ctrl<Key>U: DeleteLine()\n\
-+ Ctrl<Key>H: DeleteChar()\n\
-+ <Key>Delete: DeleteChar()\n\
-+ <Key>BackSpace: DeleteChar()\n\
-+ <Key>Return: newline() Dispatch()
- *commandWindow.preferredPaneSize: 135
- *commandWindow.skipAdjust: True
- !*commandWindow.hSpace: 14
-@@ -55,8 +65,8 @@
- *displayWindow.skipAdjust: True
- *displayWindow.scrollVertical: whenNeeded
- *displayWindow.scrollHorizontal: whenNeeded
--*displayWindow.translations: #override \n\
-- <Btn1Down>: SelectStart() SelectWord() \n\
-- Shift<Btn1Up>: SelectEnd() PrintSelection() \n\
-- <Btn1Up>: SelectEnd() \n
-+*displayWindow.translations: #override \
-+ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\
-+ Shift<Btn1Up>: SelectEnd() PrintSelection()\n\
-+ <Btn1Up>: SelectEnd()
- *popup*showGrip: False
-diff -p -up xxgdb-1.12/xdbx.c.orig xxgdb-1.12/xdbx.c
---- xxgdb-1.12/xdbx.c.orig 2010-05-06 21:43:37.944031595 -0300
-+++ xxgdb-1.12/xdbx.c 2010-05-06 21:43:56.628036652 -0300
-@@ -191,19 +191,11 @@ String fallback_resources[] = {
- #endif
- "*sourceWindow.leftMargin: 35",
- "*sourceWindow.scrollHorizontal: whenNeeded",
-- "*sourceWindow.translations: #override \\n\
-- <Btn1Down>: SelectStart() SelectWord() \\n\
-- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \\n\
-- <Btn1Up>: Update() SelectEnd() \\n",
- "*messageWindow*font: variable",
- "*messageWindow.min: 30",
- "*messageWindow.max: 30",
- "*dialogWindow.preferredPaneSize: 240",
- "*dialogWindow.resizeToPreferred: True",
-- "*dialogWindow.translations: #override \\n\
-- <Btn1Down>: SelectStart() SelectWord() \\n\
-- Shift<Btn1Up>: SelectEnd() PrintSelection() \\n\
-- <Btn1Up>: SelectEnd() \\n",
- #ifdef NEW_INTERFACE
- "*commandShell.geometry: 190x370+590+0",
- #else
-@@ -229,10 +221,6 @@ String fallback_resources[] = {
- #endif
- "*displayWindow.scrollVertical: whenNeeded",
- "*displayWindow.scrollHorizontal: whenNeeded",
-- "*displayWindow.translations: #override \\n\
-- <Btn1Down>: SelectStart() SelectWord() \\n\
-- Shift<Btn1Up>: SelectEnd() PrintSelection() \\n\
-- <Btn1Up>: SelectEnd() \\n",
- "*popup*showGrip: False",
- "*bindings: emacs",
- NULL,
-@@ -271,14 +259,25 @@ static XrmOptionDescRec options[] = {
- };
-
- XtActionsRec xdbx_actions[] = {
-- {"SelectStart", (XtActionProc) SelectStart},
-- {"SelectEnd", (XtActionProc) SelectEnd},
-- {"SelectWord", (XtActionProc) SelectWord},
-- {"PrintSelection", (XtActionProc) PrintSelection},
-- {"Update", (XtActionProc) Update},
-- {"DeleteWord", (XtActionProc) DeleteWord},
-- {"DeleteLine", (XtActionProc) DeleteLine},
-- {NULL, NULL}
-+#ifdef EDIT_BUTTON
-+ {"Editor", EdAction},
-+#endif
-+ {"DeleteChar", DeleteChar},
-+ {"DeleteLine", DeleteLine},
-+ {"DeleteWord", DeleteWord},
-+ {"Dispatch", Dispatch},
-+ {"InsertSpace", InsertSpace},
-+ {"NotifyResize", NotifyResize},
-+ {"PrintSelection", PrintSelection},
-+ {"Search", Search},
-+ {"SelectEnd", SelectEnd},
-+ {"SelectStart", SelectStart},
-+ {"SelectWord", SelectWord},
-+ {"SigEof", SigEof},
-+ {"SigInt", SigInt},
-+ {"SigQuit", SigQuit},
-+ {"Update", Update},
-+ {NULL, NULL}
- };
-
- static void Syntax(call)
diff --git a/source/xap/xxgdb/xxgdb-1.12-sysv.patch b/source/xap/xxgdb/xxgdb-1.12-sysv.patch
deleted file mode 100644
index e8b14b78d..000000000
--- a/source/xap/xxgdb/xxgdb-1.12-sysv.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- xxgdb-1.12/source.c~ Fri Apr 21 12:16:02 1995
-+++ xxgdb-1.12/source.c Mon Dec 2 17:42:39 1996
-@@ -79,7 +79,7 @@
- #endif
- #include <stdlib.h>
-
--#include <X11/Xos.h>
-+/* #include <X11/Xos.h> */
- #include <sys/stat.h>
- #include <pwd.h>
- #include "global.h"
---- xxgdb-1.12/global.h~ Thu Apr 6 12:23:42 1995
-+++ xxgdb-1.12/global.h Mon Dec 2 17:38:21 1996
-@@ -62,8 +62,9 @@
- *
- * Contain extern declarations of variables and functions.
- */
--
-+#undef SYSV
- #include "defs.h"
-+#define SYSV
-
-
- #if defined(__GNUC__) && !defined(alloca)
diff --git a/source/xap/xxgdb/xxgdb.SlackBuild b/source/xap/xxgdb/xxgdb.SlackBuild
deleted file mode 100755
index a1453e05f..000000000
--- a/source/xap/xxgdb/xxgdb.SlackBuild
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/bin/sh
-
-# Copyright 2008, 2009-2011 Patrick J. Volkerding, Sebeka, MN, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-
-PKGNAM=xxgdb
-VERSION=${VERSION:-1.12}
-BUILD=${BUILD:-3}
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-${PKGNAM}
-rm -rf $PKG
-mkdir -p $TMP $PKG
-
-# Automatically determine the architecture we're building on:
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
- esac
-fi
-
-# Set compile flags:
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-march=i486 -mtune=i686"
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
-fi
-
-# Extract source:
-cd $TMP
-rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1
-cd ${PKGNAM}-$VERSION || exit 1
-
-# Apply patches:
-# The patches were taken from Mandriva's SRPM and address build issues
-# and run-time issues on x86_64.
-for pf in $CWD/*patch.xz ; do
- { xz -dc $pf | patch -p1 ;} || exit 1
-done
-
-# Make sure ownerships and permissions are sane:
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-xmkmf || exit 1
-make CCOPTIONS="$SLKCFLAGS" || exit 1
-make install DESTDIR="$PKG"
-make install.man DESTDIR="$PKG"
-
-# Strip binaries:
-find $PKG | xargs file | grep -e "executable" -e "shared object" \
- | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-# Compress and link manpages, if any:
-if [ -d $PKG/usr/man ]; then
- ( cd $PKG/usr/man
- for manpagedir in $(find . -type d -name "man*") ; do
- ( cd $manpagedir
- for eachpage in $( find . -type l -maxdepth 1) ; do
- ln -s $( readlink $eachpage ).gz $eachpage.gz
- rm $eachpage
- done
- gzip -9 *.*
- )
- done
- )
-fi
-
-# Compress info files, if any:
-if [ -d $PKG/usr/info ]; then
- ( cd $PKG/usr/info
- rm -f dir
- gzip -9 *
- )
-fi
-
-# Add a documentation directory:
-mkdir -p ${PKG}/usr/doc/${PKGNAM}-$VERSION
-cp -a \
- *README* XDbx.NEW_INTERFACE \
- $PKG/usr/doc/${PKGNAM}-$VERSION
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-# Build the package:
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/xfce/Terminal/Terminal.SlackBuild b/source/xfce/Terminal/Terminal.SlackBuild
deleted file mode 100755
index f5335b2e8..000000000
--- a/source/xfce/Terminal/Terminal.SlackBuild
+++ /dev/null
@@ -1,120 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Xfce Terminal
-
-# Copyright 2010,2011 Robby Workman, Northport, Alabama, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PKGNAM=Terminal
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
-
-NUMJOBS=${NUMJOBS:--j6}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
-cd $PKGNAM-$VERSION || exit 1
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc/xfce \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --disable-debug \
- --build=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-# Compress and link manpages, if any:
-if [ -d $PKG/usr/man ]; then
- ( cd $PKG/usr/man
- for manpagedir in $(find . -type d -name "man*") ; do
- ( cd $manpagedir
- for eachpage in $( find . -type l -maxdepth 1) ; do
- ln -s $( readlink $eachpage ).gz $eachpage.gz
- rm $eachpage
- done
- gzip -9 *.?
- )
- done
- )
-fi
-
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a \
- AUTHORS COPYING* HACKING INSTALL NEWS README* THANKS TODO \
- $PKG/usr/doc/$PKGNAM-$VERSION
-
-# If there's a ChangeLog, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
-fi
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/xfce/Terminal/slack-desc b/source/xfce/Terminal/slack-desc
deleted file mode 100644
index 23121078f..000000000
--- a/source/xfce/Terminal/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-Terminal: Terminal (Xfce's Terminal Emulator)
-Terminal:
-Terminal: This is the Terminal emulator application. Terminal is a lightweight
-Terminal: and easy to use terminal emulator for the X windowing system, with
-Terminal: some new ideas and features that makes it unique among X terminal
-Terminal: emulators.
-Terminal:
-Terminal:
-Terminal:
-Terminal:
-Terminal:
diff --git a/source/xfce/Thunar/Thunar.SlackBuild b/source/xfce/Thunar/Thunar.SlackBuild
index 54f72b77f..9a49b089d 100755
--- a/source/xfce/Thunar/Thunar.SlackBuild
+++ b/source/xfce/Thunar/Thunar.SlackBuild
@@ -22,7 +22,7 @@
PKGNAM=Thunar
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -64,6 +64,8 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
cd $PKGNAM-$VERSION || exit 1
+find . -exec touch {} \;
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/xfce/exo/exo.SlackBuild b/source/xfce/exo/exo.SlackBuild
index a3189a584..efb86758a 100755
--- a/source/xfce/exo/exo.SlackBuild
+++ b/source/xfce/exo/exo.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,7 +22,7 @@
PKGNAM=exo
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -64,6 +64,10 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
cd $PKGNAM-$VERSION || exit 1
+zcat $CWD/exo.magnet.uri.diff.gz | patch -p1 --verbose || exit 1
+
+find . -exec touch {} \;
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/xfce/exo/exo.magnet.uri.diff b/source/xfce/exo/exo.magnet.uri.diff
new file mode 100644
index 000000000..336ca2121
--- /dev/null
+++ b/source/xfce/exo/exo.magnet.uri.diff
@@ -0,0 +1,49 @@
+From 05848bb3cb10ea19ef8cba607bdabcd25560063c Mon Sep 17 00:00:00 2001
+From: Felipe Contreras <felipe.contreras@gmail.com>
+Date: Sun, 19 May 2013 03:50:01 +0000
+Subject: Fix exo_str_looks_like_an_uri() (bug #10098).
+
+Commit d11199b (Check if uris also contain a slash (bug #9244)) tried to
+fix a hang in thunar by properly recognizing that 'http:' is not an URI,
+however, while doing so, it broke proper URIs like 'magnet:foo'.
+
+As the RFC clearly states:
+
+ The following are two example URIs and their component parts:
+
+ foo://example.com:8042/over/there?name=ferret#nose
+ \_/ \______________/\_________/ \_________/ \__/
+ | | | | |
+ scheme authority path query fragment
+ | _____________________|__
+ / \ / \
+ urn:example:animal:ferret:nose
+
+But even with this succinct example exo_str_looks_like_an_uri() fails.
+
+There is an easy solution; fail only when component part is missing
+('urn:'), but succeed otherwise.
+
+This solution fixes 'magnet:foo', and doesn't break the current
+expectation from thunar that 'http:' should fail, having the best of
+both worlds.
+
+[1] http://www.ietf.org/rfc/rfc3986.txt
+
+Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
+---
+diff --git a/exo/exo-string.c b/exo/exo-string.c
+index 33f86f9..056b36a 100644
+--- a/exo/exo-string.c
++++ b/exo/exo-string.c
+@@ -429,7 +429,7 @@ exo_str_looks_like_an_uri (const gchar *str)
+ for (++s; g_ascii_isalnum (*s) || *s == '+' || *s == '-' || *s == '.'; ++s);
+
+ /* <scheme> must be followed by ":" */
+- return (*s == ':' && *(s+1) == '/');
++ return (*s == ':' && *(s+1) != '\0');
+ }
+
+ return FALSE;
+--
+cgit v0.9.2
diff --git a/source/xfce/libxfce4ui/libxfce4ui.SlackBuild b/source/xfce/libxfce4ui/libxfce4ui.SlackBuild
index 3762c747d..e1e02e9d0 100755
--- a/source/xfce/libxfce4ui/libxfce4ui.SlackBuild
+++ b/source/xfce/libxfce4ui/libxfce4ui.SlackBuild
@@ -22,7 +22,7 @@
PKGNAM=libxfce4ui
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
diff --git a/source/xfce/libxfcegui4/libxfcegui4.SlackBuild b/source/xfce/libxfcegui4/libxfcegui4.SlackBuild
index d4af97ff8..8616491d3 100755
--- a/source/xfce/libxfcegui4/libxfcegui4.SlackBuild
+++ b/source/xfce/libxfcegui4/libxfcegui4.SlackBuild
@@ -22,7 +22,7 @@
PKGNAM=libxfcegui4
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
diff --git a/source/xfce/orage/orage.SlackBuild b/source/xfce/orage/orage.SlackBuild
index 9342007ce..ffa62aeb2 100755
--- a/source/xfce/orage/orage.SlackBuild
+++ b/source/xfce/orage/orage.SlackBuild
@@ -24,7 +24,7 @@
PKGNAM=orage
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/xfce/tumbler/set-gststate-on-error.diff b/source/xfce/tumbler/set-gststate-on-error.diff
new file mode 100644
index 000000000..042c03ecd
--- /dev/null
+++ b/source/xfce/tumbler/set-gststate-on-error.diff
@@ -0,0 +1,23 @@
+Description: Close file on error
+Origin: other, https://bugzilla.xfce.org/attachment.cgi?id=4447
+Bug: https://bugzilla.xfce.org/show_bug.cgi?id=8303
+Bug-Ubuntu: https://launchpad.net/bugs/995918
+
+--- tumbler-0.1.25.orig/plugins/gst-thumbnailer/gst-thumbnailer.c
++++ tumbler-0.1.25/plugins/gst-thumbnailer/gst-thumbnailer.c
+@@ -233,6 +233,7 @@ make_pipeline (TumblerFileInfo *info,
+ if (state == GST_STATE_CHANGE_FAILURE || state == GST_STATE_CHANGE_ASYNC)
+ {
+ LOG ("failed to or still changing state, aborting (state change %d)", state);
++ gst_element_set_state (playbin, GST_STATE_NULL);
+ g_object_unref (playbin);
+ return NULL;
+ }
+@@ -241,6 +242,7 @@ make_pipeline (TumblerFileInfo *info,
+ if (n_video == 0)
+ {
+ LOG ("no video stream, aborting");
++ gst_element_set_state (playbin, GST_STATE_NULL);
+ g_object_unref (playbin);
+ return NULL;
+ }
diff --git a/source/xfce/tumbler/tumbler.SlackBuild b/source/xfce/tumbler/tumbler.SlackBuild
index 2b1649132..97c3ff5aa 100755
--- a/source/xfce/tumbler/tumbler.SlackBuild
+++ b/source/xfce/tumbler/tumbler.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,7 +22,7 @@
PKGNAM=tumbler
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -64,6 +64,8 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
cd $PKGNAM-$VERSION || exit 1
+zcat $CWD/set-gststate-on-error.diff.gz | patch -p1 --verbose || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/source/xfce/xfce-build-all.sh b/source/xfce/xfce-build-all.sh
index 0ad32cc74..bf249216e 100755
--- a/source/xfce/xfce-build-all.sh
+++ b/source/xfce/xfce-build-all.sh
@@ -44,7 +44,7 @@ for package in \
xfce4-appfinder \
gtk-xfce-engine \
xfwm4-themes \
- Terminal \
+ xfce4-terminal \
orage \
xfce4-mixer \
thunar-volman \
diff --git a/source/xfce/xfce4-clipman-plugin/xfce4-clipman-plugin.SlackBuild b/source/xfce/xfce4-clipman-plugin/xfce4-clipman-plugin.SlackBuild
index 813c32d9c..01329094c 100755
--- a/source/xfce/xfce4-clipman-plugin/xfce4-clipman-plugin.SlackBuild
+++ b/source/xfce/xfce4-clipman-plugin/xfce4-clipman-plugin.SlackBuild
@@ -24,7 +24,7 @@
PKGNAM=xfce4-clipman-plugin
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xfce/xfce4-notifyd/xfce4-notifyd.SlackBuild b/source/xfce/xfce4-notifyd/xfce4-notifyd.SlackBuild
index 1a793217f..af500ff2b 100755
--- a/source/xfce/xfce4-notifyd/xfce4-notifyd.SlackBuild
+++ b/source/xfce/xfce4-notifyd/xfce4-notifyd.SlackBuild
@@ -26,7 +26,7 @@
PKGNAM=xfce4-notifyd
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xfce/xfce4-panel/xfce4-panel.SlackBuild b/source/xfce/xfce4-panel/xfce4-panel.SlackBuild
index 425cc3d33..37620b8c1 100755
--- a/source/xfce/xfce4-panel/xfce4-panel.SlackBuild
+++ b/source/xfce/xfce4-panel/xfce4-panel.SlackBuild
@@ -22,7 +22,7 @@
PKGNAM=xfce4-panel
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
diff --git a/source/xfce/xfce4-power-manager/xfce4-power-manager.SlackBuild b/source/xfce/xfce4-power-manager/xfce4-power-manager.SlackBuild
index 37229cd81..f378984fb 100755
--- a/source/xfce/xfce4-power-manager/xfce4-power-manager.SlackBuild
+++ b/source/xfce/xfce4-power-manager/xfce4-power-manager.SlackBuild
@@ -26,7 +26,7 @@
PKGNAM=xfce4-power-manager
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/xfce/xfce4-screenshooter/xfce4-screenshooter.SlackBuild b/source/xfce/xfce4-screenshooter/xfce4-screenshooter.SlackBuild
index 791a78f00..91bcba5fd 100755
--- a/source/xfce/xfce4-screenshooter/xfce4-screenshooter.SlackBuild
+++ b/source/xfce/xfce4-screenshooter/xfce4-screenshooter.SlackBuild
@@ -24,7 +24,7 @@
PKGNAM=xfce4-screenshooter
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/xfce/xfce4-session/xfce4-session.SlackBuild b/source/xfce/xfce4-session/xfce4-session.SlackBuild
index 081a13786..27385bb0b 100755
--- a/source/xfce/xfce4-session/xfce4-session.SlackBuild
+++ b/source/xfce/xfce4-session/xfce4-session.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,7 +22,7 @@
PKGNAM=xfce4-session
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -64,8 +64,6 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
cd $PKGNAM-$VERSION || exit 1
-zcat $CWD/patches/load_systemwide_Xmodmap_file.diff.gz | patch -p1 || exit 1
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -81,7 +79,7 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --enable-libgnome-keyring \
+ --disable-systemd \
--disable-static \
--disable-debug \
--build=$ARCH-slackware-linux || exit 1
diff --git a/source/xfce/xfce4-systemload-plugin/xfce4-systemload-plugin.SlackBuild b/source/xfce/xfce4-systemload-plugin/xfce4-systemload-plugin.SlackBuild
index dbe0343ed..35501f90a 100755
--- a/source/xfce/xfce4-systemload-plugin/xfce4-systemload-plugin.SlackBuild
+++ b/source/xfce/xfce4-systemload-plugin/xfce4-systemload-plugin.SlackBuild
@@ -26,7 +26,7 @@
PKGNAM=xfce4-systemload-plugin
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/xfce/xfce4-taskmanager/xfce4-taskmanager.SlackBuild b/source/xfce/xfce4-taskmanager/xfce4-taskmanager.SlackBuild
index df702f0f6..7deedb8bc 100755
--- a/source/xfce/xfce4-taskmanager/xfce4-taskmanager.SlackBuild
+++ b/source/xfce/xfce4-taskmanager/xfce4-taskmanager.SlackBuild
@@ -24,7 +24,7 @@
PKGNAM=xfce4-taskmanager
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/source/xfce/xfce4-terminal/slack-desc b/source/xfce/xfce4-terminal/slack-desc
new file mode 100644
index 000000000..a76b06b85
--- /dev/null
+++ b/source/xfce/xfce4-terminal/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+xfce4-terminal: xfce4-terminal (Xfce's Terminal Emulator)
+xfce4-terminal:
+xfce4-terminal: This is the Xfce terminal emulator application. xfce4-terminal is
+xfce4-terminal: a lightweight and easy to use terminal emulator for the X windowing
+xfce4-terminal: system, with some new ideas and features that make it unique among
+xfce4-terminal: X terminal emulators.
+xfce4-terminal:
+xfce4-terminal:
+xfce4-terminal:
+xfce4-terminal:
+xfce4-terminal:
diff --git a/source/xfce/xfce4-terminal/xfce4-terminal.SlackBuild b/source/xfce/xfce4-terminal/xfce4-terminal.SlackBuild
new file mode 100755
index 000000000..2be3045a7
--- /dev/null
+++ b/source/xfce/xfce4-terminal/xfce4-terminal.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/sh
+
+# Slackware build script for xfce4-terminal
+
+# Copyright 2010,2011,2012 Robby Workman, Northport, Alabama, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PKGNAM=xfce4-terminal
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+NUMJOBS=${NUMJOBS:--j6}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc/xfce \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-debug \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING* HACKING INSTALL NEWS README* THANKS TODO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild b/source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild
index d2d290b52..6a1d0cf26 100755
--- a/source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild
+++ b/source/xfce/xfce4-weather-plugin/xfce4-weather-plugin.SlackBuild
@@ -24,7 +24,7 @@
PKGNAM=xfce4-weather-plugin
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -69,6 +69,7 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+GEONAMES_USERNAME="slackware" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/source/xfce/xfwm4/xfwm4.SlackBuild b/source/xfce/xfwm4/xfwm4.SlackBuild
index 7855b84e5..e9ad40dc2 100755
--- a/source/xfce/xfwm4/xfwm4.SlackBuild
+++ b/source/xfce/xfwm4/xfwm4.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is