shithub: choc

Download patch

ref: 8eda8d536064325a57d57efae613deb9ba015bf4
parent: f447ae17ddefc64f2bc803b5c3c81dceb7b59c68
author: Turo Lamminen <turol@iki.fi>
date: Mon Feb 1 10:27:49 EST 2021

Refactor myargv and its contents to be owned by us

--- 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,7 +27,9 @@
 #include "doomtype.h"
 #include "i_system.h"
 #include "m_argv.h"
+#include "m_misc.h"
 
+
 //
 // D_DoomMain()
 // Not a globally visible function, just included for source reference,
@@ -40,7 +43,13 @@
     // 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.