]> git.pld-linux.org Git - packages/fbpanel.git/blobdiff - fbpanel-file_watcher.patch
- outdated, unneeded
[packages/fbpanel.git] / fbpanel-file_watcher.patch
diff --git a/fbpanel-file_watcher.patch b/fbpanel-file_watcher.patch
deleted file mode 100644 (file)
index a133499..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-diff -aurN fbpanel-4.3.orig/panel.c fbpanel-4.3/panel.c
---- fbpanel-4.3.orig/panel.c   2005-05-08 09:46:40.000000000 +0200
-+++ fbpanel-4.3/panel.c        2006-08-20 12:38:19.000000000 +0200
-@@ -9,6 +9,7 @@
- #include <locale.h>
- #include <string.h>
- #include <signal.h>
-+#include <time.h>
- #include "plugin.h"
- #include "panel.h"
-@@ -18,6 +19,11 @@
- #include "gtkbgbox.h"
- static gchar *cfgfile = NULL;
-+time_t last_config_poll = 0;
-+
-+/* Array of config files to watch */
-+GArray *config_files = NULL;
-+
- static gchar version[] = VERSION;
- gchar *cprofile = "default";
-@@ -243,6 +249,26 @@
- panel_configure_event (GtkWidget *widget, GdkEventConfigure *e, panel *p)
- {
-     ENTER;
-+
-+    if ((time(NULL) - last_config_poll) > 10)
-+    {
-+      int i;
-+      struct stat cfgstat;
-+      watched_file f;
-+      
-+      for (i = 0; i < config_files->len; i++)
-+      {
-+          f = g_array_index(config_files, watched_file, i);
-+          stat(f.filename, &cfgstat);
-+          if (cfgstat.st_mtime > f.mtime)
-+          {
-+              gtk_main_quit();
-+          }
-+      }
-+      
-+      last_config_poll = time(NULL);
-+    }
-+
-     if (e->width == p->cw && e->height == p->ch && e->x == p->cx && e->y == p->cy)
-         RET(TRUE);
-     p->cw = e->width;
-@@ -700,17 +726,25 @@
-     fp = fopen(fname, "r");
-     LOG(LOG_INFO, "   %s %s\n", fname, fp ? "ok" : "no");
-     if (fp) {
-+        watched_file f;
-+        f.filename = fname;
-+        f.mtime = time(NULL);
-+        g_array_append_val(config_files, f);
-         cfgfile = fname;
-         RET(fp);
-     }
-     //ERR("Can't load %s\n", fname);
-     g_free(fname);
-     
--    /* check private configuration directory */
--    fname = g_strdup_printf("%s/share/fbpanel/%s", PREFIX, profile);
-+    /* check system-wide configuration directory */
-+    fname = g_strdup_printf("/etc/fbpanel/%s", profile);
-     fp = fopen(fname, "r");
-     LOG(LOG_INFO, "   %s %s\n", fname, fp ? "ok" : "no");
-     if (fp) {
-+        watched_file f;
-+        f.filename = fname;
-+        f.mtime = time(NULL);
-+        g_array_append_val(config_files, f);
-         cfgfile = fname;
-         RET(fp);
-     }
-@@ -791,6 +825,19 @@
-     }
-     signal(SIGUSR1, sig_usr);
-     do {
-+        if (config_files)
-+        {
-+          int i;
-+          watched_file w;
-+          for (i = 0; i < config_files->len; i++)
-+          {
-+              w = g_array_index(config_files, watched_file, i);
-+              g_free(w.filename);
-+          }
-+          g_array_free(config_files, TRUE);
-+        }
-+        config_files = g_array_new(FALSE, FALSE, sizeof(watched_file));
-+        
-         if (!(pfp = open_profile(cprofile)))
-             exit(1);
-         p = g_new0(panel, 1);
-diff -aurN fbpanel-4.3.orig/panel.h fbpanel-4.3/panel.h
---- fbpanel-4.3.orig/panel.h   2005-05-07 12:26:55.000000000 +0200
-+++ fbpanel-4.3/panel.h        2006-08-20 12:38:19.000000000 +0200
-@@ -96,6 +96,13 @@
- extern command commands[];
-+typedef struct {
-+    gchar *filename;
-+    time_t mtime;
-+} watched_file;
-+
-+extern GArray *config_files;
-+
- extern gchar *cprofile;
- extern Atom a_UTF8_STRING;
-diff -aurN fbpanel-4.3.orig/plugin.c fbpanel-4.3/plugin.c
---- fbpanel-4.3.orig/plugin.c  2005-05-29 06:02:03.000000000 +0200
-+++ fbpanel-4.3/plugin.c       2006-08-20 12:38:19.000000000 +0200
-@@ -137,7 +137,7 @@
-         LOG(LOG_INFO, "   %s ... %s\n", str->str, m ? "ok" : "no");
-         if (!m) {
-             DBG("error is %s\n", g_module_error());
--            g_string_printf(str, "%s/share/fbpanel/plugins/%s.so", PREFIX, type);
-+            g_string_printf(str, "%s/lib/fbpanel/plugins/%s.so", PREFIX, type);
-             m = g_module_open(str->str, G_MODULE_BIND_LAZY);
-             LOG(LOG_INFO, "   %s ... %s\n", str->str, m ? "ok" : "no");
-             if (!m) {
-diff -aurN fbpanel-4.3.orig/plugins/menu.c fbpanel-4.3/plugins/menu.c
---- fbpanel-4.3.orig/plugins/menu.c    2005-05-21 06:58:55.000000000 +0200
-+++ fbpanel-4.3/plugins/menu.c 2006-08-20 12:38:19.000000000 +0200
-@@ -247,9 +247,13 @@
-         }
-     }
-     if ((fp = fopen(name, "r"))) {
-+        watched_file f;
-         LOG(LOG_INFO, "Including %s\n", name);
-         m->files = g_slist_prepend(m->files, p->fp);
-         p->fp = fp;
-+        f.filename = name;
-+        f.mtime = time(NULL);
-+        g_array_append_val(config_files, f);
-     } else {
-         ERR("Can't include %s\n", name);
-     }
This page took 0.177827 seconds and 4 git commands to generate.