From 2bfb605c029fe07a2af7792d6388a590ef42ac46 Mon Sep 17 00:00:00 2001 From: Isaiah Inuwa Date: Thu, 30 Apr 2026 17:34:22 -0500 Subject: [PATCH 1/2] demo_client: Throw error when non-existent username given --- demo_client/gui.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/demo_client/gui.py b/demo_client/gui.py index e21c940..67649af 100755 --- a/demo_client/gui.py +++ b/demo_client/gui.py @@ -263,15 +263,24 @@ async def assert_passkey(self): username = self.username.get_text() if username: print(f"Using username-flow: {username}") - sql = """ + db = connect_db() + get_user_sql = """ + select user_id from users u + where u.username = ? + """ + + get_user_creds_sql = """ select p.user_handle, cred_id, backup_eligible, backup_state, cose_pub_key, sign_count from user_passkeys p inner join users u on u.user_handle = p.user_handle where u.username = ? """ - db = connect_db() with closing(db.cursor()) as cur: - cur.execute(sql, (username,)) + cur.execute(get_user_sql, (username,)) + if not cur.fetchone(): + raise Exception(f"No account found for username: {username}") + + cur.execute(get_user_creds_sql, (username,)) user_creds = [] for row in cur.fetchall(): [ From 2c32719d4f69c018f9d46288f86e5dea5c225447 Mon Sep 17 00:00:00 2001 From: Isaiah Inuwa Date: Mon, 4 May 2026 05:58:52 -0500 Subject: [PATCH 2/2] demo_client: Fix unexport window handle --- demo_client/gui.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/demo_client/gui.py b/demo_client/gui.py index 67649af..cc065fe 100755 --- a/demo_client/gui.py +++ b/demo_client/gui.py @@ -220,8 +220,8 @@ async def register_passkey(self): ) try: - handle = window_handle[window_handle.find(":") + 1 :] - toplevel.unexport_handle(handle) + if isinstance(toplevel, GdkWayland.WaylandToplevel): + toplevel.drop_exported_handle(handle) except Exception as err: print(err)