diff --git a/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableComponent.java b/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableComponent.java index 3e9b838ce5..5dec2a7ac6 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableComponent.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableComponent.java @@ -76,7 +76,7 @@ public class TableComponent implements LayoutableRenderableEntity for (TableRow row : this.rows) { - height += displayRow(graphics, row, height, columnWidths, metrics); + height = displayRow(graphics, row, height, columnWidths, metrics); } graphics.translate(-preferredLocation.x, -preferredLocation.y); @@ -99,7 +99,13 @@ public class TableComponent implements LayoutableRenderableEntity int y = startingRowHeight; final TableElement cell = elements.get(i); - final String[] lines = lineBreakText(cell.getContent(), columnWidths[i], metrics); + final String content = cell.getContent(); + if (content == null) + { + continue; + } + + final String[] lines = lineBreakText(content, columnWidths[i], metrics); final TableAlignment alignment = getCellAlignment(row, i); final Color color = getCellColor(row, i); @@ -151,6 +157,11 @@ public class TableComponent implements LayoutableRenderableEntity { final TableElement ele = elements.get(col); final String cell = ele.getContent(); + if (cell == null) + { + continue; + } + final int cellWidth = getTextWidth(metrics, cell); maxtextw[col] = Math.max(maxtextw[col], cellWidth); diff --git a/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableRow.java b/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableRow.java index d80c40e4db..8879b08c5e 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableRow.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/overlay/components/table/TableRow.java @@ -25,6 +25,7 @@ package net.runelite.client.ui.overlay.components.table; import java.awt.Color; +import java.util.ArrayList; import java.util.List; import lombok.Builder; import lombok.Data; @@ -35,5 +36,6 @@ public class TableRow { Color rowColor; TableAlignment rowAlignment; - List elements; + @Builder.Default + List elements = new ArrayList<>(); }