Author: titmuss
Date: Thu Jul  3 09:44:46 2008
New Revision: 2659

URL: http://svn.slimdevices.com?rev=2659&root=Jive&view=rev
Log:
Bug: 5378
Description:
Pending requests were not being correctly handled when reconnecting to server. 
This could leave the user with a 'spinny', and 
the request was lost.


Modified:
    7.1/trunk/squeezeplay/src/squeezeplay/share/jive/net/Comet.lua

Modified: 7.1/trunk/squeezeplay/src/squeezeplay/share/jive/net/Comet.lua
URL: 
http://svn.slimdevices.com/7.1/trunk/squeezeplay/src/squeezeplay/share/jive/net/Comet.lua?rev=2659&root=Jive&r1=2658&r2=2659&view=diff
==============================================================================
--- 7.1/trunk/squeezeplay/src/squeezeplay/share/jive/net/Comet.lua (original)
+++ 7.1/trunk/squeezeplay/src/squeezeplay/share/jive/net/Comet.lua Thu Jul  3 
09:44:46 2008
@@ -721,7 +721,10 @@
        for i, v in ipairs(self.sent_reqs) do
                table.insert(data, v)
        end
-       
+
+       -- Add any other pending requests to the outgoing data
+       _addPendingRequests(self, data)
+
        _state(self, CONNECTING)
        
        local req = CometRequest(
@@ -756,31 +759,13 @@
                -- On error, print something...
                if err then
                        log:info(self, ": _getRequestSink error: ", err)
-
-                       if cometRequest:t_getResponseStatus() == 401 then
-                               return _handleAdvice(self, cometRequest)
-                       end
-
-                       -- Resend any un-acknowledged requests
-                       local data = {}
-                       for i, v in ipairs(self.sent_reqs) do
-                               table.insert(data, v)
-                       end
-
-                       -- Only continue if we have some data to send
-                       if data[1] then
-                               log:info(self, ": Resending requests: ", 
#self.sent_reqs)
-
-                               local req = CometRequest(
-                                                        _getRequestSink(self),
-                                                        self.uri,
-                                                        data
-                                                )
-                               self.rhttp:fetch(req)
-                       end
-               end
-
-               _response(self, chunk)
+                       return _handleAdvice(self, cometRequest)
+               end
+
+               -- if we have data
+               if chunk then
+                       _response(self, chunk)
+               end
        end
 end
 

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins

Reply via email to