client: Avoid printing extra prompt on RequestInput
[platform/upstream/connman.git] / client / agent.c
index afd265b..fe357bf 100644 (file)
@@ -287,6 +287,8 @@ static void request_input_next(void)
 
        pending_message_remove();
        pending_command_complete("");
+
+       __connmanctl_redraw_rl();
 }
 
 static void request_input_append(const char *attribute, char *value)
@@ -361,7 +363,6 @@ static DBusMessage *agent_request_input(DBusConnection *connection,
        fprintf(stdout, "Agent RequestInput %s\n", service);
        __connmanctl_dbus_print(&dict, "  ", " = ", "\n");
        fprintf(stdout, "\n");
-       __connmanctl_redraw_rl();
 
        dbus_message_iter_recurse(&iter, &dict);
 
@@ -386,10 +387,11 @@ static DBusMessage *agent_request_input(DBusConnection *connection,
 
                        dbus_message_iter_recurse(&field_entry, &field_value);
 
-                       dbus_message_iter_get_basic(&field_value, &value);
-
-                       if (strcmp(argument, "Type") == 0)
+                       if (strcmp(argument, "Type") == 0) {
+                               dbus_message_iter_get_basic(&field_value,
+                                               &value);
                                attr_type = g_strdup(value);
+                       }
 
                        dbus_message_iter_next(&dict_entry);
                }