Index: client.scm ================================================================== --- client.scm +++ client.scm @@ -100,11 +100,12 @@ (if (< remaining-tries 99)(thread-sleep! 1)) ;; obviously it needs time (client:setup-http areapath runremote remaining-tries: (- remaining-tries 1))) (match server-dat ((host port start-time server-id pid) (debug:print-info 4 *default-log-port* "client:setup server-dat=" server-dat ", remaining-tries=" remaining-tries) - (if (not runremote) + (if (or (not runremote) + (not (remote-conndat runremote))) (begin ;; Here we are creating a runremote where there was none or it was clobbered with #f ;; (set! runremote (make-remote)) (let* ((server-info (server:check-if-running areapath))) @@ -117,12 +118,15 @@ (if (and host port server-id) (let* ((nada (client:connect host port server-id runremote)) (ping-res (rmt:login-no-auto-client-setup runremote))) (if ping-res (if runremote - (begin + (begin ;; updating info in runremote (debug:print-info 2 *default-log-port* "connected to " (client:get-url runremote)) + (remote-server-info-set! runremote server-info) + (remote-server-url-set! runremote (server:record->url server-info)) + (remote-server-id-set! runremote (server:record->id server-info)) runremote) (client:setup-http areapath runremote remaining-tries: (- remaining-tries 1))) (begin ;; login failed but have a server record, clean out the record and try again (debug:print-info 0 *default-log-port* "client:setup, login unsuccessful, will attempt to start server ... ping-res=" ping-res ", server-dat=" server-dat) ;; had runid. Fixes part of Randy;s ticket 1405717332 (http-transport:close-connections runremote)