You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Samisa Abeysinghe (JIRA)" <ji...@apache.org> on 2006/01/11 03:25:20 UTC

[jira] Commented: (AXIS2C-2) AXIS2_OP_ENGAGE_MODULE seem to corrupt memory

    [ http://issues.apache.org/jira/browse/AXIS2C-2?page=comments#action_12362406 ] 

Samisa Abeysinghe commented on AXIS2C-2:
----------------------------------------

Some more debug info:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1208456416 (LWP 16270)]
0x00000019 in ?? ()
(gdb) p *(axis2_op_impl_t*) op
No symbol "op" in current context.
(gdb) fr 1
#1  0x00c3d4a9 in axis2_op_free (op=0x9da7058, env=0xbfaa327c) at op.c:660
660             for (i = 0; i < AXIS2_ARRAY_LIST_SIZE(op_impl->phases_out_fault_flow, env); i++)
(gdb) p *(axis2_op_impl_t*) op
$1 = {op = {ops = 0x0, wsdl_op = 0x0, param_container = 0x0}, parent = 0x0, msg_recv = 0x0,
  remaining_phases_inflow = 0x0, phases_outflow = 0x0, phases_in_fault_flow = 0x0, phases_out_fault_flow = 0x9da7700,
  mep = -1, modulerefs = 0x9da7660}
(gdb) p (*(axis2_op_impl_t*)op)->phases_out_fault_flow
$2 = (axis2_array_list_t *) 0x9da7700
(gdb) p (*(*(axis2_op_impl_t*)op)->phases_out_fault_flow)
$3 = {ops = 0x9da7ca0}
(gdb) p (*(axis2_op_impl_t*)op)->phases_out_fault_flow
$4 = (axis2_array_list_t *) 0x9da7700
(gdb) p (*(axis2_op_impl_t*)op)->phases_out_fault_flow->size
There is no member named size.
(gdb) p (axis2_array_list_impl_t*)(*(axis2_op_impl_t*)op)->phases_out_fault_flow
$5 = (struct axis2_array_list_impl *) 0x9da7700
(gdb) p (*(axis2_array_list_impl_t*)(*(axis2_op_impl_t*)op)->phases_out_fault_flow)
$6 = {array_list = {ops = 0x9da7ca0}, size = 0, capacity = 16, data = 0x0}


Looking at the last line, looks to me as if the array list is properly initialized. Not sure what the problem is :(

> AXIS2_OP_ENGAGE_MODULE seem to corrupt memory
> ---------------------------------------------
>
>          Key: AXIS2C-2
>          URL: http://issues.apache.org/jira/browse/AXIS2C-2
>      Project: Axis2-C
>         Type: Bug
>   Components: core/description
>     Versions: M0.3
>     Reporter: Samisa Abeysinghe

>
> I got a segfault when runing the test test/core/description/test_description.
> gdb reveals the following:
> (gdb) bt
> #0  0x00000019 in ?? ()
> #1  0x0065d4a9 in axis2_op_free (op=0x976a058, env=0xbf8dda8c) at op.c:660
> #2  0x0804875c in test_op_engage_module () at test_description.c:27
> #3  0x08048781 in main () at test_description.c:34
> (gdb) fr 1
> #1  0x0065d4a9 in axis2_op_free (op=0x976a058, env=0xbf8dda8c) at op.c:660
> 660             for (i = 0; i < AXIS2_ARRAY_LIST_SIZE(op_impl->phases_out_fault_flow, env); i++)
> (gdb) l
> 655
> 656         if(NULL != op_impl->phases_out_fault_flow)
> 657         {
> 658             void *val = NULL;
> 659             int i = 0;
> 660             for (i = 0; i < AXIS2_ARRAY_LIST_SIZE(op_impl->phases_out_fault_flow, env); i++)
> 661             {
> 662                 struct axis2_phase *phase = NULL;
> 663                 phase = AXIS2_ARRAY_LIST_GET(op_impl->phases_out_fault_flow, env, i);
> 664
> This problem disappear if I comment out the call to AXIS2_OP_ENGAGE_MODULE in the test program.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira