Re: marshalling / demarshalling bug? (was: ALIGNOF_CORBA_* defines)



Hi Wim,

On Fri, 16 Feb 2001, Wim Oudshoorn wrote:
> Conclusion:
> 	If the system malloc / alloc and friends return memory
> 	aligned on 4 bytes boundaries this can lead to
> 	marshalling / demarshalling error.

	This is not possible in a system where doubles need to be aligned
to 8 byte boundaries, since otherwise the standard code:

	double *a = malloc (sizeof (double)):
	*a = 4.5;

	Would segfault. All allocated memory has to be aligned to the
largest type.

> 	But I see it fail on my computer, but that is compiled
> 	without ./configure so perhaps I got some autodected values
> 	wrong.

	What architecture are you using ? have you got the structure
alignment correct for marshaling such that valid doubles are going onto
the wire - loading arbitary data into a double will cause faults.

	Is it possible that your system is so strange your malloc behavior
is broken ( I doubt it :-).

	Regards,

		Michael.

-- 
 mmeeks gnu org  <><, Pseudo Engineer, itinerant idiot





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]