File tree Expand file tree Collapse file tree 1 file changed +18
-5
lines changed
src/Xamarin.Android.Tools.Bytecode Expand file tree Collapse file tree 1 file changed +18
-5
lines changed Original file line number Diff line number Diff line change @@ -66,12 +66,9 @@ public void Load (Stream jarStream, bool leaveOpen = false)
66
66
67
67
using ( var jar = CreateZipArchive ( jarStream , leaveOpen ) ) {
68
68
foreach ( var entry in jar . Entries ) {
69
- if ( entry . Length == 0 )
69
+ if ( ! ShouldLoadEntry ( entry ) )
70
70
continue ;
71
- using ( var s = entry . Open ( ) ) {
72
- if ( ! ClassFile . IsClassFile ( s ) || entry . Name . EndsWith ( ".jnilib" , StringComparison . OrdinalIgnoreCase ) )
73
- continue ;
74
- }
71
+
75
72
using ( var entry_stream = entry . Open ( ) )
76
73
using ( var s = new BufferedStream ( entry_stream ) ) {
77
74
try {
@@ -86,6 +83,22 @@ public void Load (Stream jarStream, bool leaveOpen = false)
86
83
}
87
84
}
88
85
86
+ static bool ShouldLoadEntry ( ZipArchiveEntry entry )
87
+ {
88
+ if ( entry . Length == 0 )
89
+ return false ;
90
+
91
+ if ( entry . Name == "module-info.class" )
92
+ return false ;
93
+
94
+ if ( entry . Name . EndsWith ( ".jnilib" , StringComparison . OrdinalIgnoreCase ) )
95
+ return false ;
96
+
97
+ using var s = entry . Open ( ) ;
98
+
99
+ return ClassFile . IsClassFile ( s ) ;
100
+ }
101
+
89
102
static ZipArchive CreateZipArchive ( Stream jarStream , bool leaveOpen )
90
103
{
91
104
var encoding = new UTF8Encoding ( encoderShouldEmitUTF8Identifier : false ) ;
You can’t perform that action at this time.
0 commit comments