diff src/lda/main.c @ 10501:28a14e2fe5d6 HEAD

Use t_abspath() instead of duplicating code.
author Timo Sirainen <tss@iki.fi>
date Wed, 16 Dec 2009 13:42:45 -0500
parents 05d94015d0ef
children 50364f04cf13
line wrap: on
line diff
--- a/src/lda/main.c	Wed Dec 16 13:31:12 2009 -0500
+++ b/src/lda/main.c	Wed Dec 16 13:42:45 2009 -0500
@@ -7,6 +7,7 @@
 #include "close-keep-errno.h"
 #include "istream.h"
 #include "istream-seekable.h"
+#include "abspath.h"
 #include "safe-mkstemp.h"
 #include "eacces-error.h"
 #include "mkdir-parents.h"
@@ -256,7 +257,6 @@
 	struct istream *input;
 	struct mailbox_transaction_context *t;
 	struct mailbox_header_lookup_ctx *headers_ctx;
-	char cwd[PATH_MAX];
 	void **sets;
 	uid_t process_euid;
 	bool stderr_rejection = FALSE;
@@ -328,13 +328,7 @@
 			break;
 		case 'p':
 			/* input path */
-			path = optarg;
-			if (*path != '/') {
-				/* expand relative paths before we chdir */
-				if (getcwd(cwd, sizeof(cwd)) == NULL)
-					i_fatal("getcwd() failed: %m");
-				path = t_strconcat(cwd, "/", path, NULL);
-			}
+			path = t_abspath(optarg);
 			break;
 		default:
 			print_help();