[PATCH] fdo#47018 fix Impress crash on modifying bullet
Stephan van den Akker
stephanv778 at gmail.com
Tue Apr 9 08:05:03 PDT 2013
Just tested this patch, applied to:
Version: 4.1.0.0.alpha0+
Build ID: 2705fc72df2058332773b5cb04a6b4d207f5e39
The proposed patch will prevent the crash, but it seems that the underlying
problem is not solved by this:
The bullets do not survive the copy / paste action of the EditEngineFormat:
Copy/paste of bulletted text into an already bulletted empty line still
makes the bullet disappear.
So I would say that there is progress, but IMHO the patch doesn't warrant
the closing of fdo#47018.
Greetings, and thanks for the good work.
Stephan van den Akker
2013/4/9 Stephan van den Akker <stephanv778 at gmail.com>
> Building LO with this patch now. I will report my findings asap.
>
>
> 2013/4/9 Cao Cuong Ngo (via Code Review) <gerrit at gerrit.libreoffice.org>
>
> Hi,
>>
>> I have submitted a patch for review:
>>
>> https://gerrit.libreoffice.org/3285
>>
>> To pull it, you can do:
>>
>> git pull ssh://gerrit.libreoffice.org:29418/corerefs/changes/85/3285/1
>>
>> fdo#47018 fix Impress crash on modifying bullet
>>
>> Add verifying of numbering rule to avoid invalidated attribute
>>
>> Change-Id: Ifc3db3f09f9358d272245f1e00fad2802f5881ee
>> ---
>> M sd/source/ui/func/fuolbull.cxx
>> 1 file changed, 11 insertions(+), 1 deletion(-)
>>
>>
>>
>> diff --git a/sd/source/ui/func/fuolbull.cxx
>> b/sd/source/ui/func/fuolbull.cxx
>> index ae29032..49fd245 100644
>> --- a/sd/source/ui/func/fuolbull.cxx
>> +++ b/sd/source/ui/func/fuolbull.cxx
>> @@ -22,6 +22,7 @@
>> #include <svl/intitem.hxx>
>> #include <editeng/outliner.hxx>
>> #include <editeng/eeitem.hxx>
>> +#include <editeng/numitem.hxx>
>> #include <sfx2/request.hxx>
>>
>> #include <editeng/editdata.hxx>
>> @@ -64,7 +65,16 @@
>>
>> SfxItemSet aNewAttr( mpViewShell->GetPool(),
>> EE_ITEMS_START, EE_ITEMS_END );
>> - aNewAttr.Put( aEditAttr, sal_False );
>> +
>> + // fdo#47018 verify numbering rule
>> + const SfxPoolItem* pItem;
>> + sal_uInt16 nWhich =
>> aEditAttr.GetPool()->GetWhich(SID_ATTR_NUMBERING_RULE);
>> + aEditAttr.GetItemState(nWhich, sal_False, &pItem);
>> + const sal_uInt16 levelCount =
>> (*((SvxNumBulletItem*)pItem)->GetNumRule()).GetLevelCount();
>> +
>> + // check if the attribute is valid
>> + if ( levelCount )
>> + aNewAttr.Put( aEditAttr, sal_False );
>>
>> // create and execute dialog
>> SdAbstractDialogFactory* pFact =
>> SdAbstractDialogFactory::Create();
>>
>> --
>> To view, visit https://gerrit.libreoffice.org/3285
>> To unsubscribe, visit https://gerrit.libreoffice.org/settings
>>
>> Gerrit-MessageType: newchange
>> Gerrit-Change-Id: Ifc3db3f09f9358d272245f1e00fad2802f5881ee
>> Gerrit-PatchSet: 1
>> Gerrit-Project: core
>> Gerrit-Branch: master
>> Gerrit-Owner: Cao Cuong Ngo <cao.cuong.ngo at gmail.com>
>>
>> _______________________________________________
>> LibreOffice mailing list
>> LibreOffice at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/libreoffice
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20130409/a573381b/attachment.html>
More information about the LibreOffice
mailing list