A crash that has been in every release, found by accident. If you are on webOS, update.
The app was dying under heavy concurrent HTTPS
While testing something unrelated I removed the catalog cache from an OLED65C9 to see the cold-start screen. The app died within seconds. The TV's own crash report:
sk_is_sorted <- lh_delete <- RAND_poll <- ERR_remove_thread_state
<- libcurl (curl_easy_cleanup) <- rede_baixar_interno2
SIGSEGV, SEGV_MAPERR
OpenSSL 1.0 is not thread-safe on its own: an application using it from several threads has to install a locking callback and a thread-id callback, and libcurl's documentation says so plainly. This app never installed them, and it uses curl from a dozen threads. ERR_remove_thread_state walks a global hash table to clear the thread's error state, and libcurl calls it on every curl_easy_cleanup — several threads closing handles at once corrupt that table.
Why it stayed hidden for so long: with a warm catalog cache the start-up makes few connections. It took a cold start — every catalog, Trakt, the collections and the artwork all at once — for it to show up in seconds. Anyone whose cache was cold or invalidated has been exposed to this.
Same TV, same scenario, before and after: before, zero processes alive and one crash report; after, [rede] OpenSSL 1.0 travado para 41 regioes, the process up, no crash report, catalog published at 19.6 s, 60.0 fps, zero janks.
The absence of CRYPTO_num_locks is not an error: from OpenSSL 1.1 onward the library locks itself and the symbol does not exist. The setup stays silent in that case, and on macOS where curl uses a different TLS stack.
Installing
LG webOS 4.x — space.nuvio.native.legacy_1.0.14_arm.ipk. Samsung Tizen 5.5+ — NuvioTV-1.0.14-tizen.wgt, unsigned; sign it with your own TV's DUID (steps in the v1.0.7 notes).
Tizen does not use curl at all — its network layer is the browser's — so this particular crash never affected it. Everything else from v1.0.13 is included.
Verification
Run on an OLED65C9, with the crash reproduced first and then shown gone under the identical scenario.
Unofficial, and not affiliated with NuvioMedia.