Mercurial > hg > xemacs-beta
comparison src/callproc.c @ 408:501cfd01ee6d r21-2-34
Import from CVS: tag r21-2-34
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:18:11 +0200 |
parents | b8cc9ab3f761 |
children | de805c49cfc1 |
comparison
equal
deleted
inserted
replaced
407:ed6218a7d4d3 | 408:501cfd01ee6d |
---|---|
186 int pid; | 186 int pid; |
187 char buf[16384]; | 187 char buf[16384]; |
188 char *bufptr = buf; | 188 char *bufptr = buf; |
189 int bufsize = 16384; | 189 int bufsize = 16384; |
190 int speccount = specpdl_depth (); | 190 int speccount = specpdl_depth (); |
191 struct gcpro gcpro1, gcpro2; | 191 struct gcpro gcpro1, gcpro2, gcpro3; |
192 char **new_argv = alloca_array (char *, max (2, nargs - 2)); | 192 char **new_argv = alloca_array (char *, max (2, nargs - 2)); |
193 | 193 |
194 /* File to use for stderr in the child. | 194 /* File to use for stderr in the child. |
195 t means use same as standard output. */ | 195 t means use same as standard output. */ |
196 Lisp_Object error_file; | 196 Lisp_Object error_file; |
233 Fcons (current_buffer->directory, Qnil)); | 233 Fcons (current_buffer->directory, Qnil)); |
234 #endif /* 0 */ | 234 #endif /* 0 */ |
235 NUNGCPRO; | 235 NUNGCPRO; |
236 } | 236 } |
237 | 237 |
238 GCPRO1 (current_dir); | 238 GCPRO2 (current_dir, path); |
239 | 239 |
240 if (nargs >= 2 && ! NILP (args[1])) | 240 if (nargs >= 2 && ! NILP (args[1])) |
241 { | 241 { |
242 struct gcpro ngcpro1; | 242 struct gcpro ngcpro1; |
243 NGCPRO1 (current_buffer->directory); | 243 NGCPRO1 (current_buffer->directory); |
248 else | 248 else |
249 infile = build_string (NULL_DEVICE); | 249 infile = build_string (NULL_DEVICE); |
250 | 250 |
251 UNGCPRO; | 251 UNGCPRO; |
252 | 252 |
253 GCPRO2 (infile, current_dir); /* Fexpand_file_name might trash it */ | 253 GCPRO3 (infile, current_dir, path); /* Fexpand_file_name might trash it */ |
254 | 254 |
255 if (nargs >= 3) | 255 if (nargs >= 3) |
256 { | 256 { |
257 buffer = args[2]; | 257 buffer = args[2]; |
258 | 258 |