Thank you Andrew for taking a look at it. I filled a bug [1] and will pass on your suggestions to the others.
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1088273 -- Jovan 2014-10-23 19:10 GMT+02:00 Andrew Sutherland <[email protected]>: > On 10/23/2014 05:17 AM, Jovan Gerodetti wrote: > > The messaging app Loqui[1] uses a TCP Socket to upload files to the > WhatsApp server[2]. But on 2.1 and 2.2 we are experiencing that the Socket > gets closed in the middle of the upload[3]. The console shows this error: > > * NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS: [JavaScript Error: "Socket > not open." {file: "jar:file:///system/b2g/omni.ja!/components/TCPSocket.js" > line: 663}]'[JavaScript Error: "Socket not open." {file: > "jar:file:///system/b2g/omni.ja!/components/TCPSocket.js" line: 663}]' when > calling method: [nsIDOMTCPSocket::send]* > > > I would suggest opening a bug in the "Core" product under the "DOM: Device > Interfaces" component and providing a log from your app to help analyze > what the problem might be. (I see you have very nice logging code!) You > can use this link to get started: > https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&component=DOM%3A%20Device%20Interfaces > > I took a look at the use of MozTCPSocket to see if any issues jumped out > at me. The code looks correct, but there are a few enhancements worth > considering: > > - TCPSocket's buffer threshold for waiting for a drain is at 64k, so the > code's current use of 1k is suboptimal. > > - The code reads the entirety of the Blob into memory and keeps it around > for the duration of the file send. For large files, this could lead to > excess memory usage. I realize an MD5 hash is computed, but it might make > sense to simply stream the contents of the file twice; once for the MD5, > and once for the actual sending. The Firefox OS email app has some example > code related to chunked Blob sending at > https://github.com/mozilla-b2g/gaia-email-libs-and-more/blob/master/js/worker-support/net-main.js > > Andrew >
_______________________________________________ dev-b2g mailing list [email protected] https://lists.mozilla.org/listinfo/dev-b2g
