VirtViewerApp::activate is expected to return -1 on errors.
It calls the VirtViewerSession::open_* methods, which return FALSE
on error. However, VirtViewerApp::activate directly returns these
boolean instead of testing the returned value and properly returning
-1 on errors. This caused errors in these open methodes to be ignored.
---
src/virt-viewer-app.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/virt-viewer-app.c b/src/virt-viewer-app.c
index 40d1ff7..2275d1c 100644
--- a/src/virt-viewer-app.c
+++ b/src/virt-viewer-app.c
@@ -846,15 +846,18 @@ virt_viewer_app_default_activate(VirtViewerApp *self)
#endif
if (fd >= 0) {
- return virt_viewer_session_open_fd(VIRT_VIEWER_SESSION(priv->session),
fd);
+ if (virt_viewer_session_open_fd(VIRT_VIEWER_SESSION(priv->session),
fd))
+ return 0;
} else if (priv->guri) {
virt_viewer_app_trace(self, "Opening connection to display at %s\n",
priv->guri);
- return
virt_viewer_session_open_uri(VIRT_VIEWER_SESSION(priv->session), priv->guri);
+ if (virt_viewer_session_open_uri(VIRT_VIEWER_SESSION(priv->session),
priv->guri))
+ return 0;
} else {
virt_viewer_app_trace(self, "Opening direct TCP connection to display
at %s:%s:%s\n",
priv->ghost, priv->gport, priv->gtlsport ?
priv->gtlsport : "-1");
- return
virt_viewer_session_open_host(VIRT_VIEWER_SESSION(priv->session),
- priv->ghost, priv->gport,
priv->gtlsport);
+ if (virt_viewer_session_open_host(VIRT_VIEWER_SESSION(priv->session),
+ priv->ghost, priv->gport,
priv->gtlsport))
+ return 0;
}
return -1;
--
1.7.10.2
_______________________________________________
virt-tools-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/virt-tools-list