--- gtags.el	2008-04-21 02:23:06.000000000 +0200
+++ gtags.el.new	2008-05-19 12:30:29.000000000 +0200
@@ -68,6 +68,11 @@
   :type 'boolean
   :group 'gtags)
 
+(defcustom gtags-pop-delete nil
+  "*If non-nil, gtags-pop will delete the buffer."
+  :group 'gtags
+  :type 'boolean)
+
 ;; Variables
 (defvar gtags-current-buffer nil
   "Current buffer.")
@@ -399,7 +404,7 @@
     (if (and (not (equal gtags-current-buffer nil))
              (not (equal gtags-current-buffer (current-buffer))))
          (switch-to-buffer gtags-current-buffer)
-      (if (not (gtags-exist-in-stack (current-buffer)))
+      (if (and gtags-pop-delete (not (gtags-exist-in-stack (current-buffer))))
 	  (setq delete t))
       (setq context (gtags-pop-context))
       (if (not context)
