=== modified file 'lisp/emacs-lisp/tq.el'
*** lisp/emacs-lisp/tq.el	2014-02-10 01:34:22 +0000
--- lisp/emacs-lisp/tq.el	2014-11-11 03:39:31 +0000
***************
*** 153,167 ****
  		     (buffer-name buf)))
  	  (goto-char (point-min))
  	  (if (re-search-forward (tq-queue-head-regexp tq) nil t)
! 	      (let ((answer (buffer-substring (point-min) (point))))
  		(delete-region (point-min) (point))
! 		(unwind-protect
! 		    (condition-case nil
! 			(funcall (tq-queue-head-fn tq)
! 				 (tq-queue-head-closure tq)
! 				 answer)
! 		      (error nil))
! 		  (tq-queue-pop tq))
  		(tq-process-buffer tq))))))))
  
  (provide 'tq)
--- 153,167 ----
  		     (buffer-name buf)))
  	  (goto-char (point-min))
  	  (if (re-search-forward (tq-queue-head-regexp tq) nil t)
! 	      (let ((answer (buffer-substring (point-min) (point)))
!                     (fn (tq-queue-head-fn tq))
!                     (closure (tq-queue-head-closure tq)))
  		(delete-region (point-min) (point))
! 		(tq-queue-pop tq)
!                 (condition-case err
!                     (funcall fn closure answer)
!                   (error (message "Error while processing tq callback: %s"
!                                   (error-message-string err))))
  		(tq-process-buffer tq))))))))
  
  (provide 'tq)

