unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: storm@cua.dk (Kim F. Storm)
Cc: Mario Lang <mlang@delysid.org>
Subject: Re: [HELP] (bug?) Saving a buffer without any conversion?
Date: 14 Jan 2003 02:00:05 +0100	[thread overview]
Message-ID: <5xk7h8a6lm.fsf@kfs2.cua.dk> (raw)
In-Reply-To: <87fzrxszs8.fsf@lexx.delysid.org>

Mario Lang <mlang@delysid.org> writes:

> Hi there.
> 
> I'm trying to sort out a bug in erc-dcc.el since some time now and since
> I'm really lost now, I thought I'd ask here, and maybe get some enlightenment:
> 
> We're receiving binary content via a network process.  After the
> transfer is complete, this buffer should be saved to a file.
> 
> The effect I'm having is that we receive 1372422 bytes via the process
> filter function STRING argument, and after insertion into a buffer,
> we have a buffer with buffer-size 1372422, but after calling (save-buffer)
> we get this:
> 
> -rw-r--r--    1 root     root      1865264 Jan 13 18:35 blah28.mp3
> 
> I'm using:
> 
>       (set-process-coding-system proc 'binary 'binary)
>       (set-buffer-file-coding-system 'no-conversion t)
> 

I have looked at Mario's data before sending it to emacs and after
emacs has written it to a file.

It seems that every byte in the range 0xa0 .. 0xff that were in the
original file is prefixed with an 0x81 byte in the file containing the
received data.  To me, that looks like the internal multi-byte
representation for the binary data.

Actually the value returned by (buffer-size) in the buffer containing
the received binary data equals the size of the original data (so if
seen from the lisp level, the buffer contains the right number of
bytes).  But when written to disk, the internal representation of the
buffer is stored instead of the "data".

The buffer's coding system for save is no-conversion.  How did
that internal data end up in the file?

What coding systems should be set on the network process and on the
buffer to make it possible to have the received binary data in the
buffer make its way unmangled into the file on the disk?


-- 
Kim F. Storm <storm@cua.dk> http://www.cua.dk

  reply	other threads:[~2003-01-14  1:00 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-13 17:52 [HELP] (bug?) Saving a buffer without any conversion? Mario Lang
2003-01-14  1:00 ` Kim F. Storm [this message]
2003-01-14  6:06   ` Eli Zaretskii
2003-01-14  6:46     ` Mario Lang
2003-01-14 18:37       ` Eli Zaretskii
2003-01-14 16:19   ` Stefan Monnier
2003-01-15  1:16 ` Kenichi Handa
2003-01-15 11:02   ` Kim F. Storm
2003-01-15 10:59     ` Kenichi Handa
2003-01-15 13:27       ` Kim F. Storm
2003-01-15 16:30         ` Eli Zaretskii
2003-01-16 22:52           ` Kim F. Storm
2003-01-17  2:35             ` Kenichi Handa
2003-01-16  1:18         ` Kenichi Handa
2003-01-17  9:23         ` Richard Stallman
2003-01-17 11:07           ` Kenichi Handa
2003-01-15 16:59       ` Mario Lang
2003-01-15 23:27       ` Richard Stallman
2003-01-16  6:45         ` Kenichi Handa

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=5xk7h8a6lm.fsf@kfs2.cua.dk \
    --to=storm@cua.dk \
    --cc=mlang@delysid.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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).