Hello community,

here is the log from the commit of package xfce4-panel-plugin-genmon for 
openSUSE:Factory
checked in at Thu Mar 17 11:38:47 CET 2011.



--------
New Changes file:

--- /dev/null   2010-08-26 16:28:41.000000000 +0200
+++ 
/mounts/work_src_done/STABLE/xfce4-panel-plugin-genmon/xfce4-panel-plugin-genmon.changes
    2011-03-09 22:43:49.000000000 +0100
@@ -0,0 +1,5 @@
+-------------------------------------------------------------------
+Wed Mar  9 11:00:00 UTC 2011 - [email protected]
+
+- new package (split off from xfce4-panel-plugins)
+

calling whatdependson for head-i586


New:
----
  xfce4-genmon-plugin-3.2.tar.bz2
  xfce4-panel-plugin-genmon-3.2-close-unused-pipes.patch
  xfce4-panel-plugin-genmon-3.2-fix-build-with-4.7.patch
  xfce4-panel-plugin-genmon-3.2-prevent-zombies.patch
  xfce4-panel-plugin-genmon.changes
  xfce4-panel-plugin-genmon.spec

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xfce4-panel-plugin-genmon.spec ++++++
#
# spec file for package xfce4-panel-plugin-genmon
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


%define panel_version 4.8.0
%define plugin_name xfce4-genmon-plugin

Name:           xfce4-panel-plugin-genmon
License:        GPLv2+
Version:        3.2
Release:        25
Summary:        Generic monitoring plugin for the Xfce panel
Url:            
http://goodies.xfce.org/projects/panel-plugins/xfce4-genmon-plugin
Source0:        xfce4-genmon-plugin-3.2.tar.bz2
# PATCH-FIX-UPSTREAM xfce4-panel-plugin-genmon-3.2-fix-build-with-4.7.patch 
[email protected] -- Fixes build with xfce4-panel >= 4.7
Patch0:         xfce4-panel-plugin-genmon-3.2-fix-build-with-4.7.patch
# PATCH-FIX-UPSTREAM xfce4-panel-plugin-genmon-3.2-prevent-zombies.patch 
deb#422572 bxo#3896 [email protected] -- Prevent zombie processes
Patch1:         xfce4-panel-plugin-genmon-3.2-prevent-zombies.patch
# PATCH-FIX-UPSTREAM xfce4-panel-plugin-genmon-3.2-close-unused-pipes.patch 
bxo#4036 [email protected] -- Prevent hangs by closing unused pipes
Patch2:         xfce4-panel-plugin-genmon-3.2-close-unused-pipes.patch
Group:          System/GUI/XFCE
BuildRequires:  intltool
BuildRequires:  fdupes
BuildRequires:  pkgconfig(libxfce4panel-1.0)
BuildRequires:  xfce4-dev-tools
Requires:       xfce4-panel >= 4.8.0
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
The Generic Monitor plugin is intended for custom monitoring tasks and
periodically spawns a given application, captures its output and displays the
result in form of an image, a bar, a button and a personalized tooltip in the
panel.


%prep
%setup -q -n %{plugin_name}-%{version}
%patch0 -p1
%patch1 -p1
%patch2 -p1

%build
xdt-autogen
%configure --disable-static
make %{_smp_mflags} V=1

%install
%make_install
rm -rf %{buildroot}%{_datadir}/locale/{ast,kk,tl_PH,ur_PK}
%find_lang %{plugin_name} %{name}.lang
%fdupes %{buildroot}%{_datadir}

%clean
rm -rf %{buildroot}

%files -f %{name}.lang
%defattr(-,root,root)
%{_libexecdir}/xfce4/panel-plugins/xfce4-genmon-plugin
%{_datadir}/xfce4/panel-plugins/genmon.desktop

%changelog
++++++ xfce4-panel-plugin-genmon-3.2-close-unused-pipes.patch ++++++
diff -ur xfce4-genmon-plugin-3.2.orig/panel-plugin/cmdspawn.c 
xfce4-genmon-plugin-3.2/panel-plugin/cmdspawn.c
--- xfce4-genmon-plugin-3.2.orig/panel-plugin/cmdspawn.c        2007-11-23 
16:32:40.000000000 +0100
+++ xfce4-genmon-plugin-3.2/panel-plugin/cmdspawn.c     2011-01-01 
11:27:04.000000000 +0100
@@ -184,6 +184,7 @@
             return (-1);
         case 0:
             /* Redirect stdout/stderr to associated pipe's write-ends */
