From 6feb61512bef449257a26710094291453ba94418 Mon Sep 17 00:00:00 2001 From: Adam Amstrong Date: Thu, 26 Apr 2012 17:08:03 +0000 Subject: [PATCH] fix new version of svn (#40 from Mike Stupalov) git-svn-id: http://www.observium.org/svn/observer/trunk@3095 61d68cd4-352d-0410-923a-c4978735b2b8 --- includes/defaults.inc.php | 1 + includes/static-config.php | 17 +++++++++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/includes/defaults.inc.php b/includes/defaults.inc.php index 5ca9cf41e..c112ed8f0 100644 --- a/includes/defaults.inc.php +++ b/includes/defaults.inc.php @@ -55,6 +55,7 @@ $config['dot'] = "/usr/bin/dot"; $config['unflatten'] = "/usr/bin/unflatten"; $config['neato'] = "/usr/bin/neato"; $config['sfdp'] = "/usr/bin/sfdp"; +$config['svn'] = "/usr/bin/svn"; ### Memcached - Keep immediate statistics diff --git a/includes/static-config.php b/includes/static-config.php index 2da96b651..69dacc122 100644 --- a/includes/static-config.php +++ b/includes/static-config.php @@ -1096,11 +1096,20 @@ if (isset($config['enable_printers']) && $config['enable_printers']) $config['version'] = "0.11.5.2245"; -if (file_exists('.svn/entries')) +if (file_exists($config['install_dir'] . '/.svn/entries')) { - $svn = File('.svn/entries'); - $svn_rev = trim($svn[3]); - list($svn_date) = explode("T", trim($svn[9])); + $svn = File($config['install_dir'] . '/.svn/entries'); + if ((int)$svn[0] < 12) + { + // SVN version < 1.7 + $svn_rev = trim($svn[3]); + list($svn_date) = explode("T", trim($svn[9])); + } else { + // SVN version >= 1.7 + $xml = simplexml_load_string(shell_exec($config['svn'] . ' info --xml')); + $svn_rev = $xml->entry->commit->attributes()->revision; + $svn_date = $xml->entry->commit->date; + } list($svn_year, $svn_month, $svn_day) = explode("-", $svn_date); $config['version'] = "0." . ($svn_year-2000) . "." . ($svn_month+0) . "." . $svn_rev; } else {