On review board: http://reviewboard.liftweb.net/r/131/

I did run across another infelicity when writing the test -- apparently 
JsonParser crashes when given a scalar value, as opposed to an array or object:

scala> parse("\"foobar\"")
net.liftweb.json.JsonParser$ParseException: unexpected null
Near: "foobar
        at net.liftweb.json.JsonParser$Parser.fail(JsonParser.scala:166)
        at net.liftweb.json.JsonParser$ValStack.peek(JsonParser.scala:153)
        at net.liftweb.json.JsonParser$.newValue$1(JsonParser.scala:110)
        at net.liftweb.json.JsonParser$.parse0(JsonParser.scala:125)
        at net.liftweb.json.JsonParser$.parse(JsonParser.s...

I'm not sure if it should work, but even if it shouldn't support that the error 
case should probably give a better message. Joni/et al?

-Ross

On Nov 30, 2009, at 8:33 PM, harryh wrote:

> Done:
> 
> http://github.com/dpp/liftweb/issues/#issue/214
> 
> On Nov 30, 6:33 pm, Ross Mellgren <dri...@gmail.com> wrote:
>> If you file an issue on github I'll write up a patch for you tonight.
>> 
>> -Ross
>> 
>> On Nov 30, 2009, at 6:30 PM, harryh wrote:
>> 
>>> Yes, what Ross said.  Further, taking a look at JsonParser.scala the
>>> bug appears to be on line ~202 where there are a couple of missing
>>> escape sequences: \/ as well as \f.
>> 
>>> -harryh
>> 
>>> On Nov 30, 6:20 pm, Ross Mellgren <dri...@gmail.com> wrote:
>>>> He's double escaping so that scala's string interpretation will put a
>>>> raw \ in there, so that it's an escaped forward slash (\/) to the  
>>>> JSON
>>>> parson, as I understand it. The output should be either invalid  
>>>> escape
>>>> or forward slash, but not backslash unless the input was \\.
>> 
>>>> -Ross
>> 
>>>> On Nov 30, 2009, at 6:18 PM, Peter Robinett wrote:
>> 
>>>>> Harry, I think you're double-escaping the slash. This works:
>>>>> scala> import net.liftweb.json._
>>>>> scala> val s1 = "{ \"id\": \"America/New_York\" }"
>>>>> s1: java.lang.String = { "id": "America/New_York" }
>> 
>>>>> scala> JsonParser.parse(s1)
>>>>> res0: net.liftweb.json.JsonAST.JValue = JObject(List(JField
>>>>> (id,JString
>>>>> (America/New_York))))
>> 
>>>>> Peter Robinett
>> 
>>>>> On Nov 30, 2:16 pm, harryh <har...@gmail.com> wrote:
>>>>>> scala> import net.liftweb.json._
>>>>>> scala> val s2 = "{ \"id\": \"America\\/New_York\" }"
>>>>>> s2: java.lang.String = { "id": "America\/New_York" }
>> 
>>>>>> scala> JsonParser.parse(s2)
>>>>>> res1: net.liftweb.json.JsonAST.JValue = JObject(List(JField
>>>>>> (id,JString
>>>>>> (America\New_York))))
>> 
>>>>>> It should be America/New_York but for some reason getting a \  
>>>>>> instead
>>>>>> of a /
>> 
>>>>>> -harryh
>> 
>>>>> --
>> 
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Lift" group.
>>>>> To post to this group, send email to lift...@googlegroups.com.
>>>>> To unsubscribe from this group, send email to 
>>>>> liftweb+unsubscr...@googlegroups.com
>>>>> .
>>>>> For more options, visit this group 
>>>>> athttp://groups.google.com/group/liftweb?hl=en
>>>>> .
>> 
>>> --
>> 
>>> You received this message because you are subscribed to the Google  
>>> Groups "Lift" group.
>>> To post to this group, send email to lift...@googlegroups.com.
>>> To unsubscribe from this group, send email to 
>>> liftweb+unsubscr...@googlegroups.com
>>> .
>>> For more options, visit this group 
>>> athttp://groups.google.com/group/liftweb?hl=en
>>> .
> 
> --
> 
> You received this message because you are subscribed to the Google Groups 
> "Lift" group.
> To post to this group, send email to lift...@googlegroups.com.
> To unsubscribe from this group, send email to 
> liftweb+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/liftweb?hl=en.
> 
> 

--

You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en.


Reply via email to