Index: client.scm
==================================================================
--- client.scm
+++ client.scm
@@ -78,29 +78,29 @@
 	      (debug:print-info 4 *default-log-port* "client:setup server-dat=" server-dat ", remaining-tries=" remaining-tries)
 	      (if (and (not area-dat)
 		       (not *runremote*))
                   (begin       
 		    (set! *runremote* (make-remote))
-		  (let* ((start-res (http-transport:client-connect host port))
-			 (ping-res  (rmt:login-no-auto-client-setup start-res)))
-                        (begin
-                          (remote-server-url-set! *runremote* (server:record->url server-info))
-                          (remote-server-id-set! *runremote* (server:record->id server-info)))))))
+		    (let* ((start-res (http-transport:client-connect host port))
+			   (ping-res  (rmt:login-no-auto-client-setup start-res)))
+                      (begin
+                        (remote-server-url-set! *runremote* (server:record->url server-info))
+                        (remote-server-id-set! *runremote* (server:record->id server-info))))))
 	      (if (and host port server-id)
-		    (if (and start-res
-			     ping-res)
-			(let ((runremote (or area-dat *runremote*))) ;; it might have been generated only a few statements ago
-			  (remote-conndat-set! runremote start-res) ;; (hash-table-set! runremote run-id start-res)
-			  (debug:print-info 2 *default-log-port* "connected to " (http-transport:server-dat-make-url start-res))
-			  start-res)
-			(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 ... start-res=" start-res ", server-dat=" server-dat) ;; had runid.  Fixes part of Randy;s ticket 1405717332
-			  (http-transport:close-connections)
-			  (remote-conndat-set! runremote #f)  ;; (hash-table-delete! runremote run-id)
-			  (thread-sleep! 1)
-			  (client:setup-http areapath remaining-tries: (- remaining-tries 1))
-			  )))
+		  (if (and start-res
+			   ping-res)
+		      (let ((runremote (or area-dat *runremote*))) ;; it might have been generated only a few statements ago
+			(remote-conndat-set! runremote start-res) ;; (hash-table-set! runremote run-id start-res)
+			(debug:print-info 2 *default-log-port* "connected to " (http-transport:server-dat-make-url start-res))
+			start-res)
+		      (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 ... start-res=" start-res ", server-dat=" server-dat) ;; had runid.  Fixes part of Randy;s ticket 1405717332
+			(http-transport:close-connections)
+			(remote-conndat-set! runremote #f)  ;; (hash-table-delete! runremote run-id)
+			(thread-sleep! 1)
+			(client:setup-http areapath remaining-tries: (- remaining-tries 1))
+			))
 		  (begin    ;; no server registered
 		    ;; (server:kind-run areapath)
 		    (server:start-and-wait areapath)
 		    (debug:print-info 0 *default-log-port* "client:setup, no server registered, remaining-tries=" remaining-tries)
 		    (thread-sleep! 1) ;; (+ 5 (random (- 20 remaining-tries))))  ;; give server a little time to start up, randomize a little to avoid start storms.

Index: configf.scm
==================================================================
--- configf.scm
+++ configf.scm
@@ -59,10 +59,11 @@
 		   (configf:assoc-safe-add
 		    (hash-table-ref/default cfgdat section-name '())
 		    var value metadata: metadata)))
 
 ;; The if was disabled, but why?
+(define (config:eval-string-in-environment str)
   (if (or (string-null? str)
   	  (equal? "!" (substring str 0 1))) ;; null string or starts with ! are preserved but NOT set in the environment
       str
       (handle-exceptions
 	  exn