Re: PATCH: `send' feedback



Am 24.09.2001 13:56:16 schrieb(en) Pawel Salek:
> My preferred solution would be to fix the attachment encoding routines 
> once and for good, in balsa and in mutt :-)

I had a quick look at the code and ran balsa in gdb. Here I realised that the
encoding routines for each part are called *THREE* *TIMES*, that means, also
the 3 MB attachment is converted to base64 three times. As far as I can see,
this does not come from libmutt, but from libbalsa_message_queue(). Below are
the backtraces for the break hits at mutt_write_mime_body() for sending a
message with only one text part.

I must admit that I do not understand what exactly goes on here and why the
routines are called three times. However, I think it is a complete waste of
computing power to do the same thing multiple times. Maybe it is possible to
create the message as a temp file and then simply glue it to the end of a
mailbox file to do the "fcc". Or is this a over-simplified viev (IMAP, ...)?

Cheers, Albrecht.


~~~ gdb backtraces... ~~~

#0  mutt_write_mime_body (a=0x301346e0, f=0x0) at sendlib.c:487
#1  0x100873c0 in libbalsa_create_msg (message=0x30134e80, msg=0x30135118, 
    tmpfile=0x30135574 "/tmp/mutt-regulus-1449-1", encoding=2, flow=0, 
    queu=806569696) at send.c:1459
#2  0x1008526c in libbalsa_message_queue (message=0x30134e80, 
    outbox=0x10141250, fccbox=0x10140ef8, encoding=2, flow=0) at send.c:296
#3  0x100854ec in libbalsa_message_send (message=0x301346e0, 
    outbox=0x10141250, fccbox=0x301357b8, encoding=2, 
    smtp_server=0x1013e2e8 "localhost:25", smtp_authctx=0x10138d80, 
    tls_mode=0, flow=0) at send.c:356
#4  0x1005ee60 in send_message_handler (bsmsg=0x30106250, queue_only=0)
    at sendmsg-window.c:2330

[...]

#0  mutt_write_mime_body (a=0x301346e0, f=0x30135878) at sendlib.c:487
#1  0x100ac094 in mutt_write_fcc (path=0x301346e0 "", hdr=0x30135118, 
    msgid=0x0, post=0, fcc=0x0) at sendlib.c:2067
#2  0x100852a8 in libbalsa_message_queue (message=0x30134e80, 
    outbox=0x10141250, fccbox=0x10140ef8, encoding=2, flow=0) at send.c:299
[#3 & 4 as above]

[...]

#0  mutt_write_mime_body (a=0x301346e0, f=0x30135878) at sendlib.c:487
#1  0x100ac094 in mutt_write_fcc (path=0x301346e0 "", hdr=0x30135118, 
    msgid=0x0, post=0, fcc=0x0) at sendlib.c:2067
#2  0x1008535c in libbalsa_message_queue (message=0xbf15, outbox=0x10141250, 
    fccbox=0x10140ef8, encoding=2, flow=0) at send.c:306
[#3 & 4 as above]

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Albrecht Dreß  -  Monschauer Straße 22  -  D-53121 Bonn (Germany)
      Phone (+49) 228 6199571  -  mailto:albrecht.dress@arcormail.de
_________________________________________________________________________




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]