From 855a7ce36c8c03c6b8893f525eea22830f31cc73 Mon Sep 17 00:00:00 2001 From: Omar Orozco Date: Tue, 24 Mar 2026 17:21:01 -0600 Subject: [PATCH 1/3] NIT: Extending catch clause to prevent build breaking. --- .../buildtools/buildids/BuildIdInfoCollector.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java b/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java index a25390af1cb..2322274afd5 100644 --- a/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java +++ b/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java @@ -47,7 +47,10 @@ private Optional getBuildIdInfo(File file) { BuildIdInfoContentHandler contentHandler = new BuildIdInfoContentHandler(file.getName()); try { ElfDataParser.parse(file, contentHandler, false); - } catch (IOException | NegativeArraySizeException | ArithmeticException ex) { + } catch (IOException + | NegativeArraySizeException + | ArithmeticException + | IllegalArgumentException ex) { // TODO(b/289053263): Make build tools support Go binaries smoother. // Ignore any file that doesn't parse, or has unexpected opcodeBase, to avoid breaking builds. getLogger().logD("Unable to parse binary: " + file.getPath() + " - " + ex.getMessage()); From 5c7c2f39ee255e30e44f4e90468e510b9b166837 Mon Sep 17 00:00:00 2001 From: Omar Orozco Date: Wed, 25 Mar 2026 10:43:16 -0600 Subject: [PATCH 2/3] NIT: Avoiding chained exceptions. --- .../buildtools/buildids/BuildIdInfoCollector.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java b/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java index 2322274afd5..4b647ec4df7 100644 --- a/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java +++ b/firebase-crashlytics-buildtools/src/main/java/com/google/firebase/crashlytics/buildtools/buildids/BuildIdInfoCollector.java @@ -27,7 +27,6 @@ import com.google.firebase.crashlytics.buildtools.ndk.internal.elf.ElfSymbol; import com.google.firebase.crashlytics.buildtools.utils.FileUtils; import java.io.File; -import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Optional; @@ -47,10 +46,7 @@ private Optional getBuildIdInfo(File file) { BuildIdInfoContentHandler contentHandler = new BuildIdInfoContentHandler(file.getName()); try { ElfDataParser.parse(file, contentHandler, false); - } catch (IOException - | NegativeArraySizeException - | ArithmeticException - | IllegalArgumentException ex) { + } catch (Exception ex) { // TODO(b/289053263): Make build tools support Go binaries smoother. // Ignore any file that doesn't parse, or has unexpected opcodeBase, to avoid breaking builds. getLogger().logD("Unable to parse binary: " + file.getPath() + " - " + ex.getMessage()); From 359370bd7fa82faecd7ae2465866174079badef5 Mon Sep 17 00:00:00 2001 From: Omar Orozco Date: Wed, 25 Mar 2026 10:54:17 -0600 Subject: [PATCH 3/3] Changelog update. --- firebase-crashlytics-gradle/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/firebase-crashlytics-gradle/CHANGELOG.md b/firebase-crashlytics-gradle/CHANGELOG.md index 24e1ca98b2e..788d38a1e0c 100644 --- a/firebase-crashlytics-gradle/CHANGELOG.md +++ b/firebase-crashlytics-gradle/CHANGELOG.md @@ -1,6 +1,7 @@ ### Unreleased - [changed] Improved efficiency when extracting breakpad binary files. +- [fixed] Avoid build breaks when handling unsupported native libraries for injectCrashlyticsBuildIds task [#7780] ### Crashlytics Gradle plugin version 3.0.6