From 1f73032022c3df43bd7add2258ebf93dbaa1c5a4 Mon Sep 17 00:00:00 2001 From: Schalk Neethling Date: Tue, 3 Jul 2018 20:00:12 +0200 Subject: [PATCH] Adds check for startMark before measure and beacon, bug 1468271 --- kuma/static/js/utils/post-message-handler.js | 24 ++++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/kuma/static/js/utils/post-message-handler.js b/kuma/static/js/utils/post-message-handler.js index ea8c224fafe..df9069693d4 100644 --- a/kuma/static/js/utils/post-message-handler.js +++ b/kuma/static/js/utils/post-message-handler.js @@ -33,17 +33,21 @@ function handlePerfMarks(perfData) { window.mdn.perf.setMark(perfData.markName); } else { window.mdn.perf.setMark(perfData.markName); - window.mdn.perf.setMeasure({ - measureName: perfData.measureName, - startMark: perfData.startMark, - endMark: perfData.endMark - }); - mdn.analytics.trackTiming({ - category: 'RUM - Interactive Examples', - timingVar: perfData.measureName, - value: window.mdn.perf.getDuration(perfData.measureName) - }); + // Ensure startMark exists before trying to measure and beacon + if (performance.getEntriesByName(perfData.startMark).length > 0) { + window.mdn.perf.setMeasure({ + measureName: perfData.measureName, + startMark: perfData.startMark, + endMark: perfData.endMark + }); + + mdn.analytics.trackTiming({ + category: 'RUM - Interactive Examples', + timingVar: perfData.measureName, + value: window.mdn.perf.getDuration(perfData.measureName) + }); + } } }