public void updateTargetLayers(List<Layer> layersForReceiver) {
		BLFramePacket fp = retrieveLatestPacket();
		if (fp != null) {
			for (Layer l : layersForReceiver) {
				if (layerImage == null
						|| fp.getImageWidth() != layerImage.getWidth()
						|| fp.getImageHeight() != layerImage.getHeight()) {
					layerImage = new BufferedImage(fp.getImageWidth(), fp
							.getImageHeight(), BufferedImage.TYPE_INT_ARGB);
				}
				fp.fillBufferedImage(layerImage);
				l.updateImage(layerImage, receiver.getInputCropOffset(), receiver.getScaleMode());
			}
		} else if (System.currentTimeMillis() > lastPacketReceiptTime + timeout) {
			for (Layer l : layersForReceiver) {
				l.clearImageToTransparent();
			}
		}
	}