szabbenjamin/digionline

TypeError: Cannot read property 'split' of undefined (digionline.ts:226)

Closed this issue · 4 comments

Űgy tűnik a hibakezelést javítani kéne ezen a részen:

/home/osmc/digionline/lib/digionline.js:194
                .split('.m3u8');
                ^

A teljes log itt van. Gondolom ritkán, de előfordulhat hogy üres response érkezik, vagy valami ilyesmi.

Javítva: 1acab66

A hiba továbbra is fennáll:

/home/osmc/digionline/lib/digionline.js:165
                .split('.m3u8');
                ^

TypeError: Cannot read property 'split' of undefined
    at loadChannel (/home/osmc/digionline/lib/digionline.js:165:17)
    at /home/osmc/digionline/lib/digionline.js:192:17
    at Request._callback (/home/osmc/digionline/lib/common.js:16:17)
    at Request.self.callback (/home/osmc/digionline/node_modules/request/request.js:185:22)
    at emitTwo (events.js:126:13)
    at Request.emit (events.js:214:7)
    at Request.<anonymous> (/home/osmc/digionline/node_modules/request/request.js:1161:10)
    at emitOne (events.js:116:13)
    at Request.emit (events.js:211:7)
    at IncomingMessage.<anonymous> (/home/osmc/digionline/node_modules/request/request.js:1083:12)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! digionline@2.0.1 start: `node main.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the digionline@2.0.1 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-05-07T08_36_40_257Z-debug.log

Az új hibakezelés üres response-al továbbra is meghívná a callback-et ami így továbbra is ugyanúgy hasalna el:

201             let r = response.split('https://online.digi.hu/api/streams/playlist/')[1]
202                 .split('.m3u8');

Viszont az új Common@request logot nem is láttam, úgyhogy valószínűleg maga a request "sikeres" volt , de a response-ban nem szerepel a szöveg amire számítunk. Ez a split és utána ellenőrzés nélkül a tömb második elemét használjuk általában rossz ötlet. Szerintem itt is.

@szabbenjamin, nyissak egy új ticket-et vagy újranyitod ezt?