diff options
-rw-r--r-- | irc.c | 4 | ||||
-rw-r--r-- | unix.c | 7 |
2 files changed, 11 insertions, 0 deletions
@@ -164,7 +164,11 @@ irc_t *irc_new( int fd ) g_free( myhost ); g_free( host ); + /* libpurple doesn't like fork()s after initializing itself, so this + is the right moment to initialize it. */ +#ifdef WITH_PURPLE nogaim_init(); +#endif for( l = irc_plugins; l; l = l->next ) { @@ -73,6 +73,13 @@ int main( int argc, char *argv[] ) b_main_init(); + /* libpurple doesn't like fork()s after initializing itself, so if + we use it, do this init a little later (in case we're running in + ForkDaemon mode). */ +#ifndef WITH_PURPLE + nogaim_init(); +#endif + /* Ugly Note: libotr and gnutls both use libgcrypt. libgcrypt has a process-global config state whose initialization happpens twice if libotr and gnutls are used together. libotr installs custom |