Don't crash when laying out wxGridBagSizer with only hidden elements.
wxGridBagSizer lay out algorithm needs at least a single row and a single column to work, so simply don't run it at all if there is nothing to lay out. Closes #15475. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
be1c0bc6ba
commit
4de25822f3
2 changed files with 6 additions and 1 deletions
|
|
@ -576,6 +576,7 @@ All (GUI):
|
|||
- Add wxPropertyGridPageState::GetColumnFullWidth() (Teodor Petrov).
|
||||
- wxRTC: extracted XML utilities into a separate class for potential reuse.
|
||||
- wxPropertyGrid: improve composite flags handling (Jens Lody).
|
||||
- Don't crash laying out wxGridBagSizer with only hidden elements (briceandre).
|
||||
|
||||
wxGTK:
|
||||
|
||||
|
|
|
|||
|
|
@ -505,7 +505,11 @@ wxSize wxGridBagSizer::CalcMin()
|
|||
|
||||
void wxGridBagSizer::RecalcSizes()
|
||||
{
|
||||
if (m_children.GetCount() == 0)
|
||||
// We can't lay out our elements if we don't have at least a single row and
|
||||
// a single column. Notice that this may happen even if we have some
|
||||
// children but all of them are hidden, so checking for m_children being
|
||||
// non-empty is not enough, see #15475.
|
||||
if ( m_rowHeights.empty() || m_colWidths.empty() )
|
||||
return;
|
||||
|
||||
wxPoint pt( GetPosition() );
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue