diff --git a/src/ChangeLog b/src/ChangeLog
index 82774f1f..ac2542c6 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2014-11-28  Tim Ruehsen <tim.ruehsen@gmx.de>
+
+	* main.c: Fix length of program_argstring,
+	fix regression introduced with commit
+	9217b864d865cf1766e1589d138c8fc17d3d3d5c.
+
 2014-11-28  Tim Ruehsen <tim.ruehsen@gmx.de>
 
 	* Makefile.am: Removed gettext.h
diff --git a/src/main.c b/src/main.c
index c657c649..8212382a 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1043,8 +1043,8 @@ main (int argc, char **argv)
 
   /* Construct the arguments string. */
   for (argstring_length = 1, i = 1; i < argc; i++)
-    argstring_length += strlen (argv[i]) + 2 + 1;
-  p = malloc (argstring_length * sizeof (char));
+    argstring_length += strlen (argv[i]) + 3 + 1;
+  program_argstring = p = malloc (argstring_length);
   if (p == NULL)
     {
       fprintf (stderr, _("Memory allocation problem\n"));
@@ -1062,7 +1062,6 @@ main (int argc, char **argv)
       *p++ = ' ';
     }
   *p = '\0';
-  program_argstring = p;
 
   /* Load the hard-coded defaults.  */
   defaults ();