[Libreoffice-commits] core.git: sw/qa sw/source

Michael Stahl mstahl at redhat.com
Mon Mar 26 14:17:53 UTC 2018


 sw/qa/extras/uiwriter/data/flowframe_null_ptr_deref.sample |  654 +++++++++++++
 sw/qa/extras/uiwriter/uiwriter.cxx                         |   15 
 sw/source/core/layout/ftnfrm.cxx                           |   13 
 sw/source/core/layout/sectfrm.cxx                          |    4 
 4 files changed, 681 insertions(+), 5 deletions(-)

New commits:
commit 5e18136a01208f5df7c5f554bbcdab2ef661e136
Author: Michael Stahl <mstahl at redhat.com>
Date:   Thu Mar 22 21:18:56 2018 +0100

    forcepoint #3: sw: don't do section-in-table splits when this is table
    
    The problem with the bugdoc is that SwFrame::GetNextSctLeaf() creates a
    follow frame for a section in a table, and puts it outside the table,
    below the page's body frame, while moving text frames that have the
    mbInfTab flag set into the follow frame.
    
    The situation is different from forcepoint #18 though: the frame "this"
    is a SwTabFrame here, and GetNextCellLeaf() *does* return a plausible
    looking follow cell frame, however it's ignored later because
    CanContainSplitSection(this) is false since it's a SwTabFrame.
    
    IIRC table-in-section-in-table should not be split anyway, so
    just add a check here and return early.
    
    (regression f8a76d218305a56d15b82b9dac4fafa558872780)
    
    Revert "forcepoint #3"
    This reverts commit 34627ad7d03f93b89689b2e48a3985574d10f965
    because it was just a work-around not to crash with the invalid table
    frames.
    
    Change-Id: I54692a67edade23c6b8e0a9be806728b0012a3fd
    Reviewed-on: https://gerrit.libreoffice.org/51751
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>

