[github-578] allow any non-fatal exception when setting up fonts to indicate that the fonts are probably not installed. This closes #578

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1915397 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
PJ Fanning 2024-01-25 10:03:29 +00:00
parent 7b7f10e657
commit 274a7e24f3
1 changed files with 5 additions and 3 deletions

View File

@ -38,6 +38,7 @@ import org.apache.poi.ss.usermodel.RichTextString;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.util.ExceptionUtil;
import org.apache.poi.util.Internal;
@ -351,12 +352,13 @@ public class SheetUtil {
try {
TextLayout layout = new TextLayout(str.getIterator(), fontRenderContext);
return layout.getAdvance();
} catch (UnsatisfiedLinkError | NoClassDefFoundError | InternalError e) {
if (ignoreMissingFontSystem) {
} catch (Throwable t) {
// fatal exceptions will always be rethrown
if (!ExceptionUtil.isFatal(t) && ignoreMissingFontSystem) {
return DEFAULT_CHAR_WIDTH;
}
throw e;
throw t;
}
}