From b65c39c2f1ab68a7c9b599a2068ded0bbaa63008 Mon Sep 17 00:00:00 2001 From: Jiri Kolarik Date: Wed, 10 Feb 2016 16:48:15 +0100 Subject: [PATCH] fix favicon location --- index.js | 6 +++++- spec/HtmlWebpackPluginSpec.js | 16 ++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/index.js b/index.js index 5dc6d7e..62dd240 100644 --- a/index.js +++ b/index.js @@ -75,7 +75,11 @@ HtmlWebpackPlugin.prototype.apply = function (compiler) { if (self.options.favicon) { return self.addFileToAssets(self.options.favicon, compilation) .then(function (faviconBasename) { - assets.favicon = faviconBasename; + if (compilation.options.output.publicPath) { + assets.favicon = compilation.options.output.publicPath + faviconBasename; + } else { + assets.favicon = faviconBasename; + } }); } }) diff --git a/spec/HtmlWebpackPluginSpec.js b/spec/HtmlWebpackPluginSpec.js index 135b33b..ec65157 100644 --- a/spec/HtmlWebpackPluginSpec.js +++ b/spec/HtmlWebpackPluginSpec.js @@ -770,6 +770,22 @@ describe('HtmlWebpackPlugin', function () { }, [//], null, done); }); + it('adds a favicon with publicPath set', function (done) { + testHtmlPlugin({ + entry: path.join(__dirname, 'fixtures/index.js'), + output: { + path: OUTPUT_DIR, + publicPath: '/some/', + filename: 'index_bundle.js' + }, + plugins: [ + new HtmlWebpackPlugin({ + favicon: path.join(__dirname, 'fixtures/favicon.ico') + }) + ] + }, [//], null, done); + }); + it('adds a favicon with inject enabled', function (done) { testHtmlPlugin({ entry: path.join(__dirname, 'fixtures/index.js'),