[
https://issues.apache.org/jira/browse/AXIS2C-1192?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robert Lazarski resolved AXIS2C-1192.
-------------------------------------
Fix Version/s: 2.0.0
(was: 1.7.0)
Resolution: Fixed
Root Cause: Two memory leaks in listener_manager.c caused heap corruption
over repeated runs:
1. arg_list leak (src/core/clientapi/listener_manager.c:134): The
axis2_listener_manager_worker_func_args_t structure was allocated when starting
the listener thread but never freed.
2. tl_state leak (src/core/clientapi/listener_manager.c:231): When
axis2_listener_manager_stop() was called and waiting_calls dropped to 0, the
tl_state pointer was set to NULL without freeing the memory.
Fix (Commit 83bfc7c1c):
- listener_manager.c:298-301: Save listener pointer, then free arg_list in
worker function
- listener_manager.c:232-234: Free tl_state before setting pointer to NULL in
stop function
These memory leaks accumulated on each client run, eventually corrupting the
heap and causing crashes on subsequent executions.
> axis2c dual sample clients give a memory corruption in consecutive execution
> ----------------------------------------------------------------------------
>
> Key: AXIS2C-1192
> URL: https://issues.apache.org/jira/browse/AXIS2C-1192
> Project: Axis2-C
> Issue Type: Bug
> Components: samples
> Environment: Windows XP, guththila
> Reporter: Selvaratnam Uthaiyashankar
> Priority: Major
> Fix For: 2.0.0
>
>
> axis2c dual sample clients give a memory corruption in consecutive execution.
> To recreate the issue, try running echo_blocking_dual.exe several times
> consecutively. The corruption occurs randomly.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]