<div dir="ltr">I'm not sure if the expected behaviour is for:<div>$ weston --shell foo.so</div><div>to work, if so the patch can be modified.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 20 June 2014 15:22, Robert Ancell <span dir="ltr"><<a href="mailto:robert.ancell@gmail.com" target="_blank">robert.ancell@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On my system:<br>
$ weston --shell<br>
would use the first environment variable as the argument to --shell<br>
and<br>
$ weston --shell foo.so<br>
Would use foo.so as the argument and then parse foo.so as a new option.<br>
---<br>
 shared/option-parser.c | 2 +-<br>
 1 file changed, 1 insertion(+), 1 deletion(-)<br>
<br>
diff --git a/shared/option-parser.c b/shared/option-parser.c<br>
index c00349a..bddaccb 100644<br>
--- a/shared/option-parser.c<br>
+++ b/shared/option-parser.c<br>
@@ -66,7 +66,7 @@ parse_options(const struct weston_option *options,<br>
                            argv[i][1] == '-' &&<br>
                            strncmp(options[k].name, &argv[i][2], len) == 0 &&<br>
                            (argv[i][len + 2] == '=' || argv[i][len + 2] == '\0')) {<br>
-                               handle_option(&options[k], &argv[i][len + 3]);<br>
+                               handle_option(&options[k], argv[i][len + 2] == '=' ? &argv[i][len + 3] : &argv[i][len + 2]);<br>
                                break;<br>
                        } else if (options[k].short_name &&<br>
                                   argv[i][0] == '-' &&<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.0.0<br>
<br>
</font></span></blockquote></div><br></div>