Skip to content

Commit 16cff65

Browse files
committed
fix(logo-favicon): don't resolve roo path as logo
1 parent e350568 commit 16cff65

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

packages/metascraper-logo-favicon/src/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ const getDomNodeSizes = (domNodes, attr, url) =>
7070
chain(domNodes)
7171
.reduce((acc, domNode) => {
7272
const relativeUrl = domNode.attribs[attr]
73-
if (!relativeUrl) return acc
73+
if (!relativeUrl || relativeUrl === url) return acc
7474
const normalizedUrl = normalizeUrl(url, relativeUrl)
7575
if (!normalizedUrl) return acc
7676
return [

packages/metascraper-logo-favicon/test/index.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,19 @@ test('get the biggest icon possible', async t => {
8585
t.is(metadata.logo, 'https://cdn.microlink.io/logo/favicon-196x196.png')
8686
})
8787

88+
test("don't resolve root path as logo", async t => {
89+
const url = 'https://thisurldoesnotexist.com'
90+
const metascraper = createMetascraper()
91+
const html = createHtml([
92+
'<link rel="icon" type="image/x-icon">',
93+
'<link rel="icon" type="image/x-icon" href="">',
94+
`<link rel="icon" type="image/x-icon" href="${url}">`,
95+
'<link rel="icon" type="image/x-icon" href>'
96+
])
97+
const metadata = await metascraper({ url, html })
98+
t.is(metadata.logo, null)
99+
})
100+
88101
test('get the biggest respecting the format', async t => {
89102
const url = 'https://github.com'
90103
const metascraper = createMetascraper()

0 commit comments

Comments
 (0)