From 5e9b43ea86b875c5ae472bfb3545461e5288835d Mon Sep 17 00:00:00 2001 From: nickolay Date: Wed, 22 Apr 2020 12:30:17 +0300 Subject: [PATCH 1/2] warning for failed "include" resolution --- src/lib/output/plugins/MarkedPlugin.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/output/plugins/MarkedPlugin.ts b/src/lib/output/plugins/MarkedPlugin.ts index 48b57bf3f..1cd2c91b3 100644 --- a/src/lib/output/plugins/MarkedPlugin.ts +++ b/src/lib/output/plugins/MarkedPlugin.ts @@ -135,6 +135,7 @@ export class MarkedPlugin extends ContextAwareRendererComponent { return contents; } } else { + this.application.logger.warn('Could not find file for include: ' + path); return ''; } }); From a7a5607140eaf6f68787bbfcc05eba1098b6549a Mon Sep 17 00:00:00 2001 From: nickolay Date: Thu, 23 Apr 2020 13:23:41 +0300 Subject: [PATCH 2/2] do not silently swallow the missed file errors - issue warnings --- src/lib/output/plugins/MarkedPlugin.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/output/plugins/MarkedPlugin.ts b/src/lib/output/plugins/MarkedPlugin.ts index 1cd2c91b3..08715f7bf 100644 --- a/src/lib/output/plugins/MarkedPlugin.ts +++ b/src/lib/output/plugins/MarkedPlugin.ts @@ -135,7 +135,7 @@ export class MarkedPlugin extends ContextAwareRendererComponent { return contents; } } else { - this.application.logger.warn('Could not find file for include: ' + path); + this.application.logger.warn('Could not find file to include: ' + path); return ''; } }); @@ -143,9 +143,12 @@ export class MarkedPlugin extends ContextAwareRendererComponent { if (this.mediaDirectory) { text = text.replace(this.mediaPattern, (match: string, path: string) => { - if (FS.existsSync(Path.join(this.mediaDirectory!, path))) { + const fileName = Path.join(this.mediaDirectory!, path); + + if (FS.existsSync(fileName) && FS.statSync(fileName).isFile()) { return this.getRelativeUrl('media') + '/' + path; } else { + this.application.logger.warn('Could not find media file: ' + fileName); return match; } });