svn commit: r195737 - user/des/fmerge

Dag-Erling Smorgrav des at FreeBSD.org
Fri Jul 17 07:47:59 UTC 2009


Author: des
Date: Fri Jul 17 07:47:58 2009
New Revision: 195737
URL: http://svn.freebsd.org/changeset/base/195737

Log:
  Rework handling of svn subprocesses.

Modified:
  user/des/fmerge/fmerge.pl

Modified: user/des/fmerge/fmerge.pl
==============================================================================
--- user/des/fmerge/fmerge.pl	Fri Jul 17 07:32:22 2009	(r195736)
+++ user/des/fmerge/fmerge.pl	Fri Jul 17 07:47:58 2009	(r195737)
@@ -67,6 +67,22 @@ sub svn_do(@) {
     info('svn', @argv);
     system('svn', @argv)
 	unless $pretend;
+    my $pid = fork();
+    if ($pid == -1) {
+	die("fork(): $!\n");
+    } elsif ($pid == 0) {
+	exec('svn', @argv);
+	die("exec(): $!\n");
+    }
+    waitpid($pid, 0);
+    info($?);
+    if ($? & 128) {
+	info("svn died with signal", $? & 128);
+	kill($? & 128, $$);
+    } elsif ($?) {
+	info("svn returned error status", $? >> 8);
+	exit(1);
+    }
 }
 
 sub svn_merge(@) {


More information about the svn-src-user mailing list