Inputstream.adaptive crash after October update

@sam_nazarko

I’m trying to troubleshoot this issue, but it doesn’t make sense for me… I hope you can help me out…

So, my goal is to use the latest inputstream.adaptive from the master branch, since the Leia branch isn’t up to date. Since this is something tricky (and it might be incompatible) and I want to rule out any issues, so I first start by compiling the inputstream.adaptive from the Leia branch, what should be the same you use to build for osmc.

  1. Compile an inputstream.adaptive from the Leia branch.
git clone -b Leia https://github.com/xbmc/xbmc.git
git clone -b Leia https://github.com/peak3d/inputstream.adaptive
cd inputstream.adaptive && mkdir -p build && cd build
cmake -DADDONS_TO_BUILD=inputstream.adaptive -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
make
  1. I copied the binary files from ~/xbmc/addons/inputstream.adaptive to /usr/lib/kodi/addons/inputstream.adaptive/.
cd ../../xbmc/addons/inputstream.adaptive/
cp -d *.so* /usr/lib/kodi/addons/inputstream.adaptive/
cp -r addon.xml changelog.txt resources /usr/share/kodi/addons/inputstream.adaptive/
  1. I try to play something from my VTM GO addon. This works (it uses widevine).
  2. I try to play something from the Netflix addon. This crashes kodi.

The log from kodi doesn’t indicate anything special. I have my logs uploaded to https://paste.osmc.tv/oqavenajor

I don’t understand why Kodi crashes when I play something from netflix, since this should be the same code as you use to build the addon.

Things I tried:

  • I’ve installed vero3-mediacenter-debug-osmc, started the debug binary from kodi like MALLOC_MMAP_THRESHOLD_=8192 LIRC_SOCKET_PATH=/var/run/lirc/lircd /usr/lib/kodi/kodi.bin.distributed --standalone -fs
  • This created a coredump (860 MB) with this stacktrace:
Core was generated by `/usr/lib/kodi/kodi.bin.distributed --standalone -fs'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0xc14c01ca in CInputStreamAdaptive::DemuxRead() () from /usr/lib/kodi/addons/inputstream.adaptive/inputstream.adaptive.so.2.4.2
[Current thread is 1 (Thread 0xc0b112e0 (LWP 17351))]
(gdb) bt
#0  0xc14c01ca in CInputStreamAdaptive::DemuxRead() () from /usr/lib/kodi/addons/inputstream.adaptive/inputstream.adaptive.so.2.4.2
#1  0xab385714 in CDVDDemuxClient::Read() ()
#2  0xab3c26a6 in CVideoPlayer::ReadPacket(DemuxPacket*&, CDemuxStream*&) ()
#3  0xab3c8304 in CVideoPlayer::Process() ()
#4  0xab557c64 in CThread::Action() ()
#5  0xab558eca in CThread::staticThread(void*) ()
#6  0xf72b95d8 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#7  0xf5c686fa in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Now I’m stuck. I don’t know why my compiled inputstream.adaptive crashes when I play something from Netflix, but the one from the debian package works fine.