Use go module as dependency tool instead of glide
[src/xds/xds-server.git] / lib / xdsserver / terminal-ssh.go
index 9a9f5fd..89a8b40 100644 (file)
@@ -22,8 +22,8 @@ import (
        "strings"
        "time"
 
-       "gerrit.automotivelinux.org/gerrit/src/xds/xds-common.git/golib/eows"
-       "gerrit.automotivelinux.org/gerrit/src/xds/xds-server/lib/xsapiv1"
+       "gerrit.automotivelinux.org/gerrit/src/xds/xds-common.git/eows"
+       "gerrit.automotivelinux.org/gerrit/src/xds/xds-server.git/lib/xsapiv1"
        socketio "github.com/googollee/go-socket.io"
        uuid "github.com/satori/go.uuid"
 )
@@ -223,13 +223,15 @@ func (t *TermSSH) Open(sock *socketio.Socket, sessID string) (*xsapiv1.TerminalC
 
 // Close a terminal
 func (t *TermSSH) Close() (*xsapiv1.TerminalConfig, error) {
-       // nothing to do when not open
-       if t.termCfg.Status != xsapiv1.StatusTermOpen {
+       // nothing to do when not open or closing
+       if !(t.termCfg.Status == xsapiv1.StatusTermOpen || t.termCfg.Status == xsapiv1.StatusTermClosing) {
                return &t.termCfg, nil
        }
 
        err := t.sshWS.Signal("SIGTERM")
 
+       t.termCfg.Status = xsapiv1.StatusTermClosing
+
        return &t.termCfg, err
 }
 
@@ -246,6 +248,8 @@ func (t *TermSSH) Resize(cols, rows uint16) (*xsapiv1.TerminalConfig, error) {
                t.termCfg.Rows = rows
        }
 
+       t.LogSillyf("Terminal resize id=%v, cols=%v, rows=%v", t.termCfg.ID, cols, rows)
+
        err := t.sshWS.TerminalSetSize(t.termCfg.Rows, t.termCfg.Cols)
        if err != nil {
                t.Log.Errorf("Error ssh TerminalSetSize: %v", err)