|  |  |  |  | 
| Offset 4, 16 lines modified | Offset 4, 14 lines modified | 
|  |  | 
|  |  | 
| 4 | #·static·fields | 4 | #·static·fields | 
| 5 | .field·private·static·final·GET_ID_FOR_INSERT_CLAUSE:Ljava/lang/String;·=·"_GET_ID(?)" | 5 | .field·private·static·final·GET_ID_FOR_INSERT_CLAUSE:Ljava/lang/String;·=·"_GET_ID(?)" | 
|  |  | 
| 6 | .field·private·static·final·GET_ID_FOR_UPDATE_CLAUSE:Ljava/lang/String;·=·"ifnull(_GET_ID(?),·_id)" | 6 | .field·private·static·final·GET_ID_FOR_UPDATE_CLAUSE:Ljava/lang/String;·=·"ifnull(_GET_ID(?),·_id)" | 
|  |  | 
| 7 | .field·public·static·final·ROWID_COLUMN:Ljava/lang/String;·=·"rowid" |  | 
|  |  | 
| 8 | .field·private·static·final·STRICT_COLUMNS:I·=·0x2 | 7 | .field·private·static·final·STRICT_COLUMNS:I·=·0x2 | 
|  |  | 
| 9 | .field·private·static·final·STRICT_GRAMMAR:I·=·0x4 | 8 | .field·private·static·final·STRICT_GRAMMAR:I·=·0x4 | 
|  |  | 
| 10 | .field·private·static·final·STRICT_PARENTHESES:I·=·0x1 | 9 | .field·private·static·final·STRICT_PARENTHESES:I·=·0x1 | 
|  |  | 
| 11 | .field·private·static·final·TAG:Ljava/lang/String;·=·"SQLiteQueryBuilder" | 10 | .field·private·static·final·TAG:Ljava/lang/String;·=·"SQLiteQueryBuilder" | 
| Offset 64, 277 lines modified | Offset 62, 277 lines modified | 
|  |  | 
| 64 | #·direct·methods | 62 | #·direct·methods | 
| 65 | .method·static·constructor·<clinit>()V | 63 | .method·static·constructor·<clinit>()V | 
| 66 | ····.locals·1 | 64 | ····.locals·1 | 
|  |  | 
| 67 | ····const-string·v0,·"(?i)(AVG|COUNT|MAX|MIN|SUM|TOTAL|GROUP_CONCAT|UNICODE)\\((.+)\\)" | 65 | ····const-string·v0,·"(?i)(AVG|COUNT|MAX|MIN|SUM|TOTAL|GROUP_CONCAT|UNICODE)\\((.+)\\)" | 
|  |  | 
| 68 | ····.line· 71 | 66 | ····.line·66 | 
| 69 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 67 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 
|  |  | 
| 70 | ····move-result-object·v0 | 68 | ····move-result-object·v0 | 
|  |  | 
| 71 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sAggregationPattern:Ljava/util/regex/Pattern; | 69 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sAggregationPattern:Ljava/util/regex/Pattern; | 
|  |  | 
| 72 | ····const-string·v0,·"(?i)%\\.(wmv|wm|wtv|asf|hls|mp4|m4v|mov|mp4v|3g2|3gp|3gp2|3gpp|mj2|qt|external|mov|asf|avi|divx|mpg|mpeg|mkv|webm|mk3d|mks|3gp|mpegts|ts|m2ts|m2t)" | 70 | ····const-string·v0,·"(?i)%\\.(wmv|wm|wtv|asf|hls|mp4|m4v|mov|mp4v|3g2|3gp|3gp2|3gpp|mj2|qt|external|mov|asf|avi|divx|mpg|mpeg|mkv|webm|mk3d|mks|3gp|mpegts|ts|m2ts|m2t)" | 
|  |  | 
| 73 | ····.line·7 8 | 71 | ····.line·73 | 
| 74 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 72 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 
|  |  | 
| 75 | ····move-result-object·v0 | 73 | ····move-result-object·v0 | 
|  |  | 
| 76 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern154193772:Ljava/util/regex/Pattern; | 74 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern154193772:Ljava/util/regex/Pattern; | 
|  |  | 
| 77 | ····const-string·v0,·"(?i)%com\\.gopro\\.smarty%" | 75 | ····const-string·v0,·"(?i)%com\\.gopro\\.smarty%" | 
|  |  | 
| 78 | ····.line· 81 | 76 | ····.line·76 | 
| 79 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 77 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 
|  |  | 
| 80 | ····move-result-object·v0 | 78 | ····move-result-object·v0 | 
|  |  | 
| 81 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern156832140:Ljava/util/regex/Pattern; | 79 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern156832140:Ljava/util/regex/Pattern; | 
|  |  | 
| 82 | ····const-string·v0,·"(?i)localized" | 80 | ····const-string·v0,·"(?i)localized" | 
|  |  | 
| 83 | ····.line· 83 | 81 | ····.line·78 | 
| 84 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 82 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 
|  |  | 
| 85 | ····move-result-object·v0 | 83 | ····move-result-object·v0 | 
|  |  | 
| 86 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern158537159:Ljava/util/regex/Pattern; | 84 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern158537159:Ljava/util/regex/Pattern; | 
|  |  | 
| 87 | ····const-string·v0,·"(?i)custom_[a-zA-Z]+" | 85 | ····const-string·v0,·"(?i)custom_[a-zA-Z]+" | 
|  |  | 
| 88 | ····.line·8 5 | 86 | ····.line·80 | 
| 89 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 87 | ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; | 
|  |  | 
| 90 | ····move-result-object·v0 | 88 | ····move-result-object·v0 | 
|  |  | 
| 91 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sCustomCollatorPattern:Ljava/util/regex/Pattern; | 89 | ····sput-object·v0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sCustomCollatorPattern:Ljava/util/regex/Pattern; | 
|  |  | 
| 92 | ····return-void | 90 | ····return-void | 
| 93 | .end·method | 91 | .end·method | 
|  |  | 
| 94 | .method·public·constructor·<init>()V | 92 | .method·public·constructor·<init>()V | 
| 95 | ····.locals·2 | 93 | ····.locals·2 | 
|  |  | 
| 96 | ····.line·11 9 | 94 | ····.line·114 | 
| 97 | ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V | 95 | ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V | 
|  |  | 
| 98 | ····const/4·v0,·0x0 | 96 | ····const/4·v0,·0x0 | 
|  |  | 
| 99 | ····.line·8 8 | 97 | ····.line·83 | 
| 100 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 98 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 
|  |  | 
| 101 | ····.line·8 9 | 99 | ····.line·84 | 
| 102 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionGreylist:Ljava/util/Collection; | 100 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionGreylist:Ljava/util/Collection; | 
|  |  | 
| 103 | ····const-string·v1,·"" | 101 | ····const-string·v1,·"" | 
|  |  | 
| 104 | ····.line· 91 | 102 | ····.line·86 | 
| 105 | ····iput-object·v1,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTables:Ljava/lang/String; | 103 | ····iput-object·v1,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTables:Ljava/lang/String; | 
|  |  | 
| 106 | ····.line· 92 | 104 | ····.line·87 | 
| 107 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 105 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 108 | ····const/16·v0,·0x2710 | 106 | ····const/16·v0,·0x2710 | 
|  |  | 
| 109 | ····.line· 101 | 107 | ····.line·96 | 
| 110 | ····iput·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTargetSdkVersion:I | 108 | ····iput·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTargetSdkVersion:I | 
|  |  | 
| 111 | ····const/4·v0,·0x0 | 109 | ····const/4·v0,·0x0 | 
|  |  | 
| 112 | ····.line·1 20 | 110 | ····.line·115 | 
| 113 | ····iput-boolean·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mDistinct:Z | 111 | ····iput-boolean·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mDistinct:Z | 
|  |  | 
| 114 | ····return-void | 112 | ····return-void | 
| 115 | .end·method | 113 | .end·method | 
|  |  | 
| 116 | .method·private·static·appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 114 | .method·private·static·appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 
| 117 | ····.locals·1 | 115 | ····.locals·1 | 
|  |  | 
| 118 | ····.line·4 32 | 116 | ····.line·419 | 
| 119 | ····invoke-static·{p2},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 117 | ····invoke-static·{p2},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 120 | ····move-result·v0 | 118 | ····move-result·v0 | 
|  |  | 
| 121 | ····if-nez·v0,·:cond_0 | 119 | ····if-nez·v0,·:cond_0 | 
|  |  | 
| 122 | ····.line·4 33 | 120 | ····.line·420 | 
| 123 | ····invoke-virtual·{p0,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 121 | ····invoke-virtual·{p0,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 124 | ····.line·4 34 | 122 | ····.line·421 | 
| 125 | ····invoke-virtual·{p0,·p2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 123 | ····invoke-virtual·{p0,·p2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 126 | ····:cond_0 | 124 | ····:cond_0 | 
| 127 | ····return-void | 125 | ····return-void | 
| 128 | .end·method | 126 | .end·method | 
|  |  | 
| 129 | .method·public·static·appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V | 127 | .method·public·static·appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V | 
| 130 | ····.locals·4 | 128 | ····.locals·4 | 
|  |  | 
| 131 | ····.line·4 43 | 129 | ····.line·430 | 
| 132 | ····array-length·v0,·p1 | 130 | ····array-length·v0,·p1 | 
|  |  | 
| 133 | ····const/4·v1,·0x0 | 131 | ····const/4·v1,·0x0 | 
|  |  | 
| 134 | ····:goto_0 | 132 | ····:goto_0 | 
| 135 | ····if-ge·v1,·v0,·:cond_2 | 133 | ····if-ge·v1,·v0,·:cond_2 | 
|  |  | 
| 136 | ····.line·4 46 | 134 | ····.line·433 | 
| 137 | ····aget-object·v2,·p1,·v1 | 135 | ····aget-object·v2,·p1,·v1 | 
|  |  | 
| 138 | ····if-eqz·v2,·:cond_1 | 136 | ····if-eqz·v2,·:cond_1 | 
|  |  | 
| 139 | ····if-lez·v1,·:cond_0 | 137 | ····if-lez·v1,·:cond_0 | 
|  |  | 
| 140 | ····const-string·v3,·",·" | 138 | ····const-string·v3,·",·" | 
|  |  | 
| 141 | ····.line·4 50 | 139 | ····.line·437 | 
| 142 | ····invoke-virtual·{p0,·v3},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 140 | ····invoke-virtual·{p0,·v3},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 143 | ····.line·4 52 | 141 | ····.line·439 | 
| 144 | ····:cond_0 | 142 | ····:cond_0 | 
| 145 | ····invoke-virtual·{p0,·v2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 143 | ····invoke-virtual·{p0,·v2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 146 | ····:cond_1 | 144 | ····:cond_1 | 
| 147 | ····add-int/lit8·v1,·v1,·0x1 | 145 | ····add-int/lit8·v1,·v1,·0x1 | 
|  |  | 
| 148 | ····goto·:goto_0 | 146 | ····goto·:goto_0 | 
|  |  | 
| 149 | ····:cond_2 | 147 | ····:cond_2 | 
| 150 | ····const/16·p1,·0x20 | 148 | ····const/16·p1,·0x20 | 
|  |  | 
| 151 | ····.line·4 55 | 149 | ····.line·442 | 
| 152 | ····invoke-virtual·{p0,·p1},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; | 150 | ····invoke-virtual·{p0,·p1},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; | 
|  |  | 
| 153 | ····return-void | 151 | ····return-void | 
| 154 | .end·method | 152 | .end·method | 
|  |  | 
| 155 | .method·public·static·buildQueryString(ZLjava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 153 | .method·public·static·buildQueryString(ZLjava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 
| 156 | ····.locals·2 | 154 | ····.locals·2 | 
|  |  | 
| 157 | ····.line· 404 | 155 | ····.line·391 | 
| 158 | ····invoke-static·{p4},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 156 | ····invoke-static·{p4},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 159 | ····move-result·v0 | 157 | ····move-result·v0 | 
|  |  | 
| 160 | ····if-eqz·v0,·:cond_1 | 158 | ····if-eqz·v0,·:cond_1 | 
|  |  | 
| 161 | ····invoke-static·{p5},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 159 | ····invoke-static·{p5},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 162 | ····move-result·v0 | 160 | ····move-result·v0 | 
|  |  | 
| 163 | ····if-eqz·v0,·:cond_0 | 161 | ····if-eqz·v0,·:cond_0 | 
|  |  | 
| 164 | ····goto·:goto_0 | 162 | ····goto·:goto_0 | 
|  |  | 
| 165 | ····.line· 405 | 163 | ····.line·392 | 
| 166 | ····:cond_0 | 164 | ····:cond_0 | 
| 167 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 165 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 
|  |  | 
| 168 | ····const-string·p1,·"HAVING·clauses·are·only·permitted·when·using·a·groupBy·clause" | 166 | ····const-string·p1,·"HAVING·clauses·are·only·permitted·when·using·a·groupBy·clause" | 
|  |  | 
| 169 | ····invoke-direct·{p0,·p1},·Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V | 167 | ····invoke-direct·{p0,·p1},·Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V | 
|  |  | 
| 170 | ····throw·p0 | 168 | ····throw·p0 | 
|  |  | 
| 171 | ····.line· 409 | 169 | ····.line·396 | 
| 172 | ····:cond_1 | 170 | ····:cond_1 | 
| 173 | ····:goto_0 | 171 | ····:goto_0 | 
| 174 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 172 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 175 | ····const/16·v1,·0x78 | 173 | ····const/16·v1,·0x78 | 
|  |  | 
| 176 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 174 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 
|  |  | 
| 177 | ····const-string·v1,·"SELECT·" | 175 | ····const-string·v1,·"SELECT·" | 
|  |  | 
| 178 | ····.line· 411 | 176 | ····.line·398 | 
| 179 | ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 177 | ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 180 | ····if-eqz·p0,·:cond_2 | 178 | ····if-eqz·p0,·:cond_2 | 
|  |  | 
| 181 | ····const-string·p0,·"DISTINCT·" | 179 | ····const-string·p0,·"DISTINCT·" | 
|  |  | 
| 182 | ····.line·4 13 | 180 | ····.line·400 | 
| 183 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 181 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 184 | ····:cond_2 | 182 | ····:cond_2 | 
| 185 | ····if-eqz·p2,·:cond_3 | 183 | ····if-eqz·p2,·:cond_3 | 
|  |  | 
| 186 | ····.line·4 15 | 184 | ····.line·402 | 
| 187 | ····array-length·p0,·p2 | 185 | ····array-length·p0,·p2 | 
|  |  | 
| 188 | ····if-eqz·p0,·:cond_3 | 186 | ····if-eqz·p0,·:cond_3 | 
|  |  | 
| 189 | ····.line·4 16 | 187 | ····.line·403 | 
| 190 | ····invoke-static·{v0,·p2},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V | 188 | ····invoke-static·{v0,·p2},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V | 
|  |  | 
| 191 | ····goto·:goto_1 | 189 | ····goto·:goto_1 | 
|  |  | 
| 192 | ····:cond_3 | 190 | ····:cond_3 | 
| 193 | ····const-string·p0,·"*·" | 191 | ····const-string·p0,·"*·" | 
|  |  | 
| 194 | ····.line·4 18 | 192 | ····.line·405 | 
| 195 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 193 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 196 | ····:goto_1 | 194 | ····:goto_1 | 
| 197 | ····const-string·p0,·"FROM·" | 195 | ····const-string·p0,·"FROM·" | 
|  |  | 
| 198 | ····.line·4 20 | 196 | ····.line·407 | 
| 199 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 197 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 200 | ····.line·4 21 | 198 | ····.line·408 | 
| 201 | ····invoke-virtual·{v0,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 199 | ····invoke-virtual·{v0,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 202 | ····const-string·p0,·"·WHERE·" | 200 | ····const-string·p0,·"·WHERE·" | 
|  |  | 
| 203 | ····.line·4 22 | 201 | ····.line·409 | 
| 204 | ····invoke-static·{v0,·p0,·p3},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 202 | ····invoke-static·{v0,·p0,·p3},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 
|  |  | 
| 205 | ····const-string·p0,·"·GROUP·BY·" | 203 | ····const-string·p0,·"·GROUP·BY·" | 
|  |  | 
| 206 | ····.line·4 23 | 204 | ····.line·410 | 
| 207 | ····invoke-static·{v0,·p0,·p4},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 205 | ····invoke-static·{v0,·p0,·p4},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 
|  |  | 
| 208 | ····const-string·p0,·"·HAVING·" | 206 | ····const-string·p0,·"·HAVING·" | 
|  |  | 
| 209 | ····.line·4 24 | 207 | ····.line·411 | 
| 210 | ····invoke-static·{v0,·p0,·p5},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 208 | ····invoke-static·{v0,·p0,·p5},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 
|  |  | 
| 211 | ····const-string·p0,·"·ORDER·BY·" | 209 | ····const-string·p0,·"·ORDER·BY·" | 
|  |  | 
| 212 | ····.line·4 25 | 210 | ····.line·412 | 
| 213 | ····invoke-static·{v0,·p0,·p6},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 211 | ····invoke-static·{v0,·p0,·p6},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 
|  |  | 
| 214 | ····const-string·p0,·"·LIMIT·" | 212 | ····const-string·p0,·"·LIMIT·" | 
|  |  | 
| 215 | ····.line·4 26 | 213 | ····.line·413 | 
| 216 | ····invoke-static·{v0,·p0,·p7},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 214 | ····invoke-static·{v0,·p0,·p7},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V | 
|  |  | 
| 217 | ····.line·4 28 | 215 | ····.line·415 | 
| 218 | ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String; | 216 | ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String; | 
|  |  | 
| 219 | ····move-result-object·p0 | 217 | ····move-result-object·p0 | 
|  |  | 
| 220 | ····return-object·p0 | 218 | ····return-object·p0 | 
| 221 | .end·method | 219 | .end·method | 
|  |  | 
| 222 | .method·private·computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; | 220 | .method·private·computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; | 
| 223 | ····.locals·5 | 221 | ····.locals·5 | 
|  |  | 
| 224 | ····.line·10 52 | 222 | ····.line·1035 | 
| 225 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 223 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 
|  |  | 
| 226 | ····if-nez·v0,·:cond_0 | 224 | ····if-nez·v0,·:cond_0 | 
|  |  | 
| 227 | ····return-object·p1 | 225 | ····return-object·p1 | 
|  |  | 
| 228 | ····.line·10 57 | 226 | ····.line·1040 | 
| 229 | ····:cond_0 | 227 | ····:cond_0 | 
| 230 | ····sget-object·v1,·Ljava/util/Locale;->ROOT:Ljava/util/Locale; | 228 | ····sget-object·v1,·Ljava/util/Locale;->ROOT:Ljava/util/Locale; | 
|  |  | 
| 231 | ····invoke-virtual·{p1,·v1},·Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String; | 229 | ····invoke-virtual·{p1,·v1},·Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String; | 
|  |  | 
| 232 | ····move-result-object·v1 | 230 | ····move-result-object·v1 | 
|  |  | 
| Offset 346, 41 lines modified | Offset 344, 41 lines modified | 
|  |  | 
| 346 | ····const/4·v1,·0x1 | 344 | ····const/4·v1,·0x1 | 
|  |  | 
| 347 | ····const/4·v2,·0x0 | 345 | ····const/4·v2,·0x0 | 
|  |  | 
| 348 | ····if-nez·v0,·:cond_1 | 346 | ····if-nez·v0,·:cond_1 | 
|  |  | 
| 349 | ····.line·10 61 | 347 | ····.line·1044 | 
| 350 | ····sget-object·v3,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sAggregationPattern:Ljava/util/regex/Pattern; | 348 | ····sget-object·v3,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sAggregationPattern:Ljava/util/regex/Pattern; | 
|  |  | 
| 351 | ····invoke-virtual·{v3,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 349 | ····invoke-virtual·{v3,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 
|  |  | 
| 352 | ····move-result-object·v3 | 350 | ····move-result-object·v3 | 
|  |  | 
| 353 | ····.line·10 62 | 351 | ····.line·1045 | 
| 354 | ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->matches()Z | 352 | ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->matches()Z | 
|  |  | 
| 355 | ····move-result·v4 | 353 | ····move-result·v4 | 
|  |  | 
| 356 | ····if-eqz·v4,·:cond_1 | 354 | ····if-eqz·v4,·:cond_1 | 
|  |  | 
| 357 | ····.line·10 63 | 355 | ····.line·1046 | 
| 358 | ····invoke-virtual·{v3,·v1},·Ljava/util/regex/Matcher;->group(I)Ljava/lang/String; | 356 | ····invoke-virtual·{v3,·v1},·Ljava/util/regex/Matcher;->group(I)Ljava/lang/String; | 
|  |  | 
| 359 | ····move-result-object·p1 | 357 | ····move-result-object·p1 | 
|  |  | 
| 360 | ····const/4·v0,·0x2 | 358 | ····const/4·v0,·0x2 | 
|  |  | 
| 361 | ····.line·10 64 | 359 | ····.line·1047 | 
| 362 | ····invoke-virtual·{v3,·v0},·Ljava/util/regex/Matcher;->group(I)Ljava/lang/String; | 360 | ····invoke-virtual·{v3,·v0},·Ljava/util/regex/Matcher;->group(I)Ljava/lang/String; | 
|  |  | 
| 363 | ····move-result-object·v0 | 361 | ····move-result-object·v0 | 
|  |  | 
| 364 | ····.line·10 65 | 362 | ····.line·1048 | 
| 365 | ····iget-object·v3,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 363 | ····iget-object·v3,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 
|  |  | 
| 366 | ····sget-object·v4,·Ljava/util/Locale;->ROOT:Ljava/util/Locale; | 364 | ····sget-object·v4,·Ljava/util/Locale;->ROOT:Ljava/util/Locale; | 
|  |  | 
| 367 | ····invoke-virtual·{v0,·v4},·Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String; | 365 | ····invoke-virtual·{v0,·v4},·Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String; | 
|  |  | 
| 368 | ····move-result-object·v4 | 366 | ····move-result-object·v4 | 
| Offset 399, 61 lines modified | Offset 397, 61 lines modified | 
| 399 | ····move-object·v0,·p1 | 397 | ····move-object·v0,·p1 | 
|  |  | 
| 400 | ····move-object·p1,·v2 | 398 | ····move-object·p1,·v2 | 
|  |  | 
| 401 | ····:goto_0 | 399 | ····:goto_0 | 
| 402 | ····if-eqz·v3,·:cond_2 | 400 | ····if-eqz·v3,·:cond_2 | 
|  |  | 
| 403 | ····.line·10 70 | 401 | ····.line·1053 | 
| 404 | ····invoke-static·{p1,·v3},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 402 | ····invoke-static·{p1,·v3},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 
|  |  | 
| 405 | ····move-result-object·p0 | 403 | ····move-result-object·p0 | 
|  |  | 
| 406 | ····return-object·p0 | 404 | ····return-object·p0 | 
|  |  | 
| 407 | ····.line·10 73 | 405 | ····.line·1056 | 
| 408 | ····:cond_2 | 406 | ····:cond_2 | 
| 409 | ····iget·v3,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mStrictFlags:I | 407 | ····iget·v3,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mStrictFlags:I | 
|  |  | 
| 410 | ····if-nez·v3,·:cond_4 | 408 | ····if-nez·v3,·:cond_4 | 
|  |  | 
| 411 | ····const-string·v3,·"·AS·" | 409 | ····const-string·v3,·"·AS·" | 
|  |  | 
| 412 | ····.line·10 74 | 410 | ····.line·1057 | 
| 413 | ····invoke-virtual·{v0,·v3},·Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z | 411 | ····invoke-virtual·{v0,·v3},·Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 414 | ····move-result·v3 | 412 | ····move-result·v3 | 
|  |  | 
| 415 | ····if-nez·v3,·:cond_3 | 413 | ····if-nez·v3,·:cond_3 | 
|  |  | 
| 416 | ····const-string·v3,·"·as·" | 414 | ····const-string·v3,·"·as·" | 
|  |  | 
| 417 | ····invoke-virtual·{v0,·v3},·Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z | 415 | ····invoke-virtual·{v0,·v3},·Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 418 | ····move-result·v3 | 416 | ····move-result·v3 | 
|  |  | 
| 419 | ····if-eqz·v3,·:cond_4 | 417 | ····if-eqz·v3,·:cond_4 | 
|  |  | 
| 420 | ····.line·10 76 | 418 | ····.line·1059 | 
| 421 | ····:cond_3 | 419 | ····:cond_3 | 
| 422 | ····invoke-static·{p1,·v0},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 420 | ····invoke-static·{p1,·v0},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 
|  |  | 
| 423 | ····move-result-object·p0 | 421 | ····move-result-object·p0 | 
|  |  | 
| 424 | ····return-object·p0 | 422 | ····return-object·p0 | 
|  |  | 
| 425 | ····.line·10 81 | 423 | ····.line·1064 | 
| 426 | ····:cond_4 | 424 | ····:cond_4 | 
| 427 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionGreylist:Ljava/util/Collection; | 425 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionGreylist:Ljava/util/Collection; | 
|  |  | 
| 428 | ····if-eqz·p0,·:cond_7 | 426 | ····if-eqz·p0,·:cond_7 | 
|  |  | 
| 429 | ····const/4·v3,·0x0 | 427 | ····const/4·v3,·0x0 | 
|  |  | 
| 430 | ····.line·10 83 | 428 | ····.line·1066 | 
| 431 | ····invoke-interface·{p0},·Ljava/util/Collection;->iterator()Ljava/util/Iterator; | 429 | ····invoke-interface·{p0},·Ljava/util/Collection;->iterator()Ljava/util/Iterator; | 
|  |  | 
| 432 | ····move-result-object·p0 | 430 | ····move-result-object·p0 | 
|  |  | 
| 433 | ····:cond_5 | 431 | ····:cond_5 | 
| 434 | ····invoke-interface·{p0},·Ljava/util/Iterator;->hasNext()Z | 432 | ····invoke-interface·{p0},·Ljava/util/Iterator;->hasNext()Z | 
|  |  | 
| Offset 463, 15 lines modified | Offset 461, 15 lines modified | 
|  |  | 
| 463 | ····invoke-interface·{p0},·Ljava/util/Iterator;->next()Ljava/lang/Object; | 461 | ····invoke-interface·{p0},·Ljava/util/Iterator;->next()Ljava/lang/Object; | 
|  |  | 
| 464 | ····move-result-object·v4 | 462 | ····move-result-object·v4 | 
|  |  | 
| 465 | ····check-cast·v4,·Ljava/util/regex/Pattern; | 463 | ····check-cast·v4,·Ljava/util/regex/Pattern; | 
|  |  | 
| 466 | ····.line·10 84 | 464 | ····.line·1067 | 
| 467 | ····invoke-virtual·{v4,·v0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 465 | ····invoke-virtual·{v4,·v0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 
|  |  | 
| 468 | ····move-result-object·v4 | 466 | ····move-result-object·v4 | 
|  |  | 
| 469 | ····invoke-virtual·{v4},·Ljava/util/regex/Matcher;->matches()Z | 467 | ····invoke-virtual·{v4},·Ljava/util/regex/Matcher;->matches()Z | 
|  |  | 
| 470 | ····move-result·v4 | 468 | ····move-result·v4 | 
| Offset 482, 15 lines modified | Offset 480, 15 lines modified | 
|  |  | 
| 482 | ····:cond_6 | 480 | ····:cond_6 | 
| 483 | ····move·v1,·v3 | 481 | ····move·v1,·v3 | 
|  |  | 
| 484 | ····:goto_1 | 482 | ····:goto_1 | 
| 485 | ····if-eqz·v1,·:cond_7 | 483 | ····if-eqz·v1,·:cond_7 | 
|  |  | 
| 486 | ····.line·10 91 | 484 | ····.line·1074 | 
| 487 | ····new-instance·p0,·Ljava/lang/StringBuilder; | 485 | ····new-instance·p0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 488 | ····invoke-direct·{p0},·Ljava/lang/StringBuilder;-><init>()V | 486 | ····invoke-direct·{p0},·Ljava/lang/StringBuilder;-><init>()V | 
|  |  | 
| 489 | ····const-string·v1,·"Allowing·abusive·custom·column:·" | 487 | ····const-string·v1,·"Allowing·abusive·custom·column:·" | 
|  |  | 
| 490 | ····invoke-virtual·{p0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 488 | ····invoke-virtual·{p0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
| Offset 501, 38 lines modified | Offset 499, 38 lines modified | 
|  |  | 
| 501 | ····move-result-object·p0 | 499 | ····move-result-object·p0 | 
|  |  | 
| 502 | ····const-string·v1,·"SQLiteQueryBuilder" | 500 | ····const-string·v1,·"SQLiteQueryBuilder" | 
|  |  | 
| 503 | ····invoke-static·{v1,·p0},·Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I | 501 | ····invoke-static·{v1,·p0},·Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I | 
|  |  | 
| 504 | ····.line·10 92 | 502 | ····.line·1075 | 
| 505 | ····invoke-static·{p1,·v0},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 503 | ····invoke-static·{p1,·v0},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 
|  |  | 
| 506 | ····move-result-object·p0 | 504 | ····move-result-object·p0 | 
|  |  | 
| 507 | ····return-object·p0 | 505 | ····return-object·p0 | 
|  |  | 
| 508 | ····:cond_7 | 506 | ····:cond_7 | 
| 509 | ····return-object·v2 | 507 | ····return-object·v2 | 
| 510 | .end·method | 508 | .end·method | 
|  |  | 
| 511 | .method·private·computeSingleProjectionOrThrow(Ljava/lang/String;)Ljava/lang/String; | 509 | .method·private·computeSingleProjectionOrThrow(Ljava/lang/String;)Ljava/lang/String; | 
| 512 | ····.locals·2 | 510 | ····.locals·2 | 
|  |  | 
| 513 | ····.line·10 42 | 511 | ····.line·1025 | 
| 514 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; | 512 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; | 
|  |  | 
| 515 | ····move-result-object·p0 | 513 | ····move-result-object·p0 | 
|  |  | 
| 516 | ····if-eqz·p0,·:cond_0 | 514 | ····if-eqz·p0,·:cond_0 | 
|  |  | 
| 517 | ····return-object·p0 | 515 | ····return-object·p0 | 
|  |  | 
| 518 | ····.line·10 46 | 516 | ····.line·1029 | 
| 519 | ····:cond_0 | 517 | ····:cond_0 | 
| 520 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 518 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 
|  |  | 
| 521 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 519 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 522 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 520 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 
|  |  | 
| Offset 550, 57 lines modified | Offset 548, 57 lines modified | 
|  |  | 
| 550 | ····throw·p0 | 548 | ····throw·p0 | 
| 551 | .end·method | 549 | .end·method | 
|  |  | 
| 552 | .method·private·enforceStrictColumns(Landroid/content/ContentValues;)V | 550 | .method·private·enforceStrictColumns(Landroid/content/ContentValues;)V | 
| 553 | ····.locals·3 | 551 | ····.locals·3 | 
|  |  | 
| 554 | ····.line·7 80 | 552 | ····.line·763 | 
| 555 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 553 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 
|  |  | 
| 556 | ····const-string·v1,·"No·projection·map·defined" | 554 | ····const-string·v1,·"No·projection·map·defined" | 
|  |  | 
| 557 | ····invoke-static·{v0,·v1},·Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; | 555 | ····invoke-static·{v0,·v1},·Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; | 
|  |  | 
| 558 | ····.line·7 83 | 556 | ····.line·766 | 
| 559 | ····invoke-static·{p1},·Lcom/android/providers/media/util/DatabaseUtils;->getValues(Landroid/content/ContentValues;)Landroid/util/ArrayMap; | 557 | ····invoke-static·{p1},·Lcom/android/providers/media/util/DatabaseUtils;->getValues(Landroid/content/ContentValues;)Landroid/util/ArrayMap; | 
|  |  | 
| 560 | ····move-result-object·p1 | 558 | ····move-result-object·p1 | 
|  |  | 
| 561 | ····const/4·v0,·0x0 | 559 | ····const/4·v0,·0x0 | 
|  |  | 
| 562 | ····.line·7 84 | 560 | ····.line·767 | 
| 563 | ····:goto_0 | 561 | ····:goto_0 | 
| 564 | ····invoke-virtual·{p1},·Landroid/util/ArrayMap;->size()I | 562 | ····invoke-virtual·{p1},·Landroid/util/ArrayMap;->size()I | 
|  |  | 
| 565 | ····move-result·v1 | 563 | ····move-result·v1 | 
|  |  | 
| 566 | ····if-ge·v0,·v1,·:cond_1 | 564 | ····if-ge·v0,·v1,·:cond_1 | 
|  |  | 
| 567 | ····.line·7 85 | 565 | ····.line·768 | 
| 568 | ····invoke-virtual·{p1,·v0},·Landroid/util/ArrayMap;->keyAt(I)Ljava/lang/Object; | 566 | ····invoke-virtual·{p1,·v0},·Landroid/util/ArrayMap;->keyAt(I)Ljava/lang/Object; | 
|  |  | 
| 569 | ····move-result-object·v1 | 567 | ····move-result-object·v1 | 
|  |  | 
| 570 | ····check-cast·v1,·Ljava/lang/String; | 568 | ····check-cast·v1,·Ljava/lang/String; | 
|  |  | 
| 571 | ····.line·7 86 | 569 | ····.line·769 | 
| 572 | ····iget-object·v2,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 570 | ····iget-object·v2,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 
|  |  | 
| 573 | ····invoke-interface·{v2,·v1},·Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z | 571 | ····invoke-interface·{v2,·v1},·Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z | 
|  |  | 
| 574 | ····move-result·v2 | 572 | ····move-result·v2 | 
|  |  | 
| 575 | ····if-eqz·v2,·:cond_0 | 573 | ····if-eqz·v2,·:cond_0 | 
|  |  | 
| 576 | ····add-int/lit8·v0,·v0,·0x1 | 574 | ····add-int/lit8·v0,·v0,·0x1 | 
|  |  | 
| 577 | ····goto·:goto_0 | 575 | ····goto·:goto_0 | 
|  |  | 
| 578 | ····.line·7 87 | 576 | ····.line·770 | 
| 579 | ····:cond_0 | 577 | ····:cond_0 | 
| 580 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 578 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 
|  |  | 
| 581 | ····new-instance·p1,·Ljava/lang/StringBuilder; | 579 | ····new-instance·p1,·Ljava/lang/StringBuilder; | 
|  |  | 
| 582 | ····invoke-direct·{p1},·Ljava/lang/StringBuilder;-><init>()V | 580 | ····invoke-direct·{p1},·Ljava/lang/StringBuilder;-><init>()V | 
|  |  | 
| Offset 621, 86 lines modified | Offset 619, 86 lines modified | 
| 621 | ····:cond_1 | 619 | ····:cond_1 | 
| 622 | ····return-void | 620 | ····return-void | 
| 623 | .end·method | 621 | .end·method | 
|  |  | 
| 624 | .method·private·enforceStrictColumns([Ljava/lang/String;)V | 622 | .method·private·enforceStrictColumns([Ljava/lang/String;)V | 
| 625 | ····.locals·2 | 623 | ····.locals·2 | 
|  |  | 
| 626 | ····.line·7 74 | 624 | ····.line·757 | 
| 627 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 625 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; | 
|  |  | 
| 628 | ····const-string·v1,·"No·projection·map·defined" | 626 | ····const-string·v1,·"No·projection·map·defined" | 
|  |  | 
| 629 | ····invoke-static·{v0,·v1},·Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; | 627 | ····invoke-static·{v0,·v1},·Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; | 
|  |  | 
| 630 | ····.line·7 76 | 628 | ····.line·759 | 
| 631 | ····invoke-virtual·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->computeProjection([Ljava/lang/String;)[Ljava/lang/String; | 629 | ····invoke-virtual·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->computeProjection([Ljava/lang/String;)[Ljava/lang/String; | 
|  |  | 
| 632 | ····return-void | 630 | ····return-void | 
| 633 | .end·method | 631 | .end·method | 
|  |  | 
| 634 | .method·private·enforceStrictToken(Ljava/lang/String;)V | 632 | .method·private·enforceStrictToken(Ljava/lang/String;)V | 
| 635 | ····.locals·5 | 633 | ····.locals·5 | 
|  |  | 
| 636 | ····.line· 808 | 634 | ····.line·791 | 
| 637 | ····invoke-static·{p1},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 635 | ····invoke-static·{p1},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 638 | ····move-result·v0 | 636 | ····move-result·v0 | 
|  |  | 
| 639 | ····if-eqz·v0,·:cond_0 | 637 | ····if-eqz·v0,·:cond_0 | 
|  |  | 
| 640 | ····return-void | 638 | ····return-void | 
|  |  | 
| 641 | ····.line· 809 | 639 | ····.line·792 | 
| 642 | ····:cond_0 | 640 | ····:cond_0 | 
| 643 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->isTableOrColumn(Ljava/lang/String;)Z | 641 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->isTableOrColumn(Ljava/lang/String;)Z | 
|  |  | 
| 644 | ····move-result·v0 | 642 | ····move-result·v0 | 
|  |  | 
| 645 | ····if-eqz·v0,·:cond_1 | 643 | ····if-eqz·v0,·:cond_1 | 
|  |  | 
| 646 | ····return-void | 644 | ····return-void | 
|  |  | 
| 647 | ····.line· 810 | 645 | ····.line·793 | 
| 648 | ····:cond_1 | 646 | ····:cond_1 | 
| 649 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->isCustomCollator(Ljava/lang/String;)Z | 647 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->isCustomCollator(Ljava/lang/String;)Z | 
|  |  | 
| 650 | ····move-result·v0 | 648 | ····move-result·v0 | 
|  |  | 
| 651 | ····if-eqz·v0,·:cond_2 | 649 | ····if-eqz·v0,·:cond_2 | 
|  |  | 
| 652 | ····return-void | 650 | ····return-void | 
|  |  | 
| 653 | ····.line· 811 | 651 | ····.line·794 | 
| 654 | ····:cond_2 | 652 | ····:cond_2 | 
| 655 | ····invoke-static·{p1},·Lcom/android/providers/media/util/SQLiteTokenizer;->isFunction(Ljava/lang/String;)Z | 653 | ····invoke-static·{p1},·Lcom/android/providers/media/util/SQLiteTokenizer;->isFunction(Ljava/lang/String;)Z | 
|  |  | 
| 656 | ····move-result·v0 | 654 | ····move-result·v0 | 
|  |  | 
| 657 | ····if-eqz·v0,·:cond_3 | 655 | ····if-eqz·v0,·:cond_3 | 
|  |  | 
| 658 | ····return-void | 656 | ····return-void | 
|  |  | 
| 659 | ····.line· 812 | 657 | ····.line·795 | 
| 660 | ····:cond_3 | 658 | ····:cond_3 | 
| 661 | ····invoke-static·{p1},·Lcom/android/providers/media/util/SQLiteTokenizer;->isType(Ljava/lang/String;)Z | 659 | ····invoke-static·{p1},·Lcom/android/providers/media/util/SQLiteTokenizer;->isType(Ljava/lang/String;)Z | 
|  |  | 
| 662 | ····move-result·v0 | 660 | ····move-result·v0 | 
|  |  | 
| 663 | ····if-eqz·v0,·:cond_4 | 661 | ····if-eqz·v0,·:cond_4 | 
|  |  | 
| 664 | ····return-void | 662 | ····return-void | 
|  |  | 
| 665 | ····.line·8 17 | 663 | ····.line·800 | 
| 666 | ····:cond_4 | 664 | ····:cond_4 | 
| 667 | ····invoke-static·{p1},·Lcom/android/providers/media/util/SQLiteTokenizer;->isKeyword(Ljava/lang/String;)Z | 665 | ····invoke-static·{p1},·Lcom/android/providers/media/util/SQLiteTokenizer;->isKeyword(Ljava/lang/String;)Z | 
|  |  | 
| 668 | ····move-result·v0 | 666 | ····move-result·v0 | 
|  |  | 
| 669 | ····.line·8 18 | 667 | ····.line·801 | 
| 670 | ····sget-object·v1,·Ljava/util/Locale;->ROOT:Ljava/util/Locale; | 668 | ····sget-object·v1,·Ljava/util/Locale;->ROOT:Ljava/util/Locale; | 
|  |  | 
| 671 | ····invoke-virtual·{p1,·v1},·Ljava/lang/String;->toUpperCase(Ljava/util/Locale;)Ljava/lang/String; | 669 | ····invoke-virtual·{p1,·v1},·Ljava/lang/String;->toUpperCase(Ljava/util/Locale;)Ljava/lang/String; | 
|  |  | 
| 672 | ····move-result-object·v1 | 670 | ····move-result-object·v1 | 
|  |  | 
| 673 | ····const/4·v2,·-0x1 | 671 | ····const/4·v2,·-0x1 | 
| Offset 840, 38 lines modified | Offset 838, 38 lines modified | 
| 840 | ····move·v0,·v4 | 838 | ····move·v0,·v4 | 
|  |  | 
| 841 | ····:goto_1 | 839 | ····:goto_1 | 
| 842 | ····if-eqz·v0,·:cond_6 | 840 | ····if-eqz·v0,·:cond_6 | 
|  |  | 
| 843 | ····return-void | 841 | ····return-void | 
|  |  | 
| 844 | ····.line·8 33 | 842 | ····.line·816 | 
| 845 | ····:cond_6 | 843 | ····:cond_6 | 
| 846 | ····iget·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTargetSdkVersion:I | 844 | ····iget·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTargetSdkVersion:I | 
|  |  | 
| 847 | ····const/16·v0,·0x1e | 845 | ····const/16·v0,·0x1e | 
|  |  | 
| 848 | ····if-ge·p0,·v0,·:cond_9 | 846 | ····if-ge·p0,·v0,·:cond_9 | 
|  |  | 
| 849 | ····.line·8 36 | 847 | ····.line·819 | 
| 850 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern154193772:Ljava/util/regex/Pattern; | 848 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern154193772:Ljava/util/regex/Pattern; | 
|  |  | 
| 851 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 849 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 
|  |  | 
| 852 | ····move-result-object·p0 | 850 | ····move-result-object·p0 | 
|  |  | 
| 853 | ····invoke-virtual·{p0},·Ljava/util/regex/Matcher;->matches()Z | 851 | ····invoke-virtual·{p0},·Ljava/util/regex/Matcher;->matches()Z | 
|  |  | 
| 854 | ····move-result·p0 | 852 | ····move-result·p0 | 
|  |  | 
| 855 | ····if-eqz·p0,·:cond_7 | 853 | ····if-eqz·p0,·:cond_7 | 
|  |  | 
| 856 | ····return-void | 854 | ····return-void | 
|  |  | 
| 857 | ····.line·8 37 | 855 | ····.line·820 | 
| 858 | ····:cond_7 | 856 | ····:cond_7 | 
| 859 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern156832140:Ljava/util/regex/Pattern; | 857 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern156832140:Ljava/util/regex/Pattern; | 
|  |  | 
| 860 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 858 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 
|  |  | 
| 861 | ····move-result-object·p0 | 859 | ····move-result-object·p0 | 
|  |  | 
| Offset 879, 15 lines modified | Offset 877, 15 lines modified | 
|  |  | 
| 879 | ····move-result·p0 | 877 | ····move-result·p0 | 
|  |  | 
| 880 | ····if-eqz·p0,·:cond_8 | 878 | ····if-eqz·p0,·:cond_8 | 
|  |  | 
| 881 | ····return-void | 879 | ····return-void | 
|  |  | 
| 882 | ····.line·8 38 | 880 | ····.line·821 | 
| 883 | ····:cond_8 | 881 | ····:cond_8 | 
| 884 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern158537159:Ljava/util/regex/Pattern; | 882 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sPattern158537159:Ljava/util/regex/Pattern; | 
|  |  | 
| 885 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 883 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 
|  |  | 
| 886 | ····move-result-object·p0 | 884 | ····move-result-object·p0 | 
|  |  | 
| Offset 895, 15 lines modified | Offset 893, 15 lines modified | 
|  |  | 
| 895 | ····move-result·p0 | 893 | ····move-result·p0 | 
|  |  | 
| 896 | ····if-eqz·p0,·:cond_9 | 894 | ····if-eqz·p0,·:cond_9 | 
|  |  | 
| 897 | ····return-void | 895 | ····return-void | 
|  |  | 
| 898 | ····.line·8 41 | 896 | ····.line·824 | 
| 899 | ····:cond_9 | 897 | ····:cond_9 | 
| 900 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 898 | ····new-instance·p0,·Ljava/lang/IllegalArgumentException; | 
|  |  | 
| 901 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 899 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 902 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 900 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 
|  |  | 
| Offset 946, 31 lines modified | Offset 944, 18 lines modified | 
| 946 | ········:pswitch_0 | 944 | ········:pswitch_0 | 
| 947 | ········:pswitch_0 | 945 | ········:pswitch_0 | 
| 948 | ········:pswitch_0 | 946 | ········:pswitch_0 | 
| 949 | ········:pswitch_0 | 947 | ········:pswitch_0 | 
| 950 | ····.end·packed-switch | 948 | ····.end·packed-switch | 
| 951 | .end·method | 949 | .end·method | 
|  |  | 
| 952 | .method·private·static·hasUserWhere(Ljava/lang/String;)Z |  | 
| 953 | ····.locals·0 |  | 
|  |  | 
| 954 | ····.line·770 |  | 
| 955 | ····invoke-static·{p0},·Lcom/google/common/base/Strings;->isNullOrEmpty(Ljava/lang/String;)Z |  | 
|  |  | 
| 956 | ····move-result·p0 |  | 
|  |  | 
| 957 | ····xor-int/lit8·p0,·p0,·0x1 |  | 
|  |  | 
| 958 | ····return·p0 |  | 
| 959 | .end·method |  | 
|  |  | 
| 960 | .method·private·isCustomCollator(Ljava/lang/String;)Z | 950 | .method·private·isCustomCollator(Ljava/lang/String;)Z | 
| 961 | ····.locals·0 | 951 | ····.locals·0 | 
|  |  | 
| 962 | ····.line·1 105 | 952 | ····.line·1088 | 
| 963 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sCustomCollatorPattern:Ljava/util/regex/Pattern; | 953 | ····sget-object·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->sCustomCollatorPattern:Ljava/util/regex/Pattern; | 
|  |  | 
| 964 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 954 | ····invoke-virtual·{p0,·p1},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; | 
|  |  | 
| 965 | ····move-result-object·p0 | 955 | ····move-result-object·p0 | 
|  |  | 
| 966 | ····invoke-virtual·{p0},·Ljava/util/regex/Matcher;->matches()Z | 956 | ····invoke-virtual·{p0},·Ljava/util/regex/Matcher;->matches()Z | 
| Offset 979, 28 lines modified | Offset 964, 28 lines modified | 
|  |  | 
| 979 | ····return·p0 | 964 | ····return·p0 | 
| 980 | .end·method | 965 | .end·method | 
|  |  | 
| 981 | .method·private·isTableOrColumn(Ljava/lang/String;)Z | 966 | .method·private·isTableOrColumn(Ljava/lang/String;)Z | 
| 982 | ····.locals·2 | 967 | ····.locals·2 | 
|  |  | 
| 983 | ····.line·1 100 | 968 | ····.line·1083 | 
| 984 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTables:Ljava/lang/String; | 969 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mTables:Ljava/lang/String; | 
|  |  | 
| 985 | ····invoke-virtual·{v0,·p1},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z | 970 | ····invoke-virtual·{v0,·p1},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z | 
|  |  | 
| 986 | ····move-result·v0 | 971 | ····move-result·v0 | 
|  |  | 
| 987 | ····const/4·v1,·0x1 | 972 | ····const/4·v1,·0x1 | 
|  |  | 
| 988 | ····if-eqz·v0,·:cond_0 | 973 | ····if-eqz·v0,·:cond_0 | 
|  |  | 
| 989 | ····return·v1 | 974 | ····return·v1 | 
|  |  | 
| 990 | ····.line·1 101 | 975 | ····.line·1084 | 
| 991 | ····:cond_0 | 976 | ····:cond_0 | 
| 992 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; | 977 | ····invoke-direct·{p0,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->computeSingleProjection(Ljava/lang/String;)Ljava/lang/String; | 
|  |  | 
| 993 | ····move-result-object·p0 | 978 | ····move-result-object·p0 | 
|  |  | 
| 994 | ····if-eqz·p0,·:cond_1 | 979 | ····if-eqz·p0,·:cond_1 | 
|  |  | 
| Offset 1020, 30 lines modified | Offset 1005, 30 lines modified | 
|  |  | 
| 1020 | ····return-void | 1005 | ····return-void | 
| 1021 | .end·method | 1006 | .end·method | 
|  |  | 
| 1022 | .method·private·synthetic·lambda$delete$3(Ljava/lang/String;[Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Integer; | 1007 | .method·private·synthetic·lambda$delete$3(Ljava/lang/String;[Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Integer; | 
| 1023 | ····.locals·0 | 1008 | ····.locals·0 | 
|  |  | 
| 1024 | ····.line· 705 | 1009 | ····.line·692 | 
| 1025 | ····invoke-virtual·{p0,·p3,·p1,·p2},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->delete(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;)I | 1010 | ····invoke-virtual·{p0,·p3,·p1,·p2},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->delete(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;)I | 
|  |  | 
| 1026 | ····move-result·p0 | 1011 | ····move-result·p0 | 
|  |  | 
| 1027 | ····invoke-static·{p0},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; | 1012 | ····invoke-static·{p0},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; | 
|  |  | 
| 1028 | ····move-result-object·p0 | 1013 | ····move-result-object·p0 | 
|  |  | 
| 1029 | ····return-object·p0 | 1014 | ····return-object·p0 | 
| 1030 | .end·method | 1015 | .end·method | 
|  |  | 
| 1031 | .method·private·synthetic·lambda$insert$1(Landroid/content/ContentValues;Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Long; | 1016 | .method·private·synthetic·lambda$insert$1(Landroid/content/ContentValues;Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Long; | 
| 1032 | ····.locals·0 | 1017 | ····.locals·0 | 
|  |  | 
| 1033 | ····.line·5 75 | 1018 | ····.line·562 | 
| 1034 | ····invoke-virtual·{p0,·p2,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->insert(Landroid/database/sqlite/SQLiteDatabase;Landroid/content/ContentValues;)J | 1019 | ····invoke-virtual·{p0,·p2,·p1},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->insert(Landroid/database/sqlite/SQLiteDatabase;Landroid/content/ContentValues;)J | 
|  |  | 
| 1035 | ····move-result-wide·p0 | 1020 | ····move-result-wide·p0 | 
|  |  | 
| 1036 | ····invoke-static·{p0,·p1},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; | 1021 | ····invoke-static·{p0,·p1},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; | 
|  |  | 
| 1037 | ····move-result-object·p0 | 1022 | ····move-result-object·p0 | 
| Offset 1070, 26 lines modified | Offset 1055, 26 lines modified | 
|  |  | 
| 1070 | ····move-object/from16·v7,·p6 | 1055 | ····move-object/from16·v7,·p6 | 
|  |  | 
| 1071 | ····move-object/from16·v8,·p7 | 1056 | ····move-object/from16·v8,·p7 | 
|  |  | 
| 1072 | ····move-object/from16·v9,·p8 | 1057 | ····move-object/from16·v9,·p8 | 
|  |  | 
| 1073 | ····.line·4 74 | 1058 | ····.line·461 | 
| 1074 | ····invoke-virtual/range·{v0·..·v9},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->query(Landroid/database/sqlite/SQLiteDatabase;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; | 1059 | ····invoke-virtual/range·{v0·..·v9},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->query(Landroid/database/sqlite/SQLiteDatabase;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor; | 
|  |  | 
| 1075 | ····move-result-object·v0 | 1060 | ····move-result-object·v0 | 
|  |  | 
| 1076 | ····return-object·v0 | 1061 | ····return-object·v0 | 
| 1077 | .end·method | 1062 | .end·method | 
|  |  | 
| 1078 | .method·private·synthetic·lambda$update$2(Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Integer; | 1063 | .method·private·synthetic·lambda$update$2(Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Integer; | 
| 1079 | ····.locals·0 | 1064 | ····.locals·0 | 
|  |  | 
| 1080 | ····.line·6 19 | 1065 | ····.line·606 | 
| 1081 | ····invoke-virtual·{p0,·p4,·p1,·p2,·p3},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->update(Landroid/database/sqlite/SQLiteDatabase;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I | 1066 | ····invoke-virtual·{p0,·p4,·p1,·p2,·p3},·Lcom/android/providers/media/util/SQLiteQueryBuilder;->update(Landroid/database/sqlite/SQLiteDatabase;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I | 
|  |  | 
| 1082 | ····move-result·p0 | 1067 | ····move-result·p0 | 
|  |  | 
| 1083 | ····invoke-static·{p0},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; | 1068 | ····invoke-static·{p0},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; | 
|  |  | 
| 1084 | ····move-result-object·p0 | 1069 | ····move-result-object·p0 | 
| Offset 1098, 15 lines modified | Offset 1083, 15 lines modified | 
| 1098 | .end·method | 1083 | .end·method | 
|  |  | 
| 1099 | .method·private·static·maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 1084 | .method·private·static·maybeWithOperator(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 
| 1100 | ····.locals·1 | 1085 | ····.locals·1 | 
|  |  | 
| 1101 | ····if-eqz·p0,·:cond_0 | 1086 | ····if-eqz·p0,·:cond_0 | 
|  |  | 
| 1102 | ····.line· 1006 | 1087 | ····.line·989 | 
| 1103 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 1088 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 1104 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 1089 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 
|  |  | 
| 1105 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 1090 | ····invoke-virtual·{v0,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 1106 | ····const-string·p0,·"(" | 1091 | ····const-string·p0,·"(" | 
| Offset 1125, 27 lines modified | Offset 1110, 58 lines modified | 
|  |  | 
| 1125 | ····return-object·p0 | 1110 | ····return-object·p0 | 
|  |  | 
| 1126 | ····:cond_0 | 1111 | ····:cond_0 | 
| 1127 | ····return-object·p1 | 1112 | ····return-object·p1 | 
| 1128 | .end·method | 1113 | .end·method | 
|  |  | 
|  | 1114 | .method·private·static·shouldAppendRowId(Landroid/content/ContentValues;)Z | 
|  | 1115 | ····.locals·1 | 
|  |  | 
|  | 1116 | ····const-string·v0,·"_id" | 
|  |  | 
|  | 1117 | ····.line·1126 | 
|  | 1118 | ····invoke-virtual·{p0,·v0},·Landroid/content/ContentValues;->containsKey(Ljava/lang/String;)Z | 
|  |  | 
|  | 1119 | ····move-result·v0 | 
|  |  | 
|  | 1120 | ····if-nez·v0,·:cond_0 | 
|  |  | 
|  | 1121 | ····const-string·v0,·"_data" | 
|  |  | 
|  | 1122 | ····invoke-virtual·{p0,·v0},·Landroid/content/ContentValues;->containsKey(Ljava/lang/String;)Z | 
|  |  | 
|  | 1123 | ····move-result·p0 | 
|  |  | 
|  | 1124 | ····if-eqz·p0,·:cond_0 | 
|  |  | 
|  | 1125 | ····const/4·p0,·0x1 | 
|  |  | 
|  | 1126 | ····goto·:goto_0 | 
|  |  | 
|  | 1127 | ····:cond_0 | 
|  | 1128 | ····const/4·p0,·0x0 | 
|  |  | 
|  | 1129 | ····:goto_0 | 
|  | 1130 | ····return·p0 | 
|  | 1131 | .end·method | 
|  |  | 
| 1129 | .method·private·wrap(Ljava/lang/String;)Ljava/lang/String; | 1132 | .method·private·wrap(Ljava/lang/String;)Ljava/lang/String; | 
| 1130 | ····.locals·1 | 1133 | ····.locals·1 | 
|  |  | 
| 1131 | ····.line·11 35 | 1134 | ····.line·1118 | 
| 1132 | ····invoke-static·{p1},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 1135 | ····invoke-static·{p1},·Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z | 
|  |  | 
| 1133 | ····move-result·p0 | 1136 | ····move-result·p0 | 
|  |  | 
| 1134 | ····if-eqz·p0,·:cond_0 | 1137 | ····if-eqz·p0,·:cond_0 | 
|  |  | 
| 1135 | ····return-object·p1 | 1138 | ····return-object·p1 | 
|  |  | 
| 1136 | ····.line·11 38 | 1139 | ····.line·1121 | 
| 1137 | ····:cond_0 | 1140 | ····:cond_0 | 
| 1138 | ····new-instance·p0,·Ljava/lang/StringBuilder; | 1141 | ····new-instance·p0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 1139 | ····invoke-direct·{p0},·Ljava/lang/StringBuilder;-><init>()V | 1142 | ····invoke-direct·{p0},·Ljava/lang/StringBuilder;-><init>()V | 
|  |  | 
| 1140 | ····const-string·v0,·"(" | 1143 | ····const-string·v0,·"(" | 
|  |  | 
| Offset 1162, 139 lines modified | Offset 1178, 113 lines modified | 
| 1162 | ····move-result-object·p0 | 1178 | ····move-result-object·p0 | 
|  |  | 
| 1163 | ····return-object·p0 | 1179 | ····return-object·p0 | 
| 1164 | .end·method | 1180 | .end·method | 
|  |  | 
|  |  | 
| 1165 | #·virtual·methods | 1181 | #·virtual·methods | 
| 1166 | .method·public·allowRowidColumn()V |  | 
| 1167 | ····.locals·1 |  | 
|  |  | 
| 1168 | ····.line·239 |  | 
| 1169 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; |  | 
|  |  | 
| 1170 | ····if-nez·v0,·:cond_0 |  | 
|  |  | 
| 1171 | ····.line·240 |  | 
| 1172 | ····new-instance·v0,·Landroid/util/ArrayMap; |  | 
|  |  | 
| 1173 | ····invoke-direct·{v0},·Landroid/util/ArrayMap;-><init>()V |  | 
|  |  | 
| 1174 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; |  | 
|  |  | 
| 1175 | ····.line·242 |  | 
| 1176 | ····:cond_0 |  | 
| 1177 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mProjectionMap:Ljava/util/Map; |  | 
|  |  | 
| 1178 | ····const-string·v0,·"rowid" |  | 
|  |  | 
| 1179 | ····invoke-interface·{p0,·v0,·v0},·Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; |  | 
|  |  | 
| 1180 | ····return-void |  | 
| 1181 | .end·method |  | 
|  |  | 
| 1182 | .method·public·appendWhere(Ljava/lang/CharSequence;)V | 1182 | .method·public·appendWhere(Ljava/lang/CharSequence;)V | 
| 1183 | ····.locals·2 | 1183 | ····.locals·2 | 
|  |  | 
| 1184 | ····.line·1 71 | 1184 | ····.line·166 | 
| 1185 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1185 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1186 | ····if-nez·v0,·:cond_0 | 1186 | ····if-nez·v0,·:cond_0 | 
|  |  | 
| 1187 | ····.line·1 72 | 1187 | ····.line·167 | 
| 1188 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 1188 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 1189 | ····invoke-interface·{p1},·Ljava/lang/CharSequence;->length()I | 1189 | ····invoke-interface·{p1},·Ljava/lang/CharSequence;->length()I | 
|  |  | 
| 1190 | ····move-result·v1 | 1190 | ····move-result·v1 | 
|  |  | 
| 1191 | ····add-int/lit8·v1,·v1,·0x10 | 1191 | ····add-int/lit8·v1,·v1,·0x10 | 
|  |  | 
| 1192 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 1192 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 
|  |  | 
| 1193 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1193 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1194 | ····.line·1 74 | 1194 | ····.line·169 | 
| 1195 | ····:cond_0 | 1195 | ····:cond_0 | 
| 1196 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1196 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1197 | ····invoke-virtual·{p0,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; | 1197 | ····invoke-virtual·{p0,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; | 
|  |  | 
| 1198 | ····return-void | 1198 | ····return-void | 
| 1199 | .end·method | 1199 | .end·method | 
|  |  | 
| 1200 | .method·public·appendWhereEscapeString(Ljava/lang/String;)V | 1200 | .method·public·appendWhereEscapeString(Ljava/lang/String;)V | 
| 1201 | ····.locals·2 | 1201 | ····.locals·2 | 
|  |  | 
| 1202 | ····.line·18 8 | 1202 | ····.line·183 | 
| 1203 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1203 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1204 | ····if-nez·v0,·:cond_0 | 1204 | ····if-nez·v0,·:cond_0 | 
|  |  | 
| 1205 | ····.line·18 9 | 1205 | ····.line·184 | 
| 1206 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 1206 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 1207 | ····invoke-virtual·{p1},·Ljava/lang/String;->length()I | 1207 | ····invoke-virtual·{p1},·Ljava/lang/String;->length()I | 
|  |  | 
| 1208 | ····move-result·v1 | 1208 | ····move-result·v1 | 
|  |  | 
| 1209 | ····add-int/lit8·v1,·v1,·0x10 | 1209 | ····add-int/lit8·v1,·v1,·0x10 | 
|  |  | 
| 1210 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 1210 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 
|  |  | 
| 1211 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1211 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1212 | ····.line·1 91 | 1212 | ····.line·186 | 
| 1213 | ····:cond_0 | 1213 | ····:cond_0 | 
| 1214 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1214 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1215 | ····invoke-static·{p0,·p1},·Landroid/database/DatabaseUtils;->appendEscapedSQLString(Ljava/lang/StringBuilder;Ljava/lang/String;)V | 1215 | ····invoke-static·{p0,·p1},·Landroid/database/DatabaseUtils;->appendEscapedSQLString(Ljava/lang/StringBuilder;Ljava/lang/String;)V | 
|  |  | 
| 1216 | ····return-void | 1216 | ····return-void | 
| 1217 | .end·method | 1217 | .end·method | 
|  |  | 
| 1218 | .method·public·appendWhereStandalone(Ljava/lang/CharSequence;)V | 1218 | .method·public·appendWhereStandalone(Ljava/lang/CharSequence;)V | 
| 1219 | ····.locals·2 | 1219 | ····.locals·2 | 
|  |  | 
| 1220 | ····.line·20 6 | 1220 | ····.line·201 | 
| 1221 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1221 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1222 | ····if-nez·v0,·:cond_0 | 1222 | ····if-nez·v0,·:cond_0 | 
|  |  | 
| 1223 | ····.line·20 7 | 1223 | ····.line·202 | 
| 1224 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 1224 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 
|  |  | 
| 1225 | ····invoke-interface·{p1},·Ljava/lang/CharSequence;->length()I | 1225 | ····invoke-interface·{p1},·Ljava/lang/CharSequence;->length()I | 
|  |  | 
| 1226 | ····move-result·v1 | 1226 | ····move-result·v1 | 
|  |  | 
| 1227 | ····add-int/lit8·v1,·v1,·0x10 | 1227 | ····add-int/lit8·v1,·v1,·0x10 | 
|  |  | 
| 1228 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 1228 | ····invoke-direct·{v0,·v1},·Ljava/lang/StringBuilder;-><init>(I)V | 
|  |  | 
| 1229 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1229 | ····iput-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1230 | ····.line·20 9 | 1230 | ····.line·204 | 
| 1231 | ····:cond_0 | 1231 | ····:cond_0 | 
| 1232 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1232 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1233 | ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->length()I | 1233 | ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->length()I | 
|  |  | 
| 1234 | ····move-result·v0 | 1234 | ····move-result·v0 | 
|  |  | 
| 1235 | ····if-lez·v0,·:cond_1 | 1235 | ····if-lez·v0,·:cond_1 | 
|  |  | 
| 1236 | ····.line·2 10 | 1236 | ····.line·205 | 
| 1237 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1237 | ····iget-object·v0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1238 | ····const-string·v1,·"·AND·" | 1238 | ····const-string·v1,·"·AND·" | 
|  |  | 
| 1239 | ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 1239 | ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; | 
|  |  | 
| 1240 | ····.line·2 12 | 1240 | ····.line·207 | 
| 1241 | ····:cond_1 | 1241 | ····:cond_1 | 
| 1242 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 1242 | ····iget-object·p0,·p0,·Lcom/android/providers/media/util/SQLiteQueryBuilder;->mWhereClause:Ljava/lang/StringBuilder; | 
|  |  | 
| 1243 | ····const/16·v0,·0x28 | 1243 | ····const/16·v0,·0x28 | 
|  |  | 
| 1244 | ····invoke-virtual·{p0,·v0},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; | 1244 | ····invoke-virtual·{p0,·v0},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; | 
|  |  | 
| Offset 1306, 317 lines modified | Offset 1296, 317 lines modified | 
|  |  | 
| 1306 | ····return-void | 1296 | ····return-void | 
| 1307 | .end·method | 1297 | .end·method | 
| Max diff block lines reached; 57063/86294 bytes (66.13%) of diff not shown. |