From d931cf0c5649f456a9c9f91e3c481b35c73daad1 Mon Sep 17 00:00:00 2001 From: Bob Fanger Date: Sat, 4 Feb 2023 00:54:26 +0100 Subject: [PATCH 1/2] fix: Prevent crawling empty url from The empty src was crawled as a relative url. On `/page/about` this would route to `/page/` which could 404 --- .changeset/lucky-tables-jam.md | 5 +++++ packages/kit/src/core/postbuild/crawl.js | 4 ++-- .../kit/src/core/postbuild/fixtures/basic-src/input.html | 1 + 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changeset/lucky-tables-jam.md diff --git a/.changeset/lucky-tables-jam.md b/.changeset/lucky-tables-jam.md new file mode 100644 index 000000000000..55d2ce98609d --- /dev/null +++ b/.changeset/lucky-tables-jam.md @@ -0,0 +1,5 @@ +--- +'@sveltejs/kit': patch +--- + +Prevent crawling empty urls diff --git a/packages/kit/src/core/postbuild/crawl.js b/packages/kit/src/core/postbuild/crawl.js index 255d6e443e65..fd1bd4c9e683 100644 --- a/packages/kit/src/core/postbuild/crawl.js +++ b/packages/kit/src/core/postbuild/crawl.js @@ -165,7 +165,7 @@ export function crawl(html) { } else if (name === 'rel') { rel = value; } else if (name === 'src') { - hrefs.push(value); + if (value) hrefs.push(value); } else if (name === 'srcset') { const candidates = []; let insideURL = true; @@ -183,7 +183,7 @@ export function crawl(html) { candidates.push(value); for (const candidate of candidates) { const src = candidate.split(WHITESPACE)[0]; - hrefs.push(src); + if (src) hrefs.push(src); } } } else { diff --git a/packages/kit/src/core/postbuild/fixtures/basic-src/input.html b/packages/kit/src/core/postbuild/fixtures/basic-src/input.html index 82c55c8f2780..52d4ee72b077 100644 --- a/packages/kit/src/core/postbuild/fixtures/basic-src/input.html +++ b/packages/kit/src/core/postbuild/fixtures/basic-src/input.html @@ -3,5 +3,6 @@ A potato + empty From 19473543b232a674403800783b8626f01774b595 Mon Sep 17 00:00:00 2001 From: Simon H <5968653+dummdidumm@users.noreply.github.com> Date: Mon, 6 Feb 2023 15:52:40 +0100 Subject: [PATCH 2/2] Update .changeset/lucky-tables-jam.md --- .changeset/lucky-tables-jam.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/lucky-tables-jam.md b/.changeset/lucky-tables-jam.md index 55d2ce98609d..2b334b36f876 100644 --- a/.changeset/lucky-tables-jam.md +++ b/.changeset/lucky-tables-jam.md @@ -2,4 +2,4 @@ '@sveltejs/kit': patch --- -Prevent crawling empty urls +fix: prevent crawling empty urls (``)