foxygit / doom Log in
commit 8eda8d536064325a57d57efae613deb9ba015bf4
Author:     Turo Lamminen <turol@iki.fi>
AuthorDate: Mon Feb 1 15:27:49 2021 +0200
Commit:     Turo Lamminen <turol@iki.fi>
CommitDate: Tue Aug 24 18:11:02 2021 +0300

    Refactor myargv and its contents to be owned by us
---
 src/i_main.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/i_main.c b/src/i_main.c
index 176538df..ec618293 100644
--- a/src/i_main.c
+++ b/src/i_main.c
@@ -18,6 +18,7 @@

 #include "config.h"

+#include <assert.h>
 #include <stdio.h>
 #include <stdlib.h>

@@ -26,6 +27,8 @@
 #include "doomtype.h"
 #include "i_system.h"
 #include "m_argv.h"
+#include "m_misc.h"
+

 //
 // D_DoomMain()
@@ -40,7 +43,13 @@ int main(int argc, char **argv)
     // save arguments

     myargc = argc;
-    myargv = argv;
+    myargv = malloc(argc * sizeof(char *));
+    assert(myargv != NULL);
+
+    for (int i = 0; i < argc; i++)
+    {
+        myargv[i] = M_StringDuplicate(argv[i]);
+    }

     //!
     // Print the program version and exit.