From xemacs-m  Mon Jul  7 22:00:18 1997
Received: from news.smart.net (jmiller@max1p102.smart.net [206.97.127.102])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id WAA14152
	for <xemacs-beta@xemacs.org>; Mon, 7 Jul 1997 22:00:15 -0500 (CDT)
Received: (from jmiller@localhost)
          by news.smart.net (8.8.4/8.8.4)
	  id XAA31529; Mon, 7 Jul 1997 23:03:10 -0400
Date: Mon, 7 Jul 1997 23:03:10 -0400
Message-Id: <199707080303.XAA31529@news.smart.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
From: Jeff Miller <jmiller@smart.net>
To: xemacs-beta@xemacs.org
Subject: Re: gnus problem w/20.3b11
In-Reply-To: <m2vi2mxrq8.fsf@altair.xemacs.org>
References: <199707080111.VAA31091@news.smart.net>
	<m2vi2mxrq8.fsf@altair.xemacs.org>
X-Mailer: VM 6.32 under 20.3 "Stockholm" XEmacs  Lucid (beta11)
Reply-to: jmiller@smart.net
X-Face: &vGrMZ?Q&W5~yiCR_#hat=$tgJrK`J=2$se?0Nu9I3G|I<2-\:82zx>kz=l8(yw)G1i&0"D
 <nv_e$^;,ftG6@Hn"did"G5i=X_-Z3Y

>>>>> "sb" == Steven L Baur <steve@xemacs.org> writes:

sb> Jeff Miller <jmiller@smart.net> writes:
>> so far, every uudecoded image I have tried to decode with X U has

