added some more infos about default to and feature requests to claws readme

init glib threading when ldap is used
threading fixes for ldap
fixed a typo in de.po
This commit is contained in:
Christoph Hohmann 2001-10-12 23:54:14 +00:00
parent d686542848
commit 7f7899af66
6 changed files with 44 additions and 13 deletions

View 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

View 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.

View 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])

View file

@ -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

View 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);

View file

@ -39,12 +39,16 @@
#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;