summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/main.c b/main.c
index 99a4025..38d023f 100644
--- a/main.c
+++ b/main.c
@@ -249,6 +249,7 @@ int main(int argc, char **argv)
break;
#endif
case 'p':
+ optarg = strdup(optarg);
bound += add_listener_arg(optarg, (ch == 's'));
break;
@@ -305,6 +306,7 @@ int main(int argc, char **argv)
break;
case 'i':
+ optarg = strdup(optarg);
port = strchr(optarg, '=');
if (optarg[0] != '.' || !port) {
fprintf(stderr, "Error: Invalid interpreter: %s\n",
@@ -337,6 +339,7 @@ int main(int argc, char **argv)
break;
case 'd':
+ optarg = strdup(optarg);
port = alloca(strlen(optarg) + 1);
if (!port)
return -1;