diff --git a/sw/qa/extras/uiwriter/data/flowframe_null_ptr_deref.sample b/sw/qa/extras/uiwriter/data/flowframe_null_ptr_deref.sample
new file mode 100644
index 000000000000..ec4e8423a08a
--- /dev/null
+++ b/sw/qa/extras/uiwriter/data/flowframe_null_ptr_deref.sample
@@ -0,0 +1,654 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+
+<head>
+  <head>
+  <head>
+  <head>
+  <title>KDE::Enterprise Homepage - Business Directory</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" /><head>
+  <title>KDE::Enterprise Homepage - Business Directory</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" /><head>
+  <title>KDE::Enterprise Homepage - Business Directory</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" /><head>
+  <title>KDE::Enterprise Homepage - Business Directory</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head><link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head><link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head><link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <meta http-equiv="Content-Style-Type" content="text/css" />
+
+  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />
+
+  <meta name="trademark" content="KDE e.V." />
+  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
+  <meta name="MSSmartTagsPreventParsing" content="true" />
+  <meta name="robots" content="all" />
+
+  <link rel="shortcut icon" href="favicon.ico" />
+
+<link rel="stylesheet" media="screen" type="text/css" title="Default: KDE Window Colors" href="/media/styles/standard.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Black and white" href="/media/styles/blackwhite.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Blue, mellow" href="/media/styles/bluemellow.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Classic Blue" href="/media/styles/classic.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Orange" href="/media/styles/endres.css" />
+<link rel="alternate stylesheet" media="screen" type="text/css" title="Yellow" href="/media/styles/yellow.css" />
+
+  <link rel="stylesheet" media="print" type="text/css" href="/media/styles/print.css" />
+</head>
+
+<body id="enterprisekdeorg"><table border="0" cellpadding="0" cellspacing="0" width="100%">
+<tr id="header">
+  <td id="headerpath">
+      <span class="invisible"><a href="#main" accesskey="2"><span class="invisible"><a href="#main" accesskey="2"><span class="invisible"><a href="#main" accesskey="2"><span class="invisible"><a href="#main" accesskey="2">Skip to Content</a> |</span></a> |</span></a> |</span></a> |</span>
+        Location: <a href="/" accesskey="1">KDE::Enterprise Homepage</a> / Business Directory  </td>
+
+  <td id="headermenu">
+        <a href="/media/settings.php" accesskey="7" title="Customize content and look & feel of the KDE.org Webpages">Settings</a><a href="/media/settings.php" accesskey="7" title="Customize content and look & feel of the KDE.org Webpages">Settings</a> |
+        <a href="http://www.kde.org/family/" accesskey="3" title="A complete structural overview of the KDE.org web pages">Sitemap</a> |
+    <a href="http://www.kde.org/documentation/" accesskey="6" title="Having problems? Read the documentation">Help</a> |
+     <a href="http://www.kde.org/contact/" accesskey="10" title="Contact information for all areas of KDE">Contact Us</a>
+  </td>
+</tr>
+
+<tr id="logo">
+  <td valign="top" colspan="2">
+    <a href="../"><img alt="KDE::Enterprise Homepage" src="/media/images/kde_logo.jpg" width="296" height="79" border="0" /></a>
+  </td>
+
+  </tr>
+
+</table><table border="0" cellpadding="0" cellspacing="0" width="100%">
+<tr>
+      <td valign="top" class="menuheader" height="0"></td>
+  
+  <td id="contentcolumn" valign="top" rowspan="2">
+    <div id="contentheader"> </div>
+          <div class="invisible"><a href="#navigation" accesskey="5">Skip to Link Menu</a></div>
+         <div id="content"><div style="width:100%;">
+    <a name="main" />
+
+    <h1>Business Directory</h1>
+
+<h4>A problem has been detected with your submisson</h4>
+<p>In the <b>Business Name</b> box you did not enter a valid name.</p>
+<p>Please correct the problem below and resubmit.</p>
+    <form action="addbiz.php" method="POST">
+      <table cellpadding="5">
+        <tr>
+                <td><font color="#ff0000">--> </font></td>
+                <td>Business Name</td>
+                <td>
+                <input type="text" name="nameBox" maxlength="20" value="">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Contact Name</td>
+                <td>
+                <input type="text" name="contactBox" maxlength="50" value="Waldo Bastian">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Email Address</td>
+                <td>
+                <input type="text" name="emailBox" maxlength="50" value="bastian at kde.org">
+                <input type="checkbox" name="showEmailBox" value="">Publish e-mail address                </td>
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Website</td>
+                <td>
+                <input type="text" name="websiteBox" maxlength="50" value="">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Address</td>
+                <td>
+                <input type="text" name="add1Box" maxlength="50" value="9 Le Val Renard">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td></td>
+                <td>
+                <input type="text" name="add2Box" maxlength="50" value="Taden">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td></td>
+                <td>
+                <input type="text" name="add3Box" maxlength="50" value="">
+                <p>
+                If more than one address, please add your head office.
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Postcode / Zip Code</td>
+                <td>
+                <input type="text" name="postcodeBox" maxlength="20" value="22100">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Country</td>
+                <td>
+                <select name="countryBox">
+<OPTION>Unspecified</OPTION>
+<OPTION>Afghanistan</OPTION>
+<OPTION>Albania</OPTION>
+<OPTION>Algeria</OPTION>
+<OPTION>Angola</OPTION>
+<OPTION>Anguilla</OPTION>
+<OPTION>Antarctic</OPTION>
+<OPTION>Antigua and Barbuda</OPTION>
+<OPTION>Argentina</OPTION>
+<OPTION>Armenia</OPTION>
+<OPTION>Aruba</OPTION>
+<OPTION>Australia</OPTION>
+<OPTION>Austria</OPTION>
+<OPTION>Azerbaijan</OPTION>
+<OPTION>Bahamas</OPTION>
+<OPTION>Bahrain</OPTION>
+<OPTION>Bangladesh</OPTION>
+<OPTION>Barbados</OPTION>
+<OPTION>Belarus</OPTION>
+<OPTION>Belgium</OPTION>
+<OPTION>Belize</OPTION>
+<OPTION>Benin</OPTION>
+<OPTION>Bermuda</OPTION>
+<OPTION>Bolivia</OPTION>
+<OPTION>Bosia and Herzegovina</OPTION>
+<OPTION>Botswana</OPTION>
+<OPTION>Bouvet Island</OPTION>
+<OPTION>Brazil</OPTION>
+<OPTION>British Indian Ocean Territory</OPTION>
+<OPTION>Brunei Darussalam</OPTION>
+<OPTION>Bulgaria</OPTION>
+<OPTION>Burkina Faso</OPTION>
+<OPTION>Burundi</OPTION>
+<OPTION>Cambodia</OPTION>
+<OPTION>Cameroon</OPTION>
+<OPTION>Canada</OPTION>
+<OPTION>Cape Verde</OPTION>
+<OPTION>Cayman Islands</OPTION>
+<OPTION>Central African Republic</OPTION>
+<OPTION>Chad</OPTION>
+<OPTION>Chile</OPTION>
+<OPTION>China</OPTION>
+<OPTION>Christmas Island</OPTION>
+<OPTION>Colombia</OPTION>
+<OPTION>Comoros</OPTION>
+<OPTION>Congo</OPTION>
+<OPTION>Cook Islands</OPTION>
+<OPTION>Costa Rica</OPTION>
+<OPTION>Cote D'Ivoire</OPTION>
+<OPTION>Croatia</OPTION>
+<OPTION>Cuba</OPTION>
+<OPTION>Cyprus</OPTION>
+<OPTION>Czech Republic</OPTION>
+<OPTION>Denmark</OPTION>
+<OPTION>Djibouti</OPTION>
+<OPTION>Dominica</OPTION>
+<OPTION>Dominican Republic</OPTION>
+<OPTION>East Timor</OPTION>
+<OPTION>Ecuador</OPTION>
+<OPTION>Egypt</OPTION>
+<OPTION>El Salvador</OPTION>
+<OPTION>Equatorial Guinea</OPTION>
+<OPTION>Estonia</OPTION>
+<OPTION>Ethiopia</OPTION>
+<OPTION>Falkland Islands (Malvinas)</OPTION>
+<OPTION>Fiji</OPTION>
+<OPTION>Finland</OPTION>
+<OPTION selected>France</OPTION>
+<OPTION>French Guiana</OPTION>
+<OPTION>French Polynesia</OPTION>
+<OPTION>French Southern Territories</OPTION>
+<OPTION>Gabon</OPTION>
+<OPTION>Gambia</OPTION>
+<OPTION>Georgia</OPTION>
+<OPTION>Germany</OPTION>
+<OPTION>Ghana</OPTION>
+<OPTION>Gibraltar</OPTION>
+<OPTION>Greece</OPTION>
+<OPTION>Greenland</OPTION>
+<OPTION>Grenada</OPTION>
+<OPTION>Guadeloupe</OPTION>
+<OPTION>Guatemala</OPTION>
+<OPTION>Guinea</OPTION>
+<OPTION>Guinea-Bissau</OPTION>
+<OPTION>Guyana</OPTION>
+<OPTION>Haiti</OPTION>
+<OPTION>Honduras</OPTION>
+<OPTION>Hong Kong</OPTION>
+<OPTION>Hungary</OPTION>
+<OPTION>Iceland</OPTION>
+<OPTION>India</OPTION>
+<OPTION>Indonesia</OPTION>
+<OPTION>Iran, Islamic Republic of</OPTION>
+<OPTION>Iraq</OPTION>
+<OPTION>Ireland</OPTION>
+<OPTION>Israel</OPTION>
+<OPTION>Italy</OPTION>
+<OPTION>Jamaica</OPTION>
+<OPTION>Japan</OPTION>
+<OPTION>Jordan</OPTION>
+<OPTION>Kazakstan</OPTION>
+<OPTION>Kenya</OPTION>
+<OPTION>Kiribati</OPTION>
+<OPTION>Korea, Democratic People's Republic of</OPTION>
+<OPTION>Korea, Republic of</OPTION>
+<OPTION>Kuwait</OPTION>
+<OPTION>Kyrgyzstan</OPTION>
+<OPTION>Lao People's Democratic Republic</OPTION>
+<OPTION>Latvia</OPTION>
+<OPTION>Lebanon</OPTION>
+<OPTION>Lesotho</OPTION>
+<OPTION>Liberia</OPTION>
+<OPTION>Libyan Arab Jamahiriya</OPTION>
+<OPTION>Lithuania</OPTION>
+<OPTION>Luxembourg</OPTION>
+<OPTION>Macau</OPTION>
+<OPTION>Macedonia, the Former Yugoslac Republic of</OPTION>
+<OPTION>Madagascar</OPTION>
+<OPTION>Malawi</OPTION>
+<OPTION>Malaysia</OPTION>
+<OPTION>Maldives</OPTION>
+<OPTION>Mali</OPTION>
+<OPTION>Malta</OPTION>
+<OPTION>Marshall Islands</OPTION>
+<OPTION>Martinique</OPTION>
+<OPTION>Mauritania</OPTION>
+<OPTION>Mauritius</OPTION>
+<OPTION>Mexico</OPTION>
+<OPTION>Mirconesia, Federated States of</OPTION>
+<OPTION>Moldova, Republic of</OPTION>
+<OPTION>Mongolia</OPTION>
+<OPTION>Morocco</OPTION>
+<OPTION>Mozambique</OPTION>
+<OPTION>Myanmar</OPTION>
+<OPTION>Namibia</OPTION>
+<OPTION>Nauru</OPTION>
+<OPTION>Nepal</OPTION>
+<OPTION>Netherlands</OPTION>
+<OPTION>Netherlands Antilles</OPTION>
+<OPTION>New Caledonia</OPTION>
+<OPTION>New Zealand</OPTION>
+<OPTION>Nicaragua</OPTION>
+<OPTION>Niger</OPTION>
+<OPTION>Nigeria</OPTION>
+<OPTION>Norway</OPTION>
+<OPTION>Oman</OPTION>
+<OPTION>Pakistan</OPTION>
+<OPTION>Panama</OPTION>
+<OPTION>Papua New Guinea</OPTION>
+<OPTION>Paraguay</OPTION>
+<OPTION>Peru</OPTION>
+<OPTION>Philippines</OPTION>
+<OPTION>Pitcairn</OPTION>
+<OPTION>Poland</OPTION>
+<OPTION>Portugal</OPTION>
+<OPTION>Puerto Rico</OPTION>
+<OPTION>Qatar</OPTION>
+<OPTION>Reunion</OPTION>
+<OPTION>Romania</OPTION>
+<OPTION>Russian Federation</OPTION>
+<OPTION>Rwanda</OPTION>
+<OPTION>Saint Kitts and Nevis</OPTION>
+<OPTION>Saint Lucia</OPTION>
+<OPTION>Saint Pierre and Miquelon</OPTION>
+<OPTION>Saint Vincent and the Grenadines</OPTION>
+<OPTION>Samoa</OPTION>
+<OPTION>Sao Tome and Principe</OPTION>
+<OPTION>Saudi Arabia</OPTION>
+<OPTION>Senegal</OPTION>
+<OPTION>Seychelles</OPTION>
+<OPTION>Sierra Leone</OPTION>
+<OPTION>Singapore</OPTION>
+<OPTION>Slovakia</OPTION>
+<OPTION>Slovenia</OPTION>
+<OPTION>Solomon Islands</OPTION>
+<OPTION>Somalia</OPTION>
+<OPTION>South Africa</OPTION>
+<OPTION>South Georgia and the South Sandwich Islands</OPTION>
+<OPTION>Spain</OPTION>
+<OPTION>Sri Lanka</OPTION>
+<OPTION>Sudan</OPTION>
+<OPTION>Suriname</OPTION>
+<OPTION>Swaziland</OPTION>
+<OPTION>Sweden</OPTION>
+<OPTION>Switzerland</OPTION>
+<OPTION>Syrian Arab Republic</OPTION>
+<OPTION>Taiwan</OPTION>
+<OPTION>Tajikistan</OPTION>
+<OPTION>Tanzania, United Republic of</OPTION>
+<OPTION>Thailand</OPTION>
+<OPTION>Togo</OPTION>
+<OPTION>Tokelau</OPTION>
+<OPTION>Tonga</OPTION>
+<OPTION>Trinidad and Tobago</OPTION>
+<OPTION>Tunisia</OPTION>
+<OPTION>Turkey</OPTION>
+<OPTION>Turkmenistan</OPTION>
+<OPTION>Turks and Caicos Islands</OPTION>
+<OPTION>Tuvalu</OPTION>
+<OPTION>Uganda</OPTION>
+<OPTION>Ukraine</OPTION>
+<OPTION>United Arab Emirates</OPTION>
+<OPTION>United Kingdom</OPTION>
+<OPTION>United States</OPTION>
+<OPTION>United States Minor Outlying Islands</OPTION>
+<OPTION>Uruguay</OPTION>
+<OPTION>Uzbekistan</OPTION>
+<OPTION>Vanuatu</OPTION>
+<OPTION>Venezuela</OPTION>
+<OPTION>Viet Nam</OPTION>
+<OPTION>Virgin Islands, British</OPTION>
+<OPTION>Western Sahara</OPTION>
+<OPTION>Yemen</OPTION>
+<OPTION>Yugoslavia</OPTION>
+<OPTION>Zaire</OPTION>
+<OPTION>Zambia</OPTION>
+<OPTION>Zimbabwe</OPTION>
+                </select>
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Phone Number</td>
+                <td>
+                <input type="text" name="phoneBox" maxlength="20" value="000000">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Fax Number</td>
+                <td>
+                <input type="text" name="faxBox" maxlength="20" value="111111">
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Business Services</td>
+                <td>
+                <table>
+                <tr>
+                        <td>On Site Support</td>
+                        <td><input type="checkbox" name="onsitesupportBox" maxlength="20" value="1" ></td>
+                </tr>
+                <tr>
+                        <td>Phone Support</td>
+                        <td><input type="checkbox" name="phonesupportBox" maxlength="20" value="1" "></td>
+                </tr>
+                <tr>
+                        <td>Distribution</td>
+                        <td><input type="checkbox" name="distributionBox" maxlength="20" value="1" "></td>
+                </tr>
+                <tr>
+                        <td>Free software development</td>
+                        <td><input type="checkbox" name="freedevBox" maxlength="20" value="1" "></td>
+                </tr>
+                <tr>
+                        <td>Commercial development</td>
+                        <td><input type="checkbox" name="commdevBox" maxlength="20" value="1" "></td>
+                </tr>
+                <tr>
+                        <td>Consulting</td>
+                        <td><input type="checkbox" name="consultingBox" maxlength="20" value="1" "></td>
+                </tr>
+                <tr>
+                        <td>Retail</td>
+                        <td><input type="checkbox" name="retailBox" maxlength="20" value="1" "></td>
+                </tr>
+                <tr>
+                        <td>Other</td>
+                        <td>
+                        <input type="text" name="otherservBox" maxlength="20" value="1"  checked ">
+                        </td>
+                </tr>
+                </table>
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td>Comments</td>
+                <td>
+                <textarea cols="50" rows="10" name="commentsBox">Hello?</textarea>
+                </td>
+        </tr>
+        <tr>
+                <td></td>
+                <td></td>
+                <td>
+                <input type="submit" name="submit" value="Add!">
+                <input type="reset" name="reset">
+                </td>
+        </tr>
+      </table>
+    </form>
+    <p>
+    <a href="./">Back to the Business Directory</a>
+    </div></div>
+
+  
+      </td>
+  </tr>
+  <tr>
+    <td valign="top" id="leftmenu" width="25%">
+      <a name="navigation"></a>
+      <h2 id="h_inform">Inform</h2>
+<ul>
+<li>
+<a href="/">Home</a>
+</li>
+<li>
+<a href="http://www.kde.org/">KDE Home</a>
+</li>
+<li>
+<a href="/news.php">News</a>
+</li>
+<li>
+<a href="/info">Information</a>
+</li>
+<li>
+<a href="/faq">FAQ</a>
+</li>
+<li>
+<a href="http://events.kde.org/calendar/index.phtml">Events</a>
+</li>
+<li>
+<a href="/mailinglist">Mailing List</a>
+</li>
+</ul>
+<h2 id="h_kdeenterprise">KDE::Enterprise</h2>
+<ul>
+<li>
+<a href="/articles/">Articles</a>
+</li>
+<li>
+<a href="/bizcase">Business Cases</a>
+</li>
+<li>
+<a href="/bizdir">Business Directory</a>
+</li>
+<li>
+<a href="/interviews/">Interviews</a>
+</li>
+<li>
+<a href="/focus/">Focus On...</a>
+</li>
+<li>
+<a href="/bizcontact">Business Contacts</a>
+</li>
+</ul>
+
+    
+    <h2 id="t_search">Search</h2>
+<div id="search">
+<form method="get" name="Searchform" action="/media/search.php">
+<span class="invisible"><label for="Input" accesskey="4">Search:</label></span>
+<input type="text" size="10" name="q" id="Input" value="" /><br />
+<span class="invisible"><label for="Select"> in </label></span>
+<select size="1" name="Select" id="Select" title="Select what or where you want to search">
+<option value="kdenet" selected="selected">kde.org</option>
+<option value="kdelook">kde-look.org</option>
+<option value="kdedoc">Documentation</option>
+</select><br />
+<input type="submit" value=" Search " name="Button" id="searchButton" />
+</form>
+</div>
+
+              <div class="invisible">
+      <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
+      <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
+      <a href="/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
+      </div>
+    </td>
+</tr>
+
+
+<tr>
+  <td colspan="2">
+    <div id="footer">
+      Maintained by <a href="mailto:webmaster at kde.org">enterprise.kde.org Webmaster</a><br />
+      KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V</a> |
+      <a href="http://www.kde.org/contact/impressum.php">Legal</a>
+    </div>
+  </td>
+</tr>
+
+</table></body>
+
+</html>
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx
index f16dec2a61a4..5b97e54f6867 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -175,6 +175,7 @@ public:
     void testDeleteTableRedlines();
     void testXFlatParagraph();
     void testTdf81995();
