diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/NSClientInternal/NSClientInternalPlugin.java b/app/src/main/java/info/nightscout/androidaps/plugins/NSClientInternal/NSClientInternalPlugin.java index 162c33381f..b7434db6a8 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/NSClientInternal/NSClientInternalPlugin.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/NSClientInternal/NSClientInternalPlugin.java @@ -48,7 +48,7 @@ public class NSClientInternalPlugin implements PluginBase { static public Handler handler; - private static List listLog = new ArrayList<>(); + private final static List listLog = new ArrayList<>(); static Spanned textLog = Html.fromHtml(""); public boolean paused = false; @@ -177,7 +177,9 @@ public class NSClientInternalPlugin implements PluginBase { handler.post(new Runnable() { @Override public void run() { - listLog = new ArrayList<>(); + synchronized (listLog) { + listLog.clear(); + } MainApp.bus().post(new EventNSClientUpdateGUI()); } }); @@ -187,10 +189,12 @@ public class NSClientInternalPlugin implements PluginBase { handler.post(new Runnable() { @Override public void run() { - listLog.add(ev); - // remove the first line if log is too large - if (listLog.size() >= Constants.MAX_LOG_LINES) { - listLog.remove(0); + synchronized (listLog) { + listLog.add(ev); + // remove the first line if log is too large + if (listLog.size() >= Constants.MAX_LOG_LINES) { + listLog.remove(0); + } } MainApp.bus().post(new EventNSClientUpdateGUI()); } @@ -200,9 +204,10 @@ public class NSClientInternalPlugin implements PluginBase { static synchronized void updateLog() { try { StringBuilder newTextLog = new StringBuilder(); - List temporaryList = new ArrayList<>(listLog); - for (EventNSClientNewLog log : temporaryList) { - newTextLog.append(log.toPreparedHtml()); + synchronized (listLog) { + for (EventNSClientNewLog log : listLog) { + newTextLog.append(log.toPreparedHtml()); + } } textLog = Html.fromHtml(newTextLog.toString()); } catch (OutOfMemoryError e) { diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml index d0b484e0fb..4480d8c627 100644 --- a/app/src/main/res/values-bg/strings.xml +++ b/app/src/main/res/values-bg/strings.xml @@ -448,7 +448,7 @@ Парола за настройки Отключи настройките Близо до максмалния дневен инсулин - вътрешен NSClient + NSClient NSCI URL: Автопревъртане diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 4ce126527c..da46f60698 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -442,7 +442,7 @@ neúspěšně - zkontrolujte mobil Nedostupný NSClient nedostal oprávnění k zápisu. Špatné API secret? - NSClient interní + NSClient Posouvat Vložte API secret (min 12. znaků) NSCl diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index f1e03c7251..8f0c0162ca 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -261,7 +261,7 @@ только абсолютные величины для базала только передача в NS (синхронизация отсутствует) только передача в NS. работает в SGV только если выбран местный источник вроде xdrip. не работает в профилях при действующем профиле NS - внутренний клиент NS + клиент NS автоскроллинг введите API secret для NS (мин 12 знаков) API secret для NS