diff --git a/core/core-sessions.el b/core/core-sessions.el
index 2b3d98c25..66b991f49 100644
--- a/core/core-sessions.el
+++ b/core/core-sessions.el
@@ -20,13 +20,13 @@
wg-log-level 0
;; NOTE: Some of these make workgroup-restoration unstable
- wg-restore-fringes t
- wg-restore-margins t
- wg-restore-scroll-bars t
- wg-restore-frame-position t
- wg-restore-remote-buffers t
wg-restore-mark t
- wg-restore-point-max t
+ wg-restore-frame-position nil
+ wg-restore-remote-buffers nil
+ wg-restore-scroll-bars nil
+ wg-restore-fringes nil
+ wg-restore-margins nil
+ wg-restore-point-max t ; Throws silent errors if non-nil
wg-list-display-decor-divider " "
wg-list-display-decor-left-brace ""
diff --git a/core/defuns/defuns-workgroup.el b/core/defuns/defuns-workgroup.el
index 08e9e8332..20b720942 100644
--- a/core/defuns/defuns-workgroup.el
+++ b/core/defuns/defuns-workgroup.el
@@ -7,13 +7,13 @@
(helm-projectile-find-file)))
;;;###autoload (autoload 'narf:save-session "defuns-workgroup" nil t)
-(evil-define-command narf:save-session (&optional bang session-name)
- (interactive "")
- (unless (wg-current-workgroup t)
+(evil-define-command narf:save-session (&optional session-name)
+ (interactive "")
+ (unless (wg-workgroup-list)
(wg-create-workgroup wg-first-wg-name))
- (if session-name
- (wg-save-session-as (concat wg-workgroup-directory session-name) (not bang))
- (wg-save-session)))
+ (wg-save-session-as (if session-name
+ (concat wg-workgroup-directory session-name)
+ wg-session-file)))
;;;###autoload (autoload 'narf:load-session "defuns-workgroup" nil t)
(evil-define-command narf:load-session (&optional session-name)
@@ -176,7 +176,7 @@
(defun narf/close-window-or-workgroup ()
(interactive)
(narf/kill-real-buffer)
- (if (and (= (length (window-list)) 1)
+ (if (and (one-window-p t)
(> (length (wg-workgroup-list)) 1))
(if (string= (wg-workgroup-name (wg-current-workgroup)) wg-first-wg-name)
(evil-window-delete)