[Ocfs2-tools-commits] manish commits r241 - trunk/ocfs2cdsl

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Thu Sep 16 18:43:02 CDT 2004


Author: manish
Date: 2004-09-16 18:43:00 -0500 (Thu, 16 Sep 2004)
New Revision: 241

Modified:
   trunk/ocfs2cdsl/ocfs2cdsl.c
Log:
Implement --dry-run


Modified: trunk/ocfs2cdsl/ocfs2cdsl.c
===================================================================
--- trunk/ocfs2cdsl/ocfs2cdsl.c	2004-09-16 23:33:51 UTC (rev 240)
+++ trunk/ocfs2cdsl/ocfs2cdsl.c	2004-09-16 23:43:00 UTC (rev 241)
@@ -164,17 +164,22 @@
 
 		cmd = g_strdup_printf("mkdir -p %s", g_shell_quote(cdsl_path));
 
-		if (!g_spawn_command_line_sync(cmd, NULL, &cmd_err, &ret,
-					       &error)) {
-			fprintf(stderr, "%s: Couldn't mkdir: %s\n", s->progname,
-				error->message);
-			exit(1);
-		}
+		if (s->verbose || s->dry_run)
+			printf("%s\n", cmd);
 
-		if (ret != 0) {
-			fprintf(stderr, "%s: mkdir error: %s\n", s->progname,
-				cmd_err);
-			exit(1);
+		if (!s->dry_run) {
+			if (!g_spawn_command_line_sync(cmd, NULL, &cmd_err,
+						       &ret, &error)) {
+				fprintf(stderr, "%s: Couldn't mkdir: %s\n",
+					s->progname, error->message);
+				exit(1);
+			}
+
+			if (ret != 0) {
+				fprintf(stderr, "%s: mkdir error: %s\n",
+					s->progname, cmd_err);
+				exit(1);
+			}
 		}
 
 		g_free(cmd);
@@ -193,10 +198,16 @@
 			}
 		}
 
-		if (rename(s->fullname, cdsl_full) != 0) {
-			fprintf(stderr, "%s: could not rename %s: %s\n",
-				s->progname, s->filename, g_strerror(errno));
-			exit(1);
+		if (s->verbose || s->dry_run)
+			printf("mv %s %s\n", s->fullname, cdsl_full);
+
+		if (!s->dry_run) {
+			if (rename(s->fullname, cdsl_full) != 0) {
+				fprintf(stderr, "%s: could not rename %s: %s\n",
+					s->progname, s->filename,
+					g_strerror(errno));
+				exit(1);
+			}
 		}
 
 		g_free (cdsl_full);
@@ -205,10 +216,16 @@
 
 	target = g_build_filename(cdsl_target(s, path), s->filename, NULL);
 
-	if (symlink(target, s->fullname) != 0) {
-		fprintf(stderr, "%s: could not symlink %s to %s: %s\n",
-			s->progname, target, s->fullname, g_strerror(errno));
-		exit(1);
+	if (s->verbose || s->dry_run)
+		printf("ln -s %s %s\n", target, s->fullname);
+
+	if (!s->dry_run) {
+		if (symlink(target, s->fullname) != 0) {
+			fprintf(stderr, "%s: could not symlink %s to %s: %s\n",
+				s->progname, target, s->fullname,
+				g_strerror(errno));
+			exit(1);
+		}
 	}
 
 	g_free(target);
@@ -482,15 +499,22 @@
 	cmd = g_strdup_printf("rm -rf %s", quoted);
 	g_free(quoted);
 
-	if (!g_spawn_command_line_sync(cmd, NULL, &cmd_err, &ret, &error)) {
-		fprintf(stderr, "%s: Couldn't rm: %s\n", s->progname,
-			error->message);
-		exit(1);
-	}
+	if (s->verbose || s->dry_run)
+		printf("%s\n", cmd);
 
-	if (ret != 0) {
-		fprintf(stderr, "%s: rm error: %s\n", s->progname, cmd_err);
-		exit(1);
+	if (!s->dry_run) {
+		if (!g_spawn_command_line_sync(cmd, NULL, &cmd_err, &ret,
+					       &error)) {
+			fprintf(stderr, "%s: Couldn't rm: %s\n", s->progname,
+				error->message);
+			exit(1);
+		}
+
+		if (ret != 0) {
+			fprintf(stderr, "%s: rm error: %s\n", s->progname,
+				cmd_err);
+			exit(1);
+		}
 	}
 
 	g_free(cmd);



More information about the Ocfs2-tools-commits mailing list