Author: titmuss
Date: Fri Feb 15 10:09:32 2008
New Revision: 1973

URL: http://svn.slimdevices.com?rev=1973&root=Jive&view=rev
Log:
 [EMAIL PROTECTED] (orig r1968):  titmuss | 2008-02-15 11:25:13 +0000
 Bug: 7129
 Description:
 Disconnect from SC/SN before entering suspend mode. This is better practice, 
and 
 avoids the problem with show briefly popups not working correctly on resume.
 
 

Modified:
    trunk/   (props changed)
    trunk/jive/src/pkg/jive/share/jive/slim/SlimServers.lua
    
trunk/jive/src/pkg/jive_squeezeboxjive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua

Propchange: trunk/
------------------------------------------------------------------------------
--- svk:merge (original)
+++ svk:merge Fri Feb 15 10:09:32 2008
@@ -1,3 +1,3 @@
-bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/7.0:1967
+bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/7.0:1968
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/SN:1083
 bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/scrolling:1378

Modified: trunk/jive/src/pkg/jive/share/jive/slim/SlimServers.lua
URL: 
http://svn.slimdevices.com/trunk/jive/src/pkg/jive/share/jive/slim/SlimServers.lua?rev=1973&root=Jive&r1=1972&r2=1973&view=diff
==============================================================================
--- trunk/jive/src/pkg/jive/share/jive/slim/SlimServers.lua (original)
+++ trunk/jive/src/pkg/jive/share/jive/slim/SlimServers.lua Fri Feb 15 10:09:32 
2008
@@ -466,10 +466,13 @@
 function notify_networkConnected(self)
        log:info("network connected")
 
-       -- force reconnection to all servers if we don't have a player
        if not self.currentPlayer then
+               -- force reconnection to all servers if we don't have a player
                self:discover()
                self:connect()
+       else
+               -- otherwise force connection to the current player
+               self.currentPlayer:getSlimServer():connect()
        end
 end
 

Modified: 
trunk/jive/src/pkg/jive_squeezeboxjive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
URL: 
http://svn.slimdevices.com/trunk/jive/src/pkg/jive_squeezeboxjive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua?rev=1973&root=Jive&r1=1972&r2=1973&view=diff
==============================================================================
--- 
trunk/jive/src/pkg/jive_squeezeboxjive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
 (original)
+++ 
trunk/jive/src/pkg/jive_squeezeboxjive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
 Fri Feb 15 10:09:32 2008
@@ -926,11 +926,11 @@
        local settings = self:getSettings()
        local wakeAfter = settings.suspendWake and settings.suspendWake or ""
 
-       -- suspend
-       os.execute("/etc/init.d/suspend " .. wakeAfter)
-
-       -- wake up power state
-       self:wakeup()
+       local slimDiscovery = appletManager:getAppletInstance("SlimDiscovery")
+       local slimServers
+       if slimDiscovery then
+               slimServers = slimDiscovery.serversObj
+       end
 
        -- start timer to resume this task every second
        self.suspendPopup:addTimer(1000,
@@ -940,20 +940,43 @@
                        end
                end)
 
+       -- disconnect from all SlimServers
+       if slimServers then
+               slimServers:disconnect()
+
+               local connected
+               repeat
+                       connected = false
+                       for i,server in slimServers:allServers() do
+                               connected = connected or server:isConnected()
+                               log:info("server=", server:getName(), " 
connected=", connected)
+                       end
+
+                       Task:yield(false)
+               until not connected
+       end
+
+
+       -- suspend
+       os.execute("/etc/init.d/suspend " .. wakeAfter)
+
+       -- wake up power state
+       self:wakeup()
+
        while true do
                local status = self.wireless:t_wpaStatus()
 
                -- network connected?
-               log:info('Wireless was connected: ', wirelessWasConnected)
                if status then
-                       log:info('wpa_state=', status.wpa_state)
-                       log:info("resume ip=", status.ip_address, " zeroconf=", 
zeroconf)
+                       log:info("wpa_state=", status.wpa_state, " resume ip=", 
status.ip_address, " zeroconf=", zeroconf)
+               else
+                       log:info("connected=", wirelessWasConnected)
                end
 
                if not wirelessWasConnected and status and status.wpa_state
                        or (status.wpa_state == "COMPLETED" and 
status.ip_address and (not string.match(status.ip_address, "^169.254.") or 
zeroconf)) then
 
-                       -- force reconnections
+                       -- force connection to SlimServer
                        if wirelessWasConnected then
                                jnt:notify("networkConnected")
                        end

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

Reply via email to