From 46381839b0ce17d854b5fbbc07a38ba2b1de324f Mon Sep 17 00:00:00 2001
From: Thomas Steur <thomas.steur@googlemail.com>
Date: Fri, 18 Jul 2014 17:22:33 +0200
Subject: [PATCH] fixes #5841 fix Uninitialized string offset if custom
 variable is an empty string

---
 core/Piwik.php | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/core/Piwik.php b/core/Piwik.php
index d1baf061ff..e2f1733cd4 100644
--- a/core/Piwik.php
+++ b/core/Piwik.php
@@ -151,10 +151,15 @@ class Piwik
             $options .= self::getJavascriptTagOptions($idSite, $mergeSubdomains, $mergeAliasUrls);
         }
         $maxCustomVars = Plugins\CustomVariables\CustomVariables::getMaxCustomVariables();
+
         if ($visitorCustomVariables) {
             $options .=  '  // you can set up to ' . $maxCustomVars . ' custom variables for each visitor' . PHP_EOL;
             $index = 1;
             foreach ($visitorCustomVariables as $visitorCustomVariable) {
+                if (empty($visitorCustomVariable)) {
+                    continue;
+                }
+
                 $options .=  '  _paq.push(["setCustomVariable", '.$index++.', "'.$visitorCustomVariable[0].'", "'.$visitorCustomVariable[1].'", "visit"]);' . PHP_EOL;
             }
         }
@@ -162,6 +167,9 @@ class Piwik
             $options .=  '  // you can set up to ' . $maxCustomVars . ' custom variables for each action (page view, download, click, site search)' . PHP_EOL;
             $index = 1;
             foreach ($pageCustomVariables as $pageCustomVariable) {
+                if (empty($pageCustomVariable)) {
+                    continue;
+                }
                 $options .=  '  _paq.push(["setCustomVariable", '.$index++.', "'.$pageCustomVariable[0].'", "'.$pageCustomVariable[1].'", "page"]);' . PHP_EOL;
             }
         }
-- 
GitLab