--- libreoffice-4.3.1.2-orig/canvas/source/cairo/cairo_spritecanvashelper.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/canvas/source/cairo/cairo_spritecanvashelper.cxx 2014-09-20 15:09:49.269841950 +1000 @@ -402,11 +402,12 @@ ::basegfx::computeSetDifference( aUncoveredAreas, rUpdateArea.maTotalBounds, ::basegfx::B2DRange( rDestRect ) ); + SurfaceSharedPtr surface(mpOwningSpriteCanvas->getBufferSurface()); ::std::for_each( aUncoveredAreas.begin(), aUncoveredAreas.end(), ::boost::bind( &repaintBackground, boost::cref(pCompositingCairo), - boost::cref(mpOwningSpriteCanvas->getBufferSurface()), + boost::cref(surface), _1 ) ); cairo_rectangle( pWindowCairo.get(), 0, 0, rSize.getX(), rSize.getY() ); --- libreoffice-4.3.1.2-orig/canvas/source/vcl/spritecanvashelper.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/canvas/source/vcl/spritecanvashelper.cxx 2014-09-20 15:09:49.270404983 +1000 @@ -573,12 +573,12 @@ // repaint all affected sprites on top of background into // VDev. + ::basegfx::B2DPoint outPos( ::vcl::unotools::b2DPointFromPoint(aOutputPosition) ); ::std::for_each( rSortedUpdateSprites.begin(), rSortedUpdateSprites.end(), ::boost::bind( &spriteRedrawStub2, ::boost::ref( maVDev.get() ), - ::boost::cref( - ::vcl::unotools::b2DPointFromPoint(aOutputPosition)), + ::boost::cref( outPos ), _1 ) ); // flush to screen --- libreoffice-4.3.1.2-orig/dbaccess/source/ui/tabledesign/TableController.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/dbaccess/source/ui/tabledesign/TableController.cxx 2014-09-20 15:12:36.829360633 +1000 @@ -1392,7 +1392,8 @@ setEditable( xMeta.is() && !xMeta->isReadOnly() && (isAlterAllowed() || isDropAllowed() || isAddAllowed()) ); if(!isEditable()) { - ::std::for_each(m_vRowList.begin(),m_vRowList.end(),boost::bind( &OTableRow::SetReadOnly, _1, boost::cref( sal_True ))); + sal_Bool t( sal_True ); + ::std::for_each(m_vRowList.begin(),m_vRowList.end(),boost::bind( &OTableRow::SetReadOnly, _1, boost::cref( t ))); } m_bNew = false; // be notified when the table is in disposing --- libreoffice-4.3.1.2-orig/oox/source/drawingml/table/tablecell.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/oox/source/drawingml/table/tablecell.cxx 2014-09-20 15:09:49.272005355 +1000 @@ -117,9 +117,9 @@ if (rTableStylePart.getTextColor().isUsed()) aTextCharProps.maCharColor = rTableStylePart.getTextColor(); if( rTableStylePart.getTextBoldStyle().is_initialized() ) - aTextCharProps.moBold = rTableStylePart.getTextBoldStyle(); + aTextCharProps.moBold = *rTableStylePart.getTextBoldStyle(); if( rTableStylePart.getTextItalicStyle().is_initialized() ) - aTextCharProps.moItalic = rTableStylePart.getTextItalicStyle(); + aTextCharProps.moItalic = *rTableStylePart.getTextItalicStyle(); } void applyTableCellProperties( const Reference < ::com::sun::star::table::XCell >& rxCell, const TableCell& rTableCell ) --- libreoffice-4.3.1.2-orig/reportdesign/source/core/api/ReportDefinition.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/reportdesign/source/core/api/ReportDefinition.cxx 2014-09-20 15:09:49.273376564 +1000 @@ -1612,8 +1612,9 @@ m_pImpl->m_pObjectContainer->SwitchPersistence(m_pImpl->m_xStorage); } // notify our container listeners + OWeakObject *weakObjectThis = static_cast(this); m_pImpl->m_aStorageChangeListeners.forEach( - ::boost::bind(&document::XStorageChangeListener::notifyStorageChange,_1,boost::cref(static_cast(this)),boost::cref(_xStorage))); + ::boost::bind(&document::XStorageChangeListener::notifyStorageChange,_1,boost::cref(weakObjectThis),boost::cref(_xStorage))); } uno::Reference< embed::XStorage > SAL_CALL OReportDefinition::getDocumentStorage( ) throw (io::IOException, uno::Exception, uno::RuntimeException, std::exception) --- libreoffice-4.3.1.2-orig/slideshow/source/engine/activities/activitybase.hxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/slideshow/source/engine/activities/activitybase.hxx 2014-09-20 15:09:49.273965661 +1000 @@ -111,7 +111,7 @@ ShapeAttributeLayerSharedPtr getShapeAttributeLayer() const { return mpAttributeLayer; } - bool isRepeatCountValid() const { return maRepeats; } + bool isRepeatCountValid() const { return bool(maRepeats); } double getRepeatCount() const { return *maRepeats; } bool isAutoReverse() const { return mbAutoReverse; } --- libreoffice-4.3.1.2-orig/slideshow/source/engine/rehearsetimingsactivity.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/slideshow/source/engine/rehearsetimingsactivity.cxx 2014-09-20 15:09:49.274529920 +1000 @@ -400,11 +400,12 @@ { // new sprite pos, transformation might have changed: maSpriteRectangle = calcSpriteRectangle( maViews.front().first ); + ::basegfx::B2DPoint rectMin( maSpriteRectangle.getMinimum() ); // reposition sprites for_each_sprite( boost::bind( &cppcanvas::Sprite::move, _1, - boost::cref(maSpriteRectangle.getMinimum())) ); + boost::cref( rectMin )) ); // sprites changed, need screen update mrScreenUpdater.notifyUpdate(); --- libreoffice-4.3.1.2-orig/slideshow/source/engine/shapes/appletshape.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/slideshow/source/engine/shapes/appletshape.cxx 2014-09-20 15:09:49.275052955 +1000 @@ -148,12 +148,13 @@ void AppletShape::implViewsChanged() { // resize all ViewShapes + ::basegfx::B2DRectangle bounds( AppletShape::getBounds() ); ::std::for_each( maViewAppletShapes.begin(), maViewAppletShapes.end(), ::boost::bind( &ViewAppletShape::resize, _1, - ::boost::cref( AppletShape::getBounds())) ); + ::boost::cref( bounds )) ); } @@ -252,11 +253,12 @@ bool AppletShape::implStartIntrinsicAnimation() { + ::basegfx::B2DRectangle bounds( getBounds() ); ::std::for_each( maViewAppletShapes.begin(), maViewAppletShapes.end(), ::boost::bind( &ViewAppletShape::startApplet, _1, - ::boost::cref( getBounds() ))); + ::boost::cref( bounds ))); mbIsPlaying = true; return true; --- libreoffice-4.3.1.2-orig/slideshow/source/engine/shapes/drawshape.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/slideshow/source/engine/shapes/drawshape.cxx 2014-09-20 15:09:49.275701062 +1000 @@ -168,6 +168,7 @@ } // redraw all view shapes, by calling their update() method + ViewShape::RenderArgs renderArgs( getViewRenderArgs() ); if( ::std::count_if( maViewShapes.begin(), maViewShapes.end(), ::boost::bind( @@ -178,8 +179,7 @@ // the extra mem_fn. WTF. _1, ::boost::cref( mpCurrMtf ), - ::boost::cref( - getViewRenderArgs() ), + ::boost::cref( renderArgs ), nUpdateFlags, isVisible() ) ) != static_cast(maViewShapes.size()) ) --- libreoffice-4.3.1.2-orig/slideshow/source/engine/shapes/mediashape.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/slideshow/source/engine/shapes/mediashape.cxx 2014-09-20 15:09:49.276133048 +1000 @@ -125,12 +125,13 @@ void MediaShape::implViewsChanged() { // resize all ViewShapes + ::basegfx::B2DRectangle bounds( getBounds() ); ::std::for_each( maViewMediaShapes.begin(), maViewMediaShapes.end(), ::boost::bind( &ViewMediaShape::resize, _1, - ::boost::cref( getBounds())) ); + ::boost::cref( bounds )) ); } --- libreoffice-4.3.1.2-orig/slideshow/source/engine/unoviewcontainer.cxx 2014-08-26 14:07:49.000000000 +1000 +++ libreoffice-4.3.1.2/slideshow/source/engine/unoviewcontainer.cxx 2014-09-20 15:09:49.276489737 +1000 @@ -45,11 +45,12 @@ const UnoViewVector::iterator aEnd( maViews.end() ); // already added? + uno::Reference xView (rView->getUnoView()); if( ::std::find_if( maViews.begin(), aEnd, ::boost::bind( ::std::equal_to< uno::Reference< presentation::XSlideShowView > >(), - ::boost::cref( rView->getUnoView() ), + ::boost::cref( xView ), ::boost::bind( &UnoView::getUnoView, _1 ) ) ) != aEnd )