Date: 14 Sep 2012 16:38:14 -0000 From: Michael Gmelin <freebsd@grem.de> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/171643: [MAINTAINER] devel/ice: Fixes for Clang, C++11, libc++ Message-ID: <20120914163814.43835.qmail@mail.grem.de> Resent-Message-ID: <201209141640.q8EGeC9w010812@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 171643 >Category: ports >Synopsis: [MAINTAINER] devel/ice: Fixes for Clang, C++11, libc++ >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Fri Sep 14 16:40:11 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Michael Gmelin >Release: FreeBSD 9.1-RC1 amd64 >Organization: Grem Equity GmbH >Environment: System: FreeBSD clangcompile 9.1-RC1 FreeBSD 9.1-RC1 #1 r240177: Fri Sep 7 14:37:21 UTC 2012 >Description: This allows running Ice, built using Clang in C++11 mode and libc++ (-std=c++11 -stdlib=libc++) on FreeBSD 9.1-RC1 (all patches are backwards compatible, so it still will build on earlier version of FreeBSD using gcc 4.2. See also: http://www.zeroc.com/forums/patches/5817-patch-compiling-ice-clang-c-11-libc.html This also incorporates a patch published by ZeroC that fixes an assert bug in IceStrom, see also: http://www.zeroc.com/forums/patches/5781-patch-4-ice-3-4-2-icestorm-assert-bug-fix.html I also changed the port skeleton, so it makes use of new-style options. Part of this was increasing the indentation level, therefore the patch to Makefile looks a lot more dramatic than it is. Added file(s): - files/patch-cpp-demo-Freeze-customEvictor-Evictor.h - files/patch-cpp-include-IceUtil-Cache.h - files/patch-cpp-include-IceUtil-Config.h - files/patch-cpp-include-IceUtil-Shared.h - files/patch-cpp-src-Freeze-MapI.h - files/patch-cpp-src-Freeze-ObjectStore.cpp - files/patch-cpp-src-Freeze-ObjectStore.h - files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp - files/patch-cpp-src-Freeze-TransactionalEvictorContext.h - files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp - files/patch-cpp-src-IceGrid-FileCache.cpp - files/patch-cpp-src-IceStorm-Replica.h - files/patch-cpp-src-IceStorm-TopicI.cpp - files/patch-cpp-src-IceStorm-TopicManagerI.cpp - files/patch-cpp-src-IceUtil-Shared.cpp - files/patch-cpp-src-slice2cpp-Main.cpp - files/patch-cpp-src-slice2cs-Main.cpp - files/patch-cpp-src-slice2freeze-Main.cpp - files/patch-cpp-src-slice2freezej-Main.cpp - files/patch-cpp-src-slice2html-Main.cpp - files/patch-cpp-src-slice2java-Main.cpp - files/patch-cpp-src-slice2php-Main.cpp - files/patch-cpp-src-slice2py-Main.cpp - files/patch-cpp-src-slice2rb-Main.cpp Generated with FreeBSD Port Tools 0.99_6 (mode: change, diff: suffix) >How-To-Repeat: Try building the port using an /etc/make.conf that contains CC=clang CXX=clang++ CXXFLAGS+=-std=c++11 -stdlib=libc++ CPP=clang-cpp >Fix: Apply the following patch. --- Ice-3.4.2_3.patch begins here --- diff -ruN --exclude=CVS ../ice.orig/Makefile ./Makefile --- ../ice.orig/Makefile 2012-03-24 16:57:39.000000000 +0100 +++ ./Makefile 2012-09-12 02:48:59.834014502 +0200 @@ -5,93 +5,92 @@ # $FreeBSD: ports/devel/ice/Makefile,v 1.22 2012/03/24 15:57:39 miwi Exp $ # -PORTNAME= Ice -PORTVERSION= 3.4.2 -PORTREVISION= 2 -CATEGORIES= devel -MASTER_SITES= http://download.zeroc.com/Ice/3.4/ - -MAINTAINER= freebsd@grem.de -COMMENT= A modern alternative to object middleware such as CORBA/COM/DCOM/COM+ - -LIB_DEPENDS= expat.6:${PORTSDIR}/textproc/expat2 \ - mcpp.3:${PORTSDIR}/devel/mcpp - -OPTIONS= TESTS "Build and run tests (requires lang/python)" on \ - DEMOS "Build demos" on +PORTNAME= Ice +PORTVERSION= 3.4.2 +PORTREVISION= 3 +CATEGORIES= devel +MASTER_SITES= http://download.zeroc.com/Ice/3.4/ + +MAINTAINER= freebsd@grem.de +COMMENT= A modern alternative to object middleware such as CORBA/COM/DCOM/COM+ + +LIB_DEPENDS= expat.6:${PORTSDIR}/textproc/expat2 \ + mcpp.3:${PORTSDIR}/devel/mcpp + +OPTIONS_DEFINE= DEBUG DEMOS DOCS TESTS +OPTIONS_DEFAULT= DEMOS TESTS +TESTS_DESC= Build and run tests (requires lang/python) +DEMOS_DESC= Build demos .include <bsd.port.options.mk> -.if defined(WITH_TESTS) +.if ${PORT_OPTIONS:MTESTS} USE_PYTHON_BUILD= yes .endif -USE_GMAKE= yes -USE_ICONV= yes -USE_BDB= 42+ +USE_GMAKE= yes +USE_ICONV= yes +USE_BDB= 42+ INVALID_BDB_VER= 2 3 40 41 -USE_LDCONFIG= yes -BUILD_WRKSRC= ${WRKSRC}/cpp -INSTALL_WRKSRC= ${WRKSRC}/cpp - -CFLAGS+= -ftemplate-depth-128 -fPIC -DPIC -Wall -D_REENTRANT ${PTHREAD_CFLAGS} -I${LOCALBASE}/include -.if defined(DEBUG) -CFLAGS+= -g -.else -CFLAGS+= -DNDEBUG +USE_LDCONFIG= yes +BUILD_WRKSRC= ${WRKSRC}/cpp +INSTALL_WRKSRC= ${WRKSRC}/cpp + +CFLAGS+= -ftemplate-depth-128 -fPIC -DPIC -Wall -D_REENTRANT ${PTHREAD_CFLAGS} -I${LOCALBASE}/include +.if !${PORT_OPTIONS:MDEBUG} +CFLAGS+= -DNDEBUG .endif -.include <bsd.port.pre.mk> .if ${ARCH} == "ia64" -BROKEN= does not compile on ia64 +BROKEN= does not compile on ia64 .endif .if ${ARCH} == "sparc64" -BROKEN= fails to link +BROKEN= fails to link .endif .if ((${ARCH} != i386) && (${ARCH} != powerpc)) -MAKE_ENV= LP64=yes +MAKE_ENV= LP64=yes .endif -.if !defined(WITH_TESTS) -MAKE_ENV+= NOTESTS=yes +.if !${PORT_OPTIONS:MTESTS} +MAKE_ENV+= NOTESTS=yes .endif -.if !defined(WITH_DEMOS) -MAKE_ENV+= NODEMOS=yes +.if !${PORT_OPTIONS:MDEMOS} +MAKE_ENV+= NODEMOS=yes .endif -.if defined(NOPORTDOCS) -MAKE_ENV+= NOPORTDOCS=yes +.if !${PORT_OPTIONS:MDOCS} +MAKE_ENV+= NOPORTDOCS=yes .endif post-patch: - ${SED} 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g; \ + @${SED} 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g; \ s|%%PREFIX%%|${PREFIX}|g; \ s|%%DATADIR%%|${DATADIR}|g; \ s|%%DOCSDIR%%|${DOCSDIR}|g; \ s|%%INSTALL_PROGRAM%%|${INSTALL_PROGRAM}|g; \ s|%%INSTALL_DATA%%|${INSTALL_DATA}|g' \ ${FILESDIR}/Make.rules.FreeBSD > ${WRKSRC}/cpp/config/Make.rules.FreeBSD - ${REINPLACE_CMD} 's|%%BDB_LIB_CXX_NAME%%|${BDB_LIB_CXX_NAME}|g; \ + @${REINPLACE_CMD} 's|%%BDB_LIB_CXX_NAME%%|${BDB_LIB_CXX_NAME}|g; \ s|%%BDB_LIB_DIR%%|${BDB_LIB_DIR}|g; \ s|%%BDB_INCLUDE_DIR%%|${BDB_INCLUDE_DIR}|g; \ /install_docdir/d' \ ${WRKSRC}/cpp/config/Make.rules - ${REINPLACE_CMD} '/install_configdir/d' \ + @${REINPLACE_CMD} '/install_configdir/d' \ ${WRKSRC}/cpp/config/Make.rules - ${REINPLACE_CMD} 's|INSTALL_PROGRAM|INSTALL_DATA|g' \ + @${REINPLACE_CMD} 's|INSTALL_PROGRAM|INSTALL_DATA|g' \ ${WRKSRC}/cpp/src/ca/Makefile - ${REINPLACE_CMD} '/LICENSE/s/prefix/install_slicedir/' \ + @${REINPLACE_CMD} '/LICENSE/s/prefix/install_slicedir/' \ ${WRKSRC}/config/Make.common.rules -.if defined(WITH_TESTS) -TEST_CMD= @cd ${BUILD_WRKSRC} && ${PYTHON_CMD} ./allTests.py +.if ${PORT_OPTIONS:MTESTS} +TEST_CMD= @cd ${BUILD_WRKSRC} && ${PYTHON_CMD} ./allTests.py post-build: ${TEST_CMD} regression-test test: build ${TEST_CMD} .endif -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-demo-Freeze-customEvictor-Evictor.h ./files/patch-cpp-demo-Freeze-customEvictor-Evictor.h --- ../ice.orig/files/patch-cpp-demo-Freeze-customEvictor-Evictor.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-demo-Freeze-customEvictor-Evictor.h 2012-09-10 19:33:16.673709677 +0200 @@ -0,0 +1,10 @@ +--- cpp.orig/demo/Freeze/customEvictor/Evictor.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/demo/Freeze/customEvictor/Evictor.h 2012-09-10 11:43:58.000000000 +0200 +@@ -66,6 +66,7 @@ class Evictor : public Ice::ServantLocator + public: + + Evictor(CurrentDatabase&, int); ++ virtual ~Evictor() ICE_NOEXCEPT_TRUE {}; + + virtual Ice::ObjectPtr locate(const Ice::Current&, Ice::LocalObjectPtr&); + virtual void finished(const Ice::Current&, const Ice::ObjectPtr&, const Ice::LocalObjectPtr&); diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-Ice-Stream.h ./files/patch-cpp-include-Ice-Stream.h --- ../ice.orig/files/patch-cpp-include-Ice-Stream.h 2012-03-24 16:57:39.000000000 +0100 +++ ./files/patch-cpp-include-Ice-Stream.h 2012-09-10 19:38:57.073749905 +0200 @@ -77,3 +77,14 @@ } v = static_cast<T>(val); } +--- cpp.orig/include/Ice/Stream.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/include/Ice/Stream.h 2012-09-10 11:43:58.000000000 +0200 +@@ -664,7 +664,7 @@ struct StreamWriter<StreamTraitTypeSequenceBool> + outS->writeSize(static_cast<Int>(v.size())); + for(typename T::const_iterator p = v.begin(); p != v.end(); ++p) + { +- outS->write(*p); ++ outS->write(static_cast<bool>(*p)); + } + } + }; diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-IceUtil-Cache.h ./files/patch-cpp-include-IceUtil-Cache.h --- ../ice.orig/files/patch-cpp-include-IceUtil-Cache.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-include-IceUtil-Cache.h 2012-09-14 16:50:03.842305516 +0200 @@ -0,0 +1,10 @@ +--- cpp.orig/include/IceUtil/Cache.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/include/IceUtil/Cache.h 2012-09-10 11:43:58.000000000 +0200 +@@ -77,6 +77,6 @@ protected: + { + } + +- virtual ~Cache() ++ virtual ~Cache() ICE_NOEXCEPT_FALSE + { + } diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-IceUtil-Config.h ./files/patch-cpp-include-IceUtil-Config.h --- ../ice.orig/files/patch-cpp-include-IceUtil-Config.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-include-IceUtil-Config.h 2012-09-10 23:25:21.254929179 +0200 @@ -0,0 +1,19 @@ +--- cpp.orig/include/IceUtil/Config.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/include/IceUtil/Config.h 2012-09-10 11:43:58.000000000 +0200 +@@ -248,3 +248,16 @@ public: + #define ICE_DEFAULT_MUTEX_PROTOCOL PrioNone + + #endif ++ ++ ++// ++// Macro used for declaring destructors that might throw - required for C++11 ++// ++#if __cplusplus >= 201103L ++#define ICE_DESTRUCTORS_DONT_THROW_BY_DEFAULT ++#define ICE_NOEXCEPT_FALSE noexcept(false) ++#define ICE_NOEXCEPT_TRUE noexcept(true) ++#else ++#define ICE_NOEXCEPT_FALSE ++#define ICE_NOEXCEPT_TRUE ++#endif diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-IceUtil-Shared.h ./files/patch-cpp-include-IceUtil-Shared.h --- ../ice.orig/files/patch-cpp-include-IceUtil-Shared.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-include-IceUtil-Shared.h 2012-09-10 21:49:08.451696645 +0200 @@ -0,0 +1,72 @@ +--- cpp.orig/include/IceUtil/Shared.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/include/IceUtil/Shared.h 2012-09-10 11:43:58.000000000 +0200 +@@ -50,6 +50,11 @@ + // + // A non thread-safe base class for reference-counted types. + // ++// IceUtil::SimpleSharedUnsafeDestructor ++// ===================== ++// ++// A non thread-safe base class for reference-counted types - destructor might throw. ++// + // IceUtil::Shared + // =============== + // +@@ -109,6 +114,57 @@ private: + bool _noDelete; + }; + ++class ICE_UTIL_API SimpleSharedUnsafeDestructor ++{ ++public: ++ ++ SimpleSharedUnsafeDestructor(); ++ SimpleSharedUnsafeDestructor(const SimpleSharedUnsafeDestructor&); ++ ++ virtual ~SimpleSharedUnsafeDestructor() ICE_NOEXCEPT_FALSE ++ { ++ } ++ ++ SimpleSharedUnsafeDestructor& operator=(const SimpleSharedUnsafeDestructor&) ++ { ++ return *this; ++ } ++ ++ void __incRef() ++ { ++ assert(_ref >= 0); ++ ++_ref; ++ } ++ ++ void __decRef() ++ { ++ assert(_ref > 0); ++ if(--_ref == 0) ++ { ++ if(!_noDelete) ++ { ++ _noDelete = true; ++ delete this; ++ } ++ } ++ } ++ ++ int __getRef() const ++ { ++ return _ref; ++ } ++ ++ void __setNoDelete(bool b) ++ { ++ _noDelete = b; ++ } ++ ++private: ++ ++ int _ref; ++ bool _noDelete; ++}; ++ + class ICE_UTIL_API Shared + { + public: diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-MapDb.cpp ./files/patch-cpp-src-Freeze-MapDb.cpp --- ../ice.orig/files/patch-cpp-src-Freeze-MapDb.cpp 2012-03-24 16:57:39.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-MapDb.cpp 2012-09-10 22:04:07.519687409 +0200 @@ -1,5 +1,19 @@ --- cpp.orig/src/Freeze/MapDb.cpp 2011-06-15 21:43:58.000000000 +0200 -+++ cpp/src/Freeze/MapDb.cpp 2012-03-04 20:14:52.000000000 +0100 ++++ cpp/src/Freeze/MapDb.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -72,7 +72,13 @@ Freeze::MapDb::~MapDb() + } + catch(const ::DbException& dx) + { ++#if defined(ICE_DESTRUCTORS_DONT_THROW_BY_DEFAULT) ++ Error out(_communicator->getLogger()); ++ out << "DbException while closing database " << _dbName << ": " ++ << dx.what(); ++#else + throw DatabaseException(__FILE__, __LINE__, dx.what()); ++#endif + } + } + } @@ -229,7 +229,11 @@ #ifndef NDEBUG bool inserted = diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-MapI.h ./files/patch-cpp-src-Freeze-MapI.h --- ../ice.orig/files/patch-cpp-src-Freeze-MapI.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-MapI.h 2012-09-10 21:54:08.599554544 +0200 @@ -0,0 +1,18 @@ +--- cpp.orig/src/Freeze/MapI.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/Freeze/MapI.h 2012-09-10 11:43:58.000000000 +0200 +@@ -63,12 +63,13 @@ public: + void + close(); + +- class Tx : public IceUtil::SimpleShared ++ class Tx : public IceUtil::SimpleSharedUnsafeDestructor + { + public: + + Tx(const MapHelperI&); +- ~Tx(); ++ ~Tx() ICE_NOEXCEPT_FALSE; ++ ; + + void dead(); + diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.cpp ./files/patch-cpp-src-Freeze-ObjectStore.cpp --- ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-ObjectStore.cpp 2012-09-11 03:59:42.835768363 +0200 @@ -0,0 +1,11 @@ +--- cpp.orig/src/Freeze/ObjectStore.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/Freeze/ObjectStore.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -189,7 +189,7 @@ Freeze::ObjectStoreBase::ObjectStoreBase(const string& facet, const string& face + } + } + +-Freeze::ObjectStoreBase::~ObjectStoreBase() ++Freeze::ObjectStoreBase::~ObjectStoreBase() ICE_NOEXCEPT_FALSE + { + try + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.h ./files/patch-cpp-src-Freeze-ObjectStore.h --- ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-ObjectStore.h 2012-09-10 21:55:20.209510278 +0200 @@ -0,0 +1,11 @@ +--- cpp.orig/src/Freeze/ObjectStore.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/Freeze/ObjectStore.h 2012-09-10 11:43:58.000000000 +0200 +@@ -36,7 +36,7 @@ public: + ObjectStoreBase(const std::string&, const std::string&, bool, EvictorIBase*, + const std::vector<IndexPtr>&, bool); + +- virtual ~ObjectStoreBase(); ++ virtual ~ObjectStoreBase() ICE_NOEXCEPT_FALSE; + + const Ice::ObjectPtr& sampleServant() const; + diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp --- ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp 2012-09-10 21:56:29.779531328 +0200 @@ -0,0 +1,11 @@ +--- cpp.orig/src/Freeze/TransactionalEvictorContext.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/Freeze/TransactionalEvictorContext.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -273,7 +273,7 @@ Freeze::TransactionalEvictorContext::ServantHolder::ServantHolder() : + } + + +-Freeze::TransactionalEvictorContext::ServantHolder::~ServantHolder() ++Freeze::TransactionalEvictorContext::ServantHolder::~ServantHolder() ICE_NOEXCEPT_FALSE + { + if(_ownBody && _body.ownServant) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.h ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.h --- ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.h 2012-09-10 21:56:46.249518436 +0200 @@ -0,0 +1,11 @@ +--- cpp.orig/src/Freeze/TransactionalEvictorContext.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/Freeze/TransactionalEvictorContext.h 2012-09-10 11:43:58.000000000 +0200 +@@ -34,7 +34,7 @@ public: + public: + + ServantHolder(); +- ~ServantHolder(); ++ ~ServantHolder() ICE_NOEXCEPT_FALSE; + + void init(const TransactionalEvictorContextPtr&, const Ice::Current&, ObjectStore<TransactionalEvictorElement>*); + diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp ./files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp --- ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp 2012-09-10 21:56:57.809805567 +0200 @@ -0,0 +1,11 @@ +--- cpp.orig/src/Freeze/TransactionalEvictorI.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/Freeze/TransactionalEvictorI.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -346,7 +346,7 @@ Freeze::TransactionalEvictorI::dispatch(Request& request) + { + } + +- ~CtxHolder() ++ ~CtxHolder() ICE_NOEXCEPT_FALSE + { + if(_ownCtx) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Ice-Network.cpp ./files/patch-cpp-src-Ice-Network.cpp --- ../ice.orig/files/patch-cpp-src-Ice-Network.cpp 2011-07-31 17:43:29.000000000 +0200 +++ ./files/patch-cpp-src-Ice-Network.cpp 2012-09-10 22:03:51.659742361 +0200 @@ -1,5 +1,5 @@ --- cpp.orig/src/Ice/Network.cpp 2011-06-15 21:43:58.000000000 +0200 -+++ cpp/src/Ice/Network.cpp 2011-07-15 23:40:26.000000000 +0200 ++++ cpp/src/Ice/Network.cpp 2012-09-10 11:43:58.000000000 +0200 @@ -715,7 +715,11 @@ WSASetLastError(error); #else @@ -13,3 +13,12 @@ { SocketException ex(__FILE__, __LINE__); ex.error = getSocketErrno(); +@@ -1098,7 +1098,7 @@ IceInternal::doBind(SOCKET fd, const struct sockaddr_storage& addr) + size = 0; // Keep the compiler happy. + } + +- if(bind(fd, reinterpret_cast<const struct sockaddr*>(&addr), size) == SOCKET_ERROR) ++ if(::bind(fd, reinterpret_cast<const struct sockaddr*>(&addr), size) == SOCKET_ERROR) + { + closeSocketNoThrow(fd); + SocketException ex(__FILE__, __LINE__); diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceGrid-FileCache.cpp ./files/patch-cpp-src-IceGrid-FileCache.cpp --- ../ice.orig/files/patch-cpp-src-IceGrid-FileCache.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-IceGrid-FileCache.cpp 2012-09-11 03:06:33.769768355 +0200 @@ -0,0 +1,20 @@ +--- cpp.orig/src/IceGrid/FileCache.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/IceGrid/FileCache.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -195,15 +195,12 @@ FileCache::read(const string& file, Ice::Long offset, int size, Ice::Long& newOf + + totalSize += lineSize; + lines.push_back(line); +-#if defined(_MSC_VER) && (_MSC_VER < 1300) +- if(is.eof()) ++ ++ if(is.eof() || is.fail()) + { + newOffset += line.size(); + } + else +-#else +- if(!is.fail()) +-#endif + { + newOffset = is.tellg(); + } diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceStorm-Replica.h ./files/patch-cpp-src-IceStorm-Replica.h --- ../ice.orig/files/patch-cpp-src-IceStorm-Replica.h 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-IceStorm-Replica.h 2012-09-10 21:52:16.229537684 +0200 @@ -0,0 +1,15 @@ +--- cpp.orig/src/IceStorm/Replica.h 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/IceStorm/Replica.h 2012-09-10 11:43:58.000000000 +0200 +@@ -23,9 +23,9 @@ struct GroupNodeInfo + GroupNodeInfo(int i, LogUpdate l, const Ice::ObjectPrx& o = Ice::ObjectPrx()); + bool operator<(const GroupNodeInfo& rhs) const; + bool operator==(const GroupNodeInfo& rhs) const; +- const int id; +- const LogUpdate llu; +- const Ice::ObjectPrx observer; ++ int id; ++ LogUpdate llu; ++ Ice::ObjectPrx observer; + }; + + class Replica : virtual public IceUtil::Shared diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceStorm-TopicI.cpp ./files/patch-cpp-src-IceStorm-TopicI.cpp --- ../ice.orig/files/patch-cpp-src-IceStorm-TopicI.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-IceStorm-TopicI.cpp 2012-09-12 22:38:08.054841760 +0200 @@ -0,0 +1,74 @@ +--- cpp.orig/src/IceStorm/TopicI.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/IceStorm/TopicI.cpp 2012-09-12 22:14:00.000000000 +0200 +@@ -666,7 +666,7 @@ TopicImpl::subscribe(const QoS& origQoS, const Ice::ObjectPrx& obj) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -703,7 +703,7 @@ TopicImpl::subscribe(const QoS& origQoS, const Ice::ObjectPrx& obj) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -788,7 +788,7 @@ TopicImpl::subscribeAndGetPublisher(const QoS& qos, const Ice::ObjectPrx& obj) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -912,7 +912,7 @@ TopicImpl::link(const TopicPrx& topic, Ice::Int cost) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -1311,7 +1311,7 @@ TopicImpl::observerAddSubscriber(const LogUpdate& llu, const SubscriberRecord& r + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -1380,7 +1380,7 @@ TopicImpl::observerRemoveSubscriber(const LogUpdate& llu, const Ice::IdentitySeq + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + for(Ice::IdentitySeq::const_iterator id = ids.begin(); id != ids.end(); ++id) +@@ -1456,7 +1456,7 @@ TopicImpl::destroyInternal(const LogUpdate& origLLU, bool master) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + // Erase all subscriber records and the topic record. +@@ -1531,7 +1531,7 @@ TopicImpl::removeSubscribers(const Ice::IdentitySeq& ids) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + for(Ice::IdentitySeq::const_iterator id = ids.begin(); id != ids.end(); ++id) diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceStorm-TopicManagerI.cpp ./files/patch-cpp-src-IceStorm-TopicManagerI.cpp --- ../ice.orig/files/patch-cpp-src-IceStorm-TopicManagerI.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-IceStorm-TopicManagerI.cpp 2012-09-12 22:38:05.534737389 +0200 @@ -0,0 +1,47 @@ +--- cpp.orig/src/IceStorm/TopicManagerI.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/IceStorm/TopicManagerI.cpp 2012-09-12 22:14:00.000000000 +0200 +@@ -312,7 +312,7 @@ TopicManagerImpl::TopicManagerImpl(const InstancePtr& instance) : + _sync = _instance->nodeAdapter()->addWithUUID(_syncImpl); + } + +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + + // Ensure that the llu counter is present in the log. + LLUWrapperPtr lluWrapper = _databaseCache->getLLU(connection); +@@ -381,7 +381,7 @@ TopicManagerImpl::create(const string& name) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -486,7 +486,7 @@ TopicManagerImpl::observerInit(const LogUpdate& llu, const TopicContentSeq& cont + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + LLUWrapperPtr lluWrapper = _databaseCache->getLLU(connection); +@@ -590,7 +590,7 @@ TopicManagerImpl::observerCreateTopic(const LogUpdate& llu, const string& name) + { + try + { +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + SubscriberRecordKey key; +@@ -776,7 +776,7 @@ TopicManagerImpl::initMaster(const set<GroupNodeInfo>& slaves, const LogUpdate& + { + content.clear(); + +- DatabaseConnectionPtr connection = _databaseCache->getConnection(); ++ DatabaseConnectionPtr connection = _databaseCache->newConnection(); + TransactionHolder txn(connection); + + for(map<string, TopicImplPtr>::const_iterator p = _topics.begin(); p != _topics.end(); ++p) diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceUtil-Shared.cpp ./files/patch-cpp-src-IceUtil-Shared.cpp --- ../ice.orig/files/patch-cpp-src-IceUtil-Shared.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-IceUtil-Shared.cpp 2012-09-10 21:50:42.709551485 +0200 @@ -0,0 +1,21 @@ +--- cpp.orig/src/IceUtil/Shared.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/IceUtil/Shared.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -96,6 +96,18 @@ IceUtil::SimpleShared::SimpleShared(const SimpleShared&) : + { + } + ++IceUtil::SimpleSharedUnsafeDestructor::SimpleSharedUnsafeDestructor() : ++ _ref(0), ++ _noDelete(false) ++{ ++} ++ ++IceUtil::SimpleSharedUnsafeDestructor::SimpleSharedUnsafeDestructor(const SimpleSharedUnsafeDestructor&) : ++ _ref(0), ++ _noDelete(false) ++{ ++} ++ + IceUtil::Shared::Shared() : + _ref(0), + _noDelete(false) diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2cpp-Main.cpp ./files/patch-cpp-src-slice2cpp-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2cpp-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2cpp-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,46 @@ +--- cpp.orig/src/slice2cpp/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2cpp/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -22,7 +22,7 @@ using namespace Slice; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -31,13 +31,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -48,7 +48,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -294,7 +294,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2cs-Main.cpp ./files/patch-cpp-src-slice2cs-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2cs-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2cs-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,46 @@ +--- cpp.orig/src/slice2cs/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2cs/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -22,7 +22,7 @@ using namespace Slice; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -31,13 +31,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -48,7 +48,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -303,7 +303,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2freeze-Main.cpp ./files/patch-cpp-src-slice2freeze-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2freeze-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2freeze-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,55 @@ +--- cpp.orig/src/slice2freeze/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2freeze/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -28,7 +28,7 @@ using namespace Slice; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -37,13 +37,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -56,7 +56,7 @@ string ICE_ENCODING_COMPARE = "Freeze::IceEncodingCompare"; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -1995,7 +1995,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { +@@ -2042,7 +2042,7 @@ compile(int argc, char* argv[]) + u->destroy(); + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2freezej-Main.cpp ./files/patch-cpp-src-slice2freezej-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2freezej-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2freezej-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,55 @@ +--- cpp.orig/src/slice2freezej/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2freezej/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -26,7 +26,7 @@ using namespace IceUtilInternal; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -35,13 +35,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -52,7 +52,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> lock(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> lock(mtx); + + interrupted = true; + } +@@ -1828,7 +1828,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { +@@ -1923,7 +1923,7 @@ compile(int argc, char* argv[]) + u->destroy(); + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2html-Main.cpp ./files/patch-cpp-src-slice2html-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2html-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2html-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,55 @@ +--- cpp.orig/src/slice2html/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2html/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -24,7 +24,7 @@ using namespace IceUtil; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -33,13 +33,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -50,7 +50,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -254,7 +254,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { +@@ -296,7 +296,7 @@ compile(int argc, char* argv[]) + p->destroy(); + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2java-Main.cpp ./files/patch-cpp-src-slice2java-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2java-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2java-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,46 @@ +--- cpp.orig/src/slice2java/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2java/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -23,7 +23,7 @@ using namespace Slice; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -32,13 +32,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -49,7 +49,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -356,7 +356,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2php-Main.cpp ./files/patch-cpp-src-slice2php-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2php-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2php-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,46 @@ +--- cpp.orig/src/slice2php/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2php/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -1488,7 +1488,7 @@ printHeader(IceUtilInternal::Output& out) + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -1497,13 +1497,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -1514,7 +1514,7 @@ Init init; + static void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -1777,7 +1777,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2py-Main.cpp ./files/patch-cpp-src-slice2py-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2py-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2py-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,46 @@ +--- cpp.orig/src/slice2py/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2py/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -40,7 +40,7 @@ using namespace Slice::Python; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -49,13 +49,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -66,7 +66,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -631,7 +631,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2rb-Main.cpp ./files/patch-cpp-src-slice2rb-Main.cpp --- ../ice.orig/files/patch-cpp-src-slice2rb-Main.cpp 1970-01-01 01:00:00.000000000 +0100 +++ ./files/patch-cpp-src-slice2rb-Main.cpp 2012-09-10 21:49:54.469553384 +0200 @@ -0,0 +1,46 @@ +--- cpp.orig/src/slice2rb/Main.cpp 2011-06-15 21:43:58.000000000 +0200 ++++ cpp/src/slice2rb/Main.cpp 2012-09-10 11:43:58.000000000 +0200 +@@ -39,7 +39,7 @@ using namespace Slice::Ruby; + namespace + { + +-IceUtil::Mutex* mutex = 0; ++IceUtil::Mutex* mtx = 0; + bool interrupted = false; + + class Init +@@ -48,13 +48,13 @@ public: + + Init() + { +- mutex = new IceUtil::Mutex; ++ mtx = new IceUtil::Mutex; + } + + ~Init() + { +- delete mutex; +- mutex = 0; ++ delete mtx; ++ mtx = 0; + } + }; + +@@ -65,7 +65,7 @@ Init init; + void + interruptedCallback(int signal) + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + interrupted = true; + } +@@ -316,7 +316,7 @@ compile(int argc, char* argv[]) + } + + { +- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex); ++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx); + + if(interrupted) + { --- Ice-3.4.2_3.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120914163814.43835.qmail>