all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: bug-guile@gnu.org
Cc: 19610@debbugs.gnu.org
Subject: bug#19610: Unbuffered custom binary input ports crash
Date: Sun, 18 Jan 2015 21:22:48 +0100	[thread overview]
Message-ID: <87mw5fbzzb.fsf_-_@gnu.org> (raw)
In-Reply-To: <87h9vr3ddr.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 15 Jan 2015 23:09:04 +0100")

This is a followup to <http://bugs.gnu.org/19610>.

ludo@gnu.org (Ludovic Courtès) skribis:

> However, I tested it live, and it aborts like this (this is with Guile
> 2.0.11.109-e1d29 on x86_64-linux-gnu):
>
> retrieving 1 files from 'wildebeest.jxself.org'...
> importing file or directory '/gnu/store/prrwzx5v33miiz5fh8653m1izl5f8d4k-brasero-3.8.0'...
>
> ;;; (sigport #f #<input: r6rs-custom-binary-input-port 1eee0d0>)
> guile: ../../libguile/ports.c:2527: scm_i_port_iconv_descriptors: Assertion `pti->encoding_mode == SCM_PORT_ENCODING_MODE_ICONV' failed.
> builder for `/gnu/store/izjx4wllhcy66nsn9pxbkghaq2cy06qv-brasero-3.8.0.drv' failed due to signal 6 (Aborted)

Here’s a way to reproduce the assertion failure above (with Guile
2.0.11+):

--8<---------------cut here---------------start------------->8---
(use-modules (rnrs io ports))

(define port
  (let ((input (open-input-string (make-string 1000 #\a))))
    (make-custom-binary-input-port "foo"
                                   (lambda (bv index count)
                                     (let ((n (get-bytevector-n! input bv index
                                                                 count)))
                                       (if (eof-object? n)
                                           0
                                           n)))
                                   #f #f
                                   (lambda ()
                                     (close-port input)))))

(setvbuf port _IONBF)
(pk 'e (port-encoding port))
(get-string-all port)
--8<---------------cut here---------------end--------------->8---

Ludo’.

  reply	other threads:[~2015-01-18 20:23 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-15 18:27 bug#19610: decoding-error while retrieving brasero build outputs Mark H Weaver
2015-01-15 22:09 ` Ludovic Courtès
2015-01-18 20:22   ` Ludovic Courtès [this message]
2015-01-18 21:08     ` bug#19610: bug#19621: Unbuffered custom binary input ports crash Ludovic Courtès
2015-01-18 21:24   ` bug#19610: decoding-error while retrieving brasero build outputs Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87mw5fbzzb.fsf_-_@gnu.org \
    --to=ludo@gnu.org \
    --cc=19610@debbugs.gnu.org \
    --cc=bug-guile@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.