Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

_parseTimer in TsDemuxer.as will never been called #470

Closed
aidaima opened this issue Dec 28, 2015 · 12 comments
Closed

_parseTimer in TsDemuxer.as will never been called #470

aidaima opened this issue Dec 28, 2015 · 12 comments

Comments

@aidaima
Copy link

aidaima commented Dec 28, 2015

if network speed is limited below 10KB/S, it will works ok for a few minutes, but then it will never enter into _parseTimer function even though after TsDemuxer.append function has been called. based on v0.4.4.16.

there is code that add some log below:

/** append new TS data */
public function append(data : ByteArray) : void {
// if (_dataComplete) {
// CONFIG::LOGGING {
// Log.warn("TSDemuxer.append.data.length: " + data.length);
// }
// }
if (_dataVector == null) {
_dataVector = new Vector.();
_dataComplete = false;
_readPosition = 0;
_totalBytes = 0;
_dataOffset = 0;
_timer.addEventListener(TimerEvent.TIMER, _parseTimer);
}

_dataVector.push(data);
_totalBytes += data.length;
_timer.start();

if (_dataComplete) {
    CONFIG::LOGGING {
        Log.warn("TSDemuxer.append.data.length: " + data.length);
    }
}

}

/** cancel demux operation */
public function cancel() : void {
CONFIG::LOGGING {
Log.warn("TS: cancel demux");
}
_dataVector = null;
_curAudioPES = null;
_curVideoPES = null;
_curId3PES = null;
_curVideoTag = null;
_curNalUnit = null;
_adtsFrameOverflow = null;
_avcc = null;
_tags = new Vector.();
stopTimer();
}

/** Parse a limited amount of packets each time to avoid blocking /
private function _parseTimer(e : Event) : void {
var start_time : int = getTimer();
/
Byte data to be read **/
var data : ByteArray = getNextTSBuffer(_readPosition);
// dont spend more than 10ms demuxing TS packets to avoid loosing frames
// if frame rate is 60fps, we have 1000/60 = 16.6ms budget total per frame
while(data != null && ((getTimer() - start_time) < 10)) {
_parseTSPacket(data);
_readPosition+=PACKETSIZE;
if(data.bytesAvailable < PACKETSIZE) {
data = getNextTSBuffer(_readPosition);
}
}
if (_tags.length) {
_callback_progress(_tags);
_tags = new Vector.();
}

// check if we have finished with reading this TS fragment
if (_dataComplete && _readPosition == _totalBytes) {
    CONFIG::LOGGING {
        Log.warn("_parseTimer._dataComplete-1");
    }
    // free ByteArray
    _dataVector = null;
    // first check if TS parsing was successful
    CONFIG::LOGGING {
        if (_pmtParsed == false) {
            Log.error("TS: no PMT found, report parsing complete");
        }
    }
    stopTimer();
    _flush();
    _callback_complete();
} else {
    if (_dataComplete) {
        CONFIG::LOGGING {
            Log.warn("_parseTimer._dataComplete-2._dataComplete: " + _dataComplete);
        }
    }
}

}

and there are some logs in firefox below:

