From d5e175e32b64cd734c142cfc583f17bccb03ec5b Mon Sep 17 00:00:00 2001 From: Kevin Puetz Date: Tue, 24 Sep 2019 18:35:03 +0200 Subject: [PATCH] winegcc: Correctly pass the '-' file name (stdin) to the compiler. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38300 Signed-off-by: Alexandre Julliard --- tools/winegcc/winegcc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c index bdcbe45c4b0..f1798a8978f 100644 --- a/tools/winegcc/winegcc.c +++ b/tools/winegcc/winegcc.c @@ -795,7 +795,7 @@ no_compat_defines: /* last, but not least, the files */ for ( j = 0; j < opts->files->size; j++ ) { - if (opts->files->base[j][0] != '-') + if (opts->files->base[j][0] != '-' || !opts->files->base[j][1]) /* not an option or bare '-' (i.e. stdin) */ strarray_add(comp_args, opts->files->base[j]); } @@ -1472,7 +1472,7 @@ int main(int argc, char **argv) /* parse options */ for ( i = 1 ; i < argc ; i++ ) { - if (argv[i][0] == '-') /* option */ + if (argv[i][0] == '-' && argv[i][1]) /* option, except '-' alone is stdin, which is a file */ { /* determine if this switch is followed by a separate argument */ next_is_arg = 0;