sw/source/uibase/docvw/edtdd.cxx |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit c3c208e1fdfd60b95fc09ed48d9ee975bddb214d
Author: Armin Le Grand <armin.le.gr...@cib.de>
Date:   Fri May 26 11:49:58 2017 +0200

    tdf#106131 no global drag when anchor drag active
    
    If in Writer dragging the anchor is already active
    it is not allowed to enter global object drag mode.
    This check was missing and may lead to various
    inconsistencies
    
    Change-Id: I7d8dd2a62737e6d5d72f69747ceb21bcb73c45ed
    Reviewed-on: https://gerrit.libreoffice.org/38059
    Tested-by: Jenkins <c...@libreoffice.org>
    Reviewed-by: Armin Le Grand <armin.le.gr...@cib.de>
    (cherry picked from commit 1b27bed2d5b6915cda408c6f8d27d15bf13cc9be)
    Reviewed-on: https://gerrit.libreoffice.org/38188
    Tested-by: Armin Le Grand <armin.le.gr...@cib.de>

diff --git a/sw/source/uibase/docvw/edtdd.cxx b/sw/source/uibase/docvw/edtdd.cxx
index a355cefa2ca5..399719b1285d 100644
--- a/sw/source/uibase/docvw/edtdd.cxx
+++ b/sw/source/uibase/docvw/edtdd.cxx
@@ -85,11 +85,17 @@ void SwEditWin::StartDrag( sal_Int8 /*nAction*/, const 
Point& rPosPixel )
             //We are not selecting and aren't at a selection
             bStart = true;
         else if ( !g_bFrameDrag && rSh.IsSelFrameMode() &&
-                    rSh.IsInsideSelectedObj( aDocPos ) )
+                    rSh.IsInsideSelectedObj( aDocPos ) &&
+                    nullptr == m_pAnchorMarker)
         {
             //We are not dragging internally and are not at an
             //object (frame, draw object)
 
+            // tdf#106131 *and* AnchorDrag is *not* active: When active,
+            // entering global drag mode will destroy the AnchorHdl but
+            // keep the now invalid ptr in place, next access will crash.
+            // It is indeed wrong to enter drag mode when AnchorDrag is
+            // already active
             bStart = true;
         }
         else if( !g_bFrameDrag && m_rView.GetDocShell()->IsReadOnly() &&
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to