Commit 3ce2850e authored by Ilya Kirillov's avatar Ilya Kirillov

Bug #32095 Исправлен баг с падением при пересчете таблицы. Исправлен баг с...

Bug #32095 Исправлен баг с падением при пересчете таблицы. Исправлен баг с пересчетом таблицы, у которой первая строка с высотой больше высоты страницы. Исправлен баг с зависанием из-за трека таблиц.
parent 206a63eb
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2016 * (c) Copyright Ascensio System Limited 2010-2016
* *
* This program is freeware. You can redistribute it and/or modify it under the terms of the GNU * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html). * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights. * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* *
* THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* *
* You can contact Ascensio System SIA by email at sales@onlyoffice.com * You can contact Ascensio System SIA by email at sales@onlyoffice.com
* *
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display * The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3. * Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
* *
* Pursuant to Section 7  3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains * Pursuant to Section 7  3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic * relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE" * form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute. * in every copy of the program you distribute.
* Pursuant to Section 7  3(e) we decline to grant you any rights under trademark law for use of our trademarks. * Pursuant to Section 7  3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
"use strict"; "use strict";
/** /**
......
...@@ -405,6 +405,7 @@ Paragraph.prototype.Prepare_RecalculateObject = function() ...@@ -405,6 +405,7 @@ Paragraph.prototype.Prepare_RecalculateObject = function()
Paragraph.prototype.Start_FromNewPage = function() Paragraph.prototype.Start_FromNewPage = function()
{ {
this.Pages.length = 1; this.Pages.length = 1;
this.Pages[0] = new CParaPage(this.X, this.Y, this.XLimit, this.YLimit, 0);
// Добавляем разрыв страницы // Добавляем разрыв страницы
this.Pages[0].Set_EndLine(-1); this.Pages[0].Set_EndLine(-1);
......
...@@ -3286,6 +3286,8 @@ CTable.prototype = ...@@ -3286,6 +3286,8 @@ CTable.prototype =
{ {
if (true != this.Is_EmptyPage(CurPage)) if (true != this.Is_EmptyPage(CurPage))
break; break;
CurPage++;
} }
this.private_StartTrackTable(CurPage); this.private_StartTrackTable(CurPage);
......
...@@ -2338,7 +2338,7 @@ CTable.prototype.private_RecalculatePage = function(CurPage) ...@@ -2338,7 +2338,7 @@ CTable.prototype.private_RecalculatePage = function(CurPage)
// В данном значении не учитываются маргины // В данном значении не учитываются маргины
RowHValue = RowH.Value + this.MaxBotMargin[CurRow] + MaxTopMargin; RowHValue = RowH.Value + this.MaxBotMargin[CurRow] + MaxTopMargin;
if ((heightrule_AtLeast === RowH.HRule || heightrule_Exact == RowH.HRule) && Y + RowHValue > Y_content_end && ((0 === CurRow && 0 === CurPage) || CurRow != FirstRow)) if ((heightrule_AtLeast === RowH.HRule || heightrule_Exact == RowH.HRule) && Y + RowHValue > Y_content_end && ((0 === CurRow && 0 === CurPage && (null !== this.Get_DocumentPrev() || true === this.Parent.Is_TableCellContent())) || CurRow != FirstRow))
{ {
bNextPage = true; bNextPage = true;
......
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