X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6115b1b5d90ffac0ead7082fb8106f44d45783e6..12b5f4b4d2d8a07962da7ba3b78c8c1ec2634a67:/src/common/sizer.cpp diff --git a/src/common/sizer.cpp b/src/common/sizer.cpp index af8275b478..375f5c2824 100644 --- a/src/common/sizer.cpp +++ b/src/common/sizer.cpp @@ -1328,9 +1328,12 @@ int wxGridSizer::CalcRowsCols(int& nrows, int& ncols) const if ( m_cols && m_rows ) { // if both rows and columns are specified by user, use the provided - // values even if we don't have enough items + // values even if we don't have enough items but check that we don't + // have too many of them as this is going to result in problems later ncols = m_cols; nrows = m_rows; + + wxASSERT_MSG( ncols*nrows >= nitems, "too many items in grid sizer" ); } else if ( m_cols ) { @@ -1984,7 +1987,7 @@ void wxBoxSizer::RecalcSizes() } // NB: wxCENTRE is used here only for backwards compatibility, // wxALIGN_CENTRE should be used in new code - else if ( flag & (wxCENTER | wxALIGN_CENTRE) ) + else if ( flag & (wxCENTER | (IsVertical() ? wxALIGN_CENTRE_HORIZONTAL : wxALIGN_CENTRE_VERTICAL))) { PosInMinorDir(posChild) += (totalMinorSize - minorSize) / 2; }