Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Jul 2009 07:47:58 +0000 (UTC)
From:      Dag-Erling Smorgrav <des@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r195737 - user/des/fmerge
Message-ID:  <200907170747.n6H7lwEL061417@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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(@) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200907170747.n6H7lwEL061417>