summary refs log tree commit diff
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2015-12-10 18:14:51 +0100
committerChristian Neukirchen <chneukirchen@gmail.com>2015-12-10 18:14:51 +0100
commit458cb67fdeb38a634afe78e5fa9d257bc96d3e05 (patch)
tree165b66127752764d9d5847f69750db8848434527
parentb43f0e6ee8d97b6490a1c0c9666b23133300677b (diff)
downloadxe-458cb67fdeb38a634afe78e5fa9d257bc96d3e05.tar.gz
xe-458cb67fdeb38a634afe78e5fa9d257bc96d3e05.tar.xz
xe-458cb67fdeb38a634afe78e5fa9d257bc96d3e05.zip
properly increase buffer in pusharg
-rw-r--r--xe.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xe.c b/xe.c
index 652d22e..088db49 100644
--- a/xe.c
+++ b/xe.c
@@ -161,7 +161,8 @@ pusharg(const char *a)
 	}
 
 	if (buflen + l > bufcap) {
-		bufcap *= 2;
+		while (buflen + l > bufcap)
+			bufcap *= 2;
 		buf = realloc(buf, bufcap);
 		if (!args)
 			exit(1);