[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
BUG in 3.80 (virtual memory exhausted, xrealloc, variable_buffer_output)
From: |
Dr. Jörn von Holten |
Subject: |
BUG in 3.80 (virtual memory exhausted, xrealloc, variable_buffer_output) |
Date: |
Wed, 26 Nov 2003 10:12:06 +0100 |
Hi,
I reduced my problem to the following short Makefile
-----------------snip---
define A
12345: $(1:.idl=.hh) $(1:.idl=S.h) $(1:.idl=C.h) $(1:.idl=SK.cc)
$(1:.idl=DynSK.cc)
endef
$(eval $(call A,01234567890123456789012345678901.idl))
---snap-----------------
which, when evaluated (e.g. "make -r") with 3.80 results in a
*** virtual memory exhausted.
I traced the problem into the sources, which I saw the very 1st
time, and what I found is:
A call to variable_buffer_output results in a xrealloc call when
appending the final '\0' while doing the eval. It seems as if the
new memory position of the variable_buffer is not correctly passed
back then as the next call to variable_buffer_output then works on
an illegal pointer.
This is just a guess and I have no time to go deeper into those sources.
Maybe it is even a wild-overwrite.
This problem occurs at least on Linux and on Solaris so
it does not seem to depend on a certains OS.
cheers
Jörn
--
Dr. Jörn von Holten
Senior Consultant
Barco Orthogon AG
Hastedter Osterdeich 222
D-28207 Bremen
Tel +49-421-20122-426
Fax +49-421-20122-999
www.barco-orthogon.com
address@hidden
- BUG in 3.80 (virtual memory exhausted, xrealloc, variable_buffer_output),
Dr. Jörn von Holten <=