octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #61396] octave wrapper executable not working


From: Markus Mützel
Subject: [Octave-bug-tracker] [bug #61396] octave wrapper executable not working properly on Windows
Date: Thu, 28 Oct 2021 14:01:54 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36 Edg/95.0.1020.30

URL:
  <https://savannah.gnu.org/bugs/?61396>

                 Summary: octave wrapper executable not working properly on
Windows
                 Project: GNU Octave
            Submitted by: mmuetzel
            Submitted on: Thu 28 Oct 2021 08:01:53 PM CEST
                Category: Interpreter
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Unexpected Error or Warning
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
                 Release: dev
         Discussion Lock: Any
        Operating System: Microsoft Windows

    _______________________________________________________

Details:

As discussed during last online maintainers meeting, the `octave` wrapper
executable doesn't work correctly on Windows.
The way a terminal waits for a child process on that platform basically makes
it impossible to mimick the behavior of `exec` or `spawn` with `P_OVERLAY` on
POSIX.

See also:
https://wiki.octave.org/Online_Developer_Meeting_(2021-10-26)#spawn_with_P_OVERLAY_works_differently_on_POSIX_and_Windows

An idea was to get rid of the wrapper executable short term on that platform
and replacing it by `octave-gui`. However, looking into it in a bit more
detail, that makes building Octave on that platform awkward as long as we
still need that wrapper executable on POSIX platforms.
Instead, I opted for implementing `octave_execv_wrapper` on that platform with
`spawn` and `P_WAIT`. That makes the behavior the user observes when calling
the wrapper executable very similar to the one on POSIX platforms. At the same
time, the build system can stay untouched.

I'm mainly opening this report to explain why I chose to use a different
implementation than the one we talked about. I figured that would be better
here than in a lengthy commit message.





    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?61396>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]