summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--chat.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/chat.c b/chat.c
index 09d0ca6..2a64ee0 100644
--- a/chat.c
+++ b/chat.c
@@ -315,6 +315,12 @@ int main(int argc, char *argv[]) {
 	
 	int irc = ircConnect(bind, host, port);
 
+#ifdef __OpenBSD__
+	error = pledge(promisesFinal, NULL);
+	if (error) err(EX_OSERR, "pledge");
+	free(promisesFinal);
+#endif
+
 	if (pass) ircFormat("PASS :%s\r\n", pass);
 	if (sasl) ircFormat("CAP REQ :sasl\r\n");
 	ircFormat("CAP LS\r\n");
@@ -343,12 +349,6 @@ int main(int argc, char *argv[]) {
 		fcntl(execPipe[1], F_SETFD, FD_CLOEXEC);
 	}
 
-#ifdef __OpenBSD__
-	error = pledge(promisesFinal, NULL);
-	if (error) err(EX_OSERR, "pledge");
-	free(promisesFinal);
-#endif
-
 	struct pollfd fds[] = {
 		{ .events = POLLIN, .fd = STDIN_FILENO },
 		{ .events = POLLIN, .fd = irc },