diff --git a/NEWS.mdtext b/NEWS.mdtext index 288420d..fe20db7 100644 --- a/NEWS.mdtext +++ b/NEWS.mdtext @@ -53,6 +53,8 @@ or newer to properly run this version of Indefero! - Source links without a specific revision did not work due to a wrong regex (issue 730) - Avatar URL generation use correctly the configuration (issue 732) +- The SyncGit plugin no longer fails to remove a non-existing post-update hook + on repository creation (issue 752) - The error detection and reporting in the SyncMonotone plugin has been improved - The branch links users of the Subversion frontend get when they enter a wrong revision are fixed; this list is now also only displayed (for any SCM) if diff --git a/src/IDF/Plugin/SyncGit/Serve.php b/src/IDF/Plugin/SyncGit/Serve.php index b69b8fb..83fda42 100644 --- a/src/IDF/Plugin/SyncGit/Serve.php +++ b/src/IDF/Plugin/SyncGit/Serve.php @@ -210,22 +210,23 @@ class IDF_Plugin_SyncGit_Serve // Indefero's one. $p = realpath(dirname(__FILE__).'/../../../../scripts/git-post-update'); $p = Pluf::f('idf_plugin_syncgit_post_update', $p); - if (!@unlink($fullpath.'/hooks/post-update')) { + $post_update_hook = $fullpath.'/hooks/post-update'; + if (file_exists($post_update_hook) && !@unlink($post_update_hook)) { Pluf_Log::warn(array('IDF_Plugin_Git_Serve::initRepository', 'post-update hook removal error.', - $fullpath.'/hooks/post-update')); + $post_update_hook)); return; } $out = array(); $res = 0; exec(sprintf(Pluf::f('idf_exec_cmd_prefix', '').'ln -s %s %s', escapeshellarg($p), - escapeshellarg($fullpath.'/hooks/post-update')), + escapeshellarg($post_update_hook)), $out, $res); if ($res != 0) { Pluf_Log::warn(array('IDF_Plugin_Git_Serve::initRepository', 'post-update hook creation error.', - $fullpath.'/hooks/post-update')); + $post_update_hook)); return; } Pluf_Log::debug(array('IDF_Plugin_Git_Serve::initRepository',