segfault does not use source.conn unless the originating

request is local. The actual code tries to dereference pointers
created on another node.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1462 fd59a12c-fef9-0310-b244-a6a79926bd2f
This commit is contained in:
Steven Dake 2007-09-28 01:31:34 +00:00
parent 11453080bb
commit c39ae9cc70

View File

@ -731,7 +731,7 @@ static void message_handler_req_exec_lck_resourceopen (
struct resource *resource;
struct resource_cleanup *resource_cleanup;
SaAisErrorT error = SA_AIS_OK;
struct lck_pd *lck_pd = (struct lck_pd *)openais_conn_private_data_get (req_exec_lck_resourceopen->source.conn);
struct lck_pd *lck_pd;
log_printf (LOG_LEVEL_NOTICE, "EXEC request: saLckResourceOpen %s\n",
get_mar_name_t (&req_exec_lck_resourceopen->resource_name));
@ -780,7 +780,8 @@ static void message_handler_req_exec_lck_resourceopen (
if (resource_cleanup == 0) {
free (resource);
error = SA_AIS_ERR_NO_MEMORY;
} else {
} else {
lck_pd = (struct lck_pd *)openais_conn_private_data_get (req_exec_lck_resourceopen->source.conn);
list_init (&resource_cleanup->list);
list_init (&resource_cleanup->resource_lock_list_head);
resource_cleanup->resource = resource;