diff --git a/src/main/java/li/cil/oc2/common/blobs/BlobStorage.java b/src/main/java/li/cil/oc2/common/blobs/BlobStorage.java index 50aab19f..299c2234 100644 --- a/src/main/java/li/cil/oc2/common/blobs/BlobStorage.java +++ b/src/main/java/li/cil/oc2/common/blobs/BlobStorage.java @@ -149,8 +149,10 @@ public final class BlobStorage { * * @param handle the handle to free. */ - public static void freeHandle(final UUID handle) { - DELETED_HANDLES.add(handle); + public static void freeHandle(@Nullable final UUID handle) { + if (handle != null) { + DELETED_HANDLES.add(handle); + } } /** diff --git a/src/main/java/li/cil/oc2/common/tile/ComputerTileEntity.java b/src/main/java/li/cil/oc2/common/tile/ComputerTileEntity.java index e378d943..be5907ad 100644 --- a/src/main/java/li/cil/oc2/common/tile/ComputerTileEntity.java +++ b/src/main/java/li/cil/oc2/common/tile/ComputerTileEntity.java @@ -217,6 +217,9 @@ public final class ComputerTileEntity extends TileEntity implements ITickableTil virtualMachine.dispose(); virtualMachine = null; } + + BlobStorage.freeHandle(firmwareBlobHandle); + BlobStorage.freeHandle(ramBlobHandle); } private void joinVirtualMachine() {