https://bugzilla.wikimedia.org/show_bug.cgi?id=46294

[email protected] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #3 from [email protected] ---
I just want to confirm the bug on my Windows XP machine.

--------------
Simple example
--------------

* Create Module:Bugs

* Add the following text

local z = {}

function z.new_line( frame )
    local s = "a\nb"
    return s
end

return z

* Invoke the Module with the following

{{#invoke:Bugs|new_line}}

* The following error will generate

<b>Notice</b>:  unserialize(): Error at offset 75 of 79 bytes...


-----------
Other notes
-----------

* rb / wb did not work

* adding the working fix cited above did work

* The behavior is not specifically related to PHP. I came across this bug in a
Java app (XOWA).

The issue appears to be related to how the Lua binary returns "\n" on Windows
machines.

* The recursiveEncode in MWServer.lua is clearly measuring a string of length
3:

a:1:{i:1;s:3:"a
b";}

* However, a "\r" somehow shows up in receiveMessage, and needs to be actively
removed by the working fix

I'm going to guess that Lua is automatically converting all "\n" to "\r\n" when
writing to pipe.read (stream.input) on Windows machines. If so, I think the
only "true" fix is to somehow override Lua's default newline behavior on
Windows machines. If that's not possible, then the working fix is probably the
best alternative.

Hope this helps.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are watching all bug changes.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to