Suzuki-san,

Please send a PR (Pull Request) to
https://github.com/apache/incubator-nuttx-apps/

On Thu, Dec 10, 2020 at 5:24 PM SUZUKI Keiji <zuki.ebe...@gmail.com> wrote:

> Hi,
>
> I use STM32F407G-DISC1 (MB997D) and build nuttx on macOS Mojave (10.14.6).
>
> The following error occurs with the default configuration of
> stm32f4discovery:usbnsh.
>
>   NuttShell (NSH) NuttX-10.0.0
>   nsh> nsh: nsh_session: readline failed: 9
>
> The reason seems that instream->fs_fd is -1 instead of 0 in the readline()
> function called by
> nsh_session().
>
> This error occurs in version 10.0-RC0 and after (I checked 10.0-RC0, 10.0
> and current master)
> but does not occur in 9.1 and before (I checked 9.1, 8.2 and 7.31).
>
> The following patch fixed it in my environment but I don't know this is a
> correct fix.
>
> === from here ===
>
> diff --git a/nshlib/nsh_usbconsole.c b/nshlib/nsh_usbconsole.c
> index 28f63bcc..768a621b 100644
> --- a/nshlib/nsh_usbconsole.c
> +++ b/nshlib/nsh_usbconsole.c
> @@ -77,8 +77,8 @@
>
> static void nsh_configstdio(int fd, FAR struct console_stdio_s *pstate)
> {
> - /* Make sure the stdout, and stderr are flushed */
> -
> + /* Make sure the stdin is closed and the stdout, and stderr are flushed
> */
> + fclose(stdin);
> fflush(stdout);
> fflush(stderr);
>
> @@ -88,6 +88,9 @@ static void nsh_configstdio(int fd, FAR struct
> console_stdio_s *pstate)
> dup2(fd, 1);
> dup2(fd, 2);
>
> + /* fdopen stdin */
> + fdopen(0, "r");
> +
> /* Setup the stdout */
>
> pstate->cn_outfd = 1;
>
> =====
>
> Thanks,
> SUZUKI Keiji
>

Reply via email to