2002-05-08 Marcus Brinkmann <marcus@g10code.de>
authorMarcus Brinkmann <mb@g10code.com>
Wed, 8 May 2002 03:57:42 +0000 (03:57 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Wed, 8 May 2002 03:57:42 +0000 (03:57 +0000)
commit47312a7d12fcee690fa15730a30b777c7ca3ed55
tree72e374502f6f9e7ecfe617063ecb52f4a5c23102
parent68e3e06a1afbd5375bbd6f811de163ec926bb7c2
2002-05-08  Marcus Brinkmann  <marcus@g10code.de>

* debug.h: New file.
* Makefile.am (libgpgme_la_SOURCES): Add debug.h.
* util.h: Removed all prototypes and declarations related to
debugging.  Include "debug.h".

* debug.c (debug_level): Comment variable and remove superfluous
zero initializer.
(errfp): Likewise.
(_gpgme_debug_enabled): Function removed.
(struct debug_control_s): Definition removed.
(_gpgme_debug_level): Function removed.
(_gpgme_debug_begin): Rewritten to use vasprintf.  Accept a
pritnf-style format specification and a variable number of
arguments.
(_gpgme_debug_add): Rewritten using vasprintf.  Expect that format
starts out with "%s" for simplicity.
(_gpgme_debug_end): Rewritten using vasprintf.  Do not accept a
TEXT argument anymore.

* posix-io.c (_gpgme_io_select): Use new level argument for
DEBUG_BEGIN instead explicit if construct.

* debug.c (debug_init): Remove superfluous zero initializer,
remove volatile flag of INITIALIZED.  Do not use the
double-checked locking algorithm, it is fundamentally flawed and
will empty your fridge (on a more serious note, despite the
volatile flag it doesn't give you the guarantee you would expect,
for example on a DEC Alpha or an SMP machine.  The volatile only
serializes accesses to the volatile variable, but not to the other
variables).
trunk/gpgme/ChangeLog
trunk/gpgme/Makefile.am
trunk/gpgme/debug.c
trunk/gpgme/posix-io.c
trunk/gpgme/util.h