bug 60601: unset hyperlinks after removing them individually from the DOM
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1779437 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
b2e807c005
commit
2abd64f3a9
|
@ -3485,15 +3485,16 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet {
|
||||||
worksheet.getHyperlinks().setHyperlinkArray(ctHls);
|
worksheet.getHyperlinks().setHyperlinkArray(ctHls);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// For some reason, we have to remove the hyperlinks one by one from the CTHyperlinks array
|
|
||||||
// rather than unsetting or resetting the hyperlink array.
|
|
||||||
//worksheet.getHyperlinks().setHyperlinkArray(new CTHyperlink[0]);
|
|
||||||
//worksheet.unsetHyperlinks();
|
|
||||||
if (worksheet.getHyperlinks() != null) {
|
if (worksheet.getHyperlinks() != null) {
|
||||||
final int count = worksheet.getHyperlinks().sizeOfHyperlinkArray();
|
final int count = worksheet.getHyperlinks().sizeOfHyperlinkArray();
|
||||||
for (int i=count-1; i>=0; i--) {
|
for (int i=count-1; i>=0; i--) {
|
||||||
worksheet.getHyperlinks().removeHyperlink(i);
|
worksheet.getHyperlinks().removeHyperlink(i);
|
||||||
}
|
}
|
||||||
|
// For some reason, we have to remove the hyperlinks one by one from the CTHyperlinks array
|
||||||
|
// before unsetting the hyperlink array.
|
||||||
|
// Resetting the hyperlink array seems to break some XML nodes.
|
||||||
|
//worksheet.getHyperlinks().setHyperlinkArray(new CTHyperlink[0]);
|
||||||
|
worksheet.unsetHyperlinks();
|
||||||
} else {
|
} else {
|
||||||
// nothing to do
|
// nothing to do
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue