changeset 29464:7aa1994c0ca2

Prefer "octave-svgconvert" in "bin" directory on Windows (bug #59546). * scripts/plot/util/private/__print_parse_opts__.m: Prefer "octave-svgconvert" executable in "bin" directory on Windows.
author Markus Mützel <markus.muetzel@gmx.de>
date Thu, 25 Mar 2021 17:57:27 +0100
parents 09767c20dec9
children 0e9319d40977
files scripts/plot/util/private/__print_parse_opts__.m
diffstat 1 files changed, 22 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/plot/util/private/__print_parse_opts__.m	Wed Mar 24 19:56:42 2021 -0700
+++ b/scripts/plot/util/private/__print_parse_opts__.m	Thu Mar 25 17:57:27 2021 +0100
@@ -631,21 +631,36 @@
 
   persistent binary = "";
 
+  if (isempty (binary) && ispc ())
+    ## On Windows, prefer the executable in the bin directory
+    ## (linking issue, see bug #59546)
+    bindir = getenv ("OCTAVE_BINDIR");
+    if (isempty (bindir))
+      bindir = __octave_config_info__ ("bindir");
+    endif
+
+    binary = fullfile (bindir, ...
+                       ["octave-svgconvert", ...
+                        __octave_config_info__("EXEEXT")]);
+
+    if (! exist (binary, "file"))
+      binary = "";
+    endif
+  endif
+
   if (isempty (binary))
+    ## default installation location is the archlib directory
     bindir = getenv ("OCTAVE_ARCHLIBDIR");
     if (isempty (bindir))
       bindir = __octave_config_info__ ("archlibdir");
     endif
 
-    binary = fullfile (bindir, "octave-svgconvert");
+    binary = fullfile (bindir, ...
+                       ["octave-svgconvert", ...
+                        __octave_config_info__("EXEEXT")]);
 
     if (! exist (binary, "file"))
-      if (! isunix () && exist ([binary, ".exe"], "file"))
-        ## Unix - Includes Mac OSX and Cygwin.
-        binary = [binary, ".exe"];
-      else
-        binary = "";
-      endif
+      binary = "";
     endif
   endif