[ 
https://issues.apache.org/jira/browse/XERCESC-1520?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alberto Massari resolved XERCESC-1520.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: 3.0.0

In 3.0 NetBSD uses the generic Posix MutexManager, that has the same code you 
wrote

> Buil under NetBSD 3.0BETA
> -------------------------
>
>                 Key: XERCESC-1520
>                 URL: https://issues.apache.org/jira/browse/XERCESC-1520
>             Project: Xerces-C++
>          Issue Type: Bug
>          Components: Build
>    Affects Versions: 2.7.0
>         Environment: Plateform: x86
> NetBSD 3.0BETA
> autoconf (GNU Autoconf) 2.59
> gcc version 3.3.3 (NetBSD nb3 20040520)
> GNU Make 3.80
>            Reporter: Stephane Crivisier
>             Fix For: 3.0.0
>
>
>   (CP)  
> /tmp/crivis_s/work/xerces-c-src_2_7_0/src/xercesc/../..//include/xercesc/util/Platforms/NetBSD
>   (C++) NetBSDPlatformUtils.o
> NetBSDPlatformUtils.cpp: In static member function `static void*
>    xercesc_2_7::XMLPlatformUtils::makeMutex(xercesc_2_7::MemoryManager*)':
> NetBSDPlatformUtils.cpp:498: error: cannot convert `pthread_mutexattr_t' to `
>    pthread_mutexattr_t*' for argument `1' to `int
>    __libc_mutexattr_settype(pthread_mutexattr_t*, int)'
> NetBSDPlatformUtils.cpp:499: error: `mutex' undeclared (first use this
>    function)
> NetBSDPlatformUtils.cpp:499: error: (Each undeclared identifier is reported
>    only once for each function it appears in.)
> NetBSDPlatformUtils.cpp:505: error: cannot convert `pthread_mutexattr_t' to `
>    pthread_mutexattr_t*' for argument `1' to `int
>    __libc_mutexattr_destroy(pthread_mutexattr_t*)'
> gmake[3]: *** [NetBSDPlatformUtils.o] Error 1
> gmake[2]: *** [all] Error 2
> gmake[1]: *** [platforms] Error 2
> gmake: *** [Util] Error 2
> I have changed XMLPlatformUtils::makeMutex in 
> util/Plateforms/NetBSD/NetBSDPlateformsUtils.cpp to:
> void* XMLPlatformUtils::makeMutex(MemoryManager* manager)
> {
>     MutexHolderType* const  holder = new (manager) MutexHolderType;
>     pthread_mutexattr_t  attr;
>     pthread_mutexattr_init(&attr);
>     pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
>     if (pthread_mutex_init(&holder->fInstance, &attr))
>     {
>         delete holder;
>         panic(PanicHandler::Panic_MutexErr);
>     }
>     pthread_mutexattr_destroy(&attr);
>     return holder;
> }
> This patch make build ok but I don't test it enough, it seems to be ok.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscr...@xerces.apache.org
For additional commands, e-mail: c-dev-h...@xerces.apache.org

Reply via email to