On Wed, Dec 01, 2004 at 05:32:54PM -0600, kfogel@collab.net wrote:
> "Peter N. Lundblad" <peter@famlundblad.se> writes:
> > > Mark Benedetto King <mbk@lowlatency.com> writes:
> > > > On Wed, Dec 01, 2004 at 02:08:34PM -0600, kfogel@collab.net wrote:
> > > > What does the receiver do when it receives the message?  How does it know
> > > > which escaping mechanism to invert?
> > >
> > > Seriously, I've hand-waved on that detail.  I was assuming could add
> > > an encoding attribute (I think we do that already).
> > >
> > We use the DAV element comment (in the DAV namespace) for the log message.
> > There is no encoding there, if we're talking about the XML used in the svn
> > log command.
> 
> So the code should be:
> 
>    /* sending a log msg from server to client */
> 
>    if (is_valid_utf8 (msg) && svn_xml_is_xml_safe (msg))
>      {
>         send_message (escape_xml (msg));
>      }
>    else
>      {
>         send_message (fuzzy_escape (msg));
>      }
> 
> then?  (This assumes that fuzzy_escape() produces totally XML-kosher
> data, naturally.)
> 
Right, as long as fuzzy_escape() it is assumed to be lossy, since
we're always going to use unescape_xml() on the receiver-side.
Considering, then, that the receiver is capable of unescaping with
a single function, why isn't the transmitter capable of the same?
It sounds to me that we just have a lossy encoding, and dressing it
up with is_valid_utf8() and svn_xml_is_xml_safe() just obscures that
fact.   The lossy encoding would just not be lossy if both of those
conditions were met.  Or maybe I misunderstand what fuzzy_escape()
does.  Does it incorrectly handle valid utf8, valid xml characters?
--ben
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Dec  2 17:49:36 2004