Blob Blame History Raw
diff -up octave-3.8.0-rc2/scripts/pkg/private/install.m.pkgbuilddir octave-3.8.0-rc2/scripts/pkg/private/install.m
--- octave-3.8.0-rc2/scripts/pkg/private/install.m.pkgbuilddir	2013-12-21 12:31:40.000000000 -0700
+++ octave-3.8.0-rc2/scripts/pkg/private/install.m	2013-12-28 16:12:03.283207320 -0700
@@ -62,7 +62,10 @@ function install (files, handle_deps, au
     for i = 1:length (files)
       tgz = files{i};
 
-      if (exist (tgz, "file"))
+      ## The filename pointed to an uncompressed package to begin with.
+      if (exist (tgz, "dir"))
+        dirlist = {".", "..", tgz};
+      elseif (exist (tgz, "file"))
         ## Create a temporary directory.
         tmpdir = tmpnam ();
         tmpdirs{end+1} = tmpdir;
@@ -91,17 +94,16 @@ function install (files, handle_deps, au
         endif
       endif
 
-      ## The filename pointed to an uncompressed package to begin with.
-      if (exist (tgz, "dir"))
-        dirlist = {".", "..", tgz};
-      endif
-
-      if (exist (tgz, "file") || exist (tgz, "dir"))
+      if (exist (tgz, "file"))
         ## The two first entries of dirlist are "." and "..".
-        if (exist (tgz, "file"))
-          packdir = fullfile (tmpdir, dirlist{3});
+        if (exist (tgz, "dir"))
+          if (tgz(1) == '/')
+            packdir = tgz;
+          else
+            packdir = fullfile (pwd (), dirlist{3});
+          endif
         else
-          packdir = fullfile (pwd (), dirlist{3});
+          packdir = fullfile (tmpdir, dirlist{3});
         endif
         packdirs{end+1} = packdir;