Kaydet (Commit) 9451097a authored tarafından Philippe Jung's avatar Philippe Jung Kaydeden (comit) Michael Meeks

tdf#91259 Crash when closing Help

Rewrite of splitwin.

The previous implementation used struct and memset/memcpy/memmove.
Struct have been replaced by classes with destructors. Array of pointers
are handled in vectors.
This enables clean call to clear of VclPtr.

Change-Id: Iab77303fb1d802f208dfdf476140557e42af949a
Reviewed-on: https://gerrit.libreoffice.org/15788Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
Tested-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
üst de323517
......@@ -24,7 +24,7 @@
#include <vcl/dockwin.hxx>
class Wallpaper;
struct ImplSplitSet;
class ImplSplitSet;
typedef sal_uInt16 SplitWindowItemBits;
......@@ -57,9 +57,9 @@ private:
long mnMSplitPos;
WinBits mnWinStyle;
WindowAlign meAlign;
sal_uInt16 mnSplitTest;
sal_uInt16 mnSplitPos;
sal_uInt16 mnMouseModifier;
sal_uInt16 mnSplitTest;
sal_uInt16 mnSplitPos;
sal_uInt16 mnMouseModifier;
bool mbDragFull:1,
mbHorz:1,
mbBottomRight:1,
......@@ -145,10 +145,10 @@ public:
virtual bool PreNotify( NotifyEvent& rNEvt ) SAL_OVERRIDE;
void InsertItem( sal_uInt16 nId, vcl::Window* pWindow, long nSize,
sal_uInt16 nPos = SPLITWINDOW_APPEND, sal_uInt16 nSetId = 0,
sal_uInt16 nPos = SPLITWINDOW_APPEND, sal_uInt16 nIntoSetId = 0,
SplitWindowItemBits nBits = 0 );
void InsertItem( sal_uInt16 nId, long nSize,
sal_uInt16 nPos = SPLITWINDOW_APPEND, sal_uInt16 nSetId = 0,
sal_uInt16 nPos = SPLITWINDOW_APPEND, sal_uInt16 nIntoSetId = 0,
SplitWindowItemBits nBits = 0 );
void RemoveItem( sal_uInt16 nId, bool bHide = true );
void Clear();
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment