Pekka Pessi a écrit :
On 5/15/06, Thomas Rosenblatt <[EMAIL PROTECTED]> wrote:
I think an UNLOCK(home) is missing in su_alloc.c -> _su_home_deinit ->
before destructor(home) .
That is why I was not able to su_home_threading(resolver)...

It looks like the destructor tried to free a memory area describing the servers.

I have bad feeling about giving up lock before calling destructor. Of
course, the object should not be used after unref has been called, but
on the other hand...

I removed the free operation from sres destructor, please see the
patch attached (or get it from darcs).

There is a bug with the sres_resolver_copy...
Indeed when you make a copy in sres_resolver_update no new servers are created since sres_config_changed_servers... is false.
Add this after time(&now)...

if (!res->res_servers) {

   servers = sres_servers_new(res, previous);

   if (!servers) {

     su_home_unref((void *)previous->c_home);

     return -1;

   }

   res->res_i_server = 0;

   res->res_n_servers = sres_servers_count(servers);

   res->res_servers = servers;

 }





-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642
_______________________________________________
Sofia-sip-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel

Reply via email to