diff --git a/code/functions/live-capture/java/nu/marginalia/livecapture/BrowserlessClient.java b/code/functions/live-capture/java/nu/marginalia/livecapture/BrowserlessClient.java index 1d54867a..0e48f0bf 100644 --- a/code/functions/live-capture/java/nu/marginalia/livecapture/BrowserlessClient.java +++ b/code/functions/live-capture/java/nu/marginalia/livecapture/BrowserlessClient.java @@ -74,6 +74,7 @@ public class BrowserlessClient implements AutoCloseable { if (rsp.statusCode() >= 300) { logger.info("Failed to fetch screenshot for {}, status {}", url, rsp.statusCode()); + return new byte[0]; } return rsp.body(); diff --git a/code/functions/live-capture/java/nu/marginalia/livecapture/LiveCaptureGrpcService.java b/code/functions/live-capture/java/nu/marginalia/livecapture/LiveCaptureGrpcService.java index 0b4ee756..66b2dc9c 100644 --- a/code/functions/live-capture/java/nu/marginalia/livecapture/LiveCaptureGrpcService.java +++ b/code/functions/live-capture/java/nu/marginalia/livecapture/LiveCaptureGrpcService.java @@ -170,7 +170,9 @@ public class LiveCaptureGrpcService byte[] pngBytes = client.screenshot(domain.toRootUrlHttps().toString(), BrowserlessClient.GotoOptions.defaultValues(), BrowserlessClient.ScreenshotOptions.defaultValues()); - ScreenshotDbOperations.uploadScreenshot(conn, domain, pngBytes); + if (pngBytes.length > 0) { + ScreenshotDbOperations.uploadScreenshot(conn, domain, pngBytes); + } } catch (Exception e) { ScreenshotDbOperations.flagDomainAsFetched(conn, domain); }