aboutsummaryrefslogtreecommitdiffstats
path: root/src/process.c
diff options
context:
space:
mode:
authorPaul Eggert2011-09-04 14:52:59 -0700
committerPaul Eggert2011-09-04 14:52:59 -0700
commit86633eab8a77697f6e15aae568868781a5a1023f (patch)
tree22039ff17f96363d7115a8e02c0884010ba75744 /src/process.c
parent53e9fe90811730f68c4ea246cd8dee8aa22486de (diff)
parent6511acf2570df26e93e15283d593b8e81d217a78 (diff)
downloademacs-86633eab8a77697f6e15aae568868781a5a1023f.tar.gz
emacs-86633eab8a77697f6e15aae568868781a5a1023f.zip
sprintf-related integer and memory overflow issues
Fixes: debbugs:9397 debbugs:9412
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/process.c b/src/process.c
index a8088322147..058ad5f871f 100644
--- a/src/process.c
+++ b/src/process.c
@@ -616,8 +616,8 @@ make_process (Lisp_Object name)
616{ 616{
617 register Lisp_Object val, tem, name1; 617 register Lisp_Object val, tem, name1;
618 register struct Lisp_Process *p; 618 register struct Lisp_Process *p;
619 char suffix[10]; 619 char suffix[sizeof "<>" + INT_STRLEN_BOUND (printmax_t)];
620 register int i; 620 printmax_t i;
621 621
622 p = allocate_process (); 622 p = allocate_process ();
623 623
@@ -651,7 +651,7 @@ make_process (Lisp_Object name)
651 { 651 {
652 tem = Fget_process (name1); 652 tem = Fget_process (name1);
653 if (NILP (tem)) break; 653 if (NILP (tem)) break;
654 sprintf (suffix, "<%d>", i); 654 sprintf (suffix, "<%"pMd">", i);
655 name1 = concat2 (name, build_string (suffix)); 655 name1 = concat2 (name, build_string (suffix));
656 } 656 }
657 name = name1; 657 name = name1;