aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libraries/libfm/README2
-rw-r--r--libraries/libfm/libfm.SlackBuild15
-rw-r--r--libraries/libfm/libfm.info8
-rw-r--r--libraries/libfm/libfm_issue_3557764.patch42
4 files changed, 59 insertions, 8 deletions
diff --git a/libraries/libfm/README b/libraries/libfm/README
index 425fd3cbabdc0..674d16d895d1b 100644
--- a/libraries/libfm/README
+++ b/libraries/libfm/README
@@ -1,4 +1,2 @@
LibFM provides file management functions built on top of Glib/GIO,
giving a convenient higher-level API.
-
-This requires menu-cache.
diff --git a/libraries/libfm/libfm.SlackBuild b/libraries/libfm/libfm.SlackBuild
index efcc051c75f5f..b46062de48dc4 100644
--- a/libraries/libfm/libfm.SlackBuild
+++ b/libraries/libfm/libfm.SlackBuild
@@ -25,7 +25,7 @@
# slightly modified by ponce <matteo.bernardini@gmail.com>
PRGNAM=libfm
-VERSION=${VERSION:-0.1.17}
+VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -71,6 +71,10 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Fix a segfault reported on the issue tracker
+# https://sourceforge.net/tracker/?func=detail&atid=801864&aid=3557764&group_id=156956
+patch -p1 < $CWD/libfm_issue_3557764.patch
+
sh autogen.sh || true
CFLAGS="$SLKCFLAGS" \
@@ -80,13 +84,20 @@ CXXFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
- --enable-udisks=yes \
+ --mandir=/usr/man \
--enable-static=no \
+ --enable-gtk-doc \
--build=$ARCH-slackware-linux
make
make install-strip DESTDIR=$PKG
+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
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
# add handlers for terminal and archiver from LXDE components to the default config
sed -i -e 's|\[ui\]|terminal=lxterminal -e %s\narchiver=xarchiver %s\n\n[ui]|' \
$PKG/etc/xdg/libfm/libfm.conf
diff --git a/libraries/libfm/libfm.info b/libraries/libfm/libfm.info
index 894c03add09d3..8408525ca1537 100644
--- a/libraries/libfm/libfm.info
+++ b/libraries/libfm/libfm.info
@@ -1,10 +1,10 @@
PRGNAM="libfm"
-VERSION="0.1.17"
+VERSION="1.0"
HOMEPAGE="http://pcmanfm.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/pcmanfm/libfm-0.1.17.tar.gz"
-MD5SUM="a97e03d973e6ac727f28d0934d6c9ad5"
+DOWNLOAD="http://downloads.sourceforge.net/pcmanfm/libfm-1.0.tar.gz"
+MD5SUM="9f978eb58c72a6623021504832a9da1b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="menu-cache"
+REQUIRES="menu-cache vala"
MAINTAINER="ponce"
EMAIL="matteo.bernardini@gmail.com"
diff --git a/libraries/libfm/libfm_issue_3557764.patch b/libraries/libfm/libfm_issue_3557764.patch
new file mode 100644
index 0000000000000..adec5a84f9160
--- /dev/null
+++ b/libraries/libfm/libfm_issue_3557764.patch
@@ -0,0 +1,42 @@
+From f5dd721cd06761af60ea6003fa8832a65df2ea7e Mon Sep 17 00:00:00 2001
+From: Andriy Grytsenko <andrej@rep.kiev.ua>
+Date: Thu, 16 Aug 2012 02:45:36 +0300
+Subject: [PATCH] quickfix for #3557764: pcmanfm-1.0 segfault in fm_file_info_is_image
+
+---
+ src/gtk/fm-folder-model.c | 7 ++++++-
+ 1 files changed, 6 insertions(+), 1 deletions(-)
+
+diff --git a/src/gtk/fm-folder-model.c b/src/gtk/fm-folder-model.c
+index b80aa5c..2406698 100644
+--- a/src/gtk/fm-folder-model.c
++++ b/src/gtk/fm-folder-model.c
+@@ -1331,12 +1331,16 @@ static void on_thumbnail_max_changed(FmConfig* cfg, gpointer user_data)
+ {
+ FmFolderModel* model = (FmFolderModel*)user_data;
+ FmThumbnailRequest* req;
+- GList* new_reqs = NULL, *l;
++ GList* new_reqs = NULL;
+ GSequenceIter* seq_it;
+ FmFileInfo* fi;
+ guint thumbnail_max_bytes = fm_config->thumbnail_max << 10;
+ goffset size;
+
++#if 0
++ /* disabled due to bug #3557764: pcmanfm-1.0 segfault in fm_file_info_is_image
++ access to FmThumbnailRequest is dangerous in this implementation
++ and thumbnail generator anyway respects cfg->thumbnail_max */
+ if(cfg->thumbnail_max)
+ {
+ /* remove files which are too big from thumbnail requests
+@@ -1357,6 +1361,7 @@ static void on_thumbnail_max_changed(FmConfig* cfg, gpointer user_data)
+ l = next;
+ }
+ }
++#endif
+ seq_it = g_sequence_get_begin_iter(model->items);
+ while( !g_sequence_iter_is_end(seq_it) )
+ {
+--
+1.7.4.1
+