I'm attaching the patch in case anyone else wants to build their own test version.

On 11/18/2017 11:11 AM, Patricia Shanahan wrote:
There is a bug in my LinkManager changes. Specifically, I made the totally newbie mistake of accessing memory based on a pointer without allowing for it being null, and it turns out it can be null :-(

The primary report for this is https://bz.apache.org/ooo/show_bug.cgi?id=127581, "Writer crashes after copying all content".

I would have expected the failure to be some form of access violation. However, recent e-mails have convinced me that some paths include catch blocks that conceal all exceptions, so it may be the root cause of other problems.

I have checked a fix into the trunk, revision 1814994. However, trunk has other changes.

The simplest way to check whether other bug reports are due to this is to build a version that is identical to 4.1.4 except for the one fix. Anything that works with that but not with 4.1.4 is a duplicate. Of course, the more duplicates we have the worse the problem and the more urgent a fix.

I am going ahead and doing the fix in my 4.1.5 working copy, but activating 4.1.5 is a broader decision.


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

Index: main/sfx2/source/appl/linkmgr2.cxx
===================================================================
--- main/sfx2/source/appl/linkmgr2.cxx  (revision 1813359)
+++ main/sfx2/source/appl/linkmgr2.cxx  (working copy)
@@ -158,9 +158,13 @@
        SvBaseLinkRef* pTmp = new SvBaseLinkRef( pLink );
     pLink->SetLinkManager( this );
        aLinkTbl.Insert( pTmp, aLinkTbl.Count() );
-       Window *parent = GetPersist()->GetDialogParent();
        if (mAutoAskUpdateAllLinks)
        {
+               Window *parent = NULL;
+               SfxObjectShell* persist = GetPersist();
+               if (persist != NULL)
+                       parent = GetPersist()->GetDialogParent();
+
                SetUserAllowsLinkUpdate(pLink, GetUserAllowsLinkUpdate(parent));
        }
        
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org

Reply via email to