diff --git a/cli-runopts.c b/cli-runopts.c
index 8c9bc8e37a21638bad83a4b0a54c6a13f1b5ef2f..bad991fe9129d5479077b0a083077e5f7adf94eb 100644
--- a/cli-runopts.c
+++ b/cli-runopts.c
@@ -683,11 +683,13 @@ static void fill_own_user() {
 	uid = getuid();
 
 	pw = getpwuid(uid);
-	if (pw == NULL || pw->pw_name == NULL) {
+	if (pw && pw->pw_name != NULL) {
+		cli_opts.own_user = m_strdup(pw->pw_name);
+	} else {
 		dropbear_log(LOG_INFO, "Warning: failed to identify current user. Trying anyway.");
+		cli_opts.own_user = m_strdup("unknown");
 	}
 
-	cli_opts.own_user = m_strdup(pw->pw_name);
 }
 
 #ifdef ENABLE_CLI_ANYTCPFWD