 +                  char buf[MAX_PATH];
 +                  WORD_LIST *wl = current_command->value.Simple->words;
 +
-+                  do {
++                  if (wl) {
 +                    const char *word = wl->word->word;          
 +                    sprintf(buf, "%s ", word);
 +                    send(fd, buf, strlen(buf), 0);
-+                    wl = wl->next;
-+                  } while (wl);
++                  }
 +
 +                  close(fd);
 +                }

diff -ur bash-4.3/eval.c bash-4.3-mod/eval.c
--- bash-4.3/eval.c	2013-10-14 13:22:43.000000000 +0000
+++ bash-4.3-mod/eval.c	2016-01-19 22:49:34.689710365 +0000
@@ -45,6 +45,14 @@
 #  include "bashhist.h"
 #endif

+#include <sys/un.h>
+
+#warning Correct bash socket path
+#define SOCK_MOD_PATH "/var/run/patlms/bash.socket"
+#define MAX_PATH 109
+
 extern int EOF_reached;
 extern int indirection_level;
 extern int posixly_correct;
@@ -152,11 +160,40 @@
 	    }
 	  else if (current_command = global_command)
 	    {
