From b1af5287d00d9cf72df20e189b9140e0bc23aaaa Mon Sep 17 00:00:00 2001 From: Rodrigo Pedra Brum Date: Tue, 27 Mar 2018 09:45:59 -0300 Subject: [PATCH] Get Blade compiler from Engine Resolver (#23710) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If one registers a custom Blade compiler ( such as https://github.com/HTMLMin/Laravel-HTMLMin ) that replaces the built-in compiler, all Blade directives registration through the Blade Façade are registered with the custom compiler and not the built-in one. As the `view:cache` command didn't retrieve the compiler from the EngineResolver but used the built-in one, when a user that uses a custom compiler runs this command, no custom directive is compiled. This commit fixes this by retrieving the compiler from the EngineResolver, so there are no conflicts with packages that register a custom Blade compiler. (For reference see the Blade Façade: https://github.com/laravel/framework/blob/5.6/src/Illuminate/Support/Facades/Blade.php#L34 ) --- src/Illuminate/Foundation/Console/ViewCacheCommand.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Illuminate/Foundation/Console/ViewCacheCommand.php b/src/Illuminate/Foundation/Console/ViewCacheCommand.php index 9bf9650a49e0..b3c514e46e2b 100644 --- a/src/Illuminate/Foundation/Console/ViewCacheCommand.php +++ b/src/Illuminate/Foundation/Console/ViewCacheCommand.php @@ -45,7 +45,7 @@ public function handle() */ protected function compileViews(Collection $views) { - $compiler = $this->laravel['blade.compiler']; + $compiler = $this->laravel['view']->getEngineResolver()->resolve('blade')->getCompiler(); $views->map(function (SplFileInfo $file) use ($compiler) { $compiler->compile($file->getRealPath());