On 21 Jul 2008, at 11:53, Fred Kiefer wrote: > David Chisnall wrote: >> On 18 Jul 2008, at 01:10, Quentin Mathé wrote: >> >>>>> It would be helpful if you can make EtoileSerialize "rock- >>>>> solid" and >>>>> helps me to pin down the current crash I get on Ubuntu. haven't >>>>> yet >>>>> investigated it again because Valgrind doesn't work well on any >>>>> of my >>>>> systems, so I got to set up a new one. >>>> EtoileSerialise is solid on FreeBSD. >>> Great :-) >>> Well, I was referring to some troubles I had, specially when passing >>> incorrect argument values or calling initialization methods in the >>> wrong order. It resulted in crashes instead of reporting the problem >>> more gracefully. For example, iirc more checking of parameter >>> validity >>> in important methods, especially in initializers, and also using >>> designated initializers as much as possible would be good. >> >> Thanks to some help from Eric and valgrind, EtoileSerialise is now >> passing all tests and not generating any Valgrind errors on Debian. >> Since Ubuntu uses the same libc as Debian, this should mean it works >> on Ubuntu properly now too. >> > > Yes, on my OpenSuse 11 it gives: > > Result: 1 classes, 7 methods, 23 tests, 0 failed
That's great. Thanks to everyone who helped track this down. There were a couple of minor bugs and one significant one. When deserialising pointers, I wasn't quite sure what the correct behaviour should be so I wasn't consistent in the behaviour I implemented and expected. Now, if you serialise data, when you get it back you will get your pointer set to newly-malloc'd data containing whatever you sent to the serialiser. If this is not what you want, then you must implement a manual deserialisation method, but in most cases it seems to be. David _______________________________________________ Etoile-discuss mailing list [email protected] https://mail.gna.org/listinfo/etoile-discuss
