- better workaround for now: disable thumbnailer completely.

Bug still beeing worked on.
This commit is contained in:
ajacoutot 2009-04-14 17:16:54 +00:00
parent bb7111c4f6
commit 5a4c04ee09
3 changed files with 35 additions and 57 deletions

View File

@ -1,10 +1,10 @@
# $OpenBSD: Makefile,v 1.59 2009/04/13 14:35:19 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.60 2009/04/14 17:16:54 ajacoutot Exp $
COMMENT= GNOME control center
GNOME_PROJECT= gnome-control-center
GNOME_VERSION= 2.24.0.1
PKGNAME= ${DISTNAME}p13
PKGNAME= ${DISTNAME}p14
SHARED_LIBS += gnome-window-settings 2.0 # .1.0
CATEGORIES= x11

View File

@ -1,55 +0,0 @@
$OpenBSD: patch-capplets_common_gtkrc-utils_c,v 1.1 2009/04/13 14:35:19 ajacoutot Exp $
Default number of open file descriptors is too low on OpenBSD.
--- capplets/common/gtkrc-utils.c.orig Wed Sep 24 18:36:22 2008
+++ capplets/common/gtkrc-utils.c Mon Apr 13 16:13:01 2009
@@ -33,6 +33,28 @@
#define ENGINE_SYMBOL ((gpointer) 2)
#define COLOR_SCHEME_SYMBOL ((gpointer) 3)
+#ifdef __OpenBSD__
+#include <sys/types.h>
+#include <sys/time.h>
+#include <sys/resource.h>
+
+static int
+fdlim_set(int lim)
+{
+ struct rlimit rlfd;
+
+ if (lim <= 0 || lim > FD_SETSIZE)
+ return (-1);
+ if (getrlimit(RLIMIT_NOFILE, &rlfd) < 0)
+ return (-1);
+ if (rlfd.rlim_cur < lim)
+ rlfd.rlim_cur = lim;
+ if (setrlimit(RLIMIT_NOFILE, &rlfd) < 0)
+ return (-1);
+ return (0);
+}
+#endif // __OpenBSD__
+
gchar *
gtkrc_find_named (const gchar *name)
{
@@ -104,6 +126,9 @@ gtkrc_get_details (gchar *filename, GSList **engines,
read_files = g_slist_prepend (read_files, filename);
+#ifdef __OpenBSD__
+ fdlim_set(256);
+#endif
file = g_open (filename, O_RDONLY);
if (file == -1)
{
@@ -198,6 +223,9 @@ gtkrc_get_color_scheme (const gchar *gtkrc_file)
read_files = g_slist_prepend (read_files, filename);
+#ifdef __OpenBSD__
+ fdlim_set(256);
+#endif
file = g_open (filename, O_RDONLY);
if (file == -1)
{

View File

@ -0,0 +1,33 @@
$OpenBSD: patch-capplets_common_theme-thumbnail_c,v 1.1 2009/04/14 17:16:54 ajacoutot Exp $
Disable thumbnailer: GNOME Bugzilla #578835
--- capplets/common/theme-thumbnail.c.orig Mon Apr 13 23:58:25 2009
+++ capplets/common/theme-thumbnail.c Tue Apr 14 00:00:49 2009
@@ -1185,7 +1185,7 @@ generate_icon_theme_thumbnail_async (GnomeThemeIconInf
void
theme_thumbnail_factory_init (int argc, char *argv[])
{
-#ifndef __APPLE__
+#if ! defined(__APPLE__) && ! defined(__OpenBSD__)
gint child_pid;
#endif
@@ -1197,7 +1197,7 @@ theme_thumbnail_factory_init (int argc, char *argv[])
* disable the thumbnailer on MacOS for now. That means no thumbs
* until the thumbnailing process is rewritten, but at least we won't
* make apps crash. */
-#ifndef __APPLE__
+#if ! defined(__APPLE__) && ! defined(__OpenBSD__)
child_pid = fork ();
if (child_pid == 0)
{
@@ -1236,7 +1236,7 @@ theme_thumbnail_factory_init (int argc, char *argv[])
/* Parent */
close (pipe_to_factory_fd[0]);
close (pipe_from_factory_fd[1]);
-#endif /* __APPLE__ */
+#endif /* __APPLE__ && __OpenBSD__ */
async_data.set = FALSE;
async_data.theme_name = NULL;