>> Wrong-type argument: consp -133694622  ( i think this happens when it
>> attempts the uudecode. 

>> If i pipe the article through uudecode with |, the image is decoded.

sb> Get as detailed a lisp stack backtrace as you can (isolate the file
sb> where the Wrong-type argument is occurring and eval-buffer it) and
sb> report it with C-c C-b.  I cannot reproduce it.  Both X u and X U work
sb> fine for me.

I turned on the debug-on-error stuff and it gave me an idea of what to
look at.  I had a set of articles that seem to repeatable cause the
problem and they still did with debug-on-error stuff.

I believe the error was being caused by a soon-to-be-filled disk drive.
The drive I was saving to was at 97% (though it still had 21M left).  I
freed up  120M and now the X U decoding works.  

I vaguely recall discussions about adding some code that would flag low
disk space problems.  I though they had been added.  

Here is the backtrace that debug on error caused in case it helps ring any 
bells.  The revelevant code appears to be from lisp/gnus/gnus-uu.el

Signaling: (wrong-type-argument consp -133694622)
  (let ((cdir default-directory)) (unwind-protect (progn ... ...) (cd cdir)))
)
  (if (not (looking-at gnus-uu-begin-string)) (setq state (list ...)) (setq gnus-uu-file-name (let ... ...)) (replace-match (concat "begin 644 " gnus-uu-file-name) t t) (forward-line 1) (while (and ... ...) (gnus-delete-line)) (when (and gnus-uu-uudecode-process ...) (delete-process gnus-uu-uudecode-process) (gnus-uu-unmark-list-of-grabbed t)) (let (...) (unwind-protect ... ...)) (set-process-sentinel gnus-uu-uudecode-process (quote gnus-uu-uudecode-sentinel)) (setq state (list ...)) (push (concat gnus-uu-work-dir gnus-uu-file-name) files))
)
  (while (or (re-search-forward gnus-uu-begin-string nil t) (re-search-forward gnus-uu-body-line nil t)) (setq state (list ...)) (beginning-of-line) (setq start-char (point)) (if (not ...) (setq state ...) (setq gnus-uu-file-name ...) (replace-match ... t t) (forward-line 1) (while ... ...) (when ... ... ...) (let ... ...) (set-process-sentinel gnus-uu-uudecode-process ...) (setq state ...) (push ... files)) (if (re-search-forward gnus-uu-end-string nil t) (push ... state) (goto-char ...) (re-search-backward gnus-uu-body-line nil t)) (forward-line 1) (when gnus-uu-uudecode-process (when ... ... ... ...)))
)
  (let ((state ...) process-connection-type case-fold-search buffer-read-only files start-char) (goto-char (point-min)) (when gnus-uu-kill-carriage-return (save-excursion ...)) (while (or ... ...) (setq state ...) (beginning-of-line) (setq start-char ...) (if ... ... ... ... ... ... ... ... ... ... ...) (if ... ... ... ...) (forward-line 1) (when gnus-uu-uudecode-process ...)) (if (memq ... state) (cons ... state) state))
)
  (save-excursion (set-buffer process-buffer) (let (... process-connection-type case-fold-search buffer-read-only files start-char) (goto-char ...) (when gnus-uu-kill-carriage-return ...) (while ... ... ... ... ... ... ... ...) (if ... ... state)))
)
  gnus-uu-uustrip-article(" *Original Article*" first-and-last)
  funcall(gnus-uu-uustrip-article " *Original Article*" first-and-last)
  (setq process-state (funcall process-function gnus-original-article-buffer state))
)
  (save-excursion (set-buffer gnus-summary-buffer) (setq process-state (funcall process-function gnus-original-article-buffer state)))
)
  (let ((buffer-read-only nil)) (save-excursion (set-buffer gnus-summary-buffer) (setq process-state ...)))
)
  (save-excursion (set-buffer gnus-original-article-buffer) (let (...) (save-excursion ... ...)))
)
  (while (and articles (not ...) (or sloppy ...)) (setq article (pop articles)) (push article article-series) (unless articles (if ... ... ...)) (let (...) (gnus-message 6 "Getting article %d%s..." article ...)) (gnus-summary-display-article article) (save-excursion (set-buffer gnus-original-article-buffer) (let ... ...)) (gnus-summary-remove-process-mark article) (when (or ... ...) (when has-been-begin ...) (when ... ...) (setq has-been-begin t)) (when (memq ... process-state) (setq article-series nil) (setq has-been-begin nil) (if ... ... ...) (setq result-file ...) (while files ...) (when gnus-uu-grabbed-file-functions ...) (setq result-file nil) (and limit ... ...)) (and (or ... ...) (not ...) result-file (file-exists-p result-file) (not gnus-uu-be-dangerous) (or ... ...) (delete-file result-file)) (when (and ... gnus-uu-unmark-articles-not-decoded) (gnus-summary-tick-article article t)) (if (and ... ... ...) (progn ... ... ...) (setq state ...)))
)
  (let ((state ...) has-been-begin article result-file result-files process-state gnus-summary-display-article-function gnus-article-display-hook gnus-article-prepare-hook article-series files) (while (and articles ... ...) (setq article ...) (push article article-series) (unless articles ...) (let ... ...) (gnus-summary-display-article article) (save-excursion ... ...) (gnus-summary-remove-process-mark article) (when ... ... ... ...) (when ... ... ... ... ... ... ... ... ...) (and ... ... result-file ... ... ... ...) (when ... ...) (if ... ... ...)) (if result-files (message "") (cond ... ... ...) (when gnus-uu-unmark-articles-not-decoded ...)) result-files)
)
  gnus-uu-grab-articles((149793) gnus-uu-uustrip-article t)
  (setq files (gnus-uu-grab-articles articles method t))
)
  (let ((articles ...) files) (setq files (gnus-uu-grab-articles articles method t)) (let (...) (when scan ...)) (when save (gnus-uu-save-files files save)) (when (eq gnus-uu-do-not-unpack-archives nil) (setq files ...)) (setq files (nreverse ...)) (or not-insert (not gnus-insert-pseudo-articles) (gnus-summary-insert-pseudos files save)))
)
  gnus-uu-decode-with-method(gnus-uu-uustrip-article nil "~/pics/tmp/" nil nil t)
  (lambda (n dir) "Decodes and saves the resulting file." (interactive (list current-prefix-arg ...)) (gnus-uu-decode-with-method (quote gnus-uu-uustrip-article) n dir nil nil t))(nil "~/pics/tmp/")
  call-interactively(gnus-uu-decode-uu-and-save)

