stvmallen / homebridge-roomba-stv

Homebrige plugin for Roomba 9xx
MIT License
38 stars 15 forks source link

Maximum call stack size exceeded #24

Closed csuttichujit closed 5 years ago

csuttichujit commented 5 years ago

Expected Behavior

Should refresh the Roomba status automatically with good respond time as per autoRefreshEnabled command.

Current Behavior

When "autoRefreshEnabled" : true, the Homebridge crashed. Also, after restart Homebridge with both settings "false", the Home app said "updating" for every Homebridge accessory for a very long time and then went "not responded". **Tried remove the plugin or tried with other Roomba plugin, everything was fine.

Steps to Reproduce (for bugs)

Just enable the option, reset Homebridge, then open Home app.

Versions

Configuration

            {
                "accessory" : "Roomba",
                "name" : "Del Spooner",
                "model" : "980",
                "blid" : "...",
                "robotpwd" : "...",
                "ipaddress" : "192.168.1.7",
                "autoRefreshEnabled" : true,
                "keepAliveEnabled" : false,
                "cacheTTL" : 30,
                "pollingInterval" : 20
            }

Homebridge Log / Command Output

/usr/local/lib/node_modules/homebridge-roomba-stv/node_modules/node-cache/lib/node_cache.js:84                                                                                                                                                                                                   
    NodeCache.prototype.get = function(key, cb, errorOnMissing) {                                                                                                                                                                                                                                
                                      ^                                                                                                                                                                                                                                                          

RangeError: Maximum call stack size exceeded                                                                                                                                                                                                                                                     
    at NodeCache.module.exports.NodeCache.get (/usr/local/lib/node_modules/homebridge-roomba-stv/node_modules/node-cache/lib/node_cache.js:84:39)                                                                                                                                                
    at NodeCache.get (/usr/local/lib/node_modules/homebridge-roomba-stv/node_modules/node-cache/lib/node_cache.js:12:59)                                                                                                                                                                         
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:205:33)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)                                                                                                                                                                                             
    at roombaAccessory.getStatus (/usr/local/lib/node_modules/homebridge-roomba-stv/index.js:208:22)            
esteban-mallen commented 5 years ago

Please check if fixed in latest vesion (just released). Thanks for reporting this!