From b5a15a795e6d6cc3cbe1786d938e3b165f9fbbf4 Mon Sep 17 00:00:00 2001 From: Aaron Veil <70171475+anddea@users.noreply.github.com> Date: Wed, 6 Nov 2024 13:24:15 +0300 Subject: [PATCH] chore(YouTube - InclusiveSpan): Check in advance whether debug log is enabled to prevent unnecessary toString invokes --- .../patches/spans/InclusiveSpanPatch.java | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/app/revanced/integrations/shared/patches/spans/InclusiveSpanPatch.java b/app/src/main/java/app/revanced/integrations/shared/patches/spans/InclusiveSpanPatch.java index 90f3db2ac3..807996786d 100644 --- a/app/src/main/java/app/revanced/integrations/shared/patches/spans/InclusiveSpanPatch.java +++ b/app/src/main/java/app/revanced/integrations/shared/patches/spans/InclusiveSpanPatch.java @@ -13,6 +13,8 @@ import java.util.List; +import app.revanced.integrations.shared.settings.BaseSettings; +import app.revanced.integrations.shared.settings.BooleanSetting; import app.revanced.integrations.shared.utils.Logger; import app.revanced.integrations.shared.utils.StringTrieSearch; @@ -24,6 +26,8 @@ final class DummyFilter extends Filter { } @SuppressWarnings("unused") public final class InclusiveSpanPatch { + private static final BooleanSetting ENABLE_DEBUG_LOGGING = BaseSettings.ENABLE_DEBUG_LOGGING; + /** * Simple wrapper to pass the litho parameters through the prefix search. */ @@ -121,9 +125,11 @@ private static String getSpanType(SpanType spanType, Object span) { filterUsingCallbacks(filter, filter.callbacks); } - Logger.printDebug(() -> "Using: " - + searchTree.numberOfPatterns() + " conversion context filters" - + " (" + searchTree.getEstimatedMemorySize() + " KB)"); + if (ENABLE_DEBUG_LOGGING.get()) { + Logger.printDebug(() -> "Using: " + + searchTree.numberOfPatterns() + " conversion context filters" + + " (" + searchTree.getEstimatedMemorySize() + " KB)"); + } } private static void filterUsingCallbacks(Filter filter, List groups) { @@ -163,7 +169,10 @@ private static boolean returnEarly(SpannableString spannableString, Object span, LithoFilterParameters parameter = new LithoFilterParameters(conversionContext, spannableString, span, start, end, flags); - Logger.printDebug(() -> "Searching...\n\u200B\n" + parameter); + + if (ENABLE_DEBUG_LOGGING.get()) { + Logger.printDebug(() -> "Searching...\n\u200B\n" + parameter); + } return searchTree.matches(parameter.conversionContext, parameter); } catch (Exception ex) {