added some more infos about default to and feature requests to claws readme
authorChristoph Hohmann <reboot@gmx.ch>
Fri, 12 Oct 2001 23:54:14 +0000 (23:54 +0000)
committerChristoph Hohmann <reboot@gmx.ch>
Fri, 12 Oct 2001 23:54:14 +0000 (23:54 +0000)
init glib threading when ldap is used
threading fixes for ldap
fixed a typo in de.po

ChangeLog.claws
README.claws
configure.in
po/de.po
src/main.c
src/syldap.c

index 60f76e7..1c2f6d8 100644 (file)
@@ -1,3 +1,15 @@
+2001-10-13 [christoph] 0.6.3claws12
+
+       * README.claws
+               some more details on default to and
+               feature requests
+       * src/main.c
+               init glib threading when ldap is used
+       * src/syldap.c
+               threading fixes
+       * po/de.po
+               fixed a typo
+
 2001-10-12 [paul]      0.6.3claws11
 
        * src/prefs_common.[ch], src/rfc2015.c
index 4538c23..8c3f199 100644 (file)
@@ -74,10 +74,12 @@ are hardly noticable, but deserve mentioning:
   You can also share or use shared mail folders. Right-click a folder and
   select Property. Change the Folder chmod setting.
 
-* default reply-to address for folders
+* default to address for folders
   Most people filter mailing list mails to separate folders. Claws allows
-  you to associate a folder with a mailing list. Right-click a folder, 
-  select Property and change the Default To setting.
+  you to associate a folder with a mailing list or a person. Right-click a
+  folder, select Property and change the Default To setting. When you
+  compose a new mail, when this folder is selected the recepient address
+  will be set to this address.
 
   (NOTE: this is also a shoot-yourself-in-the-foot-setting! If you want
    to send a private mail, don't have a folder selected with this setting
@@ -145,6 +147,6 @@ Ask around in both Sylpheed ML and Sylpheed Claws Users ML. Note
 that some developers may already thought about your feature, may
 perhaps be implementing it - or the feature was already discussed
 and rejected for whatever reason.  You might want to go ahead and 
-hack a patch for it. (That would be very cool!)
-
-
+hack a patch for it. (That would be very cool!) Another
+possibility is to use the Feature Request Tracker at the
+sourceforge project page.
index c631aff..88ac4cc 100644 (file)
@@ -8,7 +8,7 @@ MINOR_VERSION=6
 MICRO_VERSION=3
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws11
+EXTRA_VERSION=claws12
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl
@@ -173,7 +173,7 @@ AC_MSG_CHECKING([whether to use LDAP])
 if test "$ac_cv_enable_ldap" = yes; then
        AC_MSG_RESULT(yes)
        AC_CHECK_HEADERS(ldap.h lber.h pthread.h,
-                        [ LIBS="$LIBS -lldap -llber -lpthread -lresolv"
+                        [ LIBS="$LIBS -lldap -llber -lpthread -lresolv `glib-config --libs gthread`"
                           AC_DEFINE(USE_LDAP) ],
                         [ ac_cv_enable_ldap=no ])
        AC_MSG_CHECKING([whether ldap is available])
index 8b45954..fe1962d 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -3395,7 +3395,7 @@ msgstr "Gefunden %s\n"
 
 #: src/prefs.c:88
 msgid "Finished reading configuration.\n"
-msgstr "Einlesen der Konfuguration beendet.\n"
+msgstr "Einlesen der Konfiguration beendet.\n"
 
 #: src/prefs.c:139 src/prefs.c:167 src/prefs.c:212 src/prefs_account.c:437
 #: src/prefs_account.c:451 src/prefs_customheader.c:388
index 05caf48..e4f3845 100644 (file)
@@ -149,7 +149,7 @@ int main(int argc, char *argv[])
        gtk_set_locale();
        gtk_init(&argc, &argv);
 
-#if USE_THREADS
+#if USE_THREADS || USE_LDAP
        g_thread_init(NULL);
        if (!g_thread_supported())
                g_error(_("g_thread is not supported by glib.\n"));
@@ -296,7 +296,9 @@ int main(int argc, char *argv[])
        /* ignore SIGPIPE signal for preventing sudden death of program */
        signal(SIGPIPE, SIG_IGN);
 
+       gdk_threads_enter();
        gtk_main();
+       gdk_threads_leave();
 
 #if USE_PSPELL       
        gtkpspell_finished(gtkpspellconfig);
index 24359b8..d0d1cf7 100644 (file)
 #include "addritem.h"
 #include "addrcache.h"
 #include "syldap.h"
+#include "utils.h"
 
 /*
 * Create new LDAP server interface object.
 */
 SyldapServer *syldap_create() {
        SyldapServer *ldapServer;
+
+       debug_print("Creating LDAP server interface object\n");
+
        ldapServer = g_new0( SyldapServer, 1 );
        ldapServer->name = NULL;
        ldapServer->hostName = NULL;
@@ -217,6 +221,8 @@ gboolean syldap_get_accessed( SyldapServer *ldapServer ) {
 void syldap_free( SyldapServer *ldapServer ) {
        g_return_if_fail( ldapServer != NULL );
 
+       debug_print("Freeing LDAP server interface object\n");
+
        ldapServer->callBack = NULL;
 
        /* Free internal stuff */
@@ -246,6 +252,7 @@ void syldap_free( SyldapServer *ldapServer ) {
        ldapServer->searchCriteria = NULL;
        ldapServer->searchValue = NULL;
        ldapServer->addressCache = NULL;
+       g_free(ldapServer->thread);
        ldapServer->thread = NULL;
        ldapServer->busyFlag = FALSE;
        ldapServer->retVal = MGU_SUCCESS;
@@ -649,8 +656,11 @@ gint syldap_read_data( SyldapServer *ldapServer ) {
        if( ldapServer->callBack ) {
                ( ldapServer->callBack )( ldapServer );
        }
+       /* The thread struct should not be freed inside the thread
+       g_free(ldapServer->thread);
        ldapServer->thread = NULL;
        pthread_exit( NULL );
+       */
        return ldapServer->retVal;
 }
 
@@ -664,9 +674,14 @@ void syldap_cancel_read( SyldapServer *ldapServer ) {
 
        if( ldapServer->thread ) {
                /* printf( "thread cancelled\n" ); */
+               /* The thread is cancleing itself, ok?
                pthread_cancel( *ldapServer->thread );
+               */
        }
+       /* The thread struct should not be freed inside the thread
+       g_free(ldapServer->thread);
        ldapServer->thread = NULL;
+       */
        ldapServer->busyFlag = FALSE;
 }
 
@@ -678,15 +693,15 @@ void syldap_cancel_read( SyldapServer *ldapServer ) {
 */
 /* ============================================================================================ */
 gint syldap_read_data_th( SyldapServer *ldapServer ) {
-       pthread_t thread;
-
        g_return_val_if_fail( ldapServer != NULL, -1 );
 
        ldapServer->busyFlag = FALSE;
        syldap_check_search( ldapServer );
        if( ldapServer->retVal == MGU_SUCCESS ) {
+               debug_print("Staring LDAP read thread\n");
+
                ldapServer->busyFlag = TRUE;
-               ldapServer->thread = &thread;
+               ldapServer->thread = g_new0(pthread_t, 1);
                pthread_create( ldapServer->thread, NULL, (void *) &syldap_read_data, (void *) ldapServer );
        }
        return ldapServer->retVal;