Re: session handling - the next generation

2005-06-12 Thread Nicolas Lehuen
Duh, I get it. If you add a member to the request object, and this member is not referenced in the request object's dictionary, then you have to add a special case for it in the tp_traverse handler. In requestobject.c : /** ** request_tp_traverse ** *Traversal of the request object */

Re: session handling - the next generation

2005-06-12 Thread Nicolas Lehuen
You should cast self to a requestobject* : ((requestobject*)self)-session Anyway, I'm currently rewriting the whole request_tp_traverse / request_tp_clear / request_tp_clear functions like this : static void request_tp_dealloc(requestobject *self) { // de-register the object from the GC

Re: session handling - the next generation

2005-06-12 Thread Jim Gallacher
Nicolas Lehuen wrote: You should cast self to a requestobject* : That worked. Running some tests. Jim ((requestobject*)self)-session Anyway, I'm currently rewriting the whole request_tp_traverse / request_tp_clear / request_tp_clear functions like this : static void

Re: session handling - the next generation

2005-06-12 Thread Nicolas Lehuen
Hi Jim, After a few checks (unittest + load testing), I've checked in my modifications ; you might want to update and merge it with your code. Regards, Nicolas 2005/6/12, Jim Gallacher [EMAIL PROTECTED]: Nicolas Lehuen wrote: You should cast self to a requestobject* : That worked. Running