[ http://issues.apache.org/jira/browse/AXISCPP-533?page=all ]

Fred Preston updated AXISCPP-533:
---------------------------------

    Assign To:     (was: Mark Whitlock)

> Inter shared library exception handling broken on Linux
> -------------------------------------------------------
>
>          Key: AXISCPP-533
>          URL: http://issues.apache.org/jira/browse/AXISCPP-533
>      Project: Axis-C++
>         Type: Bug

>   Components: Basic Architecture
>     Versions: current (nightly)
>  Environment: GNU specific (as far as I know)
>     Reporter: Tim Bartley

>
> On Linux, actually on systems where the compiler and common libraries are g++ 
> and gnu and glibc, exception handling between shared libraries is broken. It 
> is broken because the same class in different shared libraries is treated 
> differently so that an HTTPTransportException thrown by a channel library 
> does not match "catch (HTTPTransportException& e)" in the transport library.
> Refer to http://gcc.gnu.org/faq.html#dso for details.
> The fix is to load the subordinate library with RTLD_GLOBAL flag.
> As far as I know this is GNU specific but may apply to other platforms.
> It's possible that others are not seeing this because the context in which I 
> am running Axis is from within an application that itself dynamically loads a 
> library that depends on Axis.
> Cheers,
> Tim

-- 
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

Reply via email to