+    void testForcepoint3();
     void testExportToPicture();
     void testTdf77340();
     void testTdf79236();
@@ -360,6 +361,7 @@ public:
     CPPUNIT_TEST(testDeleteTableRedlines);
     CPPUNIT_TEST(testXFlatParagraph);
     CPPUNIT_TEST(testTdf81995);
+    CPPUNIT_TEST(testForcepoint3);
     CPPUNIT_TEST(testExportToPicture);
     CPPUNIT_TEST(testTdf77340);
     CPPUNIT_TEST(testTdf79236);
@@ -1901,6 +1903,19 @@ void SwUiWriterTest::testTdf81995()
     }
 }
 
+void SwUiWriterTest::testForcepoint3()
+{
+    createDoc("flowframe_null_ptr_deref.sample");
+    uno::Sequence<beans::PropertyValue> aDescriptor( comphelper::InitPropertySequence({
+        { "FilterName", uno::Any(OUString("writer_pdf_Export")) },
+    }));
+    utl::TempFile aTempFile;
+    uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY);
+    // printing asserted in SwFrame::GetNextSctLeaf()
+    xStorable->storeToURL(aTempFile.GetURL(), aDescriptor);
+    aTempFile.EnableKillingFile();
+}
+
 void SwUiWriterTest::testExportToPicture()
 {
     createDoc();
diff --git a/sw/source/core/layout/ftnfrm.cxx b/sw/source/core/layout/ftnfrm.cxx
index 206e9deac04e..e8eddce278c1 100644
--- a/sw/source/core/layout/ftnfrm.cxx
+++ b/sw/source/core/layout/ftnfrm.cxx
@@ -792,11 +792,14 @@ bool SwFrame::IsFootnoteAllowed() const
     if ( !IsInDocBody() )
         return false;
 
-    // no footnotes in repeated headlines
-    const SwTabFrame *pTab = IsInTab() ? const_cast<SwFrame*>(this)->ImplFindTabFrame() : nullptr;
-    if (pTab && pTab->IsFollow())
-        return !pTab->IsInHeadline( *this );
-
+    if ( IsInTab() )
+    {
+        // no footnotes in repeated headlines
+        const SwTabFrame *pTab = const_cast<SwFrame*>(this)->ImplFindTabFrame();
+        assert(pTab);
+        if ( pTab->IsFollow() )
+            return !pTab->IsInHeadline( *this );
+    }
     return true;
 }
 
diff --git a/sw/source/core/layout/sectfrm.cxx b/sw/source/core/layout/sectfrm.cxx
index ce3c2017ace0..8f68adf082c7 100644
--- a/sw/source/core/layout/sectfrm.cxx
+++ b/sw/source/core/layout/sectfrm.cxx
@@ -1614,6 +1614,10 @@ SwLayoutFrame *SwFrame::GetNextSctLeaf( MakePageType eMakePage )
     SwLayoutFrame* pCellLeaf = nullptr;
     if (GetUpper()->IsInTab())
     {
+        if (IsTabFrame())
+        {
+            return nullptr; // table in section in table: split disabled for now
+        }
         // We are *in* a table (not an outermost SwTabFrame), see if there
         // is a follow cell frame created already.
         pCellLeaf = GetNextCellLeaf();


More information about the Libreoffice-commits mailing list