GET
http://zhibo.ssports.com/otv/channel01/400/20151228/290253190.ts [HTTP/1.1 200 OK 28537ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 1090ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 781ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 777ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 785ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 788ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 770ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2028 FlashlsDemo.html
WARN:_fragLoadCompleteHandler._fragLoadStatus: 200 FlashlsDemo.html
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 2 FlashlsDemo.html
WARN:_parseTimer._dataComplete-1 FlashlsDemo.html
WARN:TS: flushing demux FlashlsDemo.html
WARN:_fragParsingCompleteHandler FlashlsDemo.html
INFO:updatePTS : seqnum/min/max:1371170/-25570483/-25565490 FlashlsDemo.html
ERROR:updateFragment:seqnum 1371170 not found! FlashlsDemo.html
WARN:loadnextfragment() FlashlsDemo.html
WARN:loading stalled:stop fragment loading FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loading stalled: restart playback FlashlsDemo.html
INFO:HLSNetStream:seek(-1) FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loadfirstfragment(20) FlashlsDemo.html
WARN:_loadfragment(Fragment (seqnum: 1371176, start_time:20, duration:5)) FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400/20151228/290253196.ts [HTTP/1.1 200 OK 33185ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 1136ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 884ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 881ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 891ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 891ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 890ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 892ms]
WARN:TSDemuxer.append.data.length: 420 FlashlsDemo.html
WARN:_fragLoadCompleteHandler._fragLoadStatus: 200 FlashlsDemo.html
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 2 FlashlsDemo.html
WARN:_parseTimer._dataComplete-1 FlashlsDemo.html
WARN:TS: flushing demux FlashlsDemo.html
WARN:_fragParsingCompleteHandler FlashlsDemo.html
INFO:updatePTS : seqnum/min/max:1371176/-25540489/-25535497 FlashlsDemo.html
ERROR:updateFragment:seqnum 1371176 not found! FlashlsDemo.html
WARN:loadnextfragment() FlashlsDemo.html
WARN:loading stalled:stop fragment loading FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loading stalled: restart playback FlashlsDemo.html
INFO:HLSNetStream:seek(-1) FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loadfirstfragment(20) FlashlsDemo.html
WARN:_loadfragment(Fragment (seqnum: 1371183, start_time:20, duration:5)) FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400/20151228/290253203.ts [HTTP/1.1 200 OK 30188ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 1202ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 893ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 890ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 892ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 903ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1496 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 902ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 672 FlashlsDemo.html
WARN:_fragLoadCompleteHandler._fragLoadStatus: 200 FlashlsDemo.html
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 2 FlashlsDemo.html
WARN:_parseTimer._dataComplete-1 FlashlsDemo.html
WARN:TS: flushing demux FlashlsDemo.html
WARN:_fragParsingCompleteHandler FlashlsDemo.html
INFO:updatePTS : seqnum/min/max:1371183/-25505481/-25500488 FlashlsDemo.html
ERROR:updateFragment:seqnum 1371183 not found! FlashlsDemo.html
WARN:loadnextfragment() FlashlsDemo.html
WARN:loading stalled:stop fragment loading FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loading stalled: restart playback FlashlsDemo.html
INFO:HLSNetStream:seek(-1) FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loadfirstfragment(20) FlashlsDemo.html
WARN:_loadfragment(Fragment (seqnum: 1371189, start_time:20, duration:5)) FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400/20151228/290253209.ts [HTTP/1.1 200 OK 28749ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 893ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 904ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 5120 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 910ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 892ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1528 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 880ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 902ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1232 FlashlsDemo.html
WARN:_fragLoadCompleteHandler._fragLoadStatus: 200 FlashlsDemo.html
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 2 FlashlsDemo.html
WARN:_parseTimer._dataComplete-1 FlashlsDemo.html
WARN:TS: flushing demux FlashlsDemo.html
WARN:_fragParsingCompleteHandler FlashlsDemo.html
INFO:updatePTS : seqnum/min/max:1371189/-25475486/-25470494 FlashlsDemo.html
ERROR:updateFragment:seqnum 1371189 not found! FlashlsDemo.html
WARN:loadnextfragment() FlashlsDemo.html
WARN:loading stalled:stop fragment loading FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loading stalled: restart playback FlashlsDemo.html
INFO:HLSNetStream:seek(-1) FlashlsDemo.html
WARN:FragmentLoader.stop FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:loadfirstfragment(20) FlashlsDemo.html
WARN:_loadfragment(Fragment (seqnum: 1371195, start_time:20, duration:5)) FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400/20151228/290253215.ts [HTTP/1.1 200 OK 6466ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 916ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 904ms]
WARN:_fragParsingErrorHandler FlashlsDemo.html
WARN:FragmentLoader._stop_load FlashlsDemo.html
WARN:TS: cancel demux FlashlsDemo.html
WARN:Parsing Error :TS: invalid NALu type found, corrupted fragment ? FlashlsDemo.html
WARN:error parsing fragment, skip it and load next one FlashlsDemo.html
WARN:loadnextfragment() FlashlsDemo.html
WARN:_loadfragment(Fragment (seqnum: 1371196, start_time:25, duration:5)) FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400/20151228/290253216.ts [HTTP/1.1 200 OK 18615ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 902ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 903ms]
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 895ms]
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 4096 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1528 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 2048 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 732 FlashlsDemo.html
WARN:_fragLoadCompleteHandler._fragLoadStatus: 200 FlashlsDemo.html
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 77 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 1221ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 895ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 894ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 891ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 899ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 890ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 890ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 914ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 901ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 891ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 1901ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 889ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 910ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 890ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 893ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 901ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 901ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 898ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 892ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 888ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 913ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 903ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 897ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 909ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 904ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 911ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 901ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 898ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 888ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 893ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 908ms]
GET

