Gnucash and Electric Fence

Derek Atkins warlord@MIT.EDU
05 Jan 2002 11:11:04 -0500


David Hampton <hampton@employees.org> writes:

> Is Electric Fence supposed to work with GnuCash?  I've been trying to
> debug a crash off and on for a couple of hours, and I just discovered
> that the problem goes away if I force EFence off.  (I have to do this by
> hand editing config.h as the configure script forces the use of EFence
> even when I specifically supply an argument of --disable-efence or
> --enable-efence=3Doff.)  The function gwrap_gnc_module_load() allocates
> memory with a call to gh_scm2newstr() and releases it with a call to
> free(). Since EFence is complaining about memory freed without being
> allocated, it seems obvious that the library with the gh_scm2newstr()
> function isn't linked with EFence support.  The fact that GnuCash runs
> just fine without EFence support bears out the fact that this is not a
> problem with GnuCash itself.  Can anyone tell me where the
> gh_scm2newstr() function lives?

Try:
	rm config.cache
	./configure .... (without efence)

no-efence is the default.  When I tried using efence with gnucash I
had a number other problems.  In particular, there are so many small
allocations in Gnucash that it needed more than 512MB of real RAM to
actually run!  Unfortunately I never found a machine with that much
ram, so in the end I just used dmalloc to discover the bug.

To answer your last question, gh_scm2newstr() is part of libguile,
and most likely it's using g_new() instead of malloc().

> David
> 
> P.S. I'm using the Ximian packaged version of glade 1.4.

-derek

-- 
       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available