+            close(0); /* stdin is not used in child */
             for (i = 0; i < OUT_ERR; i++) {
                 j = i + 1; // stdout/stderr file descriptor
                 close (j);
@@ -199,6 +200,9 @@
         exit (-1);
     }
 
+    for (i = 0; i < OUT_ERR; i++)
+        close (aaiPipe[i][WR]); /* close write end of pipes in parent */
+
     /* Wait for child completion */
     if (wait == 1)
     {
@@ -231,10 +235,9 @@
     }
 
     End:
-    /* Close created pipes */
+    /* Close read end of pipes */
     for (i = 0; i < OUT_ERR; i++)
-        for (j = 0; j < RD_WR; j++)
-            close (aaiPipe[i][j]);
+        close (aaiPipe[i][RD]);
 
     return (-fError);
 }// Spawn()
++++++ xfce4-panel-plugin-genmon-3.2-fix-build-with-4.7.patch ++++++
diff -ur xfce4-genmon-plugin-3.2.orig/configure.ac 
xfce4-genmon-plugin-3.2/configure.ac
--- xfce4-genmon-plugin-3.2.orig/configure.ac   2008-03-15 22:38:12.000000000 
+0100
+++ xfce4-genmon-plugin-3.2/configure.ac        2010-12-05 00:50:00.000000000 
+0100
@@ -32,6 +32,7 @@
 
 dnl configure the panel plugin
 XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-1.0], [4.3.22])
+XDT_CHECK_PACKAGE([LIBXFCEGUI4], [libxfcegui4-1.0], [4.3.22])
 
 dnl Translations
 XDT_I18N([ca cs en_GB eu fr pl pt_PT sq])
diff -ur xfce4-genmon-plugin-3.2.orig/panel-plugin/Makefile.am 
xfce4-genmon-plugin-3.2/panel-plugin/Makefile.am
--- xfce4-genmon-plugin-3.2.orig/panel-plugin/Makefile.am       2007-11-23 
16:32:40.000000000 +0100
+++ xfce4-genmon-plugin-3.2/panel-plugin/Makefile.am    2010-12-05 
00:48:30.000000000 +0100
@@ -3,10 +3,12 @@
 
 xfce4_genmon_plugin_CFLAGS =                                   \
        -DPACKAGE_LOCALE_DIR=\"$(localedir)\"                   \
-       @LIBXFCE4PANEL_CFLAGS@
+       @LIBXFCE4PANEL_CFLAGS@                                  \
+       @LIBXFCEGUI4_CFLAGS@
 
 xfce4_genmon_plugin_LDADD =                                    \
-       @LIBXFCE4PANEL_LIBS@
+       @LIBXFCE4PANEL_LIBS@                                    \
+       @LIBXFCEGUI4_LIBS@
 
 xfce4_genmon_plugin_SOURCES =  \
        main.c                  \
++++++ xfce4-panel-plugin-genmon-3.2-prevent-zombies.patch ++++++
diff -ur xfce4-genmon-plugin-3.2.orig/panel-plugin/main.c 
xfce4-genmon-plugin-3.2/panel-plugin/main.c
--- xfce4-genmon-plugin-3.2.orig/panel-plugin/main.c    2008-03-15 
23:38:18.000000000 +0100
+++ xfce4-genmon-plugin-3.2/panel-plugin/main.c 2011-01-01 11:17:46.000000000 
+0100
@@ -32,6 +32,7 @@
 
 #include <libxfce4util/libxfce4util.h>
 #include <libxfcegui4/dialogs.h>
+#include <libxfcegui4/xfce-exec.h>
 #include <libxfce4panel/xfce-panel-plugin.h>
 #include <libxfce4panel/xfce-panel-convenience.h>
 
@@ -94,10 +95,18 @@
 {
     struct genmon_t *poPlugin = (genmon_t *) p_pvPlugin;
     struct monitor_t *poMonitor = &(poPlugin->oMonitor);
-    char result[256];
+    GError *error = NULL;
+
+       xfce_exec(poMonitor->onClickCmd, 0, 0, &error);
+    if (error) {
+        char first[256];
+        g_snprintf (first, sizeof(first), _("Could not run \"%s\""), 
poMonitor->onClickCmd);
+        xfce_message_dialog (NULL, _("Xfce Panel"), 
+                             GTK_STOCK_DIALOG_ERROR, first, error->message,
+                             GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL);
+        g_error_free (error);
+    }
 
-    genmon_SpawnCmd (poMonitor->onClickCmd, result,
-        sizeof (poMonitor->onClickCmd), 0);
 }
 
 /**************************************************************/

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to