Subversion Repositories tendra.SVN

Rev

Rev 6 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6 Rev 83
Line 479... Line 479...
479
			running_pid = -1;
479
			running_pid = -1;
480
			error(SERIOUS, "Can't execute '%s'", cmd);
480
			error(SERIOUS, "Can't execute '%s'", cmd);
481
			exit(2);
481
			exit(2);
482
		}
482
		}
483
#else
483
#else
-
 
484
		typedef int wait_type;
484
		wait_type status;
485
		wait_type status;
485
		if (!filled_buff) {
486
		if (!filled_buff) {
486
			print_cmd(buff);
487
			print_cmd(buff);
487
			filled_buff = 1;
488
			filled_buff = 1;
488
		}
489
		}
489
		err = system(buff + 1);
490
		err = system(buff + 1);
490
		process_return(status, err);
491
/*		process_return(status, err);
491
		if (process_exited(status)) {
492
		if (process_exited(status)) {
492
			err = process_exit_value(status);
493
			err = process_exit_value(status);
493
			process_delayed_signal();
494
			process_delayed_signal();
494
		} else {
495
		} else {
495
			if (process_signaled(status)) {
496
			if (process_signaled(status)) {
496
				/* delay_signal_handling is a global that tells
497
				\* delay_signal_handling is a global that tells
497
				 * us that it is ok to let the next call to
498
				 * us that it is ok to let the next call to
498
				 * execute report that the command received a
499
				 * execute report that the command received a
499
				 * signal. This supports the way that the
500
				 * signal. This supports the way that the
500
				 * producer is called. */
501
				 * producer is called. *\/
501
				int sig = process_signal_value(status);
502
				int sig = process_signal_value(status);
502
				if (delay_signal_handling &&
503
				if (delay_signal_handling &&
503
				    last_signal == 0) {
504
				    last_signal == 0) {
504
					last_signaled_cmd = string_copy(cmd);
505
					last_signaled_cmd = string_copy(cmd);
505
					last_signal = sig;
506
					last_signal = sig;
506
				} else {
507
				} else {
507
					handler(sig);
508
					handler(sig);
508
				}
509
				}
509
			}
510
			}
510
			err = 1;
511
			err = 1;
511
		}
512
		}*/
512
#endif
513
#endif
513
	}
514
	}
514
 
515
 
515
	/* Deal with errors */
516
	/* Deal with errors */
516
execute_error:
517
execute_error: