public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH widget-toolkit] improve error handling when adding webauthn entries
@ 2021-11-17  8:35 Wolfgang Bumiller
  2021-11-18  7:24 ` Thomas Lamprecht
  0 siblings, 1 reply; 2+ messages in thread
From: Wolfgang Bumiller @ 2021-11-17  8:35 UTC (permalink / raw)
  To: pve-devel

There are cases where we directly throw a string error
(particularly, when navigator.credentials.create() fails,
for example when trying to register the same WA device to
the same user twice), which would end up with the WA window
simply not closing before.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
---
 src/window/AddWebauthn.js | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/window/AddWebauthn.js b/src/window/AddWebauthn.js
index f4a0b10..77d0914 100644
--- a/src/window/AddWebauthn.js
+++ b/src/window/AddWebauthn.js
@@ -141,7 +141,12 @@ Ext.define('Proxmox.window.AddWebauthn', {
 		    params,
 		});
 	    } catch (response) {
-		let error = response.result.message;
+		let error = response;
+		if (typeof error !== "string") {
+		    // in case it came from an api request:
+		    error = error.result.message;
+		}
+
 		console.error(error); // for debugging if it's not displayable...
 		Ext.Msg.alert(gettext('Error'), error);
 	    }
-- 
2.30.2





^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [pve-devel] [PATCH widget-toolkit] improve error handling when adding webauthn entries
  2021-11-17  8:35 [pve-devel] [PATCH widget-toolkit] improve error handling when adding webauthn entries Wolfgang Bumiller
@ 2021-11-18  7:24 ` Thomas Lamprecht
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Lamprecht @ 2021-11-18  7:24 UTC (permalink / raw)
  To: Proxmox VE development discussion, Wolfgang Bumiller

On 17.11.21 09:35, Wolfgang Bumiller wrote:
> There are cases where we directly throw a string error
> (particularly, when navigator.credentials.create() fails,
> for example when trying to register the same WA device to
> the same user twice), which would end up with the WA window
> simply not closing before.
> 
> Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
> ---
>  src/window/AddWebauthn.js | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/src/window/AddWebauthn.js b/src/window/AddWebauthn.js
> index f4a0b10..77d0914 100644
> --- a/src/window/AddWebauthn.js
> +++ b/src/window/AddWebauthn.js
> @@ -141,7 +141,12 @@ Ext.define('Proxmox.window.AddWebauthn', {
>  		    params,
>  		});
>  	    } catch (response) {
> -		let error = response.result.message;
> +		let error = response;
> +		if (typeof error !== "string") {

why not

if (typeof error === "object") {

as just because it isn't a string it doesn't need to be a valid object..

> +		    // in case it came from an api request:
> +		    error = error.result.message;

maybe use the optional chaining operator here to make the error path a bit
more robust.

> +		}
> +
>  		console.error(error); // for debugging if it's not displayable...

should above be moved above the if then? To ensure that as much info as possible
is available from the error?

>  		Ext.Msg.alert(gettext('Error'), error);
>  	    }
> 





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-11-18  7:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-17  8:35 [pve-devel] [PATCH widget-toolkit] improve error handling when adding webauthn entries Wolfgang Bumiller
2021-11-18  7:24 ` Thomas Lamprecht

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal