On Thu, May 29, 2003 at 02:59:00PM -0400, Rob Siemborski wrote: > On Thu, 29 May 2003, Patrick Welche wrote: > > > If we're doing wishlists, 2 things (perhaps trivial) fell by the wayside: > > - lib/imclient.c:578 int class = 2; > > Why not 0? If 2, then remove charclass[] checks. (I'm running with 0) > > Huh? This means you are sending everything as a literal. The charclass > checks are there to use the simplest format possible for transmitting a > string.
Sorry! You're right - I got it completely back to front - 0 is a literal 2 is an atom, not the other way around.. and I had even changed imclient_writeastring to if (len == 0) return 0; if (len >= 1024) class = 0; switch (class) { case 2: /* Atom */ imclient_write(imclient, str, len); break; case 1: /* Quoted-string */ imclient_write(imclient, "\"", 1); imclient_write(imclient, str, len); imclient_write(imclient, "\"", 1); break; case 0: /* Literal */ ... to make it more obvious.. How about the second point about perl and shared libraries? Cheers, Patrick