diff --git a/photon-lib/src/main/java/org/photonvision/PhotonCamera.java b/photon-lib/src/main/java/org/photonvision/PhotonCamera.java index d1f5d69616..aa1fa0c53c 100644 --- a/photon-lib/src/main/java/org/photonvision/PhotonCamera.java +++ b/photon-lib/src/main/java/org/photonvision/PhotonCamera.java @@ -286,11 +286,10 @@ public List getAllUnreadResults() { verifyVersion(); updateDisconnectAlert(); - List ret = new ArrayList<>(); - // Grab the latest results. We don't care about the timestamps from NT - the metadata header has // this, latency compensated by the Time Sync Client var changes = resultSubscriber.getAllChanges(); + List ret = new ArrayList<>(changes.size()); for (var c : changes) { var result = c.value; checkTimeSyncOrWarn(result); diff --git a/photon-targeting/src/main/java/org/photonvision/common/networktables/PacketSubscriber.java b/photon-targeting/src/main/java/org/photonvision/common/networktables/PacketSubscriber.java index 6f43aca03d..cdd767ea74 100644 --- a/photon-targeting/src/main/java/org/photonvision/common/networktables/PacketSubscriber.java +++ b/photon-targeting/src/main/java/org/photonvision/common/networktables/PacketSubscriber.java @@ -101,11 +101,10 @@ public String getInterfaceUUID() { } public List> getAllChanges() { - List> ret = new ArrayList<>(); - // Get /all/ changes since last call to readQueue var changes = subscriber.readQueue(); + List> ret = new ArrayList<>(changes.length); for (var change : changes) { ret.add(parse(change.value, change.timestamp)); }