2005-10-09 Moritz Schulte <moritz@g10code.com>
authorMoritz Schulte <mo@g10code.com>
Sun, 9 Oct 2005 13:32:35 +0000 (13:32 +0000)
committerMoritz Schulte <mo@g10code.com>
Sun, 9 Oct 2005 13:32:35 +0000 (13:32 +0000)
* global.c (gcry_control): Call global_init() after passing thread
cbs to ath.  global_init() MUST to be called AFTER passing the cbs
to ath and BEFORE calling library functions, which make use of
ath.  This change combines cbs installing with ath initialization
and thus removes the need to call other library initialization
functions inbetween like e.g. gcry_check_version().

src/ChangeLog
src/global.c

index 82dc02d..486ed77 100644 (file)
@@ -1,3 +1,12 @@
+2005-10-09  Moritz Schulte  <moritz@g10code.com>
+
+       * global.c (gcry_control): Call global_init() after passing thread
+       cbs to ath.  global_init() MUST to be called AFTER passing the cbs
+       to ath and BEFORE calling library functions, which make use of
+       ath.  This change combines cbs installing with ath initialization
+       and thus removes the need to call other library initialization
+       functions inbetween like e.g. gcry_check_version().
+
 2005-10-01  Moritz Schulte  <moritz@g10code.com>
 
        * ath.c: Assign copyright to FSF.
index 3157457..fd8b1f3 100644 (file)
@@ -275,6 +275,8 @@ gcry_control (enum gcry_ctl_cmds cmd, ...)
 
     case GCRYCTL_SET_THREAD_CBS:
       err = ath_install (va_arg (arg_ptr, void *), any_init_done);
+      if (! err)
+       global_init ();
       break;
 
     case GCRYCTL_FAST_POLL: