From 951f91ec1da9bd2d0e0a6b97e49aeaec44867a37 Mon Sep 17 00:00:00 2001 From: FlatTV Date: Sat, 4 Jun 2016 17:34:33 +0200 Subject: [PATCH] fix display of info window Origin commit data ------------------ Commit: https://github.com/neutrino-images/ni-neutrino/commit/1655ecc07985019e0fdcd8087575b91592c80aaf Author: FlatTV Date: 2016-06-04 (Sat, 04 Jun 2016) --- src/gui/infoviewer_bb.cpp | 27 ++++++++++++++++++++------- src/gui/infoviewer_bb.h | 1 + 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/gui/infoviewer_bb.cpp b/src/gui/infoviewer_bb.cpp index 071152147..55d47b051 100644 --- a/src/gui/infoviewer_bb.cpp +++ b/src/gui/infoviewer_bb.cpp @@ -814,8 +814,14 @@ void CInfoViewerBB::paint_ca_icons(int caid, const char *icon, int &icon_space_o void CInfoViewerBB::showIcon_CA_Status(int notfirst) { - if (g_settings.infobar_casystem_display == 3) + //NI + int acaid = 0; + if (g_settings.show_ecm) + acaid = check_ecmInfo(); + + if (g_settings.infobar_casystem_display == 3){ return; + } if(NeutrinoMessages::mode_ts == CNeutrinoApp::getInstance()->getMode() && !CMoviePlayerGui::getInstance().timeshift){ if (g_settings.infobar_casystem_display == 2) { fta = true; @@ -866,14 +872,11 @@ void CInfoViewerBB::showIcon_CA_Status(int notfirst) } #endif //NI - check ecm.info - int acaid = 0; - if (File_copy("/tmp/ecm.info", "/tmp/ecm.info.tmp")) { - g_InfoViewer->md5_ecmInfo = filehash((char *)"/tmp/ecm.info.tmp"); - acaid = parse_ecmInfo("/tmp/ecm.info.tmp"); - } - else + acaid = check_ecmInfo(); + if(acaid == 0){ if(camCI) decode = CARD; + } //NI - map betacrypt to nagra if((acaid & 0xFF00)== 0x1700 && (caids[3]& 0xFF00) == 0x1800) @@ -1078,6 +1081,16 @@ void CInfoViewerBB::paint_cam_icons() } //NI ecm-Info +int CInfoViewerBB::check_ecmInfo() +{ + int caid = 0; + if (File_copy("/tmp/ecm.info", "/tmp/ecm.info.tmp")) { + g_InfoViewer->md5_ecmInfo = filehash((char *)"/tmp/ecm.info.tmp"); + caid = parse_ecmInfo("/tmp/ecm.info.tmp"); + } + return caid; +} + int CInfoViewerBB::parse_ecmInfo(const char * file) { int acaid = 0; diff --git a/src/gui/infoviewer_bb.h b/src/gui/infoviewer_bb.h index e18b098c3..c65d8226e 100644 --- a/src/gui/infoviewer_bb.h +++ b/src/gui/infoviewer_bb.h @@ -92,6 +92,7 @@ class CInfoViewerBB unsigned short int decode; int DecEndx; int parse_ecmInfo(const char * file); + int check_ecmInfo(); bool camCI; typedef struct