From 7cbd6303c3b78c46cbe41cf8422680e516d70a0a Mon Sep 17 00:00:00 2001 From: Vinicius Moreira Date: Sat, 11 Jan 2020 16:14:30 -0300 Subject: [PATCH] [fix][core] random internet available key error --- CHANGELOG.md | 1 + bauh/view/core/controller.py | 13 +++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a375d40..c7dc1ec1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - UI: - not verifying if an icon path is a file - minor fixes +- minor bug fixes ### UI - Default **Type** icon removed from the Type filter to make the design more consistent with the Category filter. diff --git a/bauh/view/core/controller.py b/bauh/view/core/controller.py index 5f28f914..9f2f4075 100755 --- a/bauh/view/core/controller.py +++ b/bauh/view/core/controller.py @@ -157,6 +157,7 @@ class GenericSoftwareManager(SoftwareManager): disk_loader = None + internet_available = None if not pkg_types: # any type for man in self.managers: if self._can_work(man): @@ -164,11 +165,12 @@ class GenericSoftwareManager(SoftwareManager): disk_loader = self.disk_loader_factory.new() disk_loader.start() - if thread_internet_check.isAlive(): + if internet_available is None: thread_internet_check.join() + internet_available = net_check.get('available', True) mti = time.time() - man_res = man.read_installed(disk_loader=disk_loader, pkg_types=None, internet_available=net_check['available']) + man_res = man.read_installed(disk_loader=disk_loader, pkg_types=None, internet_available=internet_available) mtf = time.time() self.logger.info(man.__class__.__name__ + " took {0:.2f} seconds".format(mtf - mti)) @@ -185,9 +187,12 @@ class GenericSoftwareManager(SoftwareManager): disk_loader = self.disk_loader_factory.new() disk_loader.start() - thread_internet_check.join() + if internet_available is None: + thread_internet_check.join() + internet_available = net_check.get('available', True) + mti = time.time() - man_res = man.read_installed(disk_loader=disk_loader, pkg_types=None, internet_available=net_check['available']) + man_res = man.read_installed(disk_loader=disk_loader, pkg_types=None, internet_available=internet_available) mtf = time.time() self.logger.info(man.__class__.__name__ + " took {0:.2f} seconds".format(mtf - mti))