@aidaima
Copy link
Author

aidaima commented Dec 28, 2015

the log of normal working flow shoud be ::
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 2 FlashlsDemo.html
WARN:_parseTimer._dataComplete-1 FlashlsDemo.html
WARN:TS: flushing demux FlashlsDemo.html
WARN:_fragParsingCompleteHandler FlashlsDemo.html

but at the last time, we can see the log is blow:
WARN:TSDemuxer.append.data.length: 1024 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 3072 FlashlsDemo.html
WARN:TSDemuxer.append.data.length: 732 FlashlsDemo.html
WARN:_fragLoadCompleteHandler._fragLoadStatus: 200 FlashlsDemo.html
WARN:TSDemuxer.notifycomplete FlashlsDemo.html
WARN:notifycomplete._dataVector.length: 77 FlashlsDemo.html
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 1221ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 895ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 894ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 900ms]
GET
http://zhibo.ssports.com/otv/channel01/400.m3u8 [HTTP/1.1 200 OK 891ms]

@aidaima
Copy link
Author

aidaima commented Jan 7, 2016

i found the reason is that there will be some exception in tsdemuxer

@mangui
Copy link
Owner

mangui commented Jan 7, 2016

that's interesting, have you been able to spot where the exception happens ?

@mangui mangui added the bug label Jan 7, 2016
@aidaima
Copy link
Author

aidaima commented Jan 7, 2016

The exceptions below will be happend when i limit network speed below 10k/s.

https://github.com/mangui/flashls/blob/dev/src/org/mangui/hls/demux/TSDemuxer.as#L185, _dataVector perhaps null.

https://github.com/mangui/flashls/blob/dev/src/org/mangui/hls/demux/TSDemuxer.as#L522, there will be #2030 error

@aidaima
Copy link
Author

aidaima commented Jan 7, 2016

other problem is that m3u8 urlloader will be pending sometimes and never finish, so i add timeout checking to resolve this problem.

@aidaima
Copy link
Author

aidaima commented Jan 7, 2016

the network situation in china is not as good as your country, you know :-)

@mangui
Copy link
Owner

mangui commented Jan 7, 2016

我知道,我住3年的北京

@aidaima
Copy link
Author

aidaima commented Jan 7, 2016

👍

@mangui
Copy link
Owner

mangui commented Jan 7, 2016

@aidaima
Copy link
Author

aidaima commented Jan 7, 2016

yes, i have seen

@mangui
Copy link
Owner

mangui commented Jan 7, 2016

ok I will protect against exception there then

mangui added a commit that referenced this issue Jan 7, 2016
mangui added a commit that referenced this issue Jan 7, 2016
related to #470
@mangui
Copy link
Owner

mangui commented Jan 7, 2016

@aidaima let me know how it behaves now with latest flashls/dev

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants