[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r1275 - in gnunet-gtk/src: core plugins/fs
From: |
grothoff |
Subject: |
[GNUnet-SVN] r1275 - in gnunet-gtk/src: core plugins/fs |
Date: |
Tue, 5 Jul 2005 14:47:31 -0700 (PDT) |
Author: grothoff
Date: 2005-07-05 14:47:27 -0700 (Tue, 05 Jul 2005)
New Revision: 1275
Modified:
gnunet-gtk/src/core/main.c
gnunet-gtk/src/plugins/fs/fs.c
Log:
working around libtool, glibc, pthread limiations
Modified: gnunet-gtk/src/core/main.c
===================================================================
--- gnunet-gtk/src/core/main.c 2005-07-05 20:57:20 UTC (rev 1274)
+++ gnunet-gtk/src/core/main.c 2005-07-05 21:47:27 UTC (rev 1275)
@@ -123,10 +123,13 @@
(GCallback) method);
}
+typedef void (*PlainCall)();
+
static Plugin * loadPlugin(const char * name,
Plugin * next) {
Plugin * p;
void * lib;
+ PlainCall init;
lib = loadDynamicLibrary("libgnunetgtkmodule_",
name);
@@ -140,6 +143,12 @@
p->name = STRDUP(name);
p->next = next;
p->library = lib;
+ init = trybindDynamicMethod(lib,
+ "init_",
+ name);
+ if (init != NULL)
+ init();
+
return p;
}
@@ -179,6 +188,13 @@
}
static void unloadPlugin(Plugin * plug) {
+ PlainCall done;
+
+ done = trybindDynamicMethod(plug->library,
+ "done_",
+ plug->name);
+ if (done != NULL)
+ done();
unloadDynamicLibrary(plug->library);
FREE(plug->name);
FREE(plug);
Modified: gnunet-gtk/src/plugins/fs/fs.c
===================================================================
--- gnunet-gtk/src/plugins/fs/fs.c 2005-07-05 20:57:20 UTC (rev 1274)
+++ gnunet-gtk/src/plugins/fs/fs.c 2005-07-05 21:47:27 UTC (rev 1275)
@@ -126,7 +126,7 @@
return NULL;
}
-void __attribute__ ((constructor)) fs_ltdl_init(void) {
+void init_fs(void) {
GtkWidget * tab;
tab
@@ -144,7 +144,7 @@
fs_upload_start();
}
-void __attribute__ ((destructor)) fs_ltdl_fini(void) {
+void done_fs(void) {
PTHREAD_T doneThread;
Semaphore * sig;
void * unused;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r1275 - in gnunet-gtk/src: core plugins/fs,
grothoff <=