freetds AT lists.ibiblio.org
Subject: FreeTDS Development Group
List archive
- From: "James K. Lowden" <jklowden AT freetds.org>
- To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
- Subject: Re: [freetds] incorrect fix in net.c
- Date: Mon, 6 Apr 2009 21:38:33 -0400
Frediano Ziglio wrote:
> 2009/4/4 James K. Lowden <jklowden AT schemamania.org>:
> > --- src/tds/net.c    16 Mar 2009 07:49:57 -0000    1.90
> > +++ src/tds/net.c    27 Mar 2009 09:22:49 -0000    1.91
> > @@ -700,7 +700,7 @@
> > Â Â Â Â Â continue;
> > Â }
> >
> > - Â if (0 == nput || nput < 0 && sock_errno == EAGAIN)
> > + Â if (0 == nput || sock_errno == EAGAIN)
> > Â Â Â Â Â continue;
> >
> >
> > The above change is incorrect. Â sock_errno has no meaning unless
> > send/write returns -1.
> >
>
> [The] > 0 case is already handled, 0 case is tested by "0 == nput" so
> only < 0 is left (where sock_errno is valid)
Ah, clever. OK.
BTW, our mail clients are at war over spaces. :-(
The quoted text above appears on my screen as a series of pairs of 0x20
spaces alternating with "Â", what Unicode calls "LATIN CAPITAL LETTER A
WITH CIRCUMFLEX", U+00C2.
What I originally sent was just a series of ASCII spaces, 0x20's. The
mail header announced the encoding:
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Your message has
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Decoded, the utf-8 looks like this:
$ sed -ne'/^Mj/,$p' 19500 | base64 -d | hexdump -C | sed -ne
'/net/,/continue/p'
64 73 2f 6e 65 74 2e 63 20 c2 a0 20 c2 a0 20 c2 |ds/net.c .. .. .|
a0 20 31 36 20 4d 61 72 20 32 30 30 39 20 30 37 |. 16 Mar 2009 07|
3a 34 39 3a 35 37 20 2d 30 30 30 30 20 c2 a0 20 |:49:57 -0000 .. |
c2 a0 20 c2 a0 31 2e 39 30 0a 3e 20 2b 2b 2b 20 |.. ..1.90.> +++ |
73 72 63 2f 74 64 73 2f 6e 65 74 2e 63 20 c2 a0 |src/tds/net.c ..|
20 c2 a0 20 c2 a0 20 32 37 20 4d 61 72 20 32 30 | .. .. 27 Mar 20|
30 39 20 30 39 3a 32 32 3a 34 39 20 2d 30 30 30 |09 09:22:49 -000|
30 20 c2 a0 20 c2 a0 20 c2 a0 31 2e 39 31 0a 3e |0 .. .. ..1.91.>|
20 40 40 20 2d 37 30 30 2c 37 20 2b 37 30 30 2c | @@ -700,7 +700,|
37 20 40 40 0a 3e 20 c2 a0 20 c2 a0 20 c2 a0 20 |7 @@.> .. .. .. |
c2 a0 20 c2 a0 20 63 6f 6e 74 69 6e 75 65 3b 0a |.. .. continue;.|
Your mail client apparently converts every 0x20 0x20 pair to 0x20 0xA0,
makes every 2nd space a non-breaking space. Those "c2 a0" sequences are
UTF-8 encodings of U+A0, a non-breaking space.
My mail client, however, apparently doesn't recognize the charset property
of the Content-Type header. It treats "c2 a0" as two characters: 0xC2 and
0xA0, an  and a non-breaking space.
One of these days I'll upgrade, and I'm sure this old bug was fixed long
ago. But I thought you might want to know where all those weird
characters were coming from.
Regards,
--jkl
-
[freetds] incorrect fix in net.c,
James K. Lowden, 04/04/2009
-
Re: [freetds] incorrect fix in net.c,
Frediano Ziglio, 04/05/2009
- Re: [freetds] incorrect fix in net.c, James K. Lowden, 04/06/2009
-
Re: [freetds] incorrect fix in net.c,
Frediano Ziglio, 04/05/2009
Archive powered by MHonArc 2.6.24.