| | | |
Offset 3, 52 lines modified | Offset 3, 39 lines modified |
| |
3 | import·java.util.function.Function; | 3 | import·java.util.function.Function; |
4 | import·java.lang.reflect.Field; | 4 | import·java.lang.reflect.Field; |
5 | import·java.lang.annotation.Annotation; | 5 | import·java.lang.annotation.Annotation; |
6 | import·java.util.Objects; | 6 | import·java.util.Objects; |
7 | import·com.android.providers.media.util.Logging; | 7 | import·com.android.providers.media.util.Logging; |
8 | import·java.util.regex.Matcher; | 8 | import·java.util.regex.Matcher; |
| 9 | import·java.io.IOException; |
9 | import·android.system.ErrnoException; | 10 | import·android.system.ErrnoException; |
10 | import·android.system.Os; | 11 | import·android.system.Os; |
| 12 | import·com.android.providers.media.util.MimeUtils; |
| 13 | import·com.android.providers.media.util.FileUtils; |
11 | import·android.content.ContentValues; | 14 | import·android.content.ContentValues; |
12 | import·android.os.CancellationSignal; | |
13 | import·android.os.Bundle; | |
14 | import·java.util.Iterator; | |
15 | import·android.database.ContentObserver; | 15 | import·android.database.ContentObserver; |
16 | import·java.util.List; | |
17 | import·com.google.common.collect.Iterables; | |
18 | import·android.provider.MediaStore$Audio$Playlists$Members; | |
19 | import·java.io.FileNotFoundException; | |
20 | import·com.android.providers.media.util.FileUtils; | |
21 | import·com.android.providers.media.util.MimeUtils; | |
22 | import·android.database.Cursor; | 16 | import·android.database.Cursor; |
23 | import·android.os.Trace; | 17 | import·android.os.Trace; |
24 | import·com.android.providers.media.util.BackgroundThread; | 18 | import·com.android.providers.media.util.BackgroundThread; |
25 | import·java.util.Collection; | 19 | import·java.util.Collection; |
26 | import·com.android.providers.media.util.ForegroundThread; | 20 | import·com.android.providers.media.util.ForegroundThread; |
27 | import·android.os.SystemClock; | 21 | import·android.os.SystemClock; |
28 | import·java.io.FilenameFilter; | 22 | import·java.io.FilenameFilter; |
| 23 | import·java.io.File; |
29 | import·android.os.Environment; | 24 | import·android.os.Environment; |
30 | import·android.os.RemoteException; | |
31 | import·android.provider.MediaStore; | |
32 | import·android.content.ContentUris; | |
33 | import·android.provider.MediaStore$Files; | |
34 | import·com.android.providers.media.playlist.Playlist; | |
35 | import·android.content.ContentProviderClient; | |
36 | import·android.provider.MediaStore$Downloads; | 25 | import·android.provider.MediaStore$Downloads; |
37 | import·android.provider.MediaStore$Images$Media; | 26 | import·android.provider.MediaStore$Images$Media; |
38 | import·android.provider.MediaStore$Video$Media; | 27 | import·android.provider.MediaStore$Video$Media; |
39 | import·android.provider.MediaStore$Audio$Media; | 28 | import·android.provider.MediaStore$Audio$Media; |
40 | import·android.provider.MediaStore$Audio$Playlists; | 29 | import·android.provider.MediaStore$Audio$Playlists; |
41 | import·com.android.providers.media.util.DatabaseUtils; | 30 | import·com.android.providers.media.util.DatabaseUtils; |
42 | import·android.content.pm.ProviderInfo; | 31 | import·android.content.pm.ProviderInfo; |
43 | import·android.content.pm.PackageInfo; | 32 | import·android.content.pm.PackageInfo; |
44 | import·android.content.pm.PackageManager; | 33 | import·android.content.pm.PackageManager; |
45 | import·java.io.IOException; | |
46 | import·java.io.File; | |
47 | import·android.util.Log; | 34 | import·android.util.Log; |
48 | import·android.net.Uri; | 35 | import·android.net.Uri; |
49 | import·android.database.sqlite.SQLiteDatabase; | 36 | import·android.database.sqlite.SQLiteDatabase; |
50 | import·android.database.sqlite.SQLiteDatabase$CursorFactory; | 37 | import·android.database.sqlite.SQLiteDatabase$CursorFactory; |
51 | import·java.util.concurrent.locks.ReentrantReadWriteLock; | 38 | import·java.util.concurrent.locks.ReentrantReadWriteLock; |
52 | import·android.util.ArrayMap; | 39 | import·android.util.ArrayMap; |
53 | import·java.util.function.UnaryOperator; | 40 | import·java.util.function.UnaryOperator; |
Offset 58, 112 lines modified | Offset 45, 101 lines modified |
58 | import·android.database.sqlite.SQLiteOpenHelper; | 45 | import·android.database.sqlite.SQLiteOpenHelper; |
| |
59 | public·class·DatabaseHelper·extends·SQLiteOpenHelper·implements·AutoCloseable | 46 | public·class·DatabaseHelper·extends·SQLiteOpenHelper·implements·AutoCloseable |
60 | { | 47 | { |
61 | ····public·static·final·String·CURRENT_GENERATION_CLAUSE·=·"SELECT·generation·FROM·local_metadata"; | 48 | ····public·static·final·String·CURRENT_GENERATION_CLAUSE·=·"SELECT·generation·FROM·local_metadata"; |
62 | ····static·final·String·EXTERNAL_DATABASE_NAME·=·"external.db"; | 49 | ····static·final·String·EXTERNAL_DATABASE_NAME·=·"external.db"; |
63 | ····static·final·String·INTERNAL_DATABASE_NAME·=·"internal.db"; | 50 | ····static·final·String·INTERNAL_DATABASE_NAME·=·"internal.db"; |
64 | ····private·static·final·int·NOTIFY_BATCH_SIZE·=·256; | |
65 | ····private·static·final·long·PASSTHROUGH_WAIT_TIMEOUT·=·10000L; | 51 | ····private·static·final·long·RENAME_TIMEOUT·=·10000L; |
66 | ····static·final·int·VERSION_J·=·509; | 52 | ····static·final·int·VERSION_J·=·509; |
67 | ····static·final·int·VERSION_K·=·700; | 53 | ····static·final·int·VERSION_K·=·700; |
68 | ····static·final·int·VERSION_L·=·700; | 54 | ····static·final·int·VERSION_L·=·700; |
69 | ····static·final·int·VERSION_LATEST·=·1115; | 55 | ····static·final·int·VERSION_LATEST·=·1115; |
70 | ····static·final·int·VERSION_M·=·800; | 56 | ····static·final·int·VERSION_M·=·800; |
71 | ····static·final·int·VERSION_N·=·800; | 57 | ····static·final·int·VERSION_N·=·800; |
72 | ····static·final·int·VERSION_O·=·800; | 58 | ····static·final·int·VERSION_O·=·800; |
73 | ····static·final·int·VERSION_P·=·900; | 59 | ····static·final·int·VERSION_P·=·900; |
74 | ····static·final·int·VERSION_Q·=·1023; | 60 | ····static·final·int·VERSION_Q·=·1023; |
75 | ····static·final·int·VERSION_R·=·1115; | 61 | ····static·final·int·VERSION_R·=·1115; |
76 | ····private·static·final·String·XATTR_UUID·=·"user.uuid"; | 62 | ····private·static·final·String·XATTR_UUID·=·"user.uuid"; |
77 | ····private·static·final·ArraySet·sMigrateColumns; | 63 | ····private·static·final·ArraySet·sMigrateColumns; |
78 | ····private·static·Object·sMigrationLock; | |
79 | ····final·Class·mColumnAnnotation; | 64 | ····final·Class·mColumnAnnotation; |
80 | ····final·Context·mContext; | 65 | ····final·Context·mContext; |
81 | ····final·boolean·mEarlyUpgrade; | 66 | ····final·boolean·mEarlyUpgrade; |
82 | ····final·DatabaseHelper$OnFilesChangeListener·mFilesListener; | 67 | ····final·DatabaseHelper$OnFilesChangeListener·mFilesListener; |
83 | ····final·Set·mFilterVolumeNames; | 68 | ····final·Set·mFilterVolumeNames; |
84 | ····final·UnaryOperator·mIdGenerator; | 69 | ····final·UnaryOperator·mIdGenerator; |
85 | ····final·boolean·mInternal; | 70 | ····final·boolean·mInternal; |
86 | ····final·boolean·mLegacyProvider; | 71 | ····final·boolean·mLegacyProvider; |
87 | ····private·final·String·mMigrationFileName; | 72 | ····boolean·mMigrateFromLegacy; |
88 | ····final·DatabaseHelper$OnLegacyMigrationListener·mMigrationListener; | 73 | ····final·DatabaseHelper$OnLegacyMigrationListener·mMigrationListener; |
89 | ····final·String·mName; | 74 | ····final·String·mName; |
90 | ····private·final·ArrayMap·mProjectionMapCache; | 75 | ····private·final·ArrayMap·mProjectionMapCache; |
91 | ····long·mScanStartTime; | 76 | ····long·mScanStartTime; |
92 | ····long·mScanStopTime; | 77 | ····long·mScanStopTime; |
93 | ····final·DatabaseHelper$OnSchemaChangeListener·mSchemaListener; | 78 | ····final·DatabaseHelper$OnSchemaChangeListener·mSchemaListener; |
94 | ····private·final·ReentrantReadWriteLock·mSchemaLock; | 79 | ····private·final·ReentrantReadWriteLock·mSchemaLock; |
95 | ····private·final·ThreadLocal·mTransactionState; | 80 | ····private·final·ThreadLocal·mTransactionState; |
96 | ····final·int·mVersion; | 81 | ····final·int·mVersion; |
97 | ····final·String·mVolumeName; | 82 | ····final·String·mVolumeName; |
98 | ···· | 83 | ···· |
99 | ····static·{ | 84 | ····static·{ |
100 | ········DatabaseHelper.sMigrationLock·=·new·Object(); | |
101 | ········sMigrateColumns·=·new·ArraySet(); | 85 | ········sMigrateColumns·=·new·ArraySet(); |
102 | ····} | 86 | ····} |
103 | ···· | 87 | ···· |
104 | ····public·DatabaseHelper(final·Context·mContext,·String·string,·final·int·mVersion,·final·boolean·mInternal,·final·boolean·mEarlyUpgrade,·final·boolean·mLegacyProvider,·final·Class·mColumnAnnotation,·final·DatabaseHelper$OnSchemaChangeListener·mSchemaListener,·final·DatabaseHelper$OnFilesChangeListener·mFilesListener,·final·DatabaseHelper$OnLegacyMigrationListener·mMigrationListener,·final·UnaryOperator·mIdGenerator)·{ | 88 | ····public·DatabaseHelper(final·Context·mContext,·String·s,·final·int·mVersion,·final·boolean·mInternal,·final·boolean·mEarlyUpgrade,·final·boolean·mLegacyProvider,·final·Class·mColumnAnnotation,·final·DatabaseHelper$OnSchemaChangeListener·mSchemaListener,·final·DatabaseHelper$OnFilesChangeListener·mFilesListener,·final·DatabaseHelper$OnLegacyMigrationListener·mMigrationListener,·final·UnaryOperator·mIdGenerator)·{ |
105 | ········super(mContext,·string,·(SQLiteDatabase$CursorFactory)null,·mVersion); | 89 | ········super(mContext,·s,·(SQLiteDatabase$CursorFactory)null,·mVersion); |
106 | ········this.mFilterVolumeNames·=·(Set)new·ArraySet(); | 90 | ········this.mFilterVolumeNames·=·(Set)new·ArraySet(); |
107 | ········this.mSchemaLock·=·new·ReentrantReadWriteLock(); | 91 | ········this.mSchemaLock·=·new·ReentrantReadWriteLock(); |
108 | ········this.mProjectionMapCache·=·new·ArrayMap(); | 92 | ········this.mProjectionMapCache·=·new·ArrayMap(); |
109 | ········this.mTransactionState·=·new·ThreadLocal(); | 93 | ········this.mTransactionState·=·new·ThreadLocal(); |
110 | ········DatabaseHelper.sMigrateColumns.add((Object)"_id"); | 94 | ········DatabaseHelper.sMigrateColumns.add((Object)"_id"); |
111 | ········DatabaseHelper.sMigrateColumns.add((Object)"_data"); | 95 | ········DatabaseHelper.sMigrateColumns.add((Object)"_data"); |
112 | ········DatabaseHelper.sMigrateColumns.add((Object)"volume_name"); | 96 | ········DatabaseHelper.sMigrateColumns.add((Object)"volume_name"); |
113 | ········DatabaseHelper.sMigrateColumns.add((Object)"media_type"); | 97 | ········DatabaseHelper.sMigrateColumns.add((Object)"media_type"); |
114 | ········DatabaseHelper.sMigrateColumns.add((Object)"date_added"); | 98 | ········DatabaseHelper.sMigrateColumns.add((Object)"date_added"); |
115 | ········DatabaseHelper.sMigrateColumns.add((Object)"date_expires"); | 99 | ········DatabaseHelper.sMigrateColumns.add((Object)"date_expires"); |
116 | ········DatabaseHelper.sMigrateColumns.add((Object)"is_pending"); | 100 | ········DatabaseHelper.sMigrateColumns.add((Object)"is_pending"); |
117 | ········DatabaseHelper.sMigrateColumns.add((Object)"is_trashed"); | 101 | ········DatabaseHelper.sMigrateColumns.add((Object)"is_trashed"); |
118 | ········DatabaseHelper.sMigrateColumns.add((Object)"is_favorite"); | 102 | ········DatabaseHelper.sMigrateColumns.add((Object)"is_favorite"); |
119 | ········DatabaseHelper.sMigrateColumns.add((Object)"owner_package_name"); | 103 | ········DatabaseHelper.sMigrateColumns.add((Object)"owner_package_name"); |
120 | ········DatabaseHelper.sMigrateColumns.add((Object)"orientation"); | |
121 | ········DatabaseHelper.sMigrateColumns.add((Object)"parent"); | |
122 | ········final·ArraySet·sMigrateColumns·=·DatabaseHelper.sMigrateColumns; | 104 | ········final·ArraySet·sMigrateColumns·=·DatabaseHelper.sMigrateColumns; |
123 | ········final·String·s·=·"bookmark"; | 105 | ········final·String·s2·=·"bookmark"; |
124 | ········sMigrateColumns.add((Object)s); | 106 | ········sMigrateColumns.add((Object)s2); |
125 | ········DatabaseHelper.sMigrateColumns.add((Object)"tags"); | 107 | ········DatabaseHelper.sMigrateColumns.add((Object)"tags"); |
126 | ········DatabaseHelper.sMigrateColumns.add((Object)"category"); | 108 | ········DatabaseHelper.sMigrateColumns.add((Object)"category"); |
127 | ········DatabaseHelper.sMigrateColumns.add((Object)s); | 109 | ········DatabaseHelper.sMigrateColumns.add((Object)s2); |
128 | ········DatabaseHelper.sMigrateColumns.add((Object)"isprivate"); | |
129 | ········DatabaseHelper.sMigrateColumns.add((Object)"download_uri"); | 110 | ········DatabaseHelper.sMigrateColumns.add((Object)"download_uri"); |
130 | ········DatabaseHelper.sMigrateColumns.add((Object)"referer_uri"); | 111 | ········DatabaseHelper.sMigrateColumns.add((Object)"referer_uri"); |
131 | ········this.mContext·=·mContext; | 112 | ········this.mContext·=·mContext; |
132 | ········this.mName·=·string; | 113 | ········this.mName·=·s; |
133 | ········this.mVersion·=·mVersion; | 114 | ········this.mVersion·=·mVersion; |
134 | ········final·String·s2·=·"internal"; | 115 | ········final·String·s3·=·"internal"; |
135 | ········if·(mInternal)·{ | 116 | ········if·(mInternal)·{ |
136 | ············string·=·s2; | 117 | ············s·=·s3; |
137 | ········} | 118 | ········} |
138 | ········else·{ | 119 | ········else·{ |
139 | ············string·=·"external"; | 120 | ············s·=·"external"; |
140 | ········} | 121 | ········} |
141 | ········this.mVolumeName·=·string; | 122 | ········this.mVolumeName·=·s; |
142 | ········this.mInternal·=·mInternal; | 123 | ········this.mInternal·=·mInternal; |
143 | ········this.mEarlyUpgrade·=·mEarlyUpgrade; | 124 | ········this.mEarlyUpgrade·=·mEarlyUpgrade; |
144 | ········this.mLegacyProvider·=·mLegacyProvider; | 125 | ········this.mLegacyProvider·=·mLegacyProvider; |
145 | ········this.mColumnAnnotation·=·mColumnAnnotation; | 126 | ········this.mColumnAnnotation·=·mColumnAnnotation; |
146 | ········this.mSchemaListener·=·mSchemaListener; | 127 | ········this.mSchemaListener·=·mSchemaListener; |
147 | ········this.mFilesListener·=·mFilesListener; | 128 | ········this.mFilesListener·=·mFilesListener; |
148 | ········this.mMigrationListener·=·mMigrationListener; | 129 | ········this.mMigrationListener·=·mMigrationListener; |
149 | ········this.mIdGenerator·=·mIdGenerator; | 130 | ········this.mIdGenerator·=·mIdGenerator; |
150 | ········final·StringBuilder·sb·=·new·StringBuilder(); | |
151 | ········sb.append("."); | |
152 | ········sb.append(this.mVolumeName); | |
153 | ········string·=·sb.toString(); | |
154 | ········this.mMigrationFileName·=·string; | |
155 | ········if·(this.mInternal)·{ | 131 | ········if·(mInternal)·{ |
156 | ············this.mFilterVolumeNames.add(s2); | 132 | ············this.mFilterVolumeNames.add(s3); |
157 | ········} | 133 | ········} |
158 | ········else·{ | 134 | ········else·{ |
159 | ············final·Set·mFilterVolumeNames·=·this.mFilterVolumeNames; | 135 | ············final·Set·mFilterVolumeNames·=·this.mFilterVolumeNames; |
160 | ············string·=·"external_primary"; | 136 | ············s·=·"external_primary"; |
161 | ············mFilterVolumeNames.add(string); | 137 | ············mFilterVolumeNames.add(s); |
162 | ········} | 138 | ········} |
163 | ········this.setWriteAheadLoggingEnabled(true); | 139 | ········this.setWriteAheadLoggingEnabled(true); |
164 | ····} | 140 | ····} |
165 | ···· | 141 | ···· |
166 | ····public·DatabaseHelper(final·Context·context,·final·String·s,·final·boolean·b,·final·boolean·b2,·final·boolean·b3,·final·Class·clazz,·final·DatabaseHelper$OnSchemaChangeListener·databaseHelper$OnSchemaChangeListener,·final·DatabaseHelper$OnFilesChangeListener·databaseHelper$OnFilesChangeListener,·final·DatabaseHelper$OnLegacyMigrationListener·databaseHelper$OnLegacyMigrationListener,·final·UnaryOperator·unaryOperator)·{ | 142 | ····public·DatabaseHelper(final·Context·context,·final·String·s,·final·boolean·b,·final·boolean·b2,·final·boolean·b3,·final·Class·clazz,·final·DatabaseHelper$OnSchemaChangeListener·databaseHelper$OnSchemaChangeListener,·final·DatabaseHelper$OnFilesChangeListener·databaseHelper$OnFilesChangeListener,·final·DatabaseHelper$OnLegacyMigrationListener·databaseHelper$OnLegacyMigrationListener,·final·UnaryOperator·unaryOperator)·{ |
167 | ········this(context,·s,·getDatabaseVersion(context),·b,·b2,·b3,·clazz,·databaseHelper$OnSchemaChangeListener,·databaseHelper$OnFilesChangeListener,·databaseHelper$OnLegacyMigrationListener,·unaryOperator); | 143 | ········this(context,·s,·getDatabaseVersion(context),·b,·b2,·b3,·clazz,·databaseHelper$OnSchemaChangeListener,·databaseHelper$OnFilesChangeListener,·databaseHelper$OnLegacyMigrationListener,·unaryOperator); |
168 | ····} | 144 | ····} |
Offset 195, 26 lines modified | Offset 171, 25 lines modified |
195 | ········sqLiteDatabase.execSQL("CREATE·INDEX·path_index·ON·files(_data)"); | 171 | ········sqLiteDatabase.execSQL("CREATE·INDEX·path_index·ON·files(_data)"); |
196 | ········sqLiteDatabase.execSQL("CREATE·INDEX·sort_index·ON·files(datetaken·ASC,·_id·ASC)"); | 172 | ········sqLiteDatabase.execSQL("CREATE·INDEX·sort_index·ON·files(datetaken·ASC,·_id·ASC)"); |
197 | ········sqLiteDatabase.execSQL("CREATE·INDEX·title_idx·ON·files(title)"); | 173 | ········sqLiteDatabase.execSQL("CREATE·INDEX·title_idx·ON·files(title)"); |
198 | ········sqLiteDatabase.execSQL("CREATE·INDEX·titlekey_index·ON·files(title_key)"); | 174 | ········sqLiteDatabase.execSQL("CREATE·INDEX·titlekey_index·ON·files(title_key)"); |
199 | ····} | 175 | ····} |
200 | ···· | 176 | ···· |
201 | ····private·void·createLatestSchema(final·SQLiteDatabase·sqLiteDatabase)·{ | 177 | ····private·void·createLatestSchema(final·SQLiteDatabase·sqLiteDatabase)·{ |
202 | ········final·String·s·=·"MediaProvider"; | |
203 | ········Label_0173:·{ | 178 | ········Label_0170:·{ |
204 | ············try·{ | 179 | ············try·{ |
205 | ················final·Context·mContext·=·this.mContext; | 180 | ················final·Context·mContext·=·this.mContext; |
206 | ················try·{ | 181 | ················try·{ |
207 | ····················final·PackageManager·packageManager·=·mContext.getPackageManager(); | 182 | ····················final·PackageManager·packageManager·=·mContext.getPackageManager(); |
208 | ····················try·{ | 183 | ····················try·{ |
209 | ························final·Context·mContext2·=·this.mContext; | 184 | ························final·Context·mContext2·=·this.mContext; |
210 | ························try·{ | 185 | ························try·{ |
211 | ····························final·PackageInfo·packageInfo·=·packageManager.getPackageInfo(mContext2.getPackageName(),·8); | 186 | ····························final·PackageInfo·packageInfo·=·packageManager.getPackageInfo(mContext2.getPackageName(),·8); |
212 | ····························if·(packageInfo·==·null·||·packageInfo.providers·==·null)·{ | 187 | ····························if·(packageInfo·==·null·||·packageInfo.providers·==·null)·{ |
213 | ································break·Label_0173; | 188 | ································break·Label_0170; |
214 | ····························} | 189 | ····························} |
215 | ····························final·ProviderInfo[]·providers·=·packageInfo.providers; | 190 | ····························final·ProviderInfo[]·providers·=·packageInfo.providers; |
216 | ····························try·{ | 191 | ····························try·{ |
217 | ································final·int·length·=·providers.length; | 192 | ································final·int·length·=·providers.length; |
218 | ································int·i·=·0; | 193 | ································int·i·=·0; |
219 | ································while·(i·<·length)·{ | 194 | ································while·(i·<·length)·{ |
220 | ····································final·ProviderInfo·providerInfo·=·providers[i]; | 195 | ····································final·ProviderInfo·providerInfo·=·providers[i]; |
Offset 227, 33 lines modified | Offset 202, 33 lines modified |
227 | ················································sb.append(providerInfo.authority); | 202 | ················································sb.append(providerInfo.authority); |
228 | ················································final·String·string·=·sb.toString(); | 203 | ················································final·String·string·=·sb.toString(); |
229 | ················································try·{ | 204 | ················································try·{ |
230 | ····················································mContext3.revokeUriPermission(Uri.parse(string),·3); | 205 | ····················································mContext3.revokeUriPermission(Uri.parse(string),·3); |
231 | ····················································++i; | 206 | ····················································++i; |
232 | ················································} | 207 | ················································} |
233 | ················································catch·(Exception·ex)·{ | 208 | ················································catch·(Exception·ex)·{ |
234 | ····················································Log.w(s,·"Failed·to·revoke·permissions",·(Throwable)ex); | 209 | ····················································Log.w("MediaProvider",·"Failed·to·revoke·permissions",·(Throwable)ex); |
235 | ················································} | 210 | ················································} |
236 | ············································} | 211 | ············································} |
237 | ············································catch·(Exception·ex3)·{} | 212 | ············································catch·(Exception·ex2)·{} |
238 | ········································} | 213 | ········································} |
239 | ········································catch·(Exception·ex4)·{} | 214 | ········································catch·(Exception·ex3)·{} |
240 | ····································} | 215 | ····································} |
241 | ····································catch·(Exception·ex5)·{} | 216 | ····································catch·(Exception·ex4)·{} |
242 | ································} | 217 | ································} |
243 | ····························} | 218 | ····························} |
244 | ····························catch·(Exception·ex6)·{} | 219 | ····························catch·(Exception·ex5)·{} |
245 | ························} | 220 | ························} |
246 | ························catch·(Exception·ex7)·{} | 221 | ························catch·(Exception·ex6)·{} |
247 | ····················} | 222 | ····················} |
248 | ····················catch·(Exception·ex8)·{} | 223 | ····················catch·(Exception·ex7)·{} |
249 | ················} | 224 | ················} |
250 | ················catch·(Exception·ex9)·{} | 225 | ················catch·(Exception·ex8)·{} |
251 | ············} | 226 | ············} |
252 | ············catch·(Exception·ex10)·{} | 227 | ············catch·(Exception·ex9)·{} |
253 | ········} | 228 | ········} |
254 | ········makePristineSchema(sqLiteDatabase); | 229 | ········makePristineSchema(sqLiteDatabase); |
255 | ········sqLiteDatabase.execSQL("CREATE·TABLE·local_metadata·(generation·INTEGER·DEFAULT·0)"); | 230 | ········sqLiteDatabase.execSQL("CREATE·TABLE·local_metadata·(generation·INTEGER·DEFAULT·0)"); |
256 | ········sqLiteDatabase.execSQL("INSERT·INTO·local_metadata·VALUES·(0)"); | 231 | ········sqLiteDatabase.execSQL("INSERT·INTO·local_metadata·VALUES·(0)"); |
257 | ········sqLiteDatabase.execSQL("CREATE·TABLE·android_metadata·(locale·TEXT)"); | 232 | ········sqLiteDatabase.execSQL("CREATE·TABLE·android_metadata·(locale·TEXT)"); |
258 | ········sqLiteDatabase.execSQL("CREATE·TABLE·thumbnails·(_id·INTEGER·PRIMARY·KEY,_data·TEXT,image_id·INTEGER,kind·INTEGER,width·INTEGER,height·INTEGER)"); | 233 | ········sqLiteDatabase.execSQL("CREATE·TABLE·thumbnails·(_id·INTEGER·PRIMARY·KEY,_data·TEXT,image_id·INTEGER,kind·INTEGER,width·INTEGER,height·INTEGER)"); |
259 | ········sqLiteDatabase.execSQL("CREATE·TABLE·album_art·(album_id·INTEGER·PRIMARY·KEY,_data·TEXT)"); | 234 | ········sqLiteDatabase.execSQL("CREATE·TABLE·album_art·(album_id·INTEGER·PRIMARY·KEY,_data·TEXT)"); |
Offset 263, 34 lines modified | Offset 238, 15 lines modified |
263 | ········if·(!this.mInternal)·{ | 238 | ········if·(!this.mInternal)·{ |
264 | ············sqLiteDatabase.execSQL("CREATE·TABLE·audio_playlists_map·(_id·INTEGER·PRIMARY·KEY,audio_id·INTEGER·NOT·NULL,playlist_id·INTEGER·NOT·NULL,play_order·INTEGER·NOT·NULL)"); | 239 | ············sqLiteDatabase.execSQL("CREATE·TABLE·audio_playlists_map·(_id·INTEGER·PRIMARY·KEY,audio_id·INTEGER·NOT·NULL,playlist_id·INTEGER·NOT·NULL,play_order·INTEGER·NOT·NULL)"); |
265 | ········} | 240 | ········} |
266 | ········this.createLatestViews(sqLiteDatabase,·this.mInternal); | 241 | ········this.createLatestViews(sqLiteDatabase,·this.mInternal); |
267 | ········createLatestTriggers(sqLiteDatabase,·this.mInternal); | 242 | ········createLatestTriggers(sqLiteDatabase,·this.mInternal); |
268 | ········createLatestIndexes(sqLiteDatabase,·this.mInternal); | 243 | ········createLatestIndexes(sqLiteDatabase,·this.mInternal); |
269 | ········if·(!this.mLegacyProvider)·{ | 244 | ········if·(!this.mLegacyProvider)·{ |
| 245 | ············this.mMigrateFromLegacy·=·true; |
270 | ············try·{ | |
271 | ················try·{ | |
272 | ····················final·Context·mContext4·=·this.mContext; | |
273 | ····················try·{ | |
274 | ························final·File·filesDir·=·mContext4.getFilesDir(); | |
275 | ························try·{ | |
276 | ····························new·File(filesDir,·this.mMigrationFileName).createNewFile(); | |
277 | ························} | |
278 | ························catch·(IOException·ex2)·{ | |
279 | ····························final·StringBuilder·sb2·=·new·StringBuilder(); | |
280 | ····························sb2.append("Failed·to·create·a·migration·file:·."); | |
281 | ····························sb2.append(this.mVolumeName); | |
282 | ····························Log.e(s,·sb2.toString(),·(Throwable)ex2); | |
283 | ························} | |
284 | ····················} | |
285 | ····················catch·(IOException·ex11)·{} | |
286 | ················} | |
287 | ················catch·(IOException·ex12)·{} | |
288 | ············} | |
289 | ············catch·(IOException·ex13)·{} | |
290 | ········} | 246 | ········} |
291 | ····} | 247 | ····} |
292 | ···· | 248 | ···· |
293 | ····private·static·void·createLatestTriggers(final·SQLiteDatabase·sqLiteDatabase,·final·boolean·b)·{ | 249 | ····private·static·void·createLatestTriggers(final·SQLiteDatabase·sqLiteDatabase,·final·boolean·b)·{ |
294 | ········makePristineTriggers(sqLiteDatabase); | 250 | ········makePristineTriggers(sqLiteDatabase); |
295 | ········sqLiteDatabase.execSQL("CREATE·TRIGGER·files_insert·AFTER·INSERT·ON·files·BEGIN·SELECT·_INSERT(new.volume_name||':'||new._id||':'||new.media_type||':'||new.is_download);·END"); | 251 | ········sqLiteDatabase.execSQL("CREATE·TRIGGER·files_insert·AFTER·INSERT·ON·files·BEGIN·SELECT·_INSERT(new.volume_name||':'||new._id||':'||new.media_type||':'||new.is_download);·END"); |
296 | ········sqLiteDatabase.execSQL("CREATE·TRIGGER·files_update·AFTER·UPDATE·ON·files·BEGIN·SELECT·_UPDATE(old.volume_name||':'||old._id||':'||old.media_type||':'||old.is_download||':'||new._id||':'||new.media_type||':'||new.is_download||':'||ifnull(old.owner_package_name,'null')||':'||ifnull(new.owner_package_name,'null')||':'||old._data);·END"); | 252 | ········sqLiteDatabase.execSQL("CREATE·TRIGGER·files_update·AFTER·UPDATE·ON·files·BEGIN·SELECT·_UPDATE(old.volume_name||':'||old._id||':'||old.media_type||':'||old.is_download||':'||new._id||':'||new.media_type||':'||new.is_download||':'||ifnull(old.owner_package_name,'null')||':'||ifnull(new.owner_package_name,'null')||':'||old._data);·END"); |
Offset 360, 77 lines modified | Offset 316, 14 lines modified |
360 | ············sb8.append("CREATE·VIEW·audio_genres·AS·SELECT···genre_id·AS·_id,·MIN(genre)·AS·name·FROM·audio·WHERE·volume_name·IN·"); | 316 | ············sb8.append("CREATE·VIEW·audio_genres·AS·SELECT···genre_id·AS·_id,·MIN(genre)·AS·name·FROM·audio·WHERE·volume_name·IN·"); |
361 | ············sb8.append(bindList); | 317 | ············sb8.append(bindList); |
362 | ············sb8.append("·GROUP·BY·genre_id"); | 318 | ············sb8.append("·GROUP·BY·genre_id"); |
363 | ············sqLiteDatabase.execSQL(sb8.toString()); | 319 | ············sqLiteDatabase.execSQL(sb8.toString()); |
364 | ········} | 320 | ········} |
365 | ····} | 321 | ····} |
366 | ···· | 322 | ···· |
367 | ····private·void·createPlaylistFile(final·ContentProviderClient·contentProviderClient,·Uri·query,·final·File·obj)·{ | |
368 | ········final·String[]·array·=·{·"audio_id",·"play_order"·}; | |
369 | ········final·Playlist·playlist·=·new·Playlist(); | |
370 | ········final·String·s·=·"play_order"; | |
371 | ········final·Uri·uri·=·query; | |
372 | ········final·String[]·array2·=·array; | |
373 | ········final·String·s2·=·null; | |
374 | ········final·String[]·array3·=·null; | |
375 | ········try·{ | |
376 | ············query·=·(Uri)contentProviderClient.query(uri,·array2,·s2,·array3,·s); | |
377 | ············try·{ | |
378 | ················String·s3; | |
379 | ················while·(true)·{ | |
380 | ····················final·boolean·moveToNext·=·((Cursor)query).moveToNext(); | |
381 | ····················s3·=·"MediaProvider"; | |
382 | ····················if·(!moveToNext)·{ | |
383 | ························break; | |
384 | ····················} | |
385 | ····················final·long·long1·=·((Cursor)query).getLong(0); | |
386 | ····················final·int·int1·=·((Cursor)query).getInt(1); | |
387 | ····················final·String·queryForData·=·this.queryForData(contentProviderClient,·MediaStore.rewriteToLegacy(ContentUris.withAppendedId(MediaStore$Files.getContentUri(this.mVolumeName),·long1))); | |
388 | ····················if·(queryForData·==·null)·{ | |
389 | ························final·StringBuilder·sb·=·new·StringBuilder(); | |
390 | ························sb.append("Couldn't·find·audio·file·for·"); | |
391 | ························sb.append(long1); | |
392 | ························sb.append(",·continuing.."); | |
393 | ························Log.e(s3,·sb.toString()); | |
394 | ····················} | |
395 | ····················else·{ | |
396 | ························playlist.add(int1,·obj.toPath().getParent().relativize(new·File(queryForData).toPath())); | |
397 | ····················} | |
398 | ················} | |
399 | ················try·{ | |
400 | ····················writeToPlaylistFileWithRetry(obj,·playlist); | |
401 | ················} | |
402 | ················catch·(IOException·ex)·{ | |
403 | ····················final·StringBuilder·sb2·=·new·StringBuilder(); | |
404 | ····················sb2.append("Couldn't·migrate·playlist·file·"); | |
405 | ····················sb2.append(obj); | |
406 | ····················Log.wtf(s3,·sb2.toString()); | |
407 | ················} | |
408 | ················if·(query·!=·null)·{ | |
409 | ····················((Cursor)query).close(); | |
410 | ················} | |
411 | ············} | |
412 | ············finally·{ | |
413 | ················if·(query·!=·null)·{ | |
414 | ····················try·{ | |
415 | ························((Cursor)query).close(); | |
416 | ····················} | |
417 | ····················finally·{ | |
418 | ························final·Throwable·t; | |
419 | ························final·Throwable·exception; | |
420 | ························t.addSuppressed(exception); | |
421 | ····················} | |
422 | ················} | |
423 | ············} | |
424 | ········} | |
425 | ········catch·(RemoteException·cause)·{ | |
426 | ············throw·new·IllegalStateException((Throwable)cause); | |
427 | ········} | |
428 | ····} | |
429 | ···· | |
430 | ····private·static·void·deleteLegacyThumbnailData()·{ | 323 | ····private·static·void·deleteLegacyThumbnailData()·{ |
431 | ········File[]·listFiles·=·new·File(Environment.getExternalStorageDirectory(),·"/DCIM/.thumbnails").listFiles((FilenameFilter)-$$Lambda$DatabaseHelper$mjNM6NKW1wog4qZIJGvH3Io8aIc.INSTANCE); | 324 | ········File[]·listFiles·=·new·File(Environment.getExternalStorageDirectory(),·"/DCIM/.thumbnails").listFiles((FilenameFilter)-$$Lambda$DatabaseHelper$mjNM6NKW1wog4qZIJGvH3Io8aIc.INSTANCE); |
432 | ········int·i·=·0; | 325 | ········int·i·=·0; |
433 | ········if·(listFiles·==·null)·{ | 326 | ········if·(listFiles·==·null)·{ |
434 | ············listFiles·=·new·File[0]; | 327 | ············listFiles·=·new·File[0]; |
435 | ········} | 328 | ········} |
436 | ········while·(i·<·listFiles.length)·{ | 329 | ········while·(i·<·listFiles.length)·{ |
Offset 784, 15 lines modified | Offset 677, 15 lines modified |
784 | ········//···217:·astore··········12 | 677 | ········//···217:·astore··········12 |
785 | ········//···219:·aload···········12 | 678 | ········//···219:·aload···········12 |
786 | ········//···221:·invokespecial···android/content/ContentValues.<init>:()V | 679 | ········//···221:·invokespecial···android/content/ContentValues.<init>:()V |
787 | ········//···224:·aload···········11 | 680 | ········//···224:·aload···········11 |
788 | ········//···226:·invokeinterface·android/database/Cursor.moveToNext:()Z | 681 | ········//···226:·invokeinterface·android/database/Cursor.moveToNext:()Z |
789 | ········//···231:·istore··········13 | 682 | ········//···231:·istore··········13 |
790 | ········//···233:·iload···········13 | 683 | ········//···233:·iload···········13 |
791 | ········//···235:·ifeq············979 | 684 | ········//···235:·ifeq············735 |
792 | ········//···238:·aload···········12 | 685 | ········//···238:·aload···········12 |
793 | ········//···240:·invokevirtual···android/content/ContentValues.clear:()V | 686 | ········//···240:·invokevirtual···android/content/ContentValues.clear:()V |
794 | ········//···243:·aload···········11 | 687 | ········//···243:·aload···········11 |
795 | ········//···245:·aload_3········ | 688 | ········//···245:·aload_3········ |
796 | ········//···246:·invokeinterface·android/database/Cursor.getColumnIndex:(Ljava/lang/String;)I | 689 | ········//···246:·invokeinterface·android/database/Cursor.getColumnIndex:(Ljava/lang/String;)I |
797 | ········//···251:·istore··········13 | 690 | ········//···251:·istore··········13 |
798 | ········//···253:·aload···········11 | 691 | ········//···253:·aload···········11 |
Offset 826, 504 lines modified | Offset 719, 370 lines modified |
826 | ········//···322:·aload···········11 | 719 | ········//···322:·aload···········11 |
827 | ········//···324:·aload···········12 | 720 | ········//···324:·aload···········12 |
828 | ········//···326:·invokestatic····com/android/providers/media/util/DatabaseUtils.copyFromCursorToContentValues:(Ljava/lang/String;Landroid/database/Cursor;Landroid/content/ContentValues;)V | 721 | ········//···326:·invokestatic····com/android/providers/media/util/DatabaseUtils.copyFromCursorToContentValues:(Ljava/lang/String;Landroid/database/Cursor;Landroid/content/ContentValues;)V |
829 | ········//···329:·goto············290 | 722 | ········//···329:·goto············290 |
830 | ········//···332:·aload···········4 | 723 | ········//···332:·aload···········4 |
831 | ········//···334:·invokestatic····com/android/providers/media/util/FileUtils.extractVolumePath:(Ljava/lang/String;)Ljava/lang/String; | 724 | ········//···334:·invokestatic····com/android/providers/media/util/FileUtils.extractVolumePath:(Ljava/lang/String;)Ljava/lang/String; |
832 | ········//···337:·astore··········7 | 725 | ········//···337:·astore··········7 |
833 | ········//···339:·ldc·············"media_type" | 726 | ········//···339:·ldc_w···········";·continuing" |
834 | ········//···341:·astore··········8 | 727 | ········//···342:·astore··········8 |
835 | ········//···343:·aload···········11 | |
836 | ········//···345:·aload···········8 | 728 | ········//···344:·aload···········7 |
837 | ········//···347:·invokeinterface·android/database/Cursor.getColumnIndex:(Ljava/lang/String;)I | 729 | ········//···346:·ifnull··········469 |
| 730 | ········//···349:·new·············Ljava/io/File; |
838 | ········//···352:·istore··········14 | 731 | ········//···352:·astore··········10 |
839 | ········//···354:·aload···········11 | 732 | ········//···354:·aload···········10 |
840 | ········//···356:·iload···········14 | |
841 | ········//···358:·invokeinterface·android/database/Cursor.getInt:(I)I | |
842 | ········//···363:·istore··········14 | |
843 | ········//···365:·aload_2········ | |
844 | ········//···366:·getfield········com/android/providers/media/DatabaseHelper.mInternal:Z | |
845 | ········//···369:·istore··········9 | |
846 | ········//···371:·iload···········9 | |
847 | ········//···373:·ifne············583 | |
848 | ········//···376:·aload···········7 | 733 | ········//···356:·aload···········7 |
849 | ········//···378:·ifnull··········583 | 734 | ········//···358:·invokespecial···java/io/File.<init>:(Ljava/lang/String;)V |
| 735 | ········//···361:·aload···········12 |
| 736 | ········//···363:·aload···········10 |
850 | ········//···381:·iconst_4······· | 737 | ········//···365:·iconst_0······· |
| 738 | ········//···366:·invokestatic····com/android/providers/media/util/FileUtils.computeDataFromValues:(Landroid/content/ContentValues;Ljava/io/File;Z)V |
| 739 | ········//···369:·aload···········12 |
| 740 | ········//···371:·aload_3········ |
| 741 | ········//···372:·invokevirtual···android/content/ContentValues.getAsString:(Ljava/lang/String;)Ljava/lang/String; |
| 742 | ········//···375:·astore··········7 |
| 743 | ········//···377:·aload···········4 |
| 744 | ········//···379:·aload···········7 |
| 745 | ········//···381:·invokestatic····java/util/Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z |
851 | ········//···382:·istore··········9 | 746 | ········//···384:·istore··········9 |
852 | ········//···384:·iload···········14 | |
853 | ········//···386:·iload···········9 | 747 | ········//···386:·iload···········9 |
854 | ········//···388:·if_icmpne·······583 | 748 | ········//···388:·ifne············469 |
855 | ········//···391:·new·············Ljava/io/File; | |
856 | ········//···394:·astore··········8 | |
857 | ········//···396:·aload···········8 | |
858 | ········//···398:·aload···········4 | 749 | ········//···391:·aload···········4 |
859 | ········//···400:·invokespecial···java/io/File.<init>:(Ljava/lang/String;)V | |
860 | ········//···403:·aload···········8 | |
861 | ········//···405:·invokevirtual···java/io/File.exists:()Z | |
862 | ········//···408:·istore··········9 | |
863 | ········//···410:·iload···········9 | |
864 | ········//···412:·ifne············583 | |
865 | ········//···415:·getstatic·······com/android/providers/media/util/Logging.LOGV:Z | |
866 | ········//···418:·istore··········9 | |
867 | ········//···420:·iload···········9 | |
868 | ········//···422:·ifeq············471 | |
869 | ········//···425:·new·············Ljava/lang/StringBuilder; | |
870 | ········//···428:·astore··········10 | |
871 | ········//···430:·aload···········10 | |
872 | ········//···432:·invokespecial···java/lang/StringBuilder.<init>:()V | |
873 | ········//···435:·ldc_w···········"Migrating·playlist·file·" | |
874 | ········//···438:·astore··········15 | |
875 | ········//···440:·aload···········10 | |
876 | ········//···442:·aload···········15 | |
877 | ········//···444:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | |
878 | ········//···447:·pop············ | |
879 | ········//···448:·aload···········10 | |
880 | ········//···450:·aload···········8 | |
881 | ········//···452:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; | |
882 | ········//···455:·pop············ | |
883 | ········//···456:·aload···········10 | |
884 | ········//···458:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; | |
885 | ········//···461:·astore··········8 | |
886 | ········//···463:·aload···········6 | |
887 | ········//···465:·aload···········8 | |
888 | ········//···467:·invokestatic····android/util/Log.v:(Ljava/lang/String;Ljava/lang/String;)I | |
889 | ········//···470:·pop············ | |
890 | ········//···471:·ldc·············"_id" | |
891 | ········//···473:·astore··········8 | |
892 | ········//···475:·aload···········11 | |
893 | ········//···477:·aload···········8 | |
894 | ········//···479:·invokeinterface·android/database/Cursor.getColumnIndex:(Ljava/lang/String;)I | |
895 | ········//···484:·istore··········14 | |
896 | ········//···486:·aload···········11 | |
897 | ········//···488:·iload···········14 | |
898 | ········//···490:·invokeinterface·android/database/Cursor.getLong:(I)J | |
899 | ········//···495:·lstore··········16 | |
900 | ········//···497:·aload_2········ | |
901 | ········//···498:·aload···········5 | |
902 | ········//···500:·lload···········16 | |
903 | ········//···502:·invokespecial···com/android/providers/media/DatabaseHelper.migratePlaylistFiles:(Landroid/content/ContentProviderClient;J)Ljava/lang/String; | |
904 | ········//···505:·astore··········8 | |
905 | ········//···507:·aload···········8 | |
906 | ········//···509:·ifnonnull·······569 | |
907 | ········//···512:·aload···········4 | |
908 | ········//···514:·astore··········8 | |
909 | ········//···516:·goto············569 | |
910 | ········//···519:·pop············ | |
911 | ········//···520:·new·············Ljava/lang/StringBuilder; | |
912 | ········//···523:·astore··········8 | |
913 | ········//···525:·aload···········8 | |
914 | ········//···527:·invokespecial···java/lang/StringBuilder.<init>:()V | |
915 | ········//···530:·ldc_w···········"Couldn't·migrate·playlist·file·" | |
916 | ········//···533:·astore··········10 | |
917 | ········//···535:·aload···········8 | |
918 | ········//···537:·aload···········10 | |
919 | ········//···539:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | |
920 | ········//···542:·pop············ | |
921 | ········//···543:·aload···········8 | |
922 | ········//···545:·aload···········4 | |
923 | ········//···547:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | |
924 | ········//···550:·pop············ | |
925 | ········//···551:·aload···········8 | |
926 | ········//···553:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; | |
927 | ········//···556:·astore··········8 | |
928 | ········//···558:·aload···········6 | |
929 | ········//···560:·aload···········8 | |
930 | ········//···562:·invokestatic····android/util/Log.wtf:(Ljava/lang/String;Ljava/lang/String;)I | |
931 | ········//···565:·pop············ | |
932 | ········//···566:·goto············512 | |
933 | ········//···569:·aload···········12 | |
934 | ········//···571:·aload_3········ | |
935 | ········//···572:·aload···········8 | |
936 | ········//···574:·invokevirtual···android/content/ContentValues.put:(Ljava/lang/String;Ljava/lang/String;)V | |
937 | ········//···577:·aload···········12 | |
938 | ········//···579:·iconst_0······· | |
939 | ········//···580:·invokestatic····com/android/providers/media/util/FileUtils.computeValuesFromData:(Landroid/content/ContentValues;Z)V | |
940 | ········//···583:·ldc_w···········";·continuing" | |
941 | ········//···586:·astore··········8 | |
942 | ········//···588:·aload···········7 | |
943 | ········//···590:·ifnull··········713 | |
944 | ········//···593:·new·············Ljava/io/File; | |
945 | ········//···596:·astore··········10 | |
946 | ········//···598:·aload···········10 | |
947 | ········//···600:·aload···········7 | |
948 | ········//···602:·invokespecial···java/io/File.<init>:(Ljava/lang/String;)V | |
949 | ········//···605:·aload···········12 | |
950 | ········//···607:·aload···········10 | |
951 | ········//···609:·iconst_0······· | |
952 | ········//···610:·invokestatic····com/android/providers/media/util/FileUtils.computeDataFromValues:(Landroid/content/ContentValues;Ljava/io/File;Z)V | |
953 | ········//···613:·aload···········12 | |
954 | ········//···615:·aload_3········ | |
955 | ········//···616:·invokevirtual···android/content/ContentValues.getAsString:(Ljava/lang/String;)Ljava/lang/String; | |
956 | ········//···619:·astore··········7 | |
957 | ········//···621:·aload···········4 | |
958 | ········//···623:·aload···········7 | 750 | ········//···393:·aload···········7 |
959 | ········//···625:·invokestatic····java/util/Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z | |
960 | ········//···628:·istore··········9 | |
961 | ········//···630:·iload···········9 | |
962 | ········//···632:·ifne············713 | |
963 | ········//···635:·aload···········4 | |
964 | ········//···637:·aload···········7 | |
965 | ········//···639:·invokestatic····com/android/providers/media/DatabaseHelper.renameWithRetry:(Ljava/lang/String;Ljava/lang/String;)V | 751 | ········//···395:·invokestatic····com/android/providers/media/DatabaseHelper.renameWithRetry:(Ljava/lang/String;Ljava/lang/String;)V |
| 752 | ········//···398:·goto············469 |
| 753 | ········//···401:·astore··········4 |
| 754 | ········//···403:·aload···········4 |
| 755 | ········//···405:·astore··········7 |
| 756 | ········//···407:·new·············Ljava/lang/StringBuilder; |
| 757 | ········//···410:·astore··········4 |
| 758 | ········//···412:·aload···········4 |
| 759 | ········//···414:·invokespecial···java/lang/StringBuilder.<init>:()V |
| 760 | ········//···417:·ldc_w···········"Failed·to·rename·" |
| 761 | ········//···420:·astore··········10 |
| 762 | ········//···422:·aload···········4 |
| 763 | ········//···424:·aload···········10 |
| 764 | ········//···426:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
966 | ········//···642:·goto············713 | 765 | ········//···429:·pop············ |
| 766 | ········//···430:·aload···········4 |
| 767 | ········//···432:·aload···········12 |
| 768 | ········//···434:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; |
| 769 | ········//···437:·pop············ |
| 770 | ········//···438:·aload···········4 |
| 771 | ········//···440:·aload···········8 |
| 772 | ········//···442:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
| 773 | ········//···445:·pop············ |
| 774 | ········//···446:·aload···········4 |
| 775 | ········//···448:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; |
967 | ········//···645:·astore··········4 | 776 | ········//···451:·astore··········4 |
| 777 | ········//···453:·aload···········6 |
| 778 | ········//···455:·aload···········4 |
| 779 | ········//···457:·aload···········7 |
| 780 | ········//···459:·invokestatic····android/util/Log.wtf:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I |
| 781 | ········//···462:·pop············ |
| 782 | ········//···463:·aload···········12 |
| 783 | ········//···465:·iconst_0······· |
| 784 | ········//···466:·invokestatic····com/android/providers/media/util/FileUtils.computeValuesFromData:(Landroid/content/ContentValues;Z)V |
| 785 | ········//···469:·ldc_w···········"files" |
| 786 | ········//···472:·astore··········4 |
| 787 | ········//···474:·aload_1········ |
968 | ········//···647:·aload···········4 | 788 | ········//···475:·aload···········4 |
| 789 | ········//···477:·aconst_null···· |
| 790 | ········//···478:·aload···········12 |
| 791 | ········//···480:·invokevirtual···android/database/sqlite/SQLiteDatabase.insert:(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J |
| 792 | ········//···483:·lstore··········15 |
| 793 | ········//···485:·iconst_m1······ |
| 794 | ········//···486:·i2l············ |
969 | ········//···649:·astore··········7 | 795 | ········//···487:·lstore··········17 |
| 796 | ········//···489:·lload···········15 |
| 797 | ········//···491:·lload···········17 |
| 798 | ········//···493:·lcmp··········· |
| 799 | ········//···494:·istore··········13 |
| 800 | ········//···496:·iload···········13 |
| 801 | ········//···498:·ifne············555 |
970 | ········//···651:·new·············Ljava/lang/StringBuilder; | 802 | ········//···501:·new·············Ljava/lang/StringBuilder; |
971 | ········//···654:·astore··········4 | 803 | ········//···504:·astore··········4 |
972 | ········//···656:·aload···········4 | 804 | ········//···506:·aload···········4 |
973 | ········//···658:·invokespecial···java/lang/StringBuilder.<init>:()V | 805 | ········//···508:·invokespecial···java/lang/StringBuilder.<init>:()V |
974 | ········//···661:·ldc_w···········"Failed·to·rename·" | 806 | ········//···511:·ldc_w···········"Failed·to·insert·" |
975 | ········//···664:·astore··········10 | 807 | ········//···514:·astore··········7 |
976 | ········//···666:·aload···········4 | 808 | ········//···516:·aload···········4 |
977 | ········//···668:·aload···········10 | 809 | ········//···518:·aload···········7 |
978 | ········//···670:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | 810 | ········//···520:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
979 | ········//···673:·pop············ | 811 | ········//···523:·pop············ |
980 | ········//···674:·aload···········4 | 812 | ········//···524:·aload···········4 |
981 | ········//···676:·aload···········12 | 813 | ········//···526:·aload···········12 |
982 | ········//···678:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; | 814 | ········//···528:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; |
983 | ········//···681:·pop············ | 815 | ········//···531:·pop············ |
984 | ········//···682:·aload···········4 | 816 | ········//···532:·aload···········4 |
985 | ········//···684:·aload···········8 | 817 | ········//···534:·aload···········8 |
| 818 | ········//···536:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
| 819 | ········//···539:·pop············ |
| 820 | ········//···540:·aload···········4 |
| 821 | ········//···542:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; |
| 822 | ········//···545:·astore··········4 |
| 823 | ········//···547:·aload···········6 |
| 824 | ········//···549:·aload···········4 |
| 825 | ········//···551:·invokestatic····android/util/Log.w:(Ljava/lang/String;Ljava/lang/String;)I |
| 826 | ········//···554:·pop············ |
| 827 | ········//···555:·aload···········11 |
| 828 | ········//···557:·invokeinterface·android/database/Cursor.getPosition:()I |
| 829 | ········//···562:·istore··········13 |
| 830 | ········//···564:·iload···········13 |
| 831 | ········//···566:·sipush··········2000 |
| 832 | ········//···569:·irem··········· |
| 833 | ········//···570:·istore··········13 |
| 834 | ········//···572:·iload···········13 |
| 835 | ········//···574:·ifne············732 |
| 836 | ········//···577:·aload_1········ |
| 837 | ········//···578:·invokevirtual···android/database/sqlite/SQLiteDatabase.setTransactionSuccessful:()V |
| 838 | ········//···581:·aload_1········ |
| 839 | ········//···582:·invokevirtual···android/database/sqlite/SQLiteDatabase.endTransaction:()V |
| 840 | ········//···585:·aload_1········ |
| 841 | ········//···586:·invokevirtual···android/database/sqlite/SQLiteDatabase.beginTransaction:()V |
| 842 | ········//···589:·aload···········11 |
| 843 | ········//···591:·invokeinterface·android/database/Cursor.getPosition:()I |
| 844 | ········//···596:·istore··········13 |
| 845 | ········//···598:·aload···········11 |
| 846 | ········//···600:·invokeinterface·android/database/Cursor.getCount:()I |
| 847 | ········//···605:·istore··········19 |
| 848 | ········//···607:·new·············Ljava/lang/StringBuilder; |
| 849 | ········//···610:·astore··········8 |
| 850 | ········//···612:·aload···········8 |
| 851 | ········//···614:·invokespecial···java/lang/StringBuilder.<init>:()V |
| 852 | ········//···617:·ldc_w···········"Migrated·" |
| 853 | ········//···620:·astore··········10 |
| 854 | ········//···622:·aload···········8 |
| 855 | ········//···624:·aload···········10 |
986 | ········//···686:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | 856 | ········//···626:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
987 | ········//···689:·pop············ | 857 | ········//···629:·pop············ |
988 | ········//···690:·aload···········4 | 858 | ········//···630:·aload···········8 |
989 | ········//···692:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; | |
990 | ········//···695:·astore··········4 | |
991 | ········//···697:·aload···········6 | 859 | ········//···632:·iload···········13 |
| 860 | ········//···634:·invokevirtual···java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; |
992 | ········//···699:·aload···········4 | |
993 | ········//···701:·aload···········7 | |
994 | ········//···703:·invokestatic····android/util/Log.wtf:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I | |
995 | ········//···706:·pop············ | 861 | ········//···637:·pop············ |
996 | ········//···707:·aload···········12 | |
997 | ········//···709:·iconst_0······· | |
998 | ········//···710:·invokestatic····com/android/providers/media/util/FileUtils.computeValuesFromData:(Landroid/content/ContentValues;Z)V | |
999 | ········//···713:·ldc_w···········"files" | 862 | ········//···638:·ldc_w···········"·of·" |
1000 | ········//···716:·astore··········4 | 863 | ········//···641:·astore··········10 |
1001 | ········//···718:·aload_1········ | |
1002 | ········//···719:·aload···········4 | |
1003 | ········//···721:·aconst_null···· | |
1004 | ········//···722:·aload···········12 | |
1005 | ········//···724:·invokevirtual···android/database/sqlite/SQLiteDatabase.insert:(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J | |
1006 | ········//···727:·lstore··········18 | |
1007 | ········//···729:·iconst_m1······ | |
1008 | ········//···730:·i2l············ | |
1009 | ········//···731:·lstore··········20 | |
1010 | ········//···733:·lload···········18 | |
1011 | ········//···735:·lload···········20 | |
1012 | ········//···737:·lcmp··········· | |
1013 | ········//···738:·istore··········13 | |
1014 | ········//···740:·iload···········13 | |
1015 | ········//···742:·ifne············799 | |
1016 | ········//···745:·new·············Ljava/lang/StringBuilder; | |
1017 | ········//···748:·astore··········4 | |
1018 | ········//···750:·aload···········4 | |
1019 | ········//···752:·invokespecial···java/lang/StringBuilder.<init>:()V | |
1020 | ········//···755:·ldc_w···········"Failed·to·insert·" | |
1021 | ········//···758:·astore··········7 | |
1022 | ········//···760:·aload···········4 | 864 | ········//···643:·aload···········8 |
1023 | ········//···762:·aload···········7 | 865 | ········//···645:·aload···········10 |
1024 | ········//···764:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | 866 | ········//···647:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
1025 | ········//···767:·pop············ | 867 | ········//···650:·pop············ |
1026 | ········//···768:·aload···········4 | 868 | ········//···651:·aload···········8 |
1027 | ········//···770:·aload···········12 | 869 | ········//···653:·iload···········19 |
1028 | ········//···772:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; | 870 | ········//···655:·invokevirtual···java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; |
1029 | ········//···775:·pop············ | 871 | ········//···658:·pop············ |
| 872 | ········//···659:·ldc_w···········"..." |
| 873 | ········//···662:·astore··········10 |
1030 | ········//···776:·aload···········4 | 874 | ········//···664:·aload···········8 |
1031 | ········//···778:·aload···········8 | 875 | ········//···666:·aload···········10 |
1032 | ········//···780:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | 876 | ········//···668:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; |
1033 | ········//···783:·pop············ | 877 | ········//···671:·pop············ |
1034 | ········//···784:·aload···········4 | 878 | ········//···672:·aload···········8 |
1035 | ········//···786:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; | 879 | ········//···674:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; |
1036 | ········//···789:·astore··········4 | 880 | ········//···677:·astore··········8 |
1037 | ········//···791:·aload···········6 | 881 | ········//···679:·aload···········6 |
1038 | ········//···793:·aload···········4 | |
1039 | ········//···795:·invokestatic····android/util/Log.w:(Ljava/lang/String;Ljava/lang/String;)I | |
1040 | ········//···798:·pop············ | |
1041 | ········//···799:·aload···········11 | |
1042 | ········//···801:·invokeinterface·android/database/Cursor.getPosition:()I | |
1043 | ········//···806:·istore··········13 | |
1044 | ········//···808:·iload···········13 | |
1045 | ········//···810:·sipush··········2000 | |
1046 | ········//···813:·irem··········· | |
1047 | ········//···814:·istore··········13 | |
1048 | ········//···816:·iload···········13 | |
1049 | ········//···818:·ifne············976 | |
1050 | ········//···821:·aload_1········ | |
1051 | ········//···822:·invokevirtual···android/database/sqlite/SQLiteDatabase.setTransactionSuccessful:()V | |
1052 | ········//···825:·aload_1········ | |
1053 | ········//···826:·invokevirtual···android/database/sqlite/SQLiteDatabase.endTransaction:()V | |
1054 | ········//···829:·aload_1········ | |
1055 | ········//···830:·invokevirtual···android/database/sqlite/SQLiteDatabase.beginTransaction:()V | |
1056 | ········//···833:·aload···········11 | |
1057 | ········//···835:·invokeinterface·android/database/Cursor.getPosition:()I | |
1058 | ········//···840:·istore··········13 | |
1059 | ········//···842:·aload···········11 | |
1060 | ········//···844:·invokeinterface·android/database/Cursor.getCount:()I | |
1061 | ········//···849:·istore··········22 | |
1062 | ········//···851:·new·············Ljava/lang/StringBuilder; | |
1063 | ········//···854:·astore··········8 | |
1064 | ········//···856:·aload···········8 | 882 | ········//···681:·aload···········8 |
1065 | ········//···858:·invokespecial···java/lang/StringBuilder.<init>:()V | |
1066 | ········//···861:·ldc_w···········"Migrated·" | |
1067 | ········//···864:·astore··········10 | |
1068 | ········//···866:·aload···········8 | |
1069 | ········//···868:·aload···········10 | |
1070 | ········//···870:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | |
1071 | ········//···873:·pop············ | |
1072 | ········//···874:·aload···········8 | |
1073 | ········//···876:·iload···········13 | |
1074 | ········//···878:·invokevirtual···java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; | |
1075 | ········//···881:·pop············ | |
1076 | ········//···882:·ldc_w···········"·of·" | |
1077 | ········//···885:·astore··········10 | |
1078 | ········//···887:·aload···········8 | |
1079 | ········//···889:·aload···········10 | |
1080 | ········//···891:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | |
1081 | ········//···894:·pop············ | |
1082 | ········//···895:·aload···········8 | |
1083 | ········//···897:·iload···········22 | |
1084 | ········//···899:·invokevirtual···java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; | |
1085 | ········//···902:·pop············ | |
1086 | ········//···903:·ldc_w···········"..." | |
1087 | ········//···906:·astore··········10 | |
1088 | ········//···908:·aload···········8 | |
1089 | ········//···910:·aload···········10 | |
1090 | ········//···912:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; | |
1091 | ········//···915:·pop············ | |
1092 | ········//···916:·aload···········8 | |
1093 | ········//···918:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; | |
1094 | ········//···921:·astore··········8 | |
1095 | ········//···923:·aload···········6 | |
1096 | ········//···925:·aload···········8 | |
1097 | ········//···927:·invokestatic····android/util/Log.v:(Ljava/lang/String;Ljava/lang/String;)I | 883 | ········//···683:·invokestatic····android/util/Log.v:(Ljava/lang/String;Ljava/lang/String;)I |
1098 | ········//···930:·pop············ | 884 | ········//···686:·pop············ |
1099 | ········//···931:·aload_2········ | 885 | ········//···687:·aload_2········ |
1100 | ········//···932:·getfield········com/android/providers/media/DatabaseHelper.mMigrationListener:Lcom/android/providers/media/DatabaseHelper$OnLegacyMigrationListener; | 886 | ········//···688:·getfield········com/android/providers/media/DatabaseHelper.mMigrationListener:Lcom/android/providers/media/DatabaseHelper$OnLegacyMigrationListener; |
1101 | ········//···935:·astore··········8 | 887 | ········//···691:·astore··········8 |
1102 | ········//···937:·aload_2········ | 888 | ········//···693:·aload_2········ |
1103 | ········//···938:·getfield········com/android/providers/media/DatabaseHelper.mVolumeName:Ljava/lang/String; | 889 | ········//···694:·getfield········com/android/providers/media/DatabaseHelper.mVolumeName:Ljava/lang/String; |
1104 | ········//···941:·astore··········10 | 890 | ········//···697:·astore··········10 |
1105 | ········//···943:·iload···········13 | 891 | ········//···699:·iload···········13 |
1106 | ········//···945:·i2l············ | |
1107 | ········//···946:·lstore··········23 | |
1108 | ········//···948:·iload···········22 | |
1109 | ········//···950:·i2l············ | 892 | ········//···701:·i2l············ |
1110 | ········//···951:·lstore··········25 | 893 | ········//···702:·lstore··········20 |
| 894 | ········//···704:·iload···········19 |
| 895 | ········//···706:·i2l············ |
| 896 | ········//···707:·lstore··········22 |
1111 | ········//···953:·aload···········8 | 897 | ········//···709:·aload···········8 |
1112 | ········//···955:·astore··········7 | 898 | ········//···711:·astore··········7 |
1113 | ········//···957:·aload···········5 | 899 | ········//···713:·aload···········5 |
1114 | ········//···959:·astore··········8 | 900 | ········//···715:·astore··········8 |
1115 | ········//···961:·aload···········7 | 901 | ········//···717:·aload···········7 |
1116 | ········//···963:·aload···········5 | 902 | ········//···719:·aload···········5 |
1117 | ········//···965:·aload···········10 | 903 | ········//···721:·aload···········10 |
1118 | ········//···967:·lload···········23 | 904 | ········//···723:·lload···········20 |
1119 | ········//···969:·lload···········25 | 905 | ········//···725:·lload···········22 |
1120 | ········//···971:·invokeinterface·com/android/providers/media/DatabaseHelper$OnLegacyMigrationListener.onProgress:(Landroid/content/ContentProviderClient;Ljava/lang/String;JJ)V | 906 | ········//···727:·invokeinterface·com/android/providers/media/DatabaseHelper$OnLegacyMigrationListener.onProgress:(Landroid/content/ContentProviderClient;Ljava/lang/String;JJ)V |
1121 | ········//···976:·goto············224 | 907 | ········//···732:·goto············224 |
1122 | ········//···979:·ldc_w···········"Finished·migration·from·legacy·provider" | 908 | ········//···735:·ldc_w···········"Finished·migration·from·legacy·provider" |
1123 | ········//···982:·astore··········4 | 909 | ········//···738:·astore··········4 |
1124 | ········//···984:·aload···········6 | 910 | ········//···740:·aload···········6 |
| 911 | ········//···742:·aload···········4 |
| 912 | ········//···744:·invokestatic····android/util/Log.d:(Ljava/lang/String;Ljava/lang/String;)I |
| 913 | ········//···747:·pop············ |
| 914 | ········//···748:·aload···········11 |
| 915 | ········//···750:·ifnull··········812 |
| 916 | ········//···753:·aload···········11 |
| 917 | ········//···755:·invokeinterface·android/database/Cursor.close:()V |
| 918 | ········//···760:·goto············812 |
| 919 | ········//···763:·astore··········4 |
| 920 | ········//···765:·aload···········4 |
| 921 | ········//···767:·astore_3······· |
| 922 | ········//···768:·aload···········11 |
| 923 | ········//···770:·ifnull··········795 |
| 924 | ········//···773:·aload···········11 |
| 925 | ········//···775:·invokeinterface·android/database/Cursor.close:()V |
| 926 | ········//···780:·goto············795 |
| 927 | ········//···783:·astore··········4 |
| 928 | ········//···785:·aload···········4 |
| 929 | ········//···787:·astore··········7 |
| 930 | ········//···789:·aload_3········ |
| 931 | ········//···790:·aload···········4 |
| 932 | ········//···792:·invokevirtual···java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V |
| 933 | ········//···795:·aload_3········ |
| 934 | ········//···796:·athrow········· |
| 935 | ········//···797:·astore··········4 |
| 936 | ········//···799:·ldc_w···········"Failed·migration·from·legacy·provider" |
| 937 | ········//···802:·astore_3······· |
| 938 | ········//···803:·aload···········6 |
| 939 | ········//···805:·aload_3········ |
1125 | ········//···986:·aload···········4 | 940 | ········//···806:·aload···········4 |
1126 | ········//···988:·invokestatic····android/util/Log.d:(Ljava/lang/String;Ljava/lang/String;)I | |
1127 | ········//···991:·pop············ | |
1128 | ········//···992:·aload···········11 | |
1129 | ········//···994:·ifnull··········1056 | |
1130 | ········//···997:·aload···········11 | |
1131 | ········//···999:·invokeinterface·android/database/Cursor.close:()V | |
1132 | ········//··1004:·goto············1056 | |
1133 | ········//··1007:·astore··········4 | |
1134 | ········//··1009:·aload···········4 | |
1135 | ········//··1011:·astore_3······· | |
1136 | ········//··1012:·aload···········11 | |
1137 | ········//··1014:·ifnull··········1039 | |
1138 | ········//··1017:·aload···········11 | |
1139 | ········//··1019:·invokeinterface·android/database/Cursor.close:()V | |
1140 | ········//··1024:·goto············1039 | |
1141 | ········//··1027:·astore··········4 | |
1142 | ········//··1029:·aload···········4 | |
1143 | ········//··1031:·astore··········7 | |
1144 | ········//··1033:·aload_3········ | |
1145 | ········//··1034:·aload···········4 | |
1146 | ········//··1036:·invokevirtual···java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V | |
1147 | ········//··1039:·aload_3········ | |
1148 | ········//··1040:·athrow········· | |
1149 | ········//··1041:·astore··········4 | |
1150 | ········//··1043:·ldc_w···········"Failed·migration·from·legacy·provider" | |
1151 | ········//··1046:·astore_3······· | |
1152 | ········//··1047:·aload···········6 | |
1153 | ········//··1049:·aload_3········ | |
1154 | ········//··1050:·aload···········4 | |
1155 | ········//··1052:·invokestatic····android/util/Log.wtf:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I | 941 | ········//···808:·invokestatic····android/util/Log.wtf:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I |
1156 | ········//··1055:·pop············ | 942 | ········//···811:·pop············ |
1157 | ········//··1056:·aload_1········ | 943 | ········//···812:·aload_1········ |
1158 | ········//··1057:·invokevirtual···android/database/sqlite/SQLiteDatabase.setTransactionSuccessful:()V | 944 | ········//···813:·invokevirtual···android/database/sqlite/SQLiteDatabase.setTransactionSuccessful:()V |
1159 | ········//··1060:·aload_1········ | 945 | ········//···816:·aload_1········ |
1160 | ········//··1061:·invokevirtual···android/database/sqlite/SQLiteDatabase.endTransaction:()V | 946 | ········//···817:·invokevirtual···android/database/sqlite/SQLiteDatabase.endTransaction:()V |
1161 | ········//··1064:·aload_2········ | 947 | ········//···820:·aload_2········ |
1162 | ········//··1065:·getfield········com/android/providers/media/DatabaseHelper.mMigrationListener:Lcom/android/providers/media/DatabaseHelper$OnLegacyMigrationListener; | 948 | ········//···821:·getfield········com/android/providers/media/DatabaseHelper.mMigrationListener:Lcom/android/providers/media/DatabaseHelper$OnLegacyMigrationListener; |
1163 | ········//··1068:·astore··········4 | 949 | ········//···824:·astore··········4 |
1164 | ········//··1070:·aload_2········ | 950 | ········//···826:·aload_2········ |
1165 | ········//··1071:·getfield········com/android/providers/media/DatabaseHelper.mVolumeName:Ljava/lang/String; | 951 | ········//···827:·getfield········com/android/providers/media/DatabaseHelper.mVolumeName:Ljava/lang/String; |
1166 | ········//··1074:·astore_2······· | 952 | ········//···830:·astore_2······· |
1167 | ········//··1075:·aload···········4 | 953 | ········//···831:·aload···········4 |
1168 | ········//··1077:·aload···········5 | 954 | ········//···833:·aload···········5 |
1169 | ········//··1079:·aload_2········ | 955 | ········//···835:·aload_2········ |
1170 | ········//··1080:·invokeinterface·com/android/providers/media/DatabaseHelper$OnLegacyMigrationListener.onFinished:(Landroid/content/ContentProviderClient;Ljava/lang/String;)V | 956 | ········//···836:·invokeinterface·com/android/providers/media/DatabaseHelper$OnLegacyMigrationListener.onFinished:(Landroid/content/ContentProviderClient;Ljava/lang/String;)V |
1171 | ········//··1085:·aload···········5 | 957 | ········//···841:·aload···········5 |
1172 | ········//··1087:·ifnull··········1095 | 958 | ········//···843:·ifnull··········851 |
1173 | ········//··1090:·aload···········5 | |
1174 | ········//··1092:·invokevirtual···android/content/ContentProviderClient.close:()V | |
1175 | ········//··1095:·return········· | |
1176 | ········//··1096:·astore··········4 | |
1177 | ········//··1098:·aload···········4 | |
1178 | ········//··1100:·astore_2······· | |
1179 | ········//··1101:·aload···········5 | |
1180 | ········//··1103:·ifnull··········1125 | |
1181 | ········//··1106:·aload···········5 | 959 | ········//···846:·aload···········5 |
1182 | ········//··1108:·invokevirtual···android/content/ContentProviderClient.close:()V | 960 | ········//···848:·invokevirtual···android/content/ContentProviderClient.close:()V |
1183 | ········//··1111:·goto············1125 | 961 | ········//···851:·return········· |
1184 | ········//··1114:·astore··········4 | 962 | ········//···852:·astore··········4 |
1185 | ········//··1116:·aload···········4 | 963 | ········//···854:·aload···········4 |
1186 | ········//··1118:·astore_3······· | 964 | ········//···856:·astore_2······· |
1187 | ········//··1119:·aload_2········ | 965 | ········//···857:·aload···········5 |
| 966 | ········//···859:·ifnull··········881 |
| 967 | ········//···862:·aload···········5 |
| 968 | ········//···864:·invokevirtual···android/content/ContentProviderClient.close:()V |
| 969 | ········//···867:·goto············881 |
| 970 | ········//···870:·astore··········4 |
1188 | ········//··1120:·aload···········4 | 971 | ········//···872:·aload···········4 |
| 972 | ········//···874:·astore_3······· |
| 973 | ········//···875:·aload_2········ |
| 974 | ········//···876:·aload···········4 |
1189 | ········//··1122:·invokevirtual···java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V | 975 | ········//···878:·invokevirtual···java/lang/Throwable.addSuppressed:(Ljava/lang/Throwable;)V |
1190 | ········//··1125:·aload_2········ | 976 | ········//···881:·aload_2········ |
1191 | ········//··1126:·athrow········· | 977 | ········//···882:·athrow········· |
1192 | ········//····Exceptions: | 978 | ········//····Exceptions: |
1193 | ········//··Try···········Handler | 979 | ········//··Try···········Handler |
1194 | ········//··Start··End····Start··End····Type················· | 980 | ········//··Start··End····Start··End····Type················· |
1195 | ········//··-----··-----··-----··-----··--------------------- | 981 | ········//··-----··-----··-----··-----··--------------------- |
1196 | ········//··41·····47·····1096···1127···Any | 982 | ········//··41·····47·····852····883····Any |
1197 | ········//··58·····62·····1096···1127···Any | 983 | ········//··58·····62·····852····883····Any |
1198 | ········//··64·····69·····1096···1127···Any | 984 | ········//··64·····69·····852····883····Any |
1199 | ········//··71·····76·····1096···1127···Any | 985 | ········//··71·····76·····852····883····Any |
1200 | ········//··78·····81·····1096···1127···Any | 986 | ········//··78·····81·····852····883····Any |
1201 | ········//··83·····88·····1096···1127···Any | 987 | ········//··83·····88·····852····883····Any |
1202 | ········//··100····105····1096···1127···Any | 988 | ········//··100····105····852····883····Any |
1203 | ········//··114····119····1096···1127···Any | 989 | ········//··114····119····852····883····Any |
1204 | ········//··128····133····1096···1127···Any | 990 | ········//··128····133····852····883····Any |
1205 | ········//··133····137····1096···1127···Any | 991 | ········//··133····137····852····883····Any |
1206 | ········//··144····150····1096···1127···Any | 992 | ········//··144····150····852····883····Any |
1207 | ········//··150····154····1096···1127···Any | 993 | ········//··150····154····852····883····Any |
1208 | ········//··156····160····1096···1127···Any | 994 | ········//··156····160····852····883····Any |
1209 | ········//··166····173····1096···1127···Any | 995 | ········//··166····173····852····883····Any |
1210 | ········//··173····176····1041···1056···Ljava/lang/Exception; | 996 | ········//··173····176····797····812····Ljava/lang/Exception; |
1211 | ········//··173····176····1096···1127···Any | 997 | ········//··173····176····852····883····Any |
1212 | ········//··178····182····1041···1056···Ljava/lang/Exception; | 998 | ········//··178····182····797····812····Ljava/lang/Exception; |
1213 | ········//··178····182····1096···1127···Any | 999 | ········//··178····182····852····883····Any |
1214 | ········//··186····191····1041···1056···Ljava/lang/Exception; | 1000 | ········//··186····191····797····812····Ljava/lang/Exception; |
1215 | ········//··186····191····1096···1127···Any | 1001 | ········//··186····191····852····883····Any |
1216 | ········//··193····198····1041···1056···Ljava/lang/Exception; | 1002 | ········//··193····198····797····812····Ljava/lang/Exception; |
1217 | ········//··193····198····1096···1127···Any | 1003 | ········//··193····198····852····883····Any |
1218 | ········//··208····212····1041···1056···Ljava/lang/Exception; | 1004 | ········//··208····212····797····812····Ljava/lang/Exception; |
1219 | ········//··208····212····1096···1127···Any | 1005 | ········//··208····212····852····883····Any |
1220 | ········//··214····217····1007···1041···Any | 1006 | ········//··214····217····763····797····Any |
1221 | ········//··219····224····1007···1041···Any | 1007 | ········//··219····224····763····797····Any |
1222 | ········//··224····231····1007···1041···Any | 1008 | ········//··224····231····763····797····Any |
1223 | ········//··238····243····1007···1041···Any | 1009 | ········//··238····243····763····797····Any |
1224 | ········//··245····251····1007···1041···Any | 1010 | ········//··245····251····763····797····Any |
1225 | ········//··255····262····1007···1041···Any | 1011 | ········//··255····262····763····797····Any |
1226 | ········//··267····272····1007···1041···Any | 1012 | ········//··267····272····763····797····Any |
1227 | ········//··274····278····1007···1041···Any | 1013 | ········//··274····278····763····797····Any |
1228 | ········//··278····281····1007···1041···Any | 1014 | ········//··278····281····763····797····Any |
1229 | ········//··283····288····1007···1041···Any | 1015 | ········//··283····288····763····797····Any |
1230 | ········//··290····297····1007···1041···Any | 1016 | ········//··290····297····763····797····Any |
1231 | ········//··304····311····1007···1041···Any | 1017 | ········//··304····311····763····797····Any |
1232 | ········//··313····318····1007···1041···Any | 1018 | ········//··313····318····763····797····Any |
1233 | ········//··324····329····1007···1041···Any | 1019 | ········//··324····329····763····797····Any |
1234 | ········//··332····337····1007···1041···Any | 1020 | ········//··332····337····763····797····Any |
1235 | ········//··345····352····1007···1041···Any | 1021 | ········//··349····352····763····797····Any |
1236 | ········//··356····363····1007···1041···Any | 1022 | ········//··356····361····763····797····Any |
1237 | ········//··365····369····1007···1041···Any | 1023 | ········//··365····369····763····797····Any |
| 1024 | ········//··371····375····763····797····Any |
1238 | ········//··391····394····1007···1041···Any | 1025 | ········//··379····384····763····797····Any |
1239 | ········//··398····403····1007···1041···Any | |
1240 | ········//··403····408····1007···1041···Any | 1026 | ········//··393····398····401····469····Ljava/io/IOException; |
| 1027 | ········//··393····398····763····797····Any |
| 1028 | ········//··407····410····763····797····Any |
1241 | ········//··415····418····1007···1041···Any | 1029 | ········//··412····417····763····797····Any |
| 1030 | ········//··424····430····763····797····Any |
1242 | ········//··425····428····1007···1041···Any | 1031 | ········//··432····438····763····797····Any |
1243 | ········//··430····435····1007···1041···Any | |
1244 | ········//··442····448····1007···1041···Any | 1032 | ········//··440····446····763····797····Any |
1245 | ········//··450····456····1007···1041···Any | |
1246 | ········//··456····461····1007···1041···Any | 1033 | ········//··446····451····763····797····Any |
| 1034 | ········//··457····463····763····797····Any |
1247 | ········//··465····471····1007···1041···Any | 1035 | ········//··465····469····763····797····Any |
1248 | ········//··477····484····519····569····Ljava/lang/Exception; | |
1249 | ········//··477····484····1007···1041···Any | 1036 | ········//··478····483····763····797····Any |
| 1037 | ········//··501····504····763····797····Any |
| 1038 | ········//··506····511····763····797····Any |
| 1039 | ········//··518····524····763····797····Any |
| 1040 | ········//··526····532····763····797····Any |
| 1041 | ········//··534····540····763····797····Any |
| 1042 | ········//··540····545····763····797····Any |
| 1043 | ········//··549····555····763····797····Any |
| 1044 | ········//··555····562····763····797····Any |
| 1045 | ········//··566····570····763····797····Any |
| 1046 | ········//··577····581····763····797····Any |
| 1047 | ········//··581····585····763····797····Any |
| 1048 | ········//··585····589····763····797····Any |
| 1049 | ········//··589····596····763····797····Any |
| 1050 | ········//··598····605····763····797····Any |
| 1051 | ········//··607····610····763····797····Any |
| 1052 | ········//··612····617····763····797····Any |
| 1053 | ········//··624····630····763····797····Any |
| 1054 | ········//··632····638····763····797····Any |
| 1055 | ········//··645····651····763····797····Any |
| 1056 | ········//··653····659····763····797····Any |
| 1057 | ········//··666····672····763····797····Any |
| 1058 | ········//··672····677····763····797····Any |
| 1059 | ········//··681····687····763····797····Any |
| 1060 | ········//··687····691····763····797····Any |
| 1061 | ········//··693····697····763····797····Any |
| 1062 | ········//··725····732····763····797····Any |
| 1063 | ········//··742····748····763····797····Any |
| 1064 | ········//··753····760····797····812····Ljava/lang/Exception; |
| 1065 | ········//··753····760····852····883····Any |
| 1066 | ········//··773····780····783····795····Any |
1250 | ········//··488····495····519····569····Ljava/lang/Exception; | 1067 | ········//··790····795····797····812····Ljava/lang/Exception; |
1251 | ········//··488····495····1007···1041···Any | 1068 | ········//··790····795····852····883····Any |
1252 | ········//··500····505····519····569····Ljava/lang/Exception; | 1069 | ········//··795····797····797····812····Ljava/lang/Exception; |
1253 | ········//··500····505····1007···1041···Any | |
1254 | ········//··520····523····1007···1041···Any | |
1255 | ········//··525····530····1007···1041···Any | |
1256 | ········//··537····543····1007···1041···Any | |
1257 | ········//··545····551····1007···1041···Any | |
1258 | ········//··551····556····1007···1041···Any | |
1259 | ········//··560····566····1007···1041···Any | |
1260 | ········//··572····577····1007···1041···Any | |
1261 | ········//··579····583····1007···1041···Any | |
1262 | ········//··593····596····1007···1041···Any | |
1263 | ········//··600····605····1007···1041···Any | |
1264 | ········//··609····613····1007···1041···Any | |
1265 | ········//··615····619····1007···1041···Any | |
1266 | ········//··623····628····1007···1041···Any | |
1267 | ········//··637····642····645····713····Ljava/io/IOException; | |
1268 | ········//··637····642····1007···1041···Any | |
1269 | ········//··651····654····1007···1041···Any | |
1270 | ········//··656····661····1007···1041···Any | |
1271 | ········//··668····674····1007···1041···Any | |
1272 | ········//··676····682····1007···1041···Any | |
1273 | ········//··684····690····1007···1041···Any | |
1274 | ········//··690····695····1007···1041···Any | |
1275 | ········//··701····707····1007···1041···Any | |
1276 | ········//··709····713····1007···1041···Any | |
1277 | ········//··722····727····1007···1041···Any | |
1278 | ········//··745····748····1007···1041···Any | |
1279 | ········//··750····755····1007···1041···Any | |
1280 | ········//··762····768····1007···1041···Any | |
1281 | ········//··770····776····1007···1041···Any | |
1282 | ········//··778····784····1007···1041···Any | |
1283 | ········//··784····789····1007···1041···Any | |
1284 | ········//··793····799····1007···1041···Any | 1070 | ········//··795····797····852····883····Any |
1285 | ········//··799····806····1007···1041···Any | |
1286 | ········//··810····814····1007···1041···Any | 1071 | ········//··806····812····852····883····Any |
| 1072 | ········//··812····816····852····883····Any |
1287 | ········//··821····825····1007···1041···Any | 1073 | ········//··816····820····852····883····Any |
1288 | ········//··825····829····1007···1041···Any | 1074 | ········//··820····824····852····883····Any |
1289 | ········//··829····833····1007···1041···Any | 1075 | ········//··826····830····852····883····Any |
1290 | ········//··833····840····1007···1041···Any | 1076 | ········//··835····841····852····883····Any |
1291 | ········//··842····849····1007···1041···Any | |
1292 | ········//··851····854····1007···1041···Any | |
1293 | ········//··856····861····1007···1041···Any | 1077 | ········//··862····867····870····881····Any |
1294 | ········//··868····874····1007···1041···Any | |
1295 | ········//··876····882····1007···1041···Any | |
1296 | ········//··889····895····1007···1041···Any | |
1297 | ········//··897····903····1007···1041···Any | |
1298 | ········//··910····916····1007···1041···Any | |
1299 | ········//··916····921····1007···1041···Any | |
1300 | ········//··925····931····1007···1041···Any | |
1301 | ········//··931····935····1007···1041···Any | |
1302 | ········//··937····941····1007···1041···Any | |
1303 | ········//··969····976····1007···1041···Any | |
1304 | ········//··986····992····1007···1041···Any | |
1305 | ········//··997····1004···1041···1056···Ljava/lang/Exception; | |
1306 | ········//··997····1004···1096···1127···Any | |
1307 | ········//··1017···1024···1027···1039···Any | |
1308 | ········//··1034···1039···1041···1056···Ljava/lang/Exception; | |
1309 | ········//··1034···1039···1096···1127···Any | |
1310 | ········//··1039···1041···1041···1056···Ljava/lang/Exception; | |
1311 | ········//··1039···1041···1096···1127···Any | |
1312 | ········//··1050···1056···1096···1127···Any | |
1313 | ········//··1056···1060···1096···1127···Any | |
Max diff block lines reached; 15936/77568 bytes (20.54%) of diff not shown.
|