@@ -81,6 +81,37 @@ public DebugImagesLoader(
8181 return debugImages ;
8282 }
8383
84+ /**
85+ * Loads debug images for the given set of addresses.
86+ * @param addresses Set of memory addresses to find debug images for
87+ * @return Set of debug images, or null if debug images couldn't be loaded
88+ */
89+ public @ Nullable Set <DebugImage > loadDebugImagesForAddresses (@ NotNull Set <Long > addresses ) {
90+ List <DebugImage > allDebugImages = loadDebugImages ();
91+ if (allDebugImages == null ) {
92+ return null ;
93+ }
94+
95+ Set <DebugImage > relevantImages = new LinkedHashSet <>();
96+ for (Long address : addresses ) {
97+ DebugImage image = findImageByAddress (address , allDebugImages );
98+ if (image != null ) {
99+ relevantImages .add (image );
100+ }
101+ }
102+
103+ if (relevantImages .isEmpty ()) {
104+ options .getLogger ().log (
105+ SentryLevel .WARNING ,
106+ "No debug images found for any of the %d addresses." ,
107+ addresses .size ()
108+ );
109+ return null ;
110+ }
111+
112+ return relevantImages ;
113+ }
114+
84115 /**
85116 * Finds a debug image containing the given address using binary search.
86117 * Requires the images to be sorted.
@@ -114,38 +145,6 @@ public DebugImagesLoader(
114145 return null ;
115146 }
116147
117- /**
118- * Loads debug images for the given set of addresses.
119- * @param addresses Set of memory addresses to find debug images for
120- * @return Set of debug images, or null if debug images couldn't be loaded
121- */
122- public @ Nullable Set <DebugImage > loadDebugImagesForAddresses (@ NotNull Set <Long > addresses ) {
123- List <DebugImage > allDebugImages = loadDebugImages ();
124- if (allDebugImages == null ) {
125- return null ;
126- }
127-
128- Set <DebugImage > relevantImages = new LinkedHashSet <>();
129- for (Long addr : addresses ) {
130- DebugImage image = findImageByAddress (addr , allDebugImages );
131- if (image != null ) {
132- relevantImages .add (image );
133- }
134- }
135-
136- // Return null if no images were found
137- if (relevantImages .isEmpty ()) {
138- options .getLogger ().log (
139- SentryLevel .WARNING ,
140- "No debug images found for any of the %d addresses." ,
141- addresses .size ()
142- );
143- return null ;
144- }
145-
146- return relevantImages ;
147- }
148-
149148 /**
150149 * Clears the caching of debug images on sentry-native and here.
151150 */
0 commit comments