diff --git a/bin/installexternal.sh b/bin/installexternal.sh index cde2d8e38d2d779b73d9f11107434c5c7e555d8a..22d4bcbe54e89f17de01e31274f00d279a7d0aa6 100755 --- a/bin/installexternal.sh +++ b/bin/installexternal.sh @@ -130,14 +130,14 @@ installMultidomainGrid() return fi -# # apply patch for dune versions newer than 2.3 -# cd dune-common -# DUNE_VERSION=`git status | head -n 1 | awk '{ print $3 }'` -# if [ "$DUNE_VERSION" == "releases/2.4" ] || [ "$DUNE_VERSION" == "master" ]; then -# echo "Applying patch" -# cd $TOPDIR/dune-multidomaingrid -# patch -p1 < $TOPDIR/dumux/patches/multidomaingrid-2.3.patch -# fi + # apply patch for dune versions newer than 2.3 + cd dune-common + DUNE_VERSION=`git status | head -n 1 | awk '{ print $3 }'` + if [ "$DUNE_VERSION" == "releases/2.4" ] || [ "$DUNE_VERSION" == "master" ]; then + echo "Applying patch" + cd $TOPDIR/dune-multidomaingrid + patch -p1 < $TOPDIR/dumux/patches/multidomaingrid-2.3.patch + fi cd $TOPDIR } diff --git a/patches/multidomaingrid-2.3.patch b/patches/multidomaingrid-2.3.patch new file mode 100644 index 0000000000000000000000000000000000000000..6bda5629d7e45a020c2944663d4bce9b31db318e --- /dev/null +++ b/patches/multidomaingrid-2.3.patch @@ -0,0 +1,27 @@ +diff --git a/dune/grid/multidomaingrid/subdomaingrid/entity.hh b/dune/grid/multidomaingrid/subdomaingrid/entity.hh +index f65c6a8..e669710 100644 +--- a/dune/grid/multidomaingrid/subdomaingrid/entity.hh ++++ b/dune/grid/multidomaingrid/subdomaingrid/entity.hh +@@ -413,17 +413,17 @@ public: + return false; + } + +-private: +- +- const GridImp& _grid; +- MultiDomainEntityPointer _multiDomainEntityPointer; +- + const EntityWrapper& operator=(const EntityWrapper& rhs) { + assert(_grid == rhs._grid); + reset(rhs._multiDomainEntityPointer); + return *this; + } + ++private: ++ ++ const GridImp& _grid; ++ MultiDomainEntityPointer _multiDomainEntityPointer; ++ + template<typename MultiDomainIteratorOrEntityPointer> + void reset(const MultiDomainIteratorOrEntityPointer& multiDomainEntityPointer) { + _multiDomainEntityPointer = multiDomainEntityPointer;