Re: Bug in giop_recv_buffer_unuse()? BiDir GIOP related?
Michael Meeks <[email protected]> Fri, 23 Dec 2005 14:38:39 +0000
| Newsgroups | gmane.comp.gnome.orbit.general |
|---|---|
| Organization | Novell, Inc. |
| Message-ID | <[email protected]> |
On Wed, 2005-12-14 at 14:05 +0100, Jules Colding wrote: > Logging on using the MAPI profile.. ==4558== > ==4558== Invalid read of size 1 > ==4558== at 0x1B928E5C: giop_recv_buffer_unuse (giop-recv-buffer.c:471) > ==4558== by 0x1B92C92F: ORBit_small_invoke_stub (orbit-small.c:686) > ==4558== by 0x1B92CA43: ORBit_small_invoke_stub_n (orbit-small.c:575) > ==4558== by 0x1B93D0F0: ORBit_c_stub_invoke (poa.c:2644) > ==4558== by 0x80675EE: BRUTUS_BrutusLogOn_Logon (BrutusLogOn-stubs.c:29) > ==4558== by 0x805BC2E: main (main.c:782) > ==4558== Address 0x1B9C292C is 100 bytes inside a block of size 104 free'd > ==4558== at 0x1B909743: free (vg_replace_malloc.c:152) > ==4558== by 0x40CC23: g_free (in /usr/lib/libglib-2.0.so.0.600.6) > ==4558== by 0x1B928E8A: giop_recv_buffer_unuse (giop-recv-buffer.c:511) > ==4558== by 0x1B92EE21: ORBit_handle_location_forward (corba-object.c:420) > ==4558== by 0x1B92C2F1: orbit_small_demarshal (orbit-small.c:532) > ==4558== by 0x1B92C8C0: ORBit_small_invoke_stub (orbit-small.c:660) > ==4558== by 0x1B92CA43: ORBit_small_invoke_stub_n (orbit-small.c:575) > ==4558== by 0x1B93D0F0: ORBit_c_stub_invoke (poa.c:2644) > ==4558== by 0x80675EE: BRUTUS_BrutusLogOn_Logon (BrutusLogOn-stubs.c:29) > ==4558== by 0x805BC2E: main (main.c:782) So - clearly the forwarding code is broken :-) I imagine that when we call handle_location_forward and it frees the *buf - that we need to NULL that in the &mqe referenced in ORBit_small_invoke_stub - could well be the problem; looks rather inelegant that. I imagine it's completely forwarding related. HTH, Michael. -- [email protected] <><, Pseudo Engineer, itinerant idiot