[vim-addon-manager] 01/03: Use a standard directory mode when installing an addon as root.

James McCoy jamessan at debian.org
Tue Dec 3 05:50:59 UTC 2013


This is an automated email from the git hooks/post-receive script.

jamessan pushed a commit to branch master
in repository vim-addon-manager.

commit dbcbccaf9c6557de33e189d5ded713b17d7d5000
Author: James McCoy <jamessan at debian.org>
Date:   Mon Dec 2 23:15:19 2013 -0500

    Use a standard directory mode when installing an addon as root.
    
    Closes: #680624
    Signed-off-by: James McCoy <jamessan at debian.org>
---
 debian/changelog                         | 7 +++++++
 debian/control                           | 2 +-
 lib/vim/addon_manager/addon.rb           | 9 +++++++++
 lib/vim/addon_manager/addon/directory.rb | 2 +-
 lib/vim/addon_manager/addon/legacy.rb    | 3 +--
 5 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index c7bf085..ec14ad7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+vim-addon-manager (0.5.3) UNRELEASED; urgency=low
+
+  * Use a standard directory mode when installing an addon as root.  (Closes:
+    #680624)
+
+ -- James McCoy <jamessan at debian.org>  Mon, 02 Dec 2013 21:58:14 -0500
+
 vim-addon-manager (0.5.2) unstable; urgency=low
 
   * New upload to remove `tags` file accidentally included in the source
diff --git a/debian/control b/debian/control
index e552967..0243b06 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: vim-addon-manager
 Section: editors
 Priority: extra
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers at lists.alioth.debian.org>
-Uploaders: Antonio Terceiro <terceiro at debian.org>
+Uploaders: Antonio Terceiro <terceiro at debian.org>, James McCoy <jamessan at debian.org>
 Build-Depends: debhelper (>= 7.0.50~), rdtool, gem2deb (>= 0.2.13~), rake, cucumber, ruby-rspec, vim-common
 Standards-Version: 3.9.2
 Vcs-Git: git://git.debian.org/git/pkg-vim/vim-addon-manager.git
diff --git a/lib/vim/addon_manager/addon.rb b/lib/vim/addon_manager/addon.rb
index 9159c33..4291571 100644
--- a/lib/vim/addon_manager/addon.rb
+++ b/lib/vim/addon_manager/addon.rb
@@ -61,6 +61,15 @@ module Vim
         AddonStatus.new :unkonwn
       end
 
+      def mkdir(dest)
+        dest_dir = File.dirname dest
+        if Process.euid == 0
+          FileUtils.mkdir_p dest_dir, :mode => 0755
+        else
+          FileUtils.mkdir_p dest_dir
+        end
+      end
+
       # Installs addon files into +target_dir+ and returns a list of installed
       # files.
       #
diff --git a/lib/vim/addon_manager/addon/directory.rb b/lib/vim/addon_manager/addon/directory.rb
index 18c8c5e..3e509b7 100644
--- a/lib/vim/addon_manager/addon/directory.rb
+++ b/lib/vim/addon_manager/addon/directory.rb
@@ -32,7 +32,7 @@ module Vim
 
         def install(target_dir)
           dest = destination(target_dir)
-          FileUtils.mkdir_p(File.dirname(dest))
+          self.mkdir(dest)
           FileUtils.ln_sf(source, dest)
           files
         end
diff --git a/lib/vim/addon_manager/addon/legacy.rb b/lib/vim/addon_manager/addon/legacy.rb
index 6dcf4b7..a950f0a 100644
--- a/lib/vim/addon_manager/addon/legacy.rb
+++ b/lib/vim/addon_manager/addon/legacy.rb
@@ -56,8 +56,7 @@ module Vim
           installed_files = []
           symlink = lambda do |file|
             dest = File.join(target_dir, file)
-            dest_dir = File.dirname dest
-            FileUtils.mkdir_p dest_dir
+            self.mkdir(dest)
             FileUtils.ln_sf(File.join(basedir, file), dest)
           end
           status = self.status(target_dir)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-vim/vim-addon-manager.git



More information about the pkg-vim-maintainers mailing list