]> jxnshi.xyz Git - mesange.git/commitdiff
Update
authorjxnshi <jxnshi@cock.li>
Sun, 5 Jan 2025 23:51:35 +0000 (00:51 +0100)
committerjxnshi <jxnshi@cock.li>
Sun, 5 Jan 2025 23:51:35 +0000 (00:51 +0100)
client-cli/client-cli
client-cli/command.odin
client-cli/main.odin
client-cli/state.odin

index 57c4a208199d23eb385354550754123298094769..268c675c490d3aa7bf6bd0a6708139a80df5aff1 100755 (executable)
Binary files a/client-cli/client-cli and b/client-cli/client-cli differ
index cb32f937b0c3010cb328b41ad84c6929d63c4982..b9edb11c3fff12e85a876f34f6903452ae5cceb1 100644 (file)
@@ -57,6 +57,7 @@ handle_command :: proc(app: ^App, command: string) -> Maybe(Handle_Command_Error
     case .Invalid_Host:
         switch command {
         case ":r", ":retry":
+            app_set_state(app, .Connect_To_Host)
             return nil
         }
     }
index 7f140ed18b49990705afb1084f10da0d80b94970..eb6499ab96da10202cef53aae7c15b7f7d5c2226 100644 (file)
@@ -63,6 +63,7 @@ App :: struct {
 app_init :: proc(storage_path: string) -> App {
     screen := nc.initscr()
 
+    nc.noecho()
     nc.cbreak()
     nc.curs_set(0)
 
@@ -118,7 +119,11 @@ app_deinit :: proc(app: ^App) {
     net.close(app.host)
 
     profile_deinit(app.profile)
-    delete(app.profile_password)
+
+    if len(app.profile_password) != 0 {
+        delete(app.profile_password)
+    }
+
     config_deinit(app.config)
 
     nc.delwin(app.input_window)
index 334abdb7d71ec2706866211e1787420c262517e2..60f2cc3d75bd098d57e49fae18ca302649adf0b5 100644 (file)
@@ -172,7 +172,7 @@ state_ask_profile :: proc(app: ^App) {
 
     config_update(app.config, app)
 
-    app_set_state(app, .Ask_Profile_Password)
+    app_set_state(app, .Load_Profile)
 }
 
 state_ask_profile_password :: proc(app: ^App) {
@@ -183,7 +183,11 @@ state_ask_profile_password :: proc(app: ^App) {
         },
     )
 
-    app.profile_password = app_get_input(app, true)
+    if len(app.profile_password) != 0 {
+        delete(app.profile_password)
+    }
+
+    app.profile_password = app_get_input(app, true, true)
 
     app_set_state(app, .Load_Profile)
 }