Revert "Fixed pdroid security hole (ported from OpenPDroid)"
[auto-patcher.git] / patches / pdroid / 4.0 / cm / 20120508 / framework.patch
blob29bdd7f4e4b70335627047d61f1fbff84127a236
1 diff -Npru stock-framework/smali/android/accounts/AccountAuthenticatorCache.smali pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali
2 --- stock-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-05-08 11:54:25.730615301 -0500
3 +++ pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-05-08 11:54:49.506733201 -0500
4 @@ -136,7 +136,7 @@
6 invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
7 :try_end_2c
8 - .catchall {:try_start_7 .. :try_end_2c} :catchall_3e
9 + .catchall {:try_start_7 .. :try_end_2c} :catchall_3b
11 move-result v0
13 @@ -144,9 +144,9 @@
15 const/4 v0, 0x0
17 + :goto_30
18 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
20 - :goto_33
21 return-object v0
23 :cond_34
24 @@ -157,13 +157,11 @@
26 invoke-direct/range {v0 .. v7}, Landroid/accounts/AuthenticatorDescription;-><init>(Ljava/lang/String;Ljava/lang/String;IIIIZ)V
27 :try_end_3a
28 - .catchall {:try_start_34 .. :try_end_3a} :catchall_3e
29 + .catchall {:try_start_34 .. :try_end_3a} :catchall_3b
31 - invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
33 - goto :goto_33
34 + goto :goto_30
36 - :catchall_3e
37 + :catchall_3b
38 move-exception v0
40 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
41 diff -Npru stock-framework/smali/android/accounts/AccountManager$AmsTask.smali pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali
42 --- stock-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-05-08 11:54:25.782615563 -0500
43 +++ pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-05-08 11:54:49.550733422 -0500
44 @@ -133,102 +133,102 @@
46 :try_start_e
47 invoke-virtual {p0}, Landroid/accounts/AccountManager$AmsTask;->get()Ljava/lang/Object;
48 + :try_end_11
49 + .catchall {:try_start_e .. :try_end_11} :catchall_2a
50 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_23
51 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_72
52 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_60
53 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_2f
55 move-result-object v2
57 + :try_start_12
58 check-cast v2, Landroid/os/Bundle;
59 :try_end_14
60 - .catchall {:try_start_e .. :try_end_14} :catchall_2d
61 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_14} :catch_26
62 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_14} :catch_32
63 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_14} :catch_3c
64 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_14} :catch_41
65 + .catchall {:try_start_12 .. :try_end_14} :catchall_2a
66 + .catch Ljava/util/concurrent/CancellationException; {:try_start_12 .. :try_end_14} :catch_23
67 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_12 .. :try_end_14} :catch_72
68 + .catch Ljava/lang/InterruptedException; {:try_start_12 .. :try_end_14} :catch_6a
69 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_12 .. :try_end_14} :catch_2f
71 + :goto_14
72 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
74 - :goto_17
75 return-object v2
77 :cond_18
78 :try_start_18
79 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
80 + :try_end_1b
81 + .catchall {:try_start_18 .. :try_end_1b} :catchall_2a
82 + .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_1b} :catch_23
83 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_1b} :catch_72
84 + .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_1b} :catch_6c
85 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_1b} :catch_2f
87 move-result-wide v2
89 + :try_start_1c
90 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$AmsTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
91 + :try_end_1f
92 + .catchall {:try_start_1c .. :try_end_1f} :catchall_2a
93 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1c .. :try_end_1f} :catch_23
94 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1c .. :try_end_1f} :catch_72
95 + .catch Ljava/lang/InterruptedException; {:try_start_1c .. :try_end_1f} :catch_6e
96 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1c .. :try_end_1f} :catch_2f
98 move-result-object v2
100 + :try_start_20
101 check-cast v2, Landroid/os/Bundle;
102 :try_end_22
103 - .catchall {:try_start_18 .. :try_end_22} :catchall_2d
104 - .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_22} :catch_26
105 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_22} :catch_32
106 - .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_22} :catch_3c
107 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_22} :catch_41
108 + .catchall {:try_start_20 .. :try_end_22} :catchall_2a
109 + .catch Ljava/util/concurrent/CancellationException; {:try_start_20 .. :try_end_22} :catch_23
110 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_20 .. :try_end_22} :catch_72
111 + .catch Ljava/lang/InterruptedException; {:try_start_20 .. :try_end_22} :catch_70
112 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_20 .. :try_end_22} :catch_2f
114 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
116 - goto :goto_17
117 + goto :goto_14
119 - :catch_26
120 + :catch_23
121 move-exception v1
123 - :try_start_27
124 + :try_start_24
125 new-instance v2, Landroid/accounts/OperationCanceledException;
127 invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
129 throw v2
130 - :try_end_2d
131 - .catchall {:try_start_27 .. :try_end_2d} :catchall_2d
132 + :try_end_2a
133 + .catchall {:try_start_24 .. :try_end_2a} :catchall_2a
135 - :catchall_2d
136 + :catchall_2a
137 move-exception v2
139 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
141 throw v2
143 - :catch_32
144 - move-exception v2
146 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
148 - :goto_36
149 - new-instance v2, Landroid/accounts/OperationCanceledException;
151 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
153 - throw v2
155 - :catch_3c
156 - move-exception v2
158 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
160 - goto :goto_36
162 - :catch_41
163 + :catch_2f
164 move-exception v1
166 - :try_start_42
167 + :try_start_30
168 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
170 move-result-object v0
172 instance-of v2, v0, Ljava/io/IOException;
174 - if-eqz v2, :cond_4d
175 + if-eqz v2, :cond_3b
177 check-cast v0, Ljava/io/IOException;
179 throw v0
181 - :cond_4d
182 + :cond_3b
183 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
185 - if-eqz v2, :cond_57
186 + if-eqz v2, :cond_45
188 new-instance v2, Landroid/accounts/AuthenticatorException;
190 @@ -236,41 +236,78 @@
192 throw v2
194 - :cond_57
195 + :cond_45
196 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
198 - if-eqz v2, :cond_5e
199 + if-eqz v2, :cond_4c
201 check-cast v0, Landroid/accounts/AuthenticatorException;
203 throw v0
205 - :cond_5e
206 + :cond_4c
207 instance-of v2, v0, Ljava/lang/RuntimeException;
209 - if-eqz v2, :cond_65
210 + if-eqz v2, :cond_53
212 check-cast v0, Ljava/lang/RuntimeException;
214 throw v0
216 - :cond_65
217 + :cond_53
218 instance-of v2, v0, Ljava/lang/Error;
220 - if-eqz v2, :cond_6c
221 + if-eqz v2, :cond_5a
223 check-cast v0, Ljava/lang/Error;
225 throw v0
227 - :cond_6c
228 + :cond_5a
229 new-instance v2, Ljava/lang/IllegalStateException;
231 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
233 throw v2
234 - :try_end_72
235 - .catchall {:try_start_42 .. :try_end_72} :catchall_2d
236 + :try_end_60
237 + .catchall {:try_start_30 .. :try_end_60} :catchall_2a
239 + :catch_60
240 + move-exception v2
242 + :goto_61
243 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
245 + new-instance v2, Landroid/accounts/OperationCanceledException;
247 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
249 + throw v2
251 + :catch_6a
252 + move-exception v2
254 + goto :goto_61
256 + :catch_6c
257 + move-exception v2
259 + goto :goto_61
261 + :catch_6e
262 + move-exception v2
264 + goto :goto_61
266 + :catch_70
267 + move-exception v2
269 + goto :goto_61
271 + :catch_72
272 + move-exception v2
274 + goto :goto_61
275 .end method
278 diff -Npru stock-framework/smali/android/accounts/AccountManager$Future2Task.smali pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali
279 --- stock-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-05-08 11:54:25.762615459 -0500
280 +++ pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-05-08 11:54:49.530733318 -0500
281 @@ -101,95 +101,74 @@
282 :try_start_e
283 invoke-virtual {p0}, Landroid/accounts/AccountManager$Future2Task;->get()Ljava/lang/Object;
284 :try_end_11
285 - .catchall {:try_start_e .. :try_end_11} :catchall_42
286 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_22
287 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_2c
288 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_31
289 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_36
290 + .catchall {:try_start_e .. :try_end_11} :catchall_2b
291 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_69
292 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_63
293 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_55
294 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_1f
296 move-result-object v2
298 + :goto_12
299 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
301 - :goto_15
302 return-object v2
304 :cond_16
305 :try_start_16
306 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
307 + :try_end_19
308 + .catchall {:try_start_16 .. :try_end_19} :catchall_2b
309 + .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_19} :catch_69
310 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_19} :catch_65
311 + .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_19} :catch_5f
312 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_19} :catch_1f
314 move-result-wide v2
316 + :try_start_1a
317 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$Future2Task;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
318 :try_end_1d
319 - .catchall {:try_start_16 .. :try_end_1d} :catchall_42
320 - .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_1d} :catch_22
321 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_1d} :catch_2c
322 - .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_1d} :catch_31
323 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_1d} :catch_36
324 + .catchall {:try_start_1a .. :try_end_1d} :catchall_2b
325 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_69
326 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1a .. :try_end_1d} :catch_67
327 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1a .. :try_end_1d} :catch_61
328 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1a .. :try_end_1d} :catch_1f
330 move-result-object v2
332 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
334 - goto :goto_15
336 - :catch_22
337 - move-exception v2
338 + goto :goto_12
340 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
342 - :goto_26
343 - new-instance v2, Landroid/accounts/OperationCanceledException;
345 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
347 - throw v2
349 - :catch_2c
350 - move-exception v2
352 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
354 - goto :goto_26
356 - :catch_31
357 - move-exception v2
359 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
361 - goto :goto_26
363 - :catch_36
364 + :catch_1f
365 move-exception v1
367 - :try_start_37
368 + :try_start_20
369 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
371 move-result-object v0
373 instance-of v2, v0, Ljava/io/IOException;
375 - if-eqz v2, :cond_47
376 + if-eqz v2, :cond_30
378 check-cast v0, Ljava/io/IOException;
380 throw v0
381 - :try_end_42
382 - .catchall {:try_start_37 .. :try_end_42} :catchall_42
383 + :try_end_2b
384 + .catchall {:try_start_20 .. :try_end_2b} :catchall_2b
386 - :catchall_42
387 + :catchall_2b
388 move-exception v2
390 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
392 throw v2
394 - :cond_47
395 - :try_start_47
396 + :cond_30
397 + :try_start_30
398 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
400 - if-eqz v2, :cond_51
401 + if-eqz v2, :cond_3a
403 new-instance v2, Landroid/accounts/AuthenticatorException;
405 @@ -197,41 +176,83 @@
407 throw v2
409 - :cond_51
410 + :cond_3a
411 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
413 - if-eqz v2, :cond_58
414 + if-eqz v2, :cond_41
416 check-cast v0, Landroid/accounts/AuthenticatorException;
418 throw v0
420 - :cond_58
421 + :cond_41
422 instance-of v2, v0, Ljava/lang/RuntimeException;
424 - if-eqz v2, :cond_5f
425 + if-eqz v2, :cond_48
427 check-cast v0, Ljava/lang/RuntimeException;
429 throw v0
431 - :cond_5f
432 + :cond_48
433 instance-of v2, v0, Ljava/lang/Error;
435 - if-eqz v2, :cond_66
436 + if-eqz v2, :cond_4f
438 check-cast v0, Ljava/lang/Error;
440 throw v0
442 - :cond_66
443 + :cond_4f
444 new-instance v2, Ljava/lang/IllegalStateException;
446 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
448 throw v2
449 - :try_end_6c
450 - .catchall {:try_start_47 .. :try_end_6c} :catchall_42
451 + :try_end_55
452 + .catchall {:try_start_30 .. :try_end_55} :catchall_2b
454 + :catch_55
455 + move-exception v2
457 + :goto_56
458 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
460 + new-instance v2, Landroid/accounts/OperationCanceledException;
462 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
464 + throw v2
466 + :catch_5f
467 + move-exception v2
469 + goto :goto_56
471 + :catch_61
472 + move-exception v2
474 + goto :goto_56
476 + :catch_63
477 + move-exception v2
479 + goto :goto_56
481 + :catch_65
482 + move-exception v2
484 + goto :goto_56
486 + :catch_67
487 + move-exception v2
489 + goto :goto_56
491 + :catch_69
492 + move-exception v2
494 + goto :goto_56
495 .end method
498 diff -Npru stock-framework/smali/android/accounts/AccountManagerService.smali pdroid-framework/smali/android/accounts/AccountManagerService.smali
499 --- stock-framework/smali/android/accounts/AccountManagerService.smali 2012-05-08 11:54:25.886616074 -0500
500 +++ pdroid-framework/smali/android/accounts/AccountManagerService.smali 2012-05-08 11:54:49.734734334 -0500
501 @@ -1502,23 +1502,21 @@
503 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
504 :try_end_2a
505 - .catchall {:try_start_20 .. :try_end_2a} :catchall_35
506 + .catchall {:try_start_20 .. :try_end_2a} :catchall_32
508 move-result-wide v0
510 + :goto_2b
511 invoke-interface {v8}, Landroid/database/Cursor;->close()V
513 - :goto_2e
514 return-wide v0
516 :cond_2f
517 const-wide/16 v0, -0x1
519 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
521 - goto :goto_2e
522 + goto :goto_2b
524 - :catchall_35
525 + :catchall_32
526 move-exception v0
528 invoke-interface {v8}, Landroid/database/Cursor;->close()V
529 @@ -1713,23 +1711,21 @@
531 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
532 :try_end_45
533 - .catchall {:try_start_3b .. :try_end_45} :catchall_50
534 + .catchall {:try_start_3b .. :try_end_45} :catchall_4d
536 move-result-wide v0
538 + :goto_46
539 invoke-interface {v8}, Landroid/database/Cursor;->close()V
541 - :goto_49
542 return-wide v0
544 :cond_4a
545 const-wide/16 v0, -0x1
547 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
549 - goto :goto_49
550 + goto :goto_46
552 - :catchall_50
553 + :catchall_4d
554 move-exception v0
556 invoke-interface {v8}, Landroid/database/Cursor;->close()V
557 @@ -4581,7 +4577,7 @@
558 const/16 v16, 0x1
560 :goto_68
561 - if-eqz v16, :cond_ba
562 + if-eqz v16, :cond_b3
564 const-string v4, "accounts"
566 @@ -4609,7 +4605,7 @@
568 move-result v4
570 - if-eqz v4, :cond_b3
571 + if-eqz v4, :cond_175
573 new-instance v4, Ljava/lang/StringBuilder;
575 @@ -4679,20 +4675,9 @@
576 goto :goto_68
578 :cond_b3
579 - if-eqz v14, :cond_b8
581 - :try_start_b5
582 - invoke-interface {v14}, Landroid/database/Cursor;->close()V
584 - :cond_b8
585 - :goto_b8
586 - monitor-exit v21
588 - goto :goto_42
590 - :cond_ba
591 const/4 v4, 0x0
593 + :try_start_b4
594 move-object/from16 v0, p0
596 invoke-virtual {v0, v4}, Landroid/accounts/AccountManagerService;->getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
597 @@ -4731,10 +4716,10 @@
599 const/4 v15, 0x0
601 - :goto_df
602 + :goto_d8
603 move/from16 v0, v17
605 - if-ge v15, v0, :cond_100
606 + if-ge v15, v0, :cond_f9
608 aget-object v11, v13, v15
610 @@ -4762,9 +4747,9 @@
612 add-int/lit8 v15, v15, 0x1
614 - goto :goto_df
615 + goto :goto_d8
617 - :cond_100
618 + :cond_f9
619 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
621 move-object/from16 v0, p0
622 @@ -4772,10 +4757,10 @@
623 iget-object v5, v0, Landroid/accounts/AccountManagerService;->mSessions:Ljava/util/LinkedHashMap;
625 monitor-enter v5
626 - :try_end_108
627 - .catchall {:try_start_b5 .. :try_end_108} :catchall_ad
628 + :try_end_101
629 + .catchall {:try_start_b4 .. :try_end_101} :catchall_ad
631 - :try_start_108
632 + :try_start_101
633 invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
635 move-result-wide v18
636 @@ -4822,12 +4807,12 @@
638 move-result-object v15
640 - :goto_138
641 + :goto_131
642 invoke-interface {v15}, Ljava/util/Iterator;->hasNext()Z
644 move-result v4
646 - if-eqz v4, :cond_168
647 + if-eqz v4, :cond_161
649 invoke-interface {v15}, Ljava/util/Iterator;->next()Ljava/lang/Object;
651 @@ -4865,27 +4850,27 @@
653 invoke-virtual {v0, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
655 - goto :goto_138
656 + goto :goto_131
658 - :catchall_165
659 + :catchall_15e
660 move-exception v4
662 monitor-exit v5
663 - :try_end_167
664 - .catchall {:try_start_108 .. :try_end_167} :catchall_165
665 + :try_end_160
666 + .catchall {:try_start_101 .. :try_end_160} :catchall_15e
668 - :try_start_167
669 + :try_start_160
670 throw v4
671 - :try_end_168
672 - .catchall {:try_start_167 .. :try_end_168} :catchall_ad
673 + :try_end_161
674 + .catchall {:try_start_160 .. :try_end_161} :catchall_ad
676 - :cond_168
677 - :try_start_168
678 + :cond_161
679 + :try_start_161
680 monitor-exit v5
681 - :try_end_169
682 - .catchall {:try_start_168 .. :try_end_169} :catchall_165
683 + :try_end_162
684 + .catchall {:try_start_161 .. :try_end_162} :catchall_15e
686 - :try_start_169
687 + :try_start_162
688 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
690 move-object/from16 v0, p0
691 @@ -4899,10 +4884,21 @@
692 move-object/from16 v2, p3
694 invoke-interface {v4, v0, v1, v2}, Landroid/accounts/IAccountAuthenticatorCache;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
695 - :try_end_179
696 - .catchall {:try_start_169 .. :try_end_179} :catchall_ad
698 - goto/16 :goto_b8
699 + :cond_172
700 + :goto_172
701 + monitor-exit v21
703 + goto/16 :goto_42
705 + :cond_175
706 + if-eqz v14, :cond_172
708 + invoke-interface {v14}, Landroid/database/Cursor;->close()V
709 + :try_end_17a
710 + .catchall {:try_start_162 .. :try_end_17a} :catchall_ad
712 + goto :goto_172
713 .end method
715 .method public editProperties(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;Z)V
716 @@ -5440,9 +5436,9 @@
717 :try_end_8b
718 .catchall {:try_start_7e .. :try_end_8b} :catchall_92
720 + :goto_8b
721 invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
723 - :goto_8e
724 return-void
726 :catchall_8f
727 @@ -5475,9 +5471,7 @@
728 :try_end_9f
729 .catchall {:try_start_97 .. :try_end_9f} :catchall_92
731 - invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
733 - goto :goto_8e
734 + goto :goto_8b
735 .end method
737 .method protected getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
738 @@ -5899,11 +5893,11 @@
740 invoke-direct {v0, v1, v2}, Landroid/accounts/AccountManagerService;->onResult(Landroid/accounts/IAccountManagerResponse;Landroid/os/Bundle;)V
741 :try_end_12a
742 - .catchall {:try_start_f1 .. :try_end_12a} :catchall_152
743 + .catchall {:try_start_f1 .. :try_end_12a} :catchall_14f
745 + :goto_12a
746 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
748 - :goto_12d
749 return-void
751 :cond_12e
752 @@ -5947,13 +5941,11 @@
754 invoke-virtual {v3}, Landroid/accounts/AccountManagerService$3;->bind()V
755 :try_end_14e
756 - .catchall {:try_start_135 .. :try_end_14e} :catchall_152
758 - invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
759 + .catchall {:try_start_135 .. :try_end_14e} :catchall_14f
761 - goto :goto_12d
762 + goto :goto_12a
764 - :catchall_152
765 + :catchall_14f
766 move-exception v3
768 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
769 @@ -6119,7 +6111,7 @@
771 move-result v7
773 - if-eqz v7, :cond_5d
774 + if-eqz v7, :cond_62
776 invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
778 @@ -6133,23 +6125,23 @@
780 aput-object v7, v6, v2
781 :try_end_5a
782 - .catchall {:try_start_37 .. :try_end_5a} :catchall_61
783 + .catchall {:try_start_37 .. :try_end_5a} :catchall_5d
785 add-int/lit8 v2, v2, 0x1
787 goto :goto_48
789 - :cond_5d
790 - invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
792 - return-object v6
794 - :catchall_61
795 + :catchall_5d
796 move-exception v7
798 invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
800 throw v7
802 + :cond_62
803 + invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
805 + return-object v6
806 .end method
808 .method public getPassword(Landroid/accounts/Account;)Ljava/lang/String;
809 diff -Npru stock-framework/smali/android/app/ActivityThread.smali pdroid-framework/smali/android/app/ActivityThread.smali
810 --- stock-framework/smali/android/app/ActivityThread.smali 2012-05-08 11:54:26.818620700 -0500
811 +++ pdroid-framework/smali/android/app/ActivityThread.smali 2012-05-08 11:54:50.634738797 -0500
812 @@ -4082,9 +4082,9 @@
814 sget-object v8, Landroid/app/ActivityThread;->sCurrentBroadcastIntent:Ljava/lang/ThreadLocal;
816 + :goto_54
817 invoke-virtual {v8, v11}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
819 - :goto_57
820 invoke-virtual {v7}, Landroid/content/BroadcastReceiver;->getPendingResult()Landroid/content/BroadcastReceiver$PendingResult;
822 move-result-object v8
823 @@ -4205,9 +4205,7 @@
824 :cond_c6
825 sget-object v8, Landroid/app/ActivityThread;->sCurrentBroadcastIntent:Ljava/lang/ThreadLocal;
827 - invoke-virtual {v8, v11}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
829 - goto :goto_57
830 + goto :goto_54
831 .end method
833 .method private handleRelaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;)V
834 @@ -10127,7 +10125,7 @@
835 .method final handleDumpHeap(ZLandroid/app/ActivityThread$DumpHeapData;)V
836 .registers 7
838 - if-eqz p1, :cond_5c
839 + if-eqz p1, :cond_4a
841 :try_start_2
842 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->path:Ljava/lang/String;
843 @@ -10140,15 +10138,15 @@
845 invoke-static {v1, v2}, Landroid/os/Debug;->dumpHprofData(Ljava/lang/String;Ljava/io/FileDescriptor;)V
846 :try_end_d
847 - .catchall {:try_start_2 .. :try_end_d} :catchall_4c
848 - .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_1c
849 + .catchall {:try_start_2 .. :try_end_d} :catchall_43
850 + .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_13
852 :try_start_d
853 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
855 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
856 :try_end_12
857 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_13
858 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_5d
860 :goto_12
861 return-void
862 @@ -10156,18 +10154,7 @@
863 :catch_13
864 move-exception v0
866 - const-string v1, "ActivityThread"
868 - const-string v2, "Failure closing profile fd"
870 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
872 - goto :goto_12
874 - :catch_1c
875 - move-exception v0
877 - :try_start_1d
878 + :try_start_14
879 const-string v1, "ActivityThread"
881 new-instance v2, Ljava/lang/StringBuilder;
882 @@ -10197,43 +10184,55 @@
883 move-result-object v2
885 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
886 - :try_end_3d
887 - .catchall {:try_start_1d .. :try_end_3d} :catchall_4c
888 + :try_end_34
889 + .catchall {:try_start_14 .. :try_end_34} :catchall_43
891 - :try_start_3d
892 + :try_start_34
893 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
895 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
896 - :try_end_42
897 - .catch Ljava/io/IOException; {:try_start_3d .. :try_end_42} :catch_43
898 + :try_end_39
899 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_39} :catch_3a
901 goto :goto_12
903 - :catch_43
904 + :catch_3a
905 move-exception v0
907 const-string v1, "ActivityThread"
909 const-string v2, "Failure closing profile fd"
911 + :goto_3f
912 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
914 goto :goto_12
916 - :catchall_4c
917 + :catchall_43
918 move-exception v1
920 - :try_start_4d
921 + :try_start_44
922 iget-object v2, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
924 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
925 - :try_end_52
926 - .catch Ljava/io/IOException; {:try_start_4d .. :try_end_52} :catch_53
927 + :try_end_49
928 + .catch Ljava/io/IOException; {:try_start_44 .. :try_end_49} :catch_54
930 - :goto_52
931 + :goto_49
932 throw v1
934 - :catch_53
935 + :cond_4a
936 + iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
938 + invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
940 + move-result-object v1
942 + invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
944 + goto :goto_12
946 + :catch_54
947 move-exception v0
949 const-string v2, "ActivityThread"
950 @@ -10242,18 +10241,16 @@
952 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
954 - goto :goto_52
956 - :cond_5c
957 - iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
958 + goto :goto_49
960 - invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
961 + :catch_5d
962 + move-exception v0
964 - move-result-object v1
965 + const-string v1, "ActivityThread"
967 - invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
968 + const-string v2, "Failure closing profile fd"
970 - goto :goto_12
971 + goto :goto_3f
972 .end method
974 .method final handleLowMemory()V
975 @@ -10337,9 +10334,9 @@
976 .method final handleProfilerControl(ZLandroid/app/ActivityThread$ProfilerControlData;I)V
977 .registers 8
979 - if-eqz p1, :cond_73
980 + if-eqz p1, :cond_61
982 - packed-switch p3, :pswitch_data_80
983 + packed-switch p3, :pswitch_data_7e
985 :try_start_5
986 iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
987 @@ -10360,7 +10357,7 @@
989 invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->startProfiling()V
990 :try_end_18
991 - .catchall {:try_start_5 .. :try_end_18} :catchall_63
992 + .catchall {:try_start_5 .. :try_end_18} :catchall_5a
993 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_18} :catch_2a
995 :goto_18
996 @@ -10369,7 +10366,7 @@
998 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
999 :try_end_1d
1000 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_5a
1001 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_77
1003 :goto_1d
1004 return-void
1005 @@ -10386,7 +10383,7 @@
1007 invoke-static {v1, v2}, Landroid/view/ViewDebug;->startLooperProfiling(Ljava/lang/String;Ljava/io/FileDescriptor;)V
1008 :try_end_29
1009 - .catchall {:try_start_1e .. :try_end_29} :catchall_63
1010 + .catchall {:try_start_1e .. :try_end_29} :catchall_5a
1011 .catch Ljava/lang/RuntimeException; {:try_start_1e .. :try_end_29} :catch_2a
1013 goto :goto_18
1014 @@ -10425,7 +10422,7 @@
1016 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
1017 :try_end_4b
1018 - .catchall {:try_start_2b .. :try_end_4b} :catchall_63
1019 + .catchall {:try_start_2b .. :try_end_4b} :catchall_5a
1021 :try_start_4b
1022 iget-object v1, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1023 @@ -10443,35 +10440,39 @@
1025 const-string v2, "Failure closing profile fd"
1027 + :goto_56
1028 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1030 goto :goto_1d
1032 - :catch_5a
1033 - move-exception v0
1034 + :catchall_5a
1035 + move-exception v1
1037 - const-string v1, "ActivityThread"
1038 + :try_start_5b
1039 + iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1041 - const-string v2, "Failure closing profile fd"
1042 + invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1043 + :try_end_60
1044 + .catch Ljava/io/IOException; {:try_start_5b .. :try_end_60} :catch_6e
1046 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1047 + :goto_60
1048 + throw v1
1050 - goto :goto_1d
1051 + :cond_61
1052 + packed-switch p3, :pswitch_data_84
1054 - :catchall_63
1055 - move-exception v1
1056 + iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1058 - :try_start_64
1059 - iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1060 + invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1062 - invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1063 - :try_end_69
1064 - .catch Ljava/io/IOException; {:try_start_64 .. :try_end_69} :catch_6a
1065 + goto :goto_1d
1067 - :goto_69
1068 - throw v1
1069 + :pswitch_6a
1070 + invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1072 - :catch_6a
1073 + goto :goto_1d
1075 + :catch_6e
1076 move-exception v0
1078 const-string v2, "ActivityThread"
1079 @@ -10480,30 +10481,27 @@
1081 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1083 - goto :goto_69
1085 - :cond_73
1086 - packed-switch p3, :pswitch_data_86
1087 + goto :goto_60
1089 - iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1090 + :catch_77
1091 + move-exception v0
1093 - invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1094 + const-string v1, "ActivityThread"
1096 - goto :goto_1d
1097 + const-string v2, "Failure closing profile fd"
1099 - :pswitch_7c
1100 - invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1101 + goto :goto_56
1103 - goto :goto_1d
1104 + nop
1106 - :pswitch_data_80
1107 + :pswitch_data_7e
1108 .packed-switch 0x1
1109 :pswitch_1e
1110 .end packed-switch
1112 - :pswitch_data_86
1113 + :pswitch_data_84
1114 .packed-switch 0x1
1115 - :pswitch_7c
1116 + :pswitch_6a
1117 .end packed-switch
1118 .end method
1120 diff -Npru stock-framework/smali/android/app/BackStackRecord.smali pdroid-framework/smali/android/app/BackStackRecord.smali
1121 --- stock-framework/smali/android/app/BackStackRecord.smali 2012-05-08 11:54:26.910621152 -0500
1122 +++ pdroid-framework/smali/android/app/BackStackRecord.smali 2012-05-08 11:54:50.678739013 -0500
1123 @@ -790,12 +790,12 @@
1125 iget v4, p0, Landroid/app/BackStackRecord;->mPopExitAnim:I
1127 - if-eqz v4, :cond_93
1128 + if-eqz v4, :cond_94
1130 :cond_74
1131 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1133 - const-string v4, "mPopEnterAnim=#"
1134 + const-string/jumbo v4, "mPopEnterAnim=#"
1136 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1138 @@ -819,16 +819,16 @@
1140 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1142 - :cond_93
1143 + :cond_94
1144 iget v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbTitleRes:I
1146 - if-nez v4, :cond_9b
1147 + if-nez v4, :cond_9c
1149 iget-object v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbTitleText:Ljava/lang/CharSequence;
1151 - if-eqz v4, :cond_b6
1152 + if-eqz v4, :cond_b7
1154 - :cond_9b
1155 + :cond_9c
1156 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1158 const-string v4, "mBreadCrumbTitleRes=#"
1159 @@ -851,16 +851,16 @@
1161 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1163 - :cond_b6
1164 + :cond_b7
1165 iget v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbShortTitleRes:I
1167 - if-nez v4, :cond_be
1168 + if-nez v4, :cond_bf
1170 iget-object v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbShortTitleText:Ljava/lang/CharSequence;
1172 - if-eqz v4, :cond_d9
1173 + if-eqz v4, :cond_da
1175 - :cond_be
1176 + :cond_bf
1177 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1179 const-string v4, "mBreadCrumbShortTitleRes=#"
1180 @@ -883,10 +883,10 @@
1182 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1184 - :cond_d9
1185 + :cond_da
1186 iget-object v4, p0, Landroid/app/BackStackRecord;->mHead:Landroid/app/BackStackRecord$Op;
1188 - if-eqz v4, :cond_1bf
1189 + if-eqz v4, :cond_1c0
1191 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1193 @@ -916,8 +916,8 @@
1195 const/4 v2, 0x0
1197 - :goto_fb
1198 - if-eqz v3, :cond_1bf
1199 + :goto_fc
1200 + if-eqz v3, :cond_1c0
1202 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1204 @@ -951,13 +951,13 @@
1206 iget v4, v3, Landroid/app/BackStackRecord$Op;->enterAnim:I
1208 - if-nez v4, :cond_12c
1209 + if-nez v4, :cond_12d
1211 iget v4, v3, Landroid/app/BackStackRecord$Op;->exitAnim:I
1213 - if-eqz v4, :cond_14b
1214 + if-eqz v4, :cond_14c
1216 - :cond_12c
1217 + :cond_12d
1218 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1220 const-string v4, "enterAnim=#"
1221 @@ -984,16 +984,16 @@
1223 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1225 - :cond_14b
1226 + :cond_14c
1227 iget v4, v3, Landroid/app/BackStackRecord$Op;->popEnterAnim:I
1229 - if-nez v4, :cond_153
1230 + if-nez v4, :cond_154
1232 iget v4, v3, Landroid/app/BackStackRecord$Op;->popExitAnim:I
1234 - if-eqz v4, :cond_173
1235 + if-eqz v4, :cond_174
1237 - :cond_153
1238 + :cond_154
1239 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1241 const-string/jumbo v4, "popEnterAnim=#"
1242 @@ -1020,10 +1020,10 @@
1244 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1246 - :cond_173
1247 + :cond_174
1248 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1250 - if-eqz v4, :cond_1bb
1251 + if-eqz v4, :cond_1bc
1253 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1255 @@ -1031,18 +1031,18 @@
1257 move-result v4
1259 - if-lez v4, :cond_1bb
1260 + if-lez v4, :cond_1bc
1262 const/4 v0, 0x0
1264 - :goto_180
1265 + :goto_181
1266 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1268 invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
1270 move-result v4
1272 - if-ge v0, v4, :cond_1bb
1273 + if-ge v0, v4, :cond_1bc
1275 invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1277 @@ -1054,13 +1054,13 @@
1279 const/4 v5, 0x1
1281 - if-ne v4, v5, :cond_1a5
1282 + if-ne v4, v5, :cond_1a6
1284 const-string v4, "Removed: "
1286 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1288 - :goto_199
1289 + :goto_19a
1290 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1292 invoke-virtual {v4, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
1293 @@ -1071,9 +1071,9 @@
1295 add-int/lit8 v0, v0, 0x1
1297 - goto :goto_180
1298 + goto :goto_181
1300 - :cond_1a5
1301 + :cond_1a6
1302 const-string v4, "Removed:"
1304 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1305 @@ -1090,14 +1090,14 @@
1307 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1309 - goto :goto_199
1310 + goto :goto_19a
1312 - :cond_1bb
1313 + :cond_1bc
1314 iget-object v3, v3, Landroid/app/BackStackRecord$Op;->next:Landroid/app/BackStackRecord$Op;
1316 - goto/16 :goto_fb
1317 + goto/16 :goto_fc
1319 - :cond_1bf
1320 + :cond_1c0
1321 return-void
1322 .end method
1324 diff -Npru stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali
1325 --- stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-05-08 11:54:27.506624107 -0500
1326 +++ pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-05-08 11:54:51.290742046 -0500
1327 @@ -83,7 +83,7 @@
1328 :try_start_1c
1329 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1330 :try_end_1f
1331 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1332 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1334 :goto_1f
1335 return-void
1336 @@ -146,7 +146,7 @@
1337 :try_start_54
1338 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1339 :try_end_57
1340 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1341 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1343 :goto_57
1344 throw v4
1345 @@ -198,14 +198,14 @@
1346 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1348 :catch_83
1349 - move-exception v4
1350 + move-exception v5
1352 - goto :goto_1f
1353 + goto :goto_57
1355 :catch_85
1356 - move-exception v5
1357 + move-exception v4
1359 - goto :goto_57
1360 + goto :goto_1f
1361 .end method
1363 .method public doFullBackup(Landroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1364 @@ -230,9 +230,9 @@
1366 invoke-virtual {v6, v7}, Landroid/app/backup/BackupAgent;->onFullBackup(Landroid/app/backup/FullBackupDataOutput;)V
1367 :try_end_15
1368 - .catchall {:try_start_b .. :try_end_15} :catchall_64
1369 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_34
1370 - .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_7b
1371 + .catchall {:try_start_b .. :try_end_15} :catchall_5b
1372 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_2b
1373 + .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_72
1375 :try_start_15
1376 new-instance v5, Ljava/io/FileOutputStream;
1377 @@ -249,7 +249,7 @@
1379 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1380 :try_end_24
1381 - .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_2b
1382 + .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_a8
1384 :goto_24
1385 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1386 @@ -257,26 +257,15 @@
1387 :try_start_27
1388 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1389 :try_end_2a
1390 - .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_af
1391 + .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_b2
1393 :goto_2a
1394 return-void
1396 :catch_2b
1397 - move-exception v1
1399 - const-string v6, "BackupServiceBinder"
1401 - const-string v7, "Unable to finalize backup stream!"
1403 - invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1405 - goto :goto_24
1407 - :catch_34
1408 move-exception v2
1410 - :try_start_35
1411 + :try_start_2c
1412 const-string v6, "BackupServiceBinder"
1414 new-instance v7, Ljava/lang/StringBuilder;
1415 @@ -320,13 +309,13 @@
1416 invoke-direct {v6, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
1418 throw v6
1419 - :try_end_64
1420 - .catchall {:try_start_35 .. :try_end_64} :catchall_64
1421 + :try_end_5b
1422 + .catchall {:try_start_2c .. :try_end_5b} :catchall_5b
1424 - :catchall_64
1425 + :catchall_5b
1426 move-exception v6
1428 - :try_start_65
1429 + :try_start_5c
1430 new-instance v5, Ljava/io/FileOutputStream;
1432 invoke-virtual {p1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
1433 @@ -340,24 +329,24 @@
1434 new-array v0, v7, [B
1436 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1437 - :try_end_74
1438 - .catch Ljava/io/IOException; {:try_start_65 .. :try_end_74} :catch_a6
1439 + :try_end_6b
1440 + .catch Ljava/io/IOException; {:try_start_5c .. :try_end_6b} :catch_9d
1442 - :goto_74
1443 + :goto_6b
1444 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1446 - :try_start_77
1447 + :try_start_6e
1448 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1449 - :try_end_7a
1450 - .catch Landroid/os/RemoteException; {:try_start_77 .. :try_end_7a} :catch_b2
1451 + :try_end_71
1452 + .catch Landroid/os/RemoteException; {:try_start_6e .. :try_end_71} :catch_a6
1454 - :goto_7a
1455 + :goto_71
1456 throw v6
1458 - :catch_7b
1459 + :catch_72
1460 move-exception v2
1462 - :try_start_7c
1463 + :try_start_73
1464 const-string v6, "BackupServiceBinder"
1466 new-instance v7, Ljava/lang/StringBuilder;
1467 @@ -397,10 +386,10 @@
1468 invoke-static {v6, v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1470 throw v2
1471 - :try_end_a6
1472 - .catchall {:try_start_7c .. :try_end_a6} :catchall_64
1473 + :try_end_9d
1474 + .catchall {:try_start_73 .. :try_end_9d} :catchall_5b
1476 - :catch_a6
1477 + :catch_9d
1478 move-exception v1
1480 const-string v7, "BackupServiceBinder"
1481 @@ -409,17 +398,28 @@
1483 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1485 - goto :goto_74
1486 + goto :goto_6b
1488 - :catch_af
1489 - move-exception v6
1490 + :catch_a6
1491 + move-exception v7
1493 - goto/16 :goto_2a
1494 + goto :goto_71
1496 + :catch_a8
1497 + move-exception v1
1499 + const-string v6, "BackupServiceBinder"
1501 + const-string v7, "Unable to finalize backup stream!"
1503 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1505 + goto/16 :goto_24
1507 :catch_b2
1508 - move-exception v7
1509 + move-exception v6
1511 - goto :goto_7a
1512 + goto/16 :goto_2a
1513 .end method
1515 .method public doRestore(Landroid/os/ParcelFileDescriptor;ILandroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1516 @@ -462,7 +462,7 @@
1517 :try_start_1c
1518 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1519 :try_end_1f
1520 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1521 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1523 :goto_1f
1524 return-void
1525 @@ -525,7 +525,7 @@
1526 :try_start_54
1527 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1528 :try_end_57
1529 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1530 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1532 :goto_57
1533 throw v4
1534 @@ -577,14 +577,14 @@
1535 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1537 :catch_83
1538 - move-exception v4
1539 + move-exception v5
1541 - goto :goto_1f
1542 + goto :goto_57
1544 :catch_85
1545 - move-exception v5
1546 + move-exception v4
1548 - goto :goto_57
1549 + goto :goto_1f
1550 .end method
1552 .method public doRestoreFile(Landroid/os/ParcelFileDescriptor;JILjava/lang/String;Ljava/lang/String;JJILandroid/app/backup/IBackupManager;)V
1553 @@ -632,7 +632,7 @@
1555 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1556 :try_end_23
1557 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_37
1558 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_39
1560 :goto_23
1561 return-void
1562 @@ -661,18 +661,18 @@
1564 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1565 :try_end_36
1566 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_39
1567 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_37
1569 :goto_36
1570 throw v2
1572 :catch_37
1573 - move-exception v2
1574 + move-exception v3
1576 - goto :goto_23
1577 + goto :goto_36
1579 :catch_39
1580 - move-exception v3
1581 + move-exception v2
1583 - goto :goto_36
1584 + goto :goto_23
1585 .end method
1586 diff -Npru stock-framework/smali/android/app/backup/RestoreSession.smali pdroid-framework/smali/android/app/backup/RestoreSession.smali
1587 --- stock-framework/smali/android/app/backup/RestoreSession.smali 2012-05-08 11:54:27.526624211 -0500
1588 +++ pdroid-framework/smali/android/app/backup/RestoreSession.smali 2012-05-08 11:54:51.338742282 -0500
1589 @@ -52,12 +52,12 @@
1591 invoke-interface {v1}, Landroid/app/backup/IRestoreSession;->endRestoreSession()V
1592 :try_end_6
1593 - .catchall {:try_start_1 .. :try_end_6} :catchall_14
1594 + .catchall {:try_start_1 .. :try_end_6} :catchall_12
1595 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_6} :catch_9
1597 + :goto_6
1598 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1600 - :goto_8
1601 return-void
1603 :catch_9
1604 @@ -70,13 +70,11 @@
1606 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
1607 :try_end_11
1608 - .catchall {:try_start_a .. :try_end_11} :catchall_14
1609 + .catchall {:try_start_a .. :try_end_11} :catchall_12
1611 - iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1613 - goto :goto_8
1614 + goto :goto_6
1616 - :catchall_14
1617 + :catchall_12
1618 move-exception v1
1620 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1621 diff -Npru stock-framework/smali/android/app/ContextImpl$18.smali pdroid-framework/smali/android/app/ContextImpl$18.smali
1622 --- stock-framework/smali/android/app/ContextImpl$18.smali 2012-05-08 11:54:26.934621275 -0500
1623 +++ pdroid-framework/smali/android/app/ContextImpl$18.smali 2012-05-08 11:54:50.686739049 -0500
1624 @@ -26,21 +26,25 @@
1626 # virtual methods
1627 .method public createStaticService()Ljava/lang/Object;
1628 - .registers 4
1629 + .registers 5
1631 - const-string v1, "location"
1632 + const-string v2, "location"
1634 - invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1635 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1637 move-result-object v0
1639 - new-instance v1, Landroid/location/LocationManager;
1641 invoke-static {v0}, Landroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;
1643 - move-result-object v2
1644 + move-result-object v1
1646 + new-instance v2, Landroid/privacy/surrogate/PrivacyLocationManager;
1648 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1650 + move-result-object v3
1652 - invoke-direct {v1, v2}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
1653 + invoke-direct {v2, v1, v3}, Landroid/privacy/surrogate/PrivacyLocationManager;-><init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
1655 - return-object v1
1656 + return-object v2
1657 .end method
1658 diff -Npru stock-framework/smali/android/app/ContextImpl$26.smali pdroid-framework/smali/android/app/ContextImpl$26.smali
1659 --- stock-framework/smali/android/app/ContextImpl$26.smali 2012-05-08 11:54:26.946621331 -0500
1660 +++ pdroid-framework/smali/android/app/ContextImpl$26.smali 2012-05-08 11:54:50.690739070 -0500
1661 @@ -28,13 +28,13 @@
1662 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
1663 .registers 4
1665 - new-instance v0, Landroid/telephony/TelephonyManager;
1666 + new-instance v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;
1668 invoke-virtual {p1}, Landroid/app/ContextImpl;->getOuterContext()Landroid/content/Context;
1670 move-result-object v1
1672 - invoke-direct {v0, v1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
1673 + invoke-direct {v0, v1}, Landroid/privacy/surrogate/PrivacyTelephonyManager;-><init>(Landroid/content/Context;)V
1675 return-object v0
1676 .end method
1677 diff -Npru stock-framework/smali/android/app/ContextImpl$36.smali pdroid-framework/smali/android/app/ContextImpl$36.smali
1678 --- stock-framework/smali/android/app/ContextImpl$36.smali 1969-12-31 18:00:00.000000000 -0600
1679 +++ pdroid-framework/smali/android/app/ContextImpl$36.smali 2012-05-08 11:54:50.698739110 -0500
1680 @@ -0,0 +1,50 @@
1681 +.class final Landroid/app/ContextImpl$36;
1682 +.super Landroid/app/ContextImpl$StaticServiceFetcher;
1683 +.source "ContextImpl.java"
1686 +# annotations
1687 +.annotation system Ldalvik/annotation/EnclosingClass;
1688 + value = Landroid/app/ContextImpl;
1689 +.end annotation
1691 +.annotation system Ldalvik/annotation/InnerClass;
1692 + accessFlags = 0x8
1693 + name = null
1694 +.end annotation
1697 +# direct methods
1698 +.method constructor <init>()V
1699 + .registers 1
1701 + invoke-direct {p0}, Landroid/app/ContextImpl$StaticServiceFetcher;-><init>()V
1703 + return-void
1704 +.end method
1707 +# virtual methods
1708 +.method public createStaticService()Ljava/lang/Object;
1709 + .registers 5
1711 + const-string/jumbo v2, "privacy"
1713 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1715 + move-result-object v0
1717 + invoke-static {v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1719 + move-result-object v1
1721 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
1723 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1725 + move-result-object v3
1727 + invoke-direct {v2, v3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1729 + return-object v2
1730 +.end method
1731 diff -Npru stock-framework/smali/android/app/ContextImpl$3.smali pdroid-framework/smali/android/app/ContextImpl$3.smali
1732 --- stock-framework/smali/android/app/ContextImpl$3.smali 2012-05-08 11:54:26.958621390 -0500
1733 +++ pdroid-framework/smali/android/app/ContextImpl$3.smali 2012-05-08 11:54:50.698739110 -0500
1734 @@ -38,9 +38,9 @@
1736 move-result-object v1
1738 - new-instance v2, Landroid/accounts/AccountManager;
1739 + new-instance v2, Landroid/privacy/surrogate/PrivacyAccountManager;
1741 - invoke-direct {v2, p1, v1}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1742 + invoke-direct {v2, p1, v1}, Landroid/privacy/surrogate/PrivacyAccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1744 return-object v2
1745 .end method
1746 diff -Npru stock-framework/smali/android/app/ContextImpl.smali pdroid-framework/smali/android/app/ContextImpl.smali
1747 --- stock-framework/smali/android/app/ContextImpl.smali 2012-05-08 11:54:27.006621628 -0500
1748 +++ pdroid-framework/smali/android/app/ContextImpl.smali 2012-05-08 11:54:50.754739386 -0500
1749 @@ -36,6 +36,8 @@
1751 .field private static sNextPerContextServiceCacheIndex:I
1753 +.field private static sOuterContext:Landroid/content/Context;
1755 .field private static final sSharedPrefs:Ljava/util/HashMap;
1756 .annotation system Ldalvik/annotation/Signature;
1757 value = {
1758 @@ -410,6 +412,14 @@
1760 invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1762 + const-string/jumbo v0, "privacy"
1764 + new-instance v1, Landroid/app/ContextImpl$36;
1766 + invoke-direct {v1}, Landroid/app/ContextImpl$36;-><init>()V
1768 + invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1770 return-void
1771 .end method
1773 @@ -444,6 +454,8 @@
1775 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1777 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1779 return-void
1780 .end method
1782 @@ -498,6 +510,8 @@
1784 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1786 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1788 return-void
1789 .end method
1791 @@ -967,6 +981,14 @@
1792 throw v0
1793 .end method
1795 +.method static final getStaticOuterContext()Landroid/content/Context;
1796 + .registers 1
1798 + sget-object v0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1800 + return-object v0
1801 +.end method
1803 .method private getWallpaperManager()Landroid/app/WallpaperManager;
1804 .registers 2
1806 @@ -4132,6 +4154,8 @@
1808 iput-object p1, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1810 + sput-object p1, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1812 return-void
1813 .end method
1815 diff -Npru stock-framework/smali/android/app/DownloadManager.smali pdroid-framework/smali/android/app/DownloadManager.smali
1816 --- stock-framework/smali/android/app/DownloadManager.smali 2012-05-08 11:54:27.038621791 -0500
1817 +++ pdroid-framework/smali/android/app/DownloadManager.smali 2012-05-08 11:54:50.786739551 -0500
1818 @@ -618,7 +618,7 @@
1819 :try_start_11
1820 invoke-virtual {p0, v1}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1821 :try_end_14
1822 - .catchall {:try_start_11 .. :try_end_14} :catchall_3a
1823 + .catchall {:try_start_11 .. :try_end_14} :catchall_31
1825 move-result-object v0
1827 @@ -626,10 +626,10 @@
1829 if-eqz v0, :cond_1c
1831 + :goto_19
1832 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1834 :cond_1c
1835 - :goto_1c
1836 return-object v2
1838 :cond_1d
1839 @@ -638,7 +638,7 @@
1841 move-result v3
1843 - if-eqz v3, :cond_34
1844 + if-eqz v3, :cond_38
1846 const-string/jumbo v2, "media_type"
1848 @@ -648,32 +648,28 @@
1850 invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
1851 :try_end_2d
1852 - .catchall {:try_start_1d .. :try_end_2d} :catchall_3a
1853 + .catchall {:try_start_1d .. :try_end_2d} :catchall_31
1855 move-result-object v2
1857 if-eqz v0, :cond_1c
1859 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1861 - goto :goto_1c
1863 - :cond_34
1864 - if-eqz v0, :cond_1c
1866 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1867 + goto :goto_19
1869 - goto :goto_1c
1871 - :catchall_3a
1872 + :catchall_31
1873 move-exception v2
1875 - if-eqz v0, :cond_40
1876 + if-eqz v0, :cond_37
1878 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1880 - :cond_40
1881 + :cond_37
1882 throw v2
1884 + :cond_38
1885 + if-eqz v0, :cond_1c
1887 + goto :goto_19
1888 .end method
1890 .method public getUriForDownloadedFile(J)Landroid/net/Uri;
1891 @@ -702,7 +698,7 @@
1892 :try_start_11
1893 invoke-virtual {p0, v4}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1894 :try_end_14
1895 - .catchall {:try_start_11 .. :try_end_14} :catchall_72
1896 + .catchall {:try_start_11 .. :try_end_14} :catchall_66
1898 move-result-object v0
1900 @@ -710,10 +706,10 @@
1902 if-eqz v0, :cond_1c
1904 + :goto_19
1905 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1907 :cond_1c
1908 - :goto_1c
1909 return-object v6
1911 :cond_1d
1912 @@ -722,7 +718,7 @@
1914 move-result v7
1916 - if-eqz v7, :cond_6c
1917 + if-eqz v7, :cond_6d
1919 const-string/jumbo v7, "status"
1921 @@ -736,7 +732,7 @@
1923 const/16 v7, 0x8
1925 - if-ne v7, v5, :cond_6c
1926 + if-ne v7, v5, :cond_6d
1928 const-string v6, "destination"
1930 @@ -760,25 +756,20 @@
1932 const/4 v6, 0x2
1934 - if-ne v1, v6, :cond_53
1935 + if-ne v1, v6, :cond_50
1937 :cond_47
1938 sget-object v6, Landroid/provider/Downloads$Impl;->CONTENT_URI:Landroid/net/Uri;
1940 invoke-static {v6, p1, p2}, Landroid/content/ContentUris;->withAppendedId(Landroid/net/Uri;J)Landroid/net/Uri;
1941 - :try_end_4c
1942 - .catchall {:try_start_1d .. :try_end_4c} :catchall_72
1944 move-result-object v6
1946 if-eqz v0, :cond_1c
1948 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1950 - goto :goto_1c
1951 + goto :goto_19
1953 - :cond_53
1954 - :try_start_53
1955 + :cond_50
1956 const-string v6, "local_filename"
1958 invoke-interface {v0, v6}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
1959 @@ -794,33 +785,29 @@
1960 invoke-direct {v6, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
1962 invoke-static {v6}, Landroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri;
1963 - :try_end_65
1964 - .catchall {:try_start_53 .. :try_end_65} :catchall_72
1965 + :try_end_62
1966 + .catchall {:try_start_1d .. :try_end_62} :catchall_66
1968 move-result-object v6
1970 if-eqz v0, :cond_1c
1972 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1974 - goto :goto_1c
1976 - :cond_6c
1977 - if-eqz v0, :cond_1c
1979 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1981 - goto :goto_1c
1982 + goto :goto_19
1984 - :catchall_72
1985 + :catchall_66
1986 move-exception v6
1988 - if-eqz v0, :cond_78
1989 + if-eqz v0, :cond_6c
1991 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1993 - :cond_78
1994 + :cond_6c
1995 throw v6
1997 + :cond_6d
1998 + if-eqz v0, :cond_1c
2000 + goto :goto_19
2001 .end method
2003 .method public varargs markRowDeleted([J)I
2004 diff -Npru stock-framework/smali/android/app/WallpaperManager$Globals.smali pdroid-framework/smali/android/app/WallpaperManager$Globals.smali
2005 --- stock-framework/smali/android/app/WallpaperManager$Globals.smali 2012-05-08 11:54:27.478623973 -0500
2006 +++ pdroid-framework/smali/android/app/WallpaperManager$Globals.smali 2012-05-08 11:54:51.242741813 -0500
2007 @@ -140,7 +140,7 @@
2008 :try_start_2f
2009 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2010 :try_end_32
2011 - .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_49
2012 + .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_4d
2013 .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_47
2015 :goto_32
2016 @@ -178,7 +178,7 @@
2017 :try_start_43
2018 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2019 :try_end_46
2020 - .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_4d
2021 + .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_49
2022 .catch Landroid/os/RemoteException; {:try_start_43 .. :try_end_46} :catch_47
2024 :goto_46
2025 @@ -193,9 +193,9 @@
2026 goto :goto_40
2028 :catch_49
2029 - move-exception v8
2030 + move-exception v9
2032 - goto :goto_32
2033 + goto :goto_46
2035 :catch_4b
2036 move-exception v7
2037 @@ -203,9 +203,9 @@
2038 goto :goto_40
2040 :catch_4d
2041 - move-exception v9
2042 + move-exception v8
2044 - goto :goto_46
2045 + goto :goto_32
2046 .end method
2048 .method private getDefaultWallpaperLocked(Landroid/content/Context;)Landroid/graphics/Bitmap;
2049 @@ -261,7 +261,7 @@
2050 :try_start_28
2051 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2052 :try_end_2b
2053 - .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_42
2054 + .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_46
2055 .catch Landroid/os/RemoteException; {:try_start_28 .. :try_end_2b} :catch_40
2057 :goto_2b
2058 @@ -299,7 +299,7 @@
2059 :try_start_3c
2060 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2061 :try_end_3f
2062 - .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_46
2063 + .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_42
2064 .catch Landroid/os/RemoteException; {:try_start_3c .. :try_end_3f} :catch_40
2066 :goto_3f
2067 @@ -314,9 +314,9 @@
2068 goto :goto_39
2070 :catch_42
2071 - move-exception v7
2072 + move-exception v8
2074 - goto :goto_2b
2075 + goto :goto_3f
2077 :catch_44
2078 move-exception v6
2079 @@ -324,9 +324,9 @@
2080 goto :goto_39
2082 :catch_46
2083 - move-exception v8
2084 + move-exception v7
2086 - goto :goto_3f
2087 + goto :goto_2b
2088 .end method
2091 diff -Npru stock-framework/smali/android/bluetooth/BluetoothSocket.smali pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali
2092 --- stock-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-05-08 11:54:27.594624548 -0500
2093 +++ pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-05-08 11:54:51.418742680 -0500
2094 @@ -445,7 +445,7 @@
2096 sget-object v1, Landroid/bluetooth/BluetoothSocket$SocketState;->CLOSED:Landroid/bluetooth/BluetoothSocket$SocketState;
2097 :try_end_d
2098 - .catchall {:try_start_9 .. :try_end_d} :catchall_29
2099 + .catchall {:try_start_9 .. :try_end_d} :catchall_26
2101 if-ne v0, v1, :cond_1b
2103 @@ -457,16 +457,16 @@
2105 move-result-object v1
2107 + :goto_17
2108 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2110 - :goto_1a
2111 return v0
2113 :cond_1b
2114 :try_start_1b
2115 invoke-direct {p0}, Landroid/bluetooth/BluetoothSocket;->bindListenNative()I
2116 :try_end_1e
2117 - .catchall {:try_start_1b .. :try_end_1e} :catchall_29
2118 + .catchall {:try_start_1b .. :try_end_1e} :catchall_26
2120 move-result v0
2122 @@ -476,11 +476,9 @@
2124 move-result-object v1
2126 - invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2128 - goto :goto_1a
2129 + goto :goto_17
2131 - :catchall_29
2132 + :catchall_26
2133 move-exception v0
2135 iget-object v1, p0, Landroid/bluetooth/BluetoothSocket;->mLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
2136 diff -Npru stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali
2137 --- stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-05-08 11:54:27.646624802 -0500
2138 +++ pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-05-08 11:54:51.482742996 -0500
2139 @@ -102,11 +102,11 @@
2140 :try_start_b
2141 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2142 :try_end_e
2143 - .catchall {:try_start_b .. :try_end_e} :catchall_80
2144 + .catchall {:try_start_b .. :try_end_e} :catchall_7d
2146 move-result v0
2148 - if-eqz v0, :cond_38
2149 + if-eqz v0, :cond_35
2151 if-eqz v4, :cond_16
2153 @@ -146,21 +146,14 @@
2154 invoke-virtual {v0, v2}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2156 monitor-exit v1
2157 + :try_end_34
2158 + .catchall {:try_start_28 .. :try_end_34} :catchall_a5
2160 :goto_34
2161 return-void
2163 - :catchall_35
2164 - move-exception v0
2166 - monitor-exit v1
2167 - :try_end_37
2168 - .catchall {:try_start_28 .. :try_end_37} :catchall_35
2170 - throw v0
2172 - :cond_38
2173 - :try_start_38
2174 + :cond_35
2175 + :try_start_35
2176 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2178 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mContext:Landroid/content/Context;
2179 @@ -178,7 +171,7 @@
2181 move-result-object v4
2183 - if-eqz v4, :cond_7c
2184 + if-eqz v4, :cond_79
2186 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2188 @@ -189,26 +182,26 @@
2189 iget-object v3, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mAuthority:Ljava/lang/String;
2191 invoke-virtual/range {v0 .. v5}, Landroid/content/AbstractThreadedSyncAdapter;->onPerformSync(Landroid/accounts/Account;Landroid/os/Bundle;Ljava/lang/String;Landroid/content/ContentProviderClient;Landroid/content/SyncResult;)V
2192 - :try_end_55
2193 - .catchall {:try_start_38 .. :try_end_55} :catchall_80
2194 + :try_end_52
2195 + .catchall {:try_start_35 .. :try_end_52} :catchall_7d
2197 - :goto_55
2198 - if-eqz v4, :cond_5a
2199 + :goto_52
2200 + if-eqz v4, :cond_57
2202 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2204 - :cond_5a
2205 + :cond_57
2206 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2208 move-result v0
2210 - if-nez v0, :cond_65
2211 + if-nez v0, :cond_62
2213 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2215 invoke-virtual {v0, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2217 - :cond_65
2218 + :cond_62
2219 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2221 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2222 @@ -218,7 +211,7 @@
2224 monitor-enter v1
2226 - :try_start_6c
2227 + :try_start_69
2228 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2230 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2231 @@ -234,44 +227,44 @@
2233 goto :goto_34
2235 - :catchall_79
2236 + :catchall_76
2237 move-exception v0
2239 monitor-exit v1
2240 - :try_end_7b
2241 - .catchall {:try_start_6c .. :try_end_7b} :catchall_79
2242 + :try_end_78
2243 + .catchall {:try_start_69 .. :try_end_78} :catchall_76
2245 throw v0
2247 - :cond_7c
2248 + :cond_79
2249 const/4 v0, 0x1
2251 - :try_start_7d
2252 + :try_start_7a
2253 iput-boolean v0, v5, Landroid/content/SyncResult;->databaseError:Z
2254 - :try_end_7f
2255 - .catchall {:try_start_7d .. :try_end_7f} :catchall_80
2256 + :try_end_7c
2257 + .catchall {:try_start_7a .. :try_end_7c} :catchall_7d
2259 - goto :goto_55
2260 + goto :goto_52
2262 - :catchall_80
2263 + :catchall_7d
2264 move-exception v0
2266 - if-eqz v4, :cond_86
2267 + if-eqz v4, :cond_83
2269 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2271 - :cond_86
2272 + :cond_83
2273 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2275 move-result v1
2277 - if-nez v1, :cond_91
2278 + if-nez v1, :cond_8e
2280 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2282 invoke-virtual {v1, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2284 - :cond_91
2285 + :cond_8e
2286 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2288 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2289 @@ -281,7 +274,7 @@
2291 monitor-enter v1
2293 - :try_start_98
2294 + :try_start_95
2295 iget-object v2, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2297 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2298 @@ -294,8 +287,18 @@
2299 invoke-virtual {v2, v3}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2301 monitor-exit v1
2302 + :try_end_a1
2303 + .catchall {:try_start_95 .. :try_end_a1} :catchall_a2
2305 + throw v0
2307 + :catchall_a2
2308 + move-exception v0
2310 + :try_start_a3
2311 + monitor-exit v1
2312 :try_end_a4
2313 - .catchall {:try_start_98 .. :try_end_a4} :catchall_a5
2314 + .catchall {:try_start_a3 .. :try_end_a4} :catchall_a2
2316 throw v0
2318 diff -Npru stock-framework/smali/android/content/ContentResolver.smali pdroid-framework/smali/android/content/ContentResolver.smali
2319 --- stock-framework/smali/android/content/ContentResolver.smali 2012-05-08 11:54:26.982621513 -0500
2320 +++ pdroid-framework/smali/android/content/ContentResolver.smali 2012-05-08 11:54:50.726739254 -0500
2321 @@ -1662,12 +1662,12 @@
2323 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2324 :try_end_35
2325 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2326 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2327 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2329 + :goto_35
2330 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2332 - :goto_38
2333 return v8
2335 :catch_39
2336 @@ -1675,11 +1675,9 @@
2338 const/4 v8, 0x0
2340 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2342 - goto :goto_38
2343 + goto :goto_35
2345 - :catchall_3f
2346 + :catchall_3c
2347 move-exception v0
2349 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2350 @@ -1746,14 +1744,14 @@
2351 :try_start_35
2352 invoke-interface {v1, p2, p3, p4}, Landroid/content/IContentProvider;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
2353 :try_end_38
2354 - .catchall {:try_start_35 .. :try_end_38} :catchall_43
2355 + .catchall {:try_start_35 .. :try_end_38} :catchall_40
2356 .catch Landroid/os/RemoteException; {:try_start_35 .. :try_end_38} :catch_3d
2358 move-result-object v2
2360 + :goto_39
2361 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2363 - :goto_3c
2364 return-object v2
2366 :catch_3d
2367 @@ -1761,11 +1759,9 @@
2369 const/4 v2, 0x0
2371 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2373 - goto :goto_3c
2374 + goto :goto_39
2376 - :catchall_43
2377 + :catchall_40
2378 move-exception v2
2380 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2381 @@ -1856,12 +1852,12 @@
2383 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2384 :try_end_35
2385 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2386 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2387 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2389 + :goto_35
2390 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2392 - :goto_38
2393 return v8
2395 :catch_39
2396 @@ -1869,11 +1865,9 @@
2398 const/4 v8, -0x1
2400 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2402 - goto :goto_38
2403 + goto :goto_35
2405 - :catchall_3f
2406 + :catchall_3c
2407 move-exception v0
2409 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2410 @@ -2160,11 +2154,12 @@
2411 :try_start_8
2412 invoke-interface {v1, p1, p2}, Landroid/content/IContentProvider;->getStreamTypes(Landroid/net/Uri;Ljava/lang/String;)[Ljava/lang/String;
2413 :try_end_b
2414 - .catchall {:try_start_8 .. :try_end_b} :catchall_15
2415 + .catchall {:try_start_8 .. :try_end_b} :catchall_12
2416 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_b} :catch_10
2418 move-result-object v2
2420 + :goto_c
2421 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2423 goto :goto_7
2424 @@ -2172,11 +2167,9 @@
2425 :catch_10
2426 move-exception v0
2428 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2429 + goto :goto_c
2431 - goto :goto_7
2433 - :catchall_15
2434 + :catchall_12
2435 move-exception v2
2437 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2438 @@ -2193,17 +2186,18 @@
2440 move-result-object v1
2442 - if-eqz v1, :cond_4a
2443 + if-eqz v1, :cond_44
2445 :try_start_7
2446 invoke-interface {v1, p1}, Landroid/content/IContentProvider;->getType(Landroid/net/Uri;)Ljava/lang/String;
2447 :try_end_a
2448 - .catchall {:try_start_7 .. :try_end_a} :catchall_45
2449 + .catchall {:try_start_7 .. :try_end_a} :catchall_3f
2450 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_a} :catch_f
2451 - .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_14
2452 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_11
2454 move-result-object v2
2456 + :goto_b
2457 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2459 :cond_e
2460 @@ -2213,14 +2207,12 @@
2461 :catch_f
2462 move-exception v0
2464 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2466 - goto :goto_e
2467 + goto :goto_b
2469 - :catch_14
2470 + :catch_11
2471 move-exception v0
2473 - :try_start_15
2474 + :try_start_12
2475 const-string v3, "ContentResolver"
2477 new-instance v4, Ljava/lang/StringBuilder;
2478 @@ -2262,21 +2254,19 @@
2479 move-result-object v4
2481 invoke-static {v3, v4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
2482 - :try_end_41
2483 - .catchall {:try_start_15 .. :try_end_41} :catchall_45
2485 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2486 + :try_end_3e
2487 + .catchall {:try_start_12 .. :try_end_3e} :catchall_3f
2489 - goto :goto_e
2490 + goto :goto_b
2492 - :catchall_45
2493 + :catchall_3f
2494 move-exception v3
2496 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2498 throw v3
2500 - :cond_4a
2501 + :cond_44
2502 const-string v3, "content"
2504 invoke-virtual {p1}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
2505 @@ -2289,26 +2279,26 @@
2507 if-eqz v3, :cond_e
2509 - :try_start_56
2510 + :try_start_50
2511 invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
2513 move-result-object v3
2515 invoke-interface {v3, p1}, Landroid/app/IActivityManager;->getProviderMimeType(Landroid/net/Uri;)Ljava/lang/String;
2516 - :try_end_5d
2517 - .catch Landroid/os/RemoteException; {:try_start_56 .. :try_end_5d} :catch_5f
2518 - .catch Ljava/lang/Exception; {:try_start_56 .. :try_end_5d} :catch_61
2519 + :try_end_57
2520 + .catch Landroid/os/RemoteException; {:try_start_50 .. :try_end_57} :catch_59
2521 + .catch Ljava/lang/Exception; {:try_start_50 .. :try_end_57} :catch_5b
2523 move-result-object v2
2525 goto :goto_e
2527 - :catch_5f
2528 + :catch_59
2529 move-exception v0
2531 goto :goto_e
2533 - :catch_61
2534 + :catch_5b
2535 move-exception v0
2537 const-string v3, "ContentResolver"
2538 @@ -2693,9 +2683,9 @@
2539 :try_start_a8
2540 invoke-interface {v9, p1, p2}, Landroid/content/IContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
2541 :try_end_ab
2542 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_ec
2543 - .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_d2
2544 - .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_f3
2545 + .catchall {:try_start_a8 .. :try_end_ab} :catchall_e8
2546 + .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_ce
2547 + .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_ef
2549 move-result-object v8
2551 @@ -2703,6 +2693,7 @@
2553 if-eqz v9, :cond_3b
2555 + :goto_b0
2556 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2558 goto :goto_3b
2559 @@ -2731,20 +2722,18 @@
2561 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2562 :try_end_cb
2563 - .catchall {:try_start_b4 .. :try_end_cb} :catchall_ec
2564 - .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_d2
2565 - .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_f3
2566 + .catchall {:try_start_b4 .. :try_end_cb} :catchall_e8
2567 + .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_ce
2568 + .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_ef
2570 if-eqz v9, :cond_3b
2572 - invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2574 - goto/16 :goto_3b
2575 + goto :goto_b0
2577 - :catch_d2
2578 + :catch_ce
2579 move-exception v6
2581 - :try_start_d3
2582 + :try_start_cf
2583 new-instance v0, Ljava/io/FileNotFoundException;
2585 new-instance v2, Ljava/lang/StringBuilder;
2586 @@ -2768,26 +2757,26 @@
2587 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2589 throw v0
2590 - :try_end_ec
2591 - .catchall {:try_start_d3 .. :try_end_ec} :catchall_ec
2592 + :try_end_e8
2593 + .catchall {:try_start_cf .. :try_end_e8} :catchall_e8
2595 - :catchall_ec
2596 + :catchall_e8
2597 move-exception v0
2599 - if-eqz v9, :cond_f2
2600 + if-eqz v9, :cond_ee
2602 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2604 - :cond_f2
2605 + :cond_ee
2606 throw v0
2608 - :catch_f3
2609 + :catch_ef
2610 move-exception v6
2612 - :try_start_f4
2613 + :try_start_f0
2614 throw v6
2615 - :try_end_f5
2616 - .catchall {:try_start_f4 .. :try_end_f5} :catchall_ec
2617 + :try_end_f1
2618 + .catchall {:try_start_f0 .. :try_end_f1} :catchall_e8
2619 .end method
2621 .method public final openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;
2622 @@ -3069,9 +3058,9 @@
2623 :try_start_1f
2624 invoke-interface {v8, p1, p2, p3}, Landroid/content/IContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor;
2625 :try_end_22
2626 - .catchall {:try_start_1f .. :try_end_22} :catchall_63
2627 - .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_49
2628 - .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_6a
2629 + .catchall {:try_start_1f .. :try_end_22} :catchall_60
2630 + .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_46
2631 + .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_67
2633 move-result-object v7
2635 @@ -3081,10 +3070,10 @@
2637 if-eqz v8, :cond_2b
2639 + :goto_28
2640 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2642 :cond_2b
2643 - :goto_2b
2644 return-object v0
2646 :cond_2c
2647 @@ -3111,20 +3100,18 @@
2649 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2650 :try_end_43
2651 - .catchall {:try_start_2c .. :try_end_43} :catchall_63
2652 - .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_49
2653 - .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_6a
2654 + .catchall {:try_start_2c .. :try_end_43} :catchall_60
2655 + .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_46
2656 + .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_67
2658 if-eqz v8, :cond_2b
2660 - invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2662 - goto :goto_2b
2663 + goto :goto_28
2665 - :catch_49
2666 + :catch_46
2667 move-exception v6
2669 - :try_start_4a
2670 + :try_start_47
2671 new-instance v0, Ljava/io/FileNotFoundException;
2673 new-instance v2, Ljava/lang/StringBuilder;
2674 @@ -3148,26 +3135,26 @@
2675 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2677 throw v0
2678 - :try_end_63
2679 - .catchall {:try_start_4a .. :try_end_63} :catchall_63
2680 + :try_end_60
2681 + .catchall {:try_start_47 .. :try_end_60} :catchall_60
2683 - :catchall_63
2684 + :catchall_60
2685 move-exception v0
2687 - if-eqz v8, :cond_69
2688 + if-eqz v8, :cond_66
2690 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2692 - :cond_69
2693 + :cond_66
2694 throw v0
2696 - :catch_6a
2697 + :catch_67
2698 move-exception v6
2700 - :try_start_6b
2701 + :try_start_68
2702 throw v6
2703 - :try_end_6c
2704 - .catchall {:try_start_6b .. :try_end_6c} :catchall_63
2705 + :try_end_69
2706 + .catchall {:try_start_68 .. :try_end_69} :catchall_60
2707 .end method
2709 .method public final query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
2710 @@ -3204,7 +3191,13 @@
2712 move-result-object v9
2714 - if-nez v9, :cond_1e
2715 + iget-object v1, p0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2717 + invoke-static {p1, p2, v1, v9}, Landroid/privacy/surrogate/PrivacyContentResolver;->enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
2719 + move-result-object v9
2721 + if-nez v9, :cond_24
2723 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2725 @@ -3212,7 +3205,7 @@
2727 goto :goto_7
2729 - :cond_1e
2730 + :cond_24
2731 invoke-interface {v9}, Landroid/database/Cursor;->getCount()I
2733 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2734 @@ -3236,13 +3229,13 @@
2735 new-instance v1, Landroid/content/ContentResolver$CursorWrapperInner;
2737 invoke-direct {v1, p0, v9, v0}, Landroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V
2738 - :try_end_35
2739 - .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_35} :catch_36
2740 - .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_35} :catch_3c
2741 + :try_end_3b
2742 + .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_3b} :catch_3c
2743 + .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_3b} :catch_42
2745 goto :goto_7
2747 - :catch_36
2748 + :catch_3c
2749 move-exception v8
2751 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2752 @@ -3251,7 +3244,7 @@
2754 goto :goto_7
2756 - :catch_3c
2757 + :catch_42
2758 move-exception v8
2760 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2761 @@ -3424,12 +3417,12 @@
2763 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2764 :try_end_36
2765 - .catchall {:try_start_1f .. :try_end_36} :catchall_40
2766 + .catchall {:try_start_1f .. :try_end_36} :catchall_3d
2767 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_36} :catch_3a
2769 + :goto_36
2770 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2772 - :goto_39
2773 return v8
2775 :catch_3a
2776 @@ -3437,11 +3430,9 @@
2778 const/4 v8, -0x1
2780 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2781 + goto :goto_36
2783 - goto :goto_39
2785 - :catchall_40
2786 + :catchall_3d
2787 move-exception v0
2789 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2790 diff -Npru stock-framework/smali/android/content/CursorLoader.smali pdroid-framework/smali/android/content/CursorLoader.smali
2791 --- stock-framework/smali/android/content/CursorLoader.smali 2012-05-08 11:54:27.698625064 -0500
2792 +++ pdroid-framework/smali/android/content/CursorLoader.smali 2012-05-08 11:54:51.546743317 -0500
2793 @@ -154,7 +154,7 @@
2795 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2797 - const-string v0, "mProjection="
2798 + const-string/jumbo v0, "mProjection="
2800 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2802 diff -Npru stock-framework/smali/android/content/IntentFilter.smali pdroid-framework/smali/android/content/IntentFilter.smali
2803 --- stock-framework/smali/android/content/IntentFilter.smali 2012-05-08 11:54:27.722625179 -0500
2804 +++ pdroid-framework/smali/android/content/IntentFilter.smali 2012-05-08 11:54:51.574743458 -0500
2805 @@ -1705,14 +1705,14 @@
2807 iget-boolean v6, p0, Landroid/content/IntentFilter;->mHasPartialTypes:Z
2809 - if-eqz v6, :cond_171
2810 + if-eqz v6, :cond_172
2812 :cond_150
2813 invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->setLength(I)V
2815 invoke-virtual {v5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2817 - const-string v6, "mPriority="
2818 + const-string/jumbo v6, "mPriority="
2820 invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2822 @@ -1734,7 +1734,7 @@
2824 invoke-interface {p1, v6}, Landroid/util/Printer;->println(Ljava/lang/String;)V
2826 - :cond_171
2827 + :cond_172
2828 return-void
2829 .end method
2831 diff -Npru stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali
2832 --- stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-05-08 11:54:27.738625262 -0500
2833 +++ pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-05-08 11:54:51.590743538 -0500
2834 @@ -139,7 +139,7 @@
2836 invoke-interface {v1, v2, v3}, Landroid/content/ISyncAdapter;->initialize(Landroid/accounts/Account;Ljava/lang/String;)V
2837 :try_end_43
2838 - .catchall {:try_start_2 .. :try_end_43} :catchall_80
2839 + .catchall {:try_start_2 .. :try_end_43} :catchall_7d
2840 .catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_43} :catch_4e
2842 :cond_43
2843 @@ -149,9 +149,9 @@
2845 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2847 + :goto_4a
2848 invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2850 - :goto_4d
2851 return-void
2853 :catch_4e
2854 @@ -194,7 +194,7 @@
2856 invoke-static {v1, v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2857 :try_end_75
2858 - .catchall {:try_start_4f .. :try_end_75} :catchall_80
2859 + .catchall {:try_start_4f .. :try_end_75} :catchall_7d
2861 iget-object v1, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2863 @@ -202,11 +202,9 @@
2865 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2867 - invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2869 - goto :goto_4d
2870 + goto :goto_4a
2872 - :catchall_80
2873 + :catchall_7d
2874 move-exception v1
2876 iget-object v2, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2877 diff -Npru stock-framework/smali/android/content/SyncStorageEngine.smali pdroid-framework/smali/android/content/SyncStorageEngine.smali
2878 --- stock-framework/smali/android/content/SyncStorageEngine.smali 2012-05-08 11:54:27.774625436 -0500
2879 +++ pdroid-framework/smali/android/content/SyncStorageEngine.smali 2012-05-08 11:54:51.630743736 -0500
2880 @@ -487,7 +487,7 @@
2881 :try_start_18
2882 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2883 :try_end_1b
2884 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_34
2885 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_2d
2887 :goto_1b
2888 return-void
2889 @@ -529,17 +529,12 @@
2890 :try_start_30
2891 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2892 :try_end_33
2893 - .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_36
2894 + .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34
2896 :goto_33
2897 throw v4
2899 :catch_34
2900 - move-exception v4
2902 - goto :goto_1b
2904 - :catch_36
2905 move-exception v5
2907 goto :goto_33
2908 @@ -1750,7 +1745,7 @@
2910 invoke-interface {v9, v14, v15}, Lorg/xmlpull/v1/XmlPullParser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
2911 :try_end_43
2912 - .catchall {:try_start_2 .. :try_end_43} :catchall_12c
2913 + .catchall {:try_start_2 .. :try_end_43} :catchall_12a
2914 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_2 .. :try_end_43} :catch_e6
2915 .catch Ljava/io/IOException; {:try_start_2 .. :try_end_43} :catch_104
2917 @@ -1774,8 +1769,8 @@
2919 iput v14, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2920 :try_end_53
2921 - .catchall {:try_start_47 .. :try_end_53} :catchall_12c
2922 - .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_148
2923 + .catchall {:try_start_47 .. :try_end_53} :catchall_12a
2924 + .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_146
2925 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_47 .. :try_end_53} :catch_e6
2926 .catch Ljava/io/IOException; {:try_start_47 .. :try_end_53} :catch_104
2928 @@ -1848,7 +1843,7 @@
2929 :goto_89
2930 invoke-interface {v9}, Lorg/xmlpull/v1/XmlPullParser;->next()I
2931 :try_end_8c
2932 - .catchall {:try_start_55 .. :try_end_8c} :catchall_12c
2933 + .catchall {:try_start_55 .. :try_end_8c} :catchall_12a
2934 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_55 .. :try_end_8c} :catch_e6
2935 .catch Ljava/io/IOException; {:try_start_55 .. :try_end_8c} :catch_104
2937 @@ -1892,7 +1887,7 @@
2938 :try_start_a7
2939 invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2940 :try_end_aa
2941 - .catchall {:try_start_a7 .. :try_end_aa} :catchall_12c
2942 + .catchall {:try_start_a7 .. :try_end_aa} :catchall_12a
2943 .catch Ljava/lang/NumberFormatException; {:try_start_a7 .. :try_end_aa} :catch_ac
2944 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_a7 .. :try_end_aa} :catch_e6
2945 .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_aa} :catch_104
2946 @@ -1912,8 +1907,8 @@
2947 :try_start_af
2948 invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2949 :try_end_b2
2950 - .catchall {:try_start_af .. :try_end_b2} :catchall_12c
2951 - .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_148
2952 + .catchall {:try_start_af .. :try_end_b2} :catchall_12a
2953 + .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_146
2954 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_af .. :try_end_b2} :catch_e6
2955 .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_104
2957 @@ -1977,7 +1972,7 @@
2959 invoke-direct {v0, v9, v10}, Landroid/content/SyncStorageEngine;->parseExtra(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/Pair;)V
2960 :try_end_e5
2961 - .catchall {:try_start_b6 .. :try_end_e5} :catchall_12c
2962 + .catchall {:try_start_b6 .. :try_end_e5} :catchall_12a
2963 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_b6 .. :try_end_e5} :catch_e6
2964 .catch Ljava/io/IOException; {:try_start_b6 .. :try_end_e5} :catch_104
2966 @@ -1993,7 +1988,7 @@
2968 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2969 :try_end_ee
2970 - .catchall {:try_start_e7 .. :try_end_ee} :catchall_12c
2971 + .catchall {:try_start_e7 .. :try_end_ee} :catchall_12a
2973 add-int/lit8 v14, v5, 0x1
2975 @@ -2026,7 +2021,7 @@
2976 :catch_104
2977 move-exception v2
2979 - if-nez v4, :cond_124
2980 + if-nez v4, :cond_122
2982 :try_start_107
2983 const-string v14, "SyncManager"
2984 @@ -2035,7 +2030,7 @@
2986 invoke-static {v14, v15}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2987 :try_end_10e
2988 - .catchall {:try_start_107 .. :try_end_10e} :catchall_12c
2989 + .catchall {:try_start_107 .. :try_end_10e} :catchall_12a
2991 :goto_10e
2992 add-int/lit8 v14, v5, 0x1
2993 @@ -2057,28 +2052,23 @@
2994 :try_start_11e
2995 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2996 :try_end_121
2997 - .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_122
2998 + .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_102
3000 goto :goto_a6
3002 - :catch_122
3003 - move-exception v14
3005 - goto :goto_a6
3007 - :cond_124
3008 - :try_start_124
3009 + :cond_122
3010 + :try_start_122
3011 const-string v14, "SyncManager"
3013 const-string v15, "Error reading accounts"
3015 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3016 - :try_end_12b
3017 - .catchall {:try_start_124 .. :try_end_12b} :catchall_12c
3018 + :try_end_129
3019 + .catchall {:try_start_122 .. :try_end_129} :catchall_12a
3021 goto :goto_10e
3023 - :catchall_12c
3024 + :catchall_12a
3025 move-exception v14
3027 add-int/lit8 v15, v5, 0x1
3028 @@ -2097,28 +2087,28 @@
3030 iput v15, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
3032 - if-eqz v4, :cond_142
3033 + if-eqz v4, :cond_140
3035 - :try_start_13f
3036 + :try_start_13d
3037 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
3038 - :try_end_142
3039 - .catch Ljava/io/IOException; {:try_start_13f .. :try_end_142} :catch_146
3040 + :try_end_140
3041 + .catch Ljava/io/IOException; {:try_start_13d .. :try_end_140} :catch_141
3043 - :cond_142
3044 - :goto_142
3045 + :cond_140
3046 + :goto_140
3047 throw v14
3049 + :catch_141
3050 + move-exception v15
3052 + goto :goto_140
3054 :catch_143
3055 move-exception v14
3057 goto/16 :goto_a3
3059 :catch_146
3060 - move-exception v15
3062 - goto :goto_142
3064 - :catch_148
3065 move-exception v14
3067 goto/16 :goto_53
3068 @@ -3473,14 +3463,14 @@
3070 invoke-virtual {v2}, Landroid/os/Parcel;->readBundle()Landroid/os/Bundle;
3071 :try_end_10
3072 - .catchall {:try_start_5 .. :try_end_10} :catchall_1f
3073 + .catchall {:try_start_5 .. :try_end_10} :catchall_1c
3074 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_10} :catch_15
3076 move-result-object v0
3078 + :goto_11
3079 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3081 - :goto_14
3082 return-object v0
3084 :catch_15
3085 @@ -3491,13 +3481,11 @@
3087 invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
3088 :try_end_1b
3089 - .catchall {:try_start_16 .. :try_end_1b} :catchall_1f
3091 - invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3092 + .catchall {:try_start_16 .. :try_end_1b} :catchall_1c
3094 - goto :goto_14
3095 + goto :goto_11
3097 - :catchall_1f
3098 + :catchall_1c
3099 move-exception v3
3101 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3102 diff -Npru stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali
3103 --- stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-05-08 11:54:27.910626115 -0500
3104 +++ pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-05-08 11:54:51.774744450 -0500
3105 @@ -105,13 +105,13 @@
3107 invoke-interface {v1}, Landroid/database/IBulkCursor;->close()V
3108 :try_end_d
3109 - .catchall {:try_start_8 .. :try_end_d} :catchall_1b
3110 + .catchall {:try_start_8 .. :try_end_d} :catchall_19
3111 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_d} :catch_10
3113 + :goto_d
3114 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3116 :cond_f
3117 - :goto_f
3118 return-void
3120 :catch_10
3121 @@ -124,13 +124,11 @@
3123 invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
3124 :try_end_18
3125 - .catchall {:try_start_11 .. :try_end_18} :catchall_1b
3126 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
3128 - iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3130 - goto :goto_f
3131 + goto :goto_d
3133 - :catchall_1b
3134 + :catchall_19
3135 move-exception v1
3137 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3138 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteCursor.smali pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali
3139 --- stock-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-05-08 11:54:27.966626388 -0500
3140 +++ pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-05-08 11:54:51.798744565 -0500
3141 @@ -116,7 +116,7 @@
3142 const/4 v2, 0x0
3144 :goto_4a
3145 - if-ge v2, v0, :cond_66
3146 + if-ge v2, v0, :cond_6d
3148 iget-object v3, p0, Landroid/database/sqlite/SQLiteCursor;->mQuery:Landroid/database/sqlite/SQLiteQuery;
3150 @@ -138,7 +138,7 @@
3152 iput v2, p0, Landroid/database/sqlite/SQLiteCursor;->mRowIdColumnIndex:I
3153 :try_end_60
3154 - .catchall {:try_start_3f .. :try_end_60} :catchall_6c
3155 + .catchall {:try_start_3f .. :try_end_60} :catchall_66
3157 :cond_60
3158 add-int/lit8 v2, v2, 0x1
3159 @@ -150,14 +150,7 @@
3161 goto :goto_30
3163 - :cond_66
3164 - iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3166 - invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3168 - return-void
3170 - :catchall_6c
3171 + :catchall_66
3172 move-exception v3
3174 iget-object v4, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3175 @@ -165,6 +158,13 @@
3176 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3178 throw v3
3180 + :cond_6d
3181 + iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3183 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3185 + return-void
3186 .end method
3188 .method public constructor <init>(Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
3189 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali
3190 --- stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-05-08 11:54:27.990626508 -0500
3191 +++ pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-05-08 11:54:51.810744629 -0500
3192 @@ -459,19 +459,19 @@
3194 if-nez v2, :cond_32
3196 + :goto_2f
3197 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3199 :cond_32
3200 - :goto_32
3201 return-void
3203 :cond_33
3204 - if-eqz p2, :cond_58
3205 + if-eqz p2, :cond_55
3207 :try_start_35
3208 iget-object v3, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3210 - if-nez v3, :cond_58
3211 + if-nez v3, :cond_55
3213 const-string v3, "BEGIN EXCLUSIVE;"
3215 @@ -502,26 +502,24 @@
3216 invoke-interface {p1}, Landroid/database/sqlite/SQLiteTransactionListener;->onBegin()V
3217 :try_end_51
3218 .catchall {:try_start_4e .. :try_end_51} :catchall_25
3219 - .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5e
3220 + .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5b
3222 :cond_51
3223 const/4 v2, 0x1
3225 if-nez v2, :cond_32
3227 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3229 - goto :goto_32
3230 + goto :goto_2f
3232 - :cond_58
3233 - :try_start_58
3234 + :cond_55
3235 + :try_start_55
3236 const-string v3, "BEGIN IMMEDIATE;"
3238 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3240 goto :goto_3e
3242 - :catch_5e
3243 + :catch_5b
3244 move-exception v0
3246 const-string v3, "ROLLBACK;"
3247 @@ -529,8 +527,8 @@
3248 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3250 throw v0
3251 - :try_end_65
3252 - .catchall {:try_start_58 .. :try_end_65} :catchall_25
3253 + :try_end_62
3254 + .catchall {:try_start_55 .. :try_end_62} :catchall_25
3255 .end method
3257 .method private checkLockHoldTime()V
3258 @@ -2993,6 +2991,8 @@
3260 if-nez v0, :cond_43
3262 + :cond_3f
3263 + :goto_3f
3264 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3266 goto :goto_7
3267 @@ -3009,7 +3009,7 @@
3269 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3271 - if-eqz v0, :cond_7f
3272 + if-eqz v0, :cond_3f
3274 const-string v0, "SQLiteDatabase"
3276 @@ -3063,10 +3063,7 @@
3277 :try_end_7f
3278 .catchall {:try_start_6f .. :try_end_7f} :catchall_6a
3280 - :cond_7f
3281 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3283 - goto :goto_7
3284 + goto :goto_3f
3285 .end method
3287 .method closeDatabase()V
3288 @@ -3507,13 +3504,13 @@
3289 :try_start_3
3290 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3291 :try_end_5
3292 - .catchall {:try_start_3 .. :try_end_5} :catchall_1e
3293 + .catchall {:try_start_3 .. :try_end_5} :catchall_1b
3295 if-nez v0, :cond_b
3297 + :goto_7
3298 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3300 - :goto_a
3301 return-void
3303 :cond_b
3304 @@ -3532,13 +3529,11 @@
3306 iput-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3307 :try_end_1a
3308 - .catchall {:try_start_b .. :try_end_1a} :catchall_1e
3310 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3311 + .catchall {:try_start_b .. :try_end_1a} :catchall_1b
3313 - goto :goto_a
3314 + goto :goto_7
3316 - :catchall_1e
3317 + :catchall_1b
3318 move-exception v0
3320 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3321 @@ -3568,7 +3563,7 @@
3322 :try_start_c
3323 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3324 :try_end_e
3325 - .catchall {:try_start_c .. :try_end_e} :catchall_6f
3326 + .catchall {:try_start_c .. :try_end_e} :catchall_59
3328 if-eqz v2, :cond_15
3330 @@ -3596,8 +3591,10 @@
3332 invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
3333 :try_end_26
3334 - .catchall {:try_start_15 .. :try_end_26} :catchall_6f
3335 + .catchall {:try_start_15 .. :try_end_26} :catchall_59
3337 + :cond_26
3338 + :goto_26
3339 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3341 goto :goto_8
3342 @@ -3606,7 +3603,7 @@
3343 :try_start_2a
3344 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mHasAttachedDbs:Z
3346 - if-eqz v2, :cond_5c
3347 + if-eqz v2, :cond_5e
3349 const-string v1, "SQLiteDatabase"
3351 @@ -3616,7 +3613,7 @@
3353 move-result v1
3355 - if-eqz v1, :cond_58
3356 + if-eqz v1, :cond_26
3358 const-string v1, "SQLiteDatabase"
3360 @@ -3648,15 +3645,19 @@
3362 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
3363 :try_end_58
3364 - .catchall {:try_start_2a .. :try_end_58} :catchall_6f
3365 + .catchall {:try_start_2a .. :try_end_58} :catchall_59
3367 + goto :goto_26
3369 + :catchall_59
3370 + move-exception v0
3372 - :cond_58
3373 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3375 - goto :goto_8
3376 + throw v0
3378 - :cond_5c
3379 - :try_start_5c
3380 + :cond_5e
3381 + :try_start_5e
3382 new-instance v0, Landroid/database/sqlite/DatabaseConnectionPool;
3384 invoke-direct {v0, p0}, Landroid/database/sqlite/DatabaseConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V
3385 @@ -3668,21 +3669,14 @@
3386 const-string v2, "WAL"
3388 invoke-direct {p0, v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->setJournalMode(Ljava/lang/String;Ljava/lang/String;)V
3389 - :try_end_6a
3390 - .catchall {:try_start_5c .. :try_end_6a} :catchall_6f
3391 + :try_end_6c
3392 + .catchall {:try_start_5e .. :try_end_6c} :catchall_59
3394 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3396 move v0, v1
3398 goto :goto_8
3400 - :catchall_6f
3401 - move-exception v0
3403 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3405 - throw v0
3406 .end method
3408 .method public endTransaction()V
3409 @@ -3716,9 +3710,9 @@
3411 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3413 + :goto_16
3414 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3416 - :goto_19
3417 return-void
3419 :cond_1a
3420 @@ -3753,21 +3747,21 @@
3421 :try_start_2a
3422 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3424 - if-eqz v2, :cond_56
3425 + if-eqz v2, :cond_53
3427 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3429 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onCommit()V
3430 :try_end_33
3431 .catchall {:try_start_2a .. :try_end_33} :catchall_1e
3432 - .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_5c
3433 + .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_59
3435 :cond_33
3436 :goto_33
3437 :try_start_33
3438 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3440 - if-eqz v2, :cond_62
3441 + if-eqz v2, :cond_5f
3443 const-string v2, "COMMIT;"
3445 @@ -3797,37 +3791,35 @@
3446 :goto_50
3447 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3449 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3451 - goto :goto_19
3452 + goto :goto_16
3454 - :cond_56
3455 - :try_start_56
3456 + :cond_53
3457 + :try_start_53
3458 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3460 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onRollback()V
3461 - :try_end_5b
3462 - .catchall {:try_start_56 .. :try_end_5b} :catchall_1e
3463 - .catch Ljava/lang/RuntimeException; {:try_start_56 .. :try_end_5b} :catch_5c
3464 + :try_end_58
3465 + .catchall {:try_start_53 .. :try_end_58} :catchall_1e
3466 + .catch Ljava/lang/RuntimeException; {:try_start_53 .. :try_end_58} :catch_59
3468 goto :goto_33
3470 - :catch_5c
3471 + :catch_59
3472 move-exception v0
3474 move-object v1, v0
3476 const/4 v2, 0x0
3478 - :try_start_5f
3479 + :try_start_5c
3480 iput-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3481 - :try_end_61
3482 - .catchall {:try_start_5f .. :try_end_61} :catchall_1e
3483 + :try_end_5e
3484 + .catchall {:try_start_5c .. :try_end_5e} :catchall_1e
3486 goto :goto_33
3488 - :cond_62
3489 - :try_start_62
3490 + :cond_5f
3491 + :try_start_5f
3492 const-string v2, "ROLLBACK;"
3494 invoke-virtual {p0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3495 @@ -3835,11 +3827,11 @@
3496 if-eqz v1, :cond_50
3498 throw v1
3499 - :try_end_6a
3500 - .catchall {:try_start_62 .. :try_end_6a} :catchall_1e
3501 - .catch Landroid/database/SQLException; {:try_start_62 .. :try_end_6a} :catch_6a
3502 + :try_end_67
3503 + .catchall {:try_start_5f .. :try_end_67} :catchall_1e
3504 + .catch Landroid/database/SQLException; {:try_start_5f .. :try_end_67} :catch_67
3506 - :catch_6a
3507 + :catch_67
3508 move-exception v2
3510 goto :goto_50
3511 @@ -4806,7 +4798,7 @@
3513 move-result v6
3515 - if-nez v6, :cond_af
3516 + if-nez v6, :cond_b6
3518 const-string v7, "SQLiteDatabase"
3520 @@ -4844,7 +4836,7 @@
3522 invoke-static {v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3523 :try_end_a8
3524 - .catchall {:try_start_54 .. :try_end_a8} :catchall_b7
3525 + .catchall {:try_start_54 .. :try_end_a8} :catchall_af
3527 const/4 v6, 0x0
3529 @@ -4856,25 +4848,25 @@
3530 :goto_ae
3531 return v6
3533 - :cond_af
3534 - if-eqz v4, :cond_b4
3535 + :catchall_af
3536 + move-exception v6
3538 - invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3539 + if-eqz v4, :cond_b5
3541 - :cond_b4
3542 - add-int/lit8 v2, v2, 0x1
3544 - goto :goto_47
3545 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3547 - :catchall_b7
3548 - move-exception v6
3549 + :cond_b5
3550 + throw v6
3552 - if-eqz v4, :cond_bd
3553 + :cond_b6
3554 + if-eqz v4, :cond_bb
3556 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3558 - :cond_bd
3559 - throw v6
3560 + :cond_bb
3561 + add-int/lit8 v2, v2, 0x1
3563 + goto :goto_47
3565 :cond_be
3566 const/4 v6, 0x1
3567 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteStatement.smali pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali
3568 --- stock-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-05-08 11:54:28.006626591 -0500
3569 +++ pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-05-08 11:54:51.818744669 -0500
3570 @@ -417,13 +417,13 @@
3572 invoke-virtual {v5, v6, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->logTimeStat(Ljava/lang/String;J)V
3573 :try_end_10
3574 - .catchall {:try_start_1 .. :try_end_10} :catchall_3e
3575 + .catchall {:try_start_1 .. :try_end_10} :catchall_3b
3576 .catch Ljava/io/IOException; {:try_start_1 .. :try_end_10} :catch_14
3577 - .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_22
3578 + .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_1f
3580 + :goto_10
3581 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3583 - :goto_13
3584 return-object v2
3586 :catch_14
3587 @@ -435,19 +435,14 @@
3588 const-string/jumbo v6, "simpleQueryForBlobFileDescriptor() failed"
3590 invoke-static {v5, v6, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3591 - :try_end_1d
3592 - .catchall {:try_start_15 .. :try_end_1d} :catchall_3e
3594 const/4 v2, 0x0
3596 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3598 - goto :goto_13
3599 + goto :goto_10
3601 - :catch_22
3602 + :catch_1f
3603 move-exception v0
3605 - :try_start_23
3606 new-instance v5, Landroid/database/sqlite/SQLiteDoneException;
3608 new-instance v6, Ljava/lang/StringBuilder;
3609 @@ -473,10 +468,10 @@
3610 invoke-direct {v5, v6}, Landroid/database/sqlite/SQLiteDoneException;-><init>(Ljava/lang/String;)V
3612 throw v5
3613 - :try_end_3e
3614 - .catchall {:try_start_23 .. :try_end_3e} :catchall_3e
3615 + :try_end_3b
3616 + .catchall {:try_start_15 .. :try_end_3b} :catchall_3b
3618 - :catchall_3e
3619 + :catchall_3b
3620 move-exception v5
3622 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3623 diff -Npru stock-framework/smali/android/location/Location.smali pdroid-framework/smali/android/location/Location.smali
3624 --- stock-framework/smali/android/location/Location.smali 2012-05-08 11:54:28.554629308 -0500
3625 +++ pdroid-framework/smali/android/location/Location.smali 2012-05-08 11:54:52.578748433 -0500
3626 @@ -1631,7 +1631,7 @@
3628 move-result-object v0
3630 - const-string v1, "mProvider="
3631 + const-string/jumbo v1, "mProvider="
3633 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3635 diff -Npru stock-framework/smali/android/media/MediaPlayer.smali pdroid-framework/smali/android/media/MediaPlayer.smali
3636 --- stock-framework/smali/android/media/MediaPlayer.smali 2012-05-08 11:54:28.670629880 -0500
3637 +++ pdroid-framework/smali/android/media/MediaPlayer.smali 2012-05-08 11:54:52.646748770 -0500
3638 @@ -985,9 +985,9 @@
3640 invoke-virtual {v7, p2, v0}, Landroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
3641 :try_end_21
3642 - .catchall {:try_start_17 .. :try_end_21} :catchall_6e
3643 - .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_52
3644 - .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_67
3645 + .catchall {:try_start_17 .. :try_end_21} :catchall_64
3646 + .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_4f
3647 + .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_6b
3649 move-result-object v6
3651 @@ -995,6 +995,7 @@
3653 if-eqz v6, :cond_15
3655 + :goto_26
3656 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3658 goto :goto_15
3659 @@ -1009,27 +1010,20 @@
3661 cmp-long v0, v0, v2
3663 - if-gez v0, :cond_41
3664 + if-gez v0, :cond_3e
3666 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3668 move-result-object v0
3670 invoke-virtual {p0, v0}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V
3671 - :try_end_3b
3672 - .catchall {:try_start_2a .. :try_end_3b} :catchall_6e
3673 - .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_3b} :catch_52
3674 - .catch Ljava/io/IOException; {:try_start_2a .. :try_end_3b} :catch_67
3676 :goto_3b
3677 if-eqz v6, :cond_15
3679 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3681 - goto :goto_15
3682 + goto :goto_26
3684 - :cond_41
3685 - :try_start_41
3686 + :cond_3e
3687 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3689 move-result-object v1
3690 @@ -1045,22 +1039,22 @@
3691 move-object v0, p0
3693 invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V
3694 - :try_end_51
3695 - .catchall {:try_start_41 .. :try_end_51} :catchall_6e
3696 - .catch Ljava/lang/SecurityException; {:try_start_41 .. :try_end_51} :catch_52
3697 - .catch Ljava/io/IOException; {:try_start_41 .. :try_end_51} :catch_67
3698 + :try_end_4e
3699 + .catchall {:try_start_2a .. :try_end_4e} :catchall_64
3700 + .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_4e} :catch_4f
3701 + .catch Ljava/io/IOException; {:try_start_2a .. :try_end_4e} :catch_6b
3703 goto :goto_3b
3705 - :catch_52
3706 + :catch_4f
3707 move-exception v0
3709 - if-eqz v6, :cond_58
3710 + if-eqz v6, :cond_55
3712 + :goto_52
3713 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3715 - :cond_58
3716 - :goto_58
3717 + :cond_55
3718 const-string v0, "MediaPlayer"
3720 const-string v1, "Couldn\'t open file on client side, trying server side"
3721 @@ -1075,24 +1069,22 @@
3723 goto :goto_15
3725 - :catch_67
3726 + :catchall_64
3727 move-exception v0
3729 - if-eqz v6, :cond_58
3730 + if-eqz v6, :cond_6a
3732 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3734 - goto :goto_58
3735 + :cond_6a
3736 + throw v0
3738 - :catchall_6e
3739 + :catch_6b
3740 move-exception v0
3742 - if-eqz v6, :cond_74
3743 + if-eqz v6, :cond_55
3745 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3747 - :cond_74
3748 - throw v0
3749 + goto :goto_52
3750 .end method
3752 .method public setDataSource(Ljava/io/FileDescriptor;)V
3753 diff -Npru stock-framework/smali/android/net/VpnService.smali pdroid-framework/smali/android/net/VpnService.smali
3754 --- stock-framework/smali/android/net/VpnService.smali 2012-05-08 11:54:28.950631268 -0500
3755 +++ pdroid-framework/smali/android/net/VpnService.smali 2012-05-08 11:54:52.858749825 -0500
3756 @@ -155,8 +155,6 @@
3758 :try_start_d
3759 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3760 - :try_end_10
3761 - .catch Ljava/lang/Exception; {:try_start_d .. :try_end_10} :catch_1e
3763 :goto_10
3764 return v2
3765 @@ -166,10 +164,9 @@
3767 const/4 v2, 0x0
3769 - :try_start_13
3770 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3771 :try_end_16
3772 - .catch Ljava/lang/Exception; {:try_start_13 .. :try_end_16} :catch_17
3773 + .catch Ljava/lang/Exception; {:try_start_d .. :try_end_16} :catch_17
3775 goto :goto_10
3777 @@ -184,7 +181,7 @@
3778 :try_start_1a
3779 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3780 :try_end_1d
3781 - .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_20
3782 + .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_1e
3784 :goto_1d
3785 throw v2
3786 @@ -192,11 +189,6 @@
3787 :catch_1e
3788 move-exception v3
3790 - goto :goto_10
3792 - :catch_20
3793 - move-exception v3
3795 goto :goto_1d
3796 .end method
3798 diff -Npru stock-framework/smali/android/net/wifi/WifiConfigStore.smali pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali
3799 --- stock-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-05-08 11:54:29.050631761 -0500
3800 +++ pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-05-08 11:54:52.954750298 -0500
3801 @@ -2904,9 +2904,9 @@
3803 invoke-direct {v9, v0}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
3804 :try_end_14
3805 - .catchall {:try_start_1 .. :try_end_14} :catchall_23d
3806 - .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_243
3807 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_240
3808 + .catchall {:try_start_1 .. :try_end_14} :catchall_23a
3809 + .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_240
3810 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_23d
3812 :try_start_14
3813 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3814 @@ -2933,7 +2933,7 @@
3816 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3817 :try_end_2d
3818 - .catchall {:try_start_14 .. :try_end_2d} :catchall_17e
3819 + .catchall {:try_start_14 .. :try_end_2d} :catchall_17b
3820 .catch Ljava/io/EOFException; {:try_start_14 .. :try_end_2d} :catch_d5
3821 .catch Ljava/io/IOException; {:try_start_14 .. :try_end_2d} :catch_10b
3823 @@ -2960,27 +2960,27 @@
3825 invoke-virtual {v11, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
3826 :try_end_3b
3827 - .catchall {:try_start_34 .. :try_end_3b} :catchall_17e
3828 + .catchall {:try_start_34 .. :try_end_3b} :catchall_17b
3829 .catch Ljava/lang/IllegalArgumentException; {:try_start_34 .. :try_end_3b} :catch_bb
3830 .catch Ljava/io/EOFException; {:try_start_34 .. :try_end_3b} :catch_d5
3831 .catch Ljava/io/IOException; {:try_start_34 .. :try_end_3b} :catch_10b
3833 move-result v19
3835 - if-eqz v19, :cond_1cd
3836 + if-eqz v19, :cond_1ca
3838 const/16 v19, -0x1
3840 move/from16 v0, v19
3842 - if-eq v7, v0, :cond_230
3843 + if-eq v7, v0, :cond_22d
3845 :try_start_44
3846 sget-object v20, Landroid/net/wifi/WifiConfigStore;->sConfiguredNetworks:Ljava/util/HashMap;
3848 monitor-enter v20
3849 :try_end_47
3850 - .catchall {:try_start_44 .. :try_end_47} :catchall_17e
3851 + .catchall {:try_start_44 .. :try_end_47} :catchall_17b
3852 .catch Ljava/io/EOFException; {:try_start_44 .. :try_end_47} :catch_d5
3853 .catch Ljava/io/IOException; {:try_start_44 .. :try_end_47} :catch_10b
3855 @@ -3007,7 +3007,7 @@
3857 check-cast v2, Landroid/net/wifi/WifiConfiguration;
3859 - if-nez v2, :cond_1ee
3860 + if-nez v2, :cond_1eb
3862 const-string v19, "configuration found for missing network, ignored"
3864 @@ -3017,7 +3017,7 @@
3865 :pswitch_64
3866 monitor-exit v20
3867 :try_end_65
3868 - .catchall {:try_start_47 .. :try_end_65} :catchall_212
3869 + .catchall {:try_start_47 .. :try_end_65} :catchall_20f
3871 :cond_65
3872 :goto_65
3873 @@ -3041,7 +3041,7 @@
3874 :goto_72
3875 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3876 :try_end_75
3877 - .catchall {:try_start_66 .. :try_end_75} :catchall_17e
3878 + .catchall {:try_start_66 .. :try_end_75} :catchall_17b
3879 .catch Ljava/io/EOFException; {:try_start_66 .. :try_end_75} :catch_d5
3880 .catch Ljava/io/IOException; {:try_start_66 .. :try_end_75} :catch_10b
3882 @@ -3118,7 +3118,7 @@
3884 invoke-virtual {v13, v12}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)V
3885 :try_end_ba
3886 - .catchall {:try_start_76 .. :try_end_ba} :catchall_17e
3887 + .catchall {:try_start_76 .. :try_end_ba} :catchall_17b
3888 .catch Ljava/lang/IllegalArgumentException; {:try_start_76 .. :try_end_ba} :catch_bb
3889 .catch Ljava/io/EOFException; {:try_start_76 .. :try_end_ba} :catch_d5
3890 .catch Ljava/io/IOException; {:try_start_76 .. :try_end_ba} :catch_10b
3891 @@ -3151,7 +3151,7 @@
3893 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3894 :try_end_d4
3895 - .catchall {:try_start_bc .. :try_end_d4} :catchall_17e
3896 + .catchall {:try_start_bc .. :try_end_d4} :catchall_17b
3897 .catch Ljava/io/EOFException; {:try_start_bc .. :try_end_d4} :catch_d5
3898 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_d4} :catch_10b
3900 @@ -3187,7 +3187,7 @@
3902 move-result v19
3904 - if-eqz v19, :cond_165
3905 + if-eqz v19, :cond_162
3907 const/4 v3, 0x0
3909 @@ -3199,7 +3199,7 @@
3911 move/from16 v1, v19
3913 - if-ne v0, v1, :cond_12f
3914 + if-ne v0, v1, :cond_12c
3916 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3918 @@ -3221,7 +3221,7 @@
3920 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)V
3921 :try_end_109
3922 - .catchall {:try_start_e1 .. :try_end_109} :catchall_17e
3923 + .catchall {:try_start_e1 .. :try_end_109} :catchall_17b
3924 .catch Ljava/lang/IllegalArgumentException; {:try_start_e1 .. :try_end_109} :catch_bb
3925 .catch Ljava/io/EOFException; {:try_start_e1 .. :try_end_109} :catch_d5
3926 .catch Ljava/io/IOException; {:try_start_e1 .. :try_end_109} :catch_10b
3927 @@ -3257,24 +3257,19 @@
3929 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3930 :try_end_125
3931 - .catchall {:try_start_10d .. :try_end_125} :catchall_23d
3932 + .catchall {:try_start_10d .. :try_end_125} :catchall_23a
3934 if-eqz v8, :cond_33
3936 :try_start_127
3937 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
3938 :try_end_12a
3939 - .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_12c
3940 + .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_de
3942 goto/16 :goto_33
3944 - :catch_12c
3945 - move-exception v19
3947 - goto/16 :goto_33
3949 - :cond_12f
3950 - :try_start_12f
3951 + :cond_12c
3952 + :try_start_12c
3953 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3955 move-result v19
3956 @@ -3285,7 +3280,7 @@
3958 move/from16 v1, v20
3960 - if-ne v0, v1, :cond_150
3961 + if-ne v0, v1, :cond_14d
3963 new-instance v3, Landroid/net/LinkAddress;
3965 @@ -3307,7 +3302,7 @@
3967 invoke-direct {v3, v0, v1}, Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
3969 - :cond_150
3970 + :cond_14d
3971 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3973 move-result v19
3974 @@ -3330,7 +3325,7 @@
3976 goto :goto_fd
3978 - :cond_165
3979 + :cond_162
3980 const-string v19, "dns"
3982 move-object/from16 v0, v19
3983 @@ -3339,7 +3334,7 @@
3985 move-result v19
3987 - if-eqz v19, :cond_186
3988 + if-eqz v19, :cond_183
3990 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3992 @@ -3352,33 +3347,33 @@
3993 move-object/from16 v0, v19
3995 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addDns(Ljava/net/InetAddress;)V
3996 - :try_end_17c
3997 - .catchall {:try_start_12f .. :try_end_17c} :catchall_17e
3998 - .catch Ljava/lang/IllegalArgumentException; {:try_start_12f .. :try_end_17c} :catch_bb
3999 - .catch Ljava/io/EOFException; {:try_start_12f .. :try_end_17c} :catch_d5
4000 - .catch Ljava/io/IOException; {:try_start_12f .. :try_end_17c} :catch_10b
4001 + :try_end_179
4002 + .catchall {:try_start_12c .. :try_end_179} :catchall_17b
4003 + .catch Ljava/lang/IllegalArgumentException; {:try_start_12c .. :try_end_179} :catch_bb
4004 + .catch Ljava/io/EOFException; {:try_start_12c .. :try_end_179} :catch_d5
4005 + .catch Ljava/io/IOException; {:try_start_12c .. :try_end_179} :catch_10b
4007 goto/16 :goto_72
4009 - :catchall_17e
4010 + :catchall_17b
4011 move-exception v19
4013 move-object v8, v9
4015 - :goto_180
4016 - if-eqz v8, :cond_185
4017 + :goto_17d
4018 + if-eqz v8, :cond_182
4020 - :try_start_182
4021 + :try_start_17f
4022 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
4023 - :try_end_185
4024 - .catch Ljava/lang/Exception; {:try_start_182 .. :try_end_185} :catch_23a
4025 + :try_end_182
4026 + .catch Ljava/lang/Exception; {:try_start_17f .. :try_end_182} :catch_234
4028 - :cond_185
4029 - :goto_185
4030 + :cond_182
4031 + :goto_182
4032 throw v19
4034 - :cond_186
4035 - :try_start_186
4036 + :cond_183
4037 + :try_start_183
4038 const-string/jumbo v19, "proxySettings"
4040 move-object/from16 v0, v19
4041 @@ -3387,7 +3382,7 @@
4043 move-result v19
4045 - if-eqz v19, :cond_19b
4046 + if-eqz v19, :cond_198
4048 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4050 @@ -3399,7 +3394,7 @@
4052 goto/16 :goto_72
4054 - :cond_19b
4055 + :cond_198
4056 const-string/jumbo v19, "proxyHost"
4058 move-object/from16 v0, v19
4059 @@ -3408,7 +3403,7 @@
4061 move-result v19
4063 - if-eqz v19, :cond_1ac
4064 + if-eqz v19, :cond_1a9
4066 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4068 @@ -3416,7 +3411,7 @@
4070 goto/16 :goto_72
4072 - :cond_1ac
4073 + :cond_1a9
4074 const-string/jumbo v19, "proxyPort"
4076 move-object/from16 v0, v19
4077 @@ -3425,7 +3420,7 @@
4079 move-result v19
4081 - if-eqz v19, :cond_1bd
4082 + if-eqz v19, :cond_1ba
4084 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4086 @@ -3433,7 +3428,7 @@
4088 goto/16 :goto_72
4090 - :cond_1bd
4091 + :cond_1ba
4092 const-string v19, "exclusionList"
4094 move-object/from16 v0, v19
4095 @@ -3450,7 +3445,7 @@
4097 goto/16 :goto_72
4099 - :cond_1cd
4100 + :cond_1ca
4101 new-instance v19, Ljava/lang/StringBuilder;
4103 invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
4104 @@ -3478,16 +3473,16 @@
4105 move-result-object v19
4107 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4108 - :try_end_1ec
4109 - .catchall {:try_start_186 .. :try_end_1ec} :catchall_17e
4110 - .catch Ljava/lang/IllegalArgumentException; {:try_start_186 .. :try_end_1ec} :catch_bb
4111 - .catch Ljava/io/EOFException; {:try_start_186 .. :try_end_1ec} :catch_d5
4112 - .catch Ljava/io/IOException; {:try_start_186 .. :try_end_1ec} :catch_10b
4113 + :try_end_1e9
4114 + .catchall {:try_start_183 .. :try_end_1e9} :catchall_17b
4115 + .catch Ljava/lang/IllegalArgumentException; {:try_start_183 .. :try_end_1e9} :catch_bb
4116 + .catch Ljava/io/EOFException; {:try_start_183 .. :try_end_1e9} :catch_d5
4117 + .catch Ljava/io/IOException; {:try_start_183 .. :try_end_1e9} :catch_10b
4119 goto/16 :goto_72
4121 - :cond_1ee
4122 - :try_start_1ee
4123 + :cond_1eb
4124 + :try_start_1eb
4125 iput-object v13, v2, Landroid/net/wifi/WifiConfiguration;->linkProperties:Landroid/net/LinkProperties;
4127 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$IpAssignment:[I
4128 @@ -3498,14 +3493,14 @@
4130 aget v19, v19, v21
4132 - packed-switch v19, :pswitch_data_246
4133 + packed-switch v19, :pswitch_data_244
4135 const-string v19, "Ignore invalid ip assignment while reading"
4137 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4139 - :goto_200
4140 - :pswitch_200
4141 + :goto_1fd
4142 + :pswitch_1fd
4143 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$ProxySettings:[I
4145 invoke-virtual/range {v17 .. v17}, Landroid/net/wifi/WifiConfiguration$ProxySettings;->ordinal()I
4146 @@ -3514,7 +3509,7 @@
4148 aget v19, v19, v21
4150 - packed-switch v19, :pswitch_data_250
4151 + packed-switch v19, :pswitch_data_24e
4153 const-string v19, "Ignore invalid proxy settings while reading"
4155 @@ -3522,27 +3517,27 @@
4157 goto/16 :goto_64
4159 - :catchall_212
4160 + :catchall_20f
4161 move-exception v19
4163 monitor-exit v20
4164 - :try_end_214
4165 - .catchall {:try_start_1ee .. :try_end_214} :catchall_212
4166 + :try_end_211
4167 + .catchall {:try_start_1eb .. :try_end_211} :catchall_20f
4169 - :try_start_214
4170 + :try_start_211
4171 throw v19
4172 - :try_end_215
4173 - .catchall {:try_start_214 .. :try_end_215} :catchall_17e
4174 - .catch Ljava/io/EOFException; {:try_start_214 .. :try_end_215} :catch_d5
4175 - .catch Ljava/io/IOException; {:try_start_214 .. :try_end_215} :catch_10b
4176 + :try_end_212
4177 + .catchall {:try_start_211 .. :try_end_212} :catchall_17b
4178 + .catch Ljava/io/EOFException; {:try_start_211 .. :try_end_212} :catch_d5
4179 + .catch Ljava/io/IOException; {:try_start_211 .. :try_end_212} :catch_10b
4181 - :pswitch_215
4182 - :try_start_215
4183 + :pswitch_212
4184 + :try_start_212
4185 iput-object v10, v2, Landroid/net/wifi/WifiConfiguration;->ipAssignment:Landroid/net/wifi/WifiConfiguration$IpAssignment;
4187 - goto :goto_200
4188 + goto :goto_1fd
4190 - :pswitch_218
4191 + :pswitch_215
4192 move-object/from16 v0, v17
4194 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4195 @@ -3559,63 +3554,65 @@
4197 goto/16 :goto_64
4199 - :pswitch_22a
4200 + :pswitch_227
4201 move-object/from16 v0, v17
4203 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4204 - :try_end_22e
4205 - .catchall {:try_start_215 .. :try_end_22e} :catchall_212
4206 + :try_end_22b
4207 + .catchall {:try_start_212 .. :try_end_22b} :catchall_20f
4209 goto/16 :goto_64
4211 - :cond_230
4212 - :try_start_230
4213 + :cond_22d
4214 + :try_start_22d
4215 const-string v19, "Missing id while parsing configuration"
4217 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4218 - :try_end_235
4219 - .catchall {:try_start_230 .. :try_end_235} :catchall_17e
4220 - .catch Ljava/io/EOFException; {:try_start_230 .. :try_end_235} :catch_d5
4221 - .catch Ljava/io/IOException; {:try_start_230 .. :try_end_235} :catch_10b
4222 + :try_end_232
4223 + .catchall {:try_start_22d .. :try_end_232} :catchall_17b
4224 + .catch Ljava/io/EOFException; {:try_start_22d .. :try_end_232} :catch_d5
4225 + .catch Ljava/io/IOException; {:try_start_22d .. :try_end_232} :catch_10b
4227 goto/16 :goto_65
4229 + :catch_234
4230 + move-exception v20
4232 + goto/16 :goto_182
4234 :catch_237
4235 move-exception v19
4237 goto/16 :goto_32
4239 - :catch_23a
4240 - move-exception v20
4242 - goto/16 :goto_185
4244 - :catchall_23d
4245 + :catchall_23a
4246 move-exception v19
4248 - goto/16 :goto_180
4249 + goto/16 :goto_17d
4251 - :catch_240
4252 + :catch_23d
4253 move-exception v4
4255 goto/16 :goto_10d
4257 - :catch_243
4258 + :catch_240
4259 move-exception v19
4261 goto/16 :goto_d7
4263 - :pswitch_data_246
4264 + nop
4266 + :pswitch_data_244
4267 .packed-switch 0x1
4268 - :pswitch_215
4269 - :pswitch_215
4270 - :pswitch_200
4271 + :pswitch_212
4272 + :pswitch_212
4273 + :pswitch_1fd
4274 .end packed-switch
4276 - :pswitch_data_250
4277 + :pswitch_data_24e
4278 .packed-switch 0x1
4279 - :pswitch_218
4280 - :pswitch_22a
4281 + :pswitch_215
4282 + :pswitch_227
4283 :pswitch_64
4284 .end packed-switch
4285 .end method
4286 @@ -4756,8 +4753,8 @@
4288 invoke-direct {v11, v15}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
4289 :try_end_12
4290 - .catchall {:try_start_1 .. :try_end_12} :catchall_1c1
4291 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1d0
4292 + .catchall {:try_start_1 .. :try_end_12} :catchall_1bd
4293 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1ce
4295 const/4 v15, 0x2
4297 @@ -4768,7 +4765,7 @@
4299 monitor-enter v16
4300 :try_end_19
4301 - .catchall {:try_start_13 .. :try_end_19} :catchall_1cd
4302 + .catchall {:try_start_13 .. :try_end_19} :catchall_1cb
4303 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_19} :catch_71
4305 :try_start_19
4306 @@ -4814,7 +4811,7 @@
4308 aget v15, v15, v17
4310 - packed-switch v15, :pswitch_data_1d6
4311 + packed-switch v15, :pswitch_data_1d2
4313 const-string v15, "Ignore invalid ip assignment while writing"
4315 @@ -4834,7 +4831,7 @@
4317 aget v15, v15, v17
4319 - packed-switch v15, :pswitch_data_1e0
4320 + packed-switch v15, :pswitch_data_1dc
4322 const-string v15, "Ignore invalid proxy settings while writing"
4324 @@ -4876,7 +4873,7 @@
4325 :try_start_70
4326 throw v15
4327 :try_end_71
4328 - .catchall {:try_start_70 .. :try_end_71} :catchall_1cd
4329 + .catchall {:try_start_70 .. :try_end_71} :catchall_1cb
4330 .catch Ljava/io/IOException; {:try_start_70 .. :try_end_71} :catch_71
4332 :catch_71
4333 @@ -4890,14 +4887,14 @@
4335 invoke-static {v15}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4336 :try_end_78
4337 - .catchall {:try_start_73 .. :try_end_78} :catchall_1c1
4338 + .catchall {:try_start_73 .. :try_end_78} :catchall_1bd
4340 if-eqz v10, :cond_7d
4342 :try_start_7a
4343 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4344 :try_end_7d
4345 - .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c8
4346 + .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c6
4348 :cond_7d
4349 :goto_7d
4350 @@ -5226,74 +5223,71 @@
4351 :try_end_1b5
4352 .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_6e
4354 - if-eqz v11, :cond_1d3
4355 + if-eqz v11, :cond_1ba
4357 :try_start_1b7
4358 invoke-virtual {v11}, Ljava/io/DataOutputStream;->close()V
4359 :try_end_1ba
4360 - .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1bd
4362 - move-object v10, v11
4364 - goto/16 :goto_7d
4366 - :catch_1bd
4367 - move-exception v15
4368 + .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1c9
4370 + :cond_1ba
4371 + :goto_1ba
4372 move-object v10, v11
4374 goto/16 :goto_7d
4376 - :catchall_1c1
4377 + :catchall_1bd
4378 move-exception v15
4380 - :goto_1c2
4381 - if-eqz v10, :cond_1c7
4382 + :goto_1be
4383 + if-eqz v10, :cond_1c3
4385 - :try_start_1c4
4386 + :try_start_1c0
4387 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4388 - :try_end_1c7
4389 - .catch Ljava/lang/Exception; {:try_start_1c4 .. :try_end_1c7} :catch_1cb
4390 + :try_end_1c3
4391 + .catch Ljava/lang/Exception; {:try_start_1c0 .. :try_end_1c3} :catch_1c4
4393 - :cond_1c7
4394 - :goto_1c7
4395 + :cond_1c3
4396 + :goto_1c3
4397 throw v15
4399 - :catch_1c8
4400 + :catch_1c4
4401 + move-exception v16
4403 + goto :goto_1c3
4405 + :catch_1c6
4406 move-exception v15
4408 goto/16 :goto_7d
4410 - :catch_1cb
4411 - move-exception v16
4412 + :catch_1c9
4413 + move-exception v15
4415 - goto :goto_1c7
4416 + goto :goto_1ba
4418 - :catchall_1cd
4419 + :catchall_1cb
4420 move-exception v15
4422 move-object v10, v11
4424 - goto :goto_1c2
4425 + goto :goto_1be
4427 - :catch_1d0
4428 + :catch_1ce
4429 move-exception v3
4431 goto/16 :goto_73
4433 - :cond_1d3
4434 - move-object v10, v11
4436 - goto/16 :goto_7d
4437 + nop
4439 - :pswitch_data_1d6
4440 + :pswitch_data_1d2
4441 .packed-switch 0x1
4442 :pswitch_7e
4443 :pswitch_155
4444 :pswitch_46
4445 .end packed-switch
4447 - :pswitch_data_1e0
4448 + :pswitch_data_1dc
4449 .packed-switch 0x1
4450 :pswitch_166
4451 :pswitch_1a2
4452 diff -Npru stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali
4453 --- stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-05-08 11:54:29.266632835 -0500
4454 +++ pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-05-08 11:54:53.094750996 -0500
4455 @@ -161,7 +161,7 @@
4457 monitor-enter v14
4458 :try_end_26
4459 - .catchall {:try_start_21 .. :try_end_26} :catchall_160
4460 + .catchall {:try_start_21 .. :try_end_26} :catchall_15d
4462 :goto_26
4463 :try_start_26
4464 @@ -169,11 +169,11 @@
4466 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldExit:Z
4468 - if-eqz v13, :cond_3d
4469 + if-eqz v13, :cond_3a
4471 monitor-exit v14
4472 :try_end_2d
4473 - .catchall {:try_start_26 .. :try_end_2d} :catchall_15d
4474 + .catchall {:try_start_26 .. :try_end_2d} :catchall_15a
4476 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4478 @@ -187,21 +187,14 @@
4479 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4481 monitor-exit v14
4482 + :try_end_39
4483 + .catchall {:try_start_32 .. :try_end_39} :catchall_212
4485 :goto_39
4486 return-void
4488 - :catchall_3a
4489 - move-exception v13
4491 - monitor-exit v14
4492 - :try_end_3c
4493 - .catchall {:try_start_32 .. :try_end_3c} :catchall_3a
4495 - throw v13
4497 - :cond_3d
4498 - :try_start_3d
4499 + :cond_3a
4500 + :try_start_3a
4501 move-object/from16 v0, p0
4503 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEventQueue:Ljava/util/ArrayList;
4504 @@ -210,7 +203,7 @@
4506 move-result v13
4508 - if-nez v13, :cond_5c
4509 + if-nez v13, :cond_59
4511 move-object/from16 v0, p0
4513 @@ -228,24 +221,24 @@
4515 move-object v5, v0
4517 - :goto_54
4518 + :goto_51
4519 monitor-exit v14
4520 - :try_end_55
4521 - .catchall {:try_start_3d .. :try_end_55} :catchall_15d
4522 + :try_end_52
4523 + .catchall {:try_start_3a .. :try_end_52} :catchall_15a
4525 - if-eqz v5, :cond_1a9
4526 + if-eqz v5, :cond_1a6
4528 - :try_start_57
4529 + :try_start_54
4530 invoke-interface {v5}, Ljava/lang/Runnable;->run()V
4531 - :try_end_5a
4532 - .catchall {:try_start_57 .. :try_end_5a} :catchall_160
4533 + :try_end_57
4534 + .catchall {:try_start_54 .. :try_end_57} :catchall_15d
4536 const/4 v5, 0x0
4538 goto :goto_21
4540 - :cond_5c
4541 - :try_start_5c
4542 + :cond_59
4543 + :try_start_59
4544 move-object/from16 v0, p0
4546 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4547 @@ -254,7 +247,7 @@
4549 iget-boolean v15, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestPaused:Z
4551 - if-eq v13, v15, :cond_75
4552 + if-eq v13, v15, :cond_72
4554 move-object/from16 v0, p0
4556 @@ -270,12 +263,12 @@
4558 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4560 - :cond_75
4561 + :cond_72
4562 move-object/from16 v0, p0
4564 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldReleaseEglContext:Z
4566 - if-eqz v13, :cond_87
4567 + if-eqz v13, :cond_84
4569 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4571 @@ -289,8 +282,8 @@
4573 const/4 v1, 0x1
4575 - :cond_87
4576 - if-eqz v8, :cond_90
4577 + :cond_84
4578 + if-eqz v8, :cond_8d
4580 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4582 @@ -298,18 +291,18 @@
4584 const/4 v8, 0x0
4586 - :cond_90
4587 + :cond_8d
4588 move-object/from16 v0, p0
4590 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4592 - if-eqz v13, :cond_c7
4593 + if-eqz v13, :cond_c4
4595 move-object/from16 v0, p0
4597 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4599 - if-eqz v13, :cond_c7
4600 + if-eqz v13, :cond_c4
4602 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4604 @@ -322,7 +315,7 @@
4606 move-result v13
4608 - if-eqz v13, :cond_b3
4609 + if-eqz v13, :cond_b0
4611 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4613 @@ -332,12 +325,12 @@
4615 move-result v13
4617 - if-eqz v13, :cond_b6
4618 + if-eqz v13, :cond_b3
4620 - :cond_b3
4621 + :cond_b0
4622 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4624 - :cond_b6
4625 + :cond_b3
4626 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4628 move-result-object v13
4629 @@ -346,7 +339,7 @@
4631 move-result v13
4633 - if-eqz v13, :cond_c7
4634 + if-eqz v13, :cond_c4
4636 move-object/from16 v0, p0
4638 @@ -354,28 +347,28 @@
4640 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->finish()V
4642 - :cond_c7
4643 + :cond_c4
4644 move-object/from16 v0, p0
4646 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4648 - if-nez v13, :cond_e8
4649 + if-nez v13, :cond_e5
4651 move-object/from16 v0, p0
4653 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4655 - if-nez v13, :cond_e8
4656 + if-nez v13, :cond_e5
4658 move-object/from16 v0, p0
4660 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4662 - if-eqz v13, :cond_dc
4663 + if-eqz v13, :cond_d9
4665 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4667 - :cond_dc
4668 + :cond_d9
4669 const/4 v13, 0x1
4671 move-object/from16 v0, p0
4672 @@ -388,18 +381,18 @@
4674 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4676 - :cond_e8
4677 + :cond_e5
4678 move-object/from16 v0, p0
4680 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4682 - if-eqz v13, :cond_100
4683 + if-eqz v13, :cond_fd
4685 move-object/from16 v0, p0
4687 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4689 - if-eqz v13, :cond_100
4690 + if-eqz v13, :cond_fd
4692 const/4 v13, 0x0
4694 @@ -413,8 +406,8 @@
4696 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4698 - :cond_100
4699 - if-eqz v4, :cond_110
4700 + :cond_fd
4701 + if-eqz v4, :cond_10d
4703 const/4 v12, 0x0
4705 @@ -432,36 +425,36 @@
4707 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4709 - :cond_110
4710 + :cond_10d
4711 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->readyToDraw()Z
4713 move-result v13
4715 - if-eqz v13, :cond_1a0
4716 + if-eqz v13, :cond_19d
4718 move-object/from16 v0, p0
4720 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4722 - if-nez v13, :cond_11f
4723 + if-nez v13, :cond_11c
4725 - if-eqz v1, :cond_16e
4726 + if-eqz v1, :cond_16b
4728 const/4 v1, 0x0
4730 - :cond_11f
4731 - :goto_11f
4732 + :cond_11c
4733 + :goto_11c
4734 move-object/from16 v0, p0
4736 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4738 - if-eqz v13, :cond_132
4739 + if-eqz v13, :cond_12f
4741 move-object/from16 v0, p0
4743 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4745 - if-nez v13, :cond_132
4746 + if-nez v13, :cond_12f
4748 const/4 v13, 0x1
4750 @@ -473,12 +466,12 @@
4752 const/4 v9, 0x1
4754 - :cond_132
4755 + :cond_12f
4756 move-object/from16 v0, p0
4758 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4760 - if-eqz v13, :cond_1a0
4761 + if-eqz v13, :cond_19d
4763 move-object/from16 v0, p0
4765 @@ -489,7 +482,7 @@
4767 move-result v13
4769 - if-eqz v13, :cond_19a
4770 + if-eqz v13, :cond_197
4772 const/4 v9, 0x1
4774 @@ -512,28 +505,28 @@
4775 #setter for: Landroid/opengl/GLSurfaceView;->mSizeChanged:Z
4776 invoke-static {v13, v15}, Landroid/opengl/GLSurfaceView;->access$1002(Landroid/opengl/GLSurfaceView;Z)Z
4778 - :goto_154
4779 + :goto_151
4780 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4782 move-result-object v13
4784 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4786 - goto/16 :goto_54
4787 + goto/16 :goto_51
4789 - :catchall_15d
4790 + :catchall_15a
4791 move-exception v13
4793 monitor-exit v14
4794 - :try_end_15f
4795 - .catchall {:try_start_5c .. :try_end_15f} :catchall_15d
4796 + :try_end_15c
4797 + .catchall {:try_start_59 .. :try_end_15c} :catchall_15a
4799 - :try_start_15f
4800 + :try_start_15c
4801 throw v13
4802 - :try_end_160
4803 - .catchall {:try_start_15f .. :try_end_160} :catchall_160
4804 + :try_end_15d
4805 + .catchall {:try_start_15c .. :try_end_15d} :catchall_15d
4807 - :catchall_160
4808 + :catchall_15d
4809 move-exception v13
4811 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4812 @@ -542,19 +535,19 @@
4814 monitor-enter v14
4816 - :try_start_166
4817 + :try_start_163
4818 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4820 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4822 monitor-exit v14
4823 - :try_end_16d
4824 - .catchall {:try_start_166 .. :try_end_16d} :catchall_212
4825 + :try_end_16a
4826 + .catchall {:try_start_163 .. :try_end_16a} :catchall_20f
4828 throw v13
4830 - :cond_16e
4831 - :try_start_16e
4832 + :cond_16b
4833 + :try_start_16b
4834 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4836 move-result-object v13
4837 @@ -562,26 +555,26 @@
4838 move-object/from16 v0, p0
4840 invoke-virtual {v13, v0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->tryAcquireEglContextLocked(Landroid/opengl/GLSurfaceView$GLThread;)Z
4841 - :try_end_177
4842 - .catchall {:try_start_16e .. :try_end_177} :catchall_15d
4843 + :try_end_174
4844 + .catchall {:try_start_16b .. :try_end_174} :catchall_15a
4846 move-result v13
4848 - if-eqz v13, :cond_11f
4849 + if-eqz v13, :cond_11c
4851 - :try_start_17a
4852 + :try_start_177
4853 move-object/from16 v0, p0
4855 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4857 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->start()V
4858 - :try_end_181
4859 - .catchall {:try_start_17a .. :try_end_181} :catchall_15d
4860 - .catch Ljava/lang/RuntimeException; {:try_start_17a .. :try_end_181} :catch_18f
4861 + :try_end_17e
4862 + .catchall {:try_start_177 .. :try_end_17e} :catchall_15a
4863 + .catch Ljava/lang/RuntimeException; {:try_start_177 .. :try_end_17e} :catch_18c
4865 const/4 v13, 0x1
4867 - :try_start_182
4868 + :try_start_17f
4869 move-object/from16 v0, p0
4871 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4872 @@ -594,9 +587,9 @@
4874 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4876 - goto :goto_11f
4877 + goto :goto_11c
4879 - :catch_18f
4880 + :catch_18c
4881 move-exception v10
4883 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4884 @@ -609,30 +602,30 @@
4886 throw v10
4888 - :cond_19a
4889 + :cond_197
4890 const/4 v13, 0x0
4892 move-object/from16 v0, p0
4894 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestRender:Z
4896 - goto :goto_154
4897 + goto :goto_151
4899 - :cond_1a0
4900 + :cond_19d
4901 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4903 move-result-object v13
4905 invoke-virtual {v13}, Ljava/lang/Object;->wait()V
4906 - :try_end_1a7
4907 - .catchall {:try_start_182 .. :try_end_1a7} :catchall_15d
4908 + :try_end_1a4
4909 + .catchall {:try_start_17f .. :try_end_1a4} :catchall_15a
4911 goto/16 :goto_26
4913 - :cond_1a9
4914 - if-eqz v3, :cond_1da
4915 + :cond_1a6
4916 + if-eqz v3, :cond_1d7
4918 - :try_start_1ab
4919 + :try_start_1a8
4920 move-object/from16 v0, p0
4922 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4923 @@ -654,10 +647,10 @@
4924 check-cast v0, Ljavax/microedition/khronos/opengles/GL10;
4926 move-object v6, v0
4927 - :try_end_1bf
4928 - .catchall {:try_start_1ab .. :try_end_1bf} :catchall_160
4929 + :try_end_1bc
4930 + .catchall {:try_start_1a8 .. :try_end_1bc} :catchall_15d
4932 - if-nez v6, :cond_1d2
4933 + if-nez v6, :cond_1cf
4935 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4937 @@ -665,7 +658,7 @@
4939 monitor-enter v14
4941 - :try_start_1c6
4942 + :try_start_1c3
4943 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4945 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4946 @@ -674,17 +667,17 @@
4948 goto/16 :goto_39
4950 - :catchall_1cf
4951 + :catchall_1cc
4952 move-exception v13
4954 monitor-exit v14
4955 - :try_end_1d1
4956 - .catchall {:try_start_1c6 .. :try_end_1d1} :catchall_1cf
4957 + :try_end_1ce
4958 + .catchall {:try_start_1c3 .. :try_end_1ce} :catchall_1cc
4960 throw v13
4962 - :cond_1d2
4963 - :try_start_1d2
4964 + :cond_1cf
4965 + :try_start_1cf
4966 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4968 move-result-object v13
4969 @@ -693,8 +686,8 @@
4971 const/4 v3, 0x0
4973 - :cond_1da
4974 - if-eqz v2, :cond_1ea
4975 + :cond_1d7
4976 + if-eqz v2, :cond_1e7
4978 move-object/from16 v0, p0
4980 @@ -710,8 +703,8 @@
4982 const/4 v2, 0x0
4984 - :cond_1ea
4985 - if-eqz v9, :cond_1fb
4986 + :cond_1e7
4987 + if-eqz v9, :cond_1f8
4989 move-object/from16 v0, p0
4991 @@ -727,7 +720,7 @@
4993 const/4 v9, 0x0
4995 - :cond_1fb
4996 + :cond_1f8
4997 move-object/from16 v0, p0
4999 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRenderer:Landroid/opengl/GLSurfaceView$Renderer;
5000 @@ -739,22 +732,32 @@
5001 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
5003 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->swap()Z
5004 - :try_end_209
5005 - .catchall {:try_start_1d2 .. :try_end_209} :catchall_160
5006 + :try_end_206
5007 + .catchall {:try_start_1cf .. :try_end_206} :catchall_15d
5009 move-result v13
5011 - if-nez v13, :cond_20d
5012 + if-nez v13, :cond_20a
5014 const/4 v8, 0x1
5016 - :cond_20d
5017 + :cond_20a
5018 if-eqz v12, :cond_21
5020 const/4 v4, 0x1
5022 goto/16 :goto_21
5024 + :catchall_20f
5025 + move-exception v13
5027 + :try_start_210
5028 + monitor-exit v14
5029 + :try_end_211
5030 + .catchall {:try_start_210 .. :try_end_211} :catchall_20f
5032 + throw v13
5034 :catchall_212
5035 move-exception v13
5037 @@ -1371,39 +1374,37 @@
5038 :try_start_1a
5039 invoke-direct {p0}, Landroid/opengl/GLSurfaceView$GLThread;->guardedRun()V
5040 :try_end_1d
5041 - .catchall {:try_start_1a .. :try_end_1d} :catchall_2e
5042 - .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_25
5043 + .catchall {:try_start_1a .. :try_end_1d} :catchall_25
5044 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_2e
5046 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5048 move-result-object v0
5050 + :goto_21
5051 invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5053 - :goto_24
5054 return-void
5056 - :catch_25
5057 + :catchall_25
5058 move-exception v0
5060 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5062 - move-result-object v0
5063 + move-result-object v1
5065 - invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5066 + invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5068 - goto :goto_24
5069 + throw v0
5071 - :catchall_2e
5072 + :catch_2e
5073 move-exception v0
5075 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5077 - move-result-object v1
5079 - invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5080 + move-result-object v0
5082 - throw v0
5083 + goto :goto_21
5084 .end method
5086 .method public setRenderMode(I)V
5087 diff -Npru stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali
5088 --- stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-05-08 11:54:29.374633371 -0500
5089 +++ pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-05-08 11:54:53.218751606 -0500
5090 @@ -582,14 +582,14 @@
5092 invoke-interface {v0, v1, v2, v3}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5093 :try_end_1fb
5094 - .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21d
5095 + .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21a
5096 .catch Landroid/os/RemoteException; {:try_start_1e5 .. :try_end_1fb} :catch_20d
5098 + :goto_1fb
5099 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5100 invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5102 :cond_1fe
5103 - :goto_1fe
5104 move-object/from16 v0, p1
5106 iget v0, v0, Landroid/os/StrictMode$ViolationInfo;->policy:I
5107 @@ -619,14 +619,11 @@
5109 invoke-static {v0, v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5110 :try_end_219
5111 - .catchall {:try_start_20e .. :try_end_219} :catchall_21d
5112 + .catchall {:try_start_20e .. :try_end_219} :catchall_21a
5114 - #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5115 - invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5117 - goto :goto_1fe
5118 + goto :goto_1fb
5120 - :catchall_21d
5121 + :catchall_21a
5122 move-exception v19
5124 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5125 diff -Npru stock-framework/smali/android/os/StrictMode.smali pdroid-framework/smali/android/os/StrictMode.smali
5126 --- stock-framework/smali/android/os/StrictMode.smali 2012-05-08 11:54:29.382633407 -0500
5127 +++ pdroid-framework/smali/android/os/StrictMode.smali 2012-05-08 11:54:53.226751646 -0500
5128 @@ -1686,13 +1686,13 @@
5130 invoke-interface {v0, v1, v2, v5}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5131 :try_end_d3
5132 - .catchall {:try_start_bf .. :try_end_d3} :catchall_fc
5133 + .catchall {:try_start_bf .. :try_end_d3} :catchall_f9
5134 .catch Landroid/os/RemoteException; {:try_start_bf .. :try_end_d3} :catch_ec
5136 + :goto_d3
5137 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5139 :cond_d6
5140 - :goto_d6
5141 if-eqz v10, :cond_a4
5143 sget-object v17, Ljava/lang/System;->err:Ljava/io/PrintStream;
5144 @@ -1727,13 +1727,11 @@
5146 invoke-static {v0, v1, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5147 :try_end_f8
5148 - .catchall {:try_start_ed .. :try_end_f8} :catchall_fc
5149 + .catchall {:try_start_ed .. :try_end_f8} :catchall_f9
5151 - invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5153 - goto :goto_d6
5154 + goto :goto_d3
5156 - :catchall_fc
5157 + :catchall_f9
5158 move-exception v17
5160 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5161 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali
5162 --- stock-framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
5163 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-05-08 11:54:53.290751967 -0500
5164 @@ -0,0 +1,104 @@
5165 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
5166 +.super Ljava/lang/Object;
5167 +.source "IPrivacySettingsManager.java"
5169 +# interfaces
5170 +.implements Landroid/os/IInterface;
5173 +# annotations
5174 +.annotation system Ldalvik/annotation/MemberClasses;
5175 + value = {
5176 + Landroid/privacy/IPrivacySettingsManager$Stub;
5178 +.end annotation
5181 +# virtual methods
5182 +.method public abstract addObserver(Ljava/lang/String;)V
5183 + .annotation system Ldalvik/annotation/Throws;
5184 + value = {
5185 + Landroid/os/RemoteException;
5187 + .end annotation
5188 +.end method
5190 +.method public abstract deleteSettings(Ljava/lang/String;)Z
5191 + .annotation system Ldalvik/annotation/Throws;
5192 + value = {
5193 + Landroid/os/RemoteException;
5195 + .end annotation
5196 +.end method
5198 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5199 + .annotation system Ldalvik/annotation/Throws;
5200 + value = {
5201 + Landroid/os/RemoteException;
5203 + .end annotation
5204 +.end method
5206 +.method public abstract getVersion()D
5207 + .annotation system Ldalvik/annotation/Throws;
5208 + value = {
5209 + Landroid/os/RemoteException;
5211 + .end annotation
5212 +.end method
5214 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5215 + .annotation system Ldalvik/annotation/Throws;
5216 + value = {
5217 + Landroid/os/RemoteException;
5219 + .end annotation
5220 +.end method
5222 +.method public abstract purgeSettings()Z
5223 + .annotation system Ldalvik/annotation/Throws;
5224 + value = {
5225 + Landroid/os/RemoteException;
5227 + .end annotation
5228 +.end method
5230 +.method public abstract registerObservers()V
5231 + .annotation system Ldalvik/annotation/Throws;
5232 + value = {
5233 + Landroid/os/RemoteException;
5235 + .end annotation
5236 +.end method
5238 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
5239 + .annotation system Ldalvik/annotation/Throws;
5240 + value = {
5241 + Landroid/os/RemoteException;
5243 + .end annotation
5244 +.end method
5246 +.method public abstract setBootCompleted()V
5247 + .annotation system Ldalvik/annotation/Throws;
5248 + value = {
5249 + Landroid/os/RemoteException;
5251 + .end annotation
5252 +.end method
5254 +.method public abstract setEnabled(Z)Z
5255 + .annotation system Ldalvik/annotation/Throws;
5256 + value = {
5257 + Landroid/os/RemoteException;
5259 + .end annotation
5260 +.end method
5262 +.method public abstract setNotificationsEnabled(Z)Z
5263 + .annotation system Ldalvik/annotation/Throws;
5264 + value = {
5265 + Landroid/os/RemoteException;
5267 + .end annotation
5268 +.end method
5269 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
5270 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 18:00:00.000000000 -0600
5271 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-05-08 11:54:53.294751983 -0500
5272 @@ -0,0 +1,743 @@
5273 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5274 +.super Ljava/lang/Object;
5275 +.source "IPrivacySettingsManager.java"
5277 +# interfaces
5278 +.implements Landroid/privacy/IPrivacySettingsManager;
5281 +# annotations
5282 +.annotation system Ldalvik/annotation/EnclosingClass;
5283 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
5284 +.end annotation
5286 +.annotation system Ldalvik/annotation/InnerClass;
5287 + accessFlags = 0xa
5288 + name = "Proxy"
5289 +.end annotation
5292 +# instance fields
5293 +.field private mRemote:Landroid/os/IBinder;
5296 +# direct methods
5297 +.method constructor <init>(Landroid/os/IBinder;)V
5298 + .registers 2
5300 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5302 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5304 + return-void
5305 +.end method
5308 +# virtual methods
5309 +.method public addObserver(Ljava/lang/String;)V
5310 + .registers 7
5311 + .annotation system Ldalvik/annotation/Throws;
5312 + value = {
5313 + Landroid/os/RemoteException;
5315 + .end annotation
5317 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5319 + move-result-object v0
5321 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5323 + move-result-object v1
5325 + :try_start_8
5326 + const-string v2, "android.privacy.IPrivacySettingsManager"
5328 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5330 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5332 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5334 + const/4 v3, 0x6
5336 + const/4 v4, 0x0
5338 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5340 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5341 + :try_end_1a
5342 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
5344 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5346 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5348 + return-void
5350 + :catchall_21
5351 + move-exception v2
5353 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5355 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5357 + throw v2
5358 +.end method
5360 +.method public asBinder()Landroid/os/IBinder;
5361 + .registers 2
5363 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5365 + return-object v0
5366 +.end method
5368 +.method public deleteSettings(Ljava/lang/String;)Z
5369 + .registers 8
5370 + .annotation system Ldalvik/annotation/Throws;
5371 + value = {
5372 + Landroid/os/RemoteException;
5374 + .end annotation
5376 + const/4 v2, 0x0
5378 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5380 + move-result-object v0
5382 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5384 + move-result-object v1
5386 + :try_start_9
5387 + const-string v3, "android.privacy.IPrivacySettingsManager"
5389 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5391 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5393 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5395 + const/4 v4, 0x3
5397 + const/4 v5, 0x0
5399 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5401 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5403 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5404 + :try_end_1e
5405 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
5407 + move-result v3
5409 + if-eqz v3, :cond_22
5411 + const/4 v2, 0x1
5413 + :cond_22
5414 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5416 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5418 + return v2
5420 + :catchall_29
5421 + move-exception v3
5423 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5425 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5427 + throw v3
5428 +.end method
5430 +.method public getInterfaceDescriptor()Ljava/lang/String;
5431 + .registers 2
5433 + const-string v0, "android.privacy.IPrivacySettingsManager"
5435 + return-object v0
5436 +.end method
5438 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5439 + .registers 8
5440 + .annotation system Ldalvik/annotation/Throws;
5441 + value = {
5442 + Landroid/os/RemoteException;
5444 + .end annotation
5446 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5448 + move-result-object v0
5450 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5452 + move-result-object v1
5454 + :try_start_8
5455 + const-string v3, "android.privacy.IPrivacySettingsManager"
5457 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5459 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5461 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5463 + const/4 v4, 0x1
5465 + const/4 v5, 0x0
5467 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5469 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5471 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5473 + move-result v3
5475 + if-eqz v3, :cond_2f
5477 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
5479 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
5481 + move-result-object v2
5483 + check-cast v2, Landroid/privacy/PrivacySettings;
5484 + :try_end_28
5485 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
5487 + :goto_28
5488 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5490 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5492 + return-object v2
5494 + :cond_2f
5495 + const/4 v2, 0x0
5497 + goto :goto_28
5499 + :catchall_31
5500 + move-exception v3
5502 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5504 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5506 + throw v3
5507 +.end method
5509 +.method public getVersion()D
5510 + .registers 8
5511 + .annotation system Ldalvik/annotation/Throws;
5512 + value = {
5513 + Landroid/os/RemoteException;
5515 + .end annotation
5517 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5519 + move-result-object v0
5521 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5523 + move-result-object v1
5525 + :try_start_8
5526 + const-string v4, "android.privacy.IPrivacySettingsManager"
5528 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5530 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5532 + const/16 v5, 0x8
5534 + const/4 v6, 0x0
5536 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5538 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5540 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
5541 + :try_end_1b
5542 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
5544 + move-result-wide v2
5546 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5548 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5550 + return-wide v2
5552 + :catchall_23
5553 + move-exception v4
5555 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5557 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5559 + throw v4
5560 +.end method
5562 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5563 + .registers 10
5564 + .annotation system Ldalvik/annotation/Throws;
5565 + value = {
5566 + Landroid/os/RemoteException;
5568 + .end annotation
5570 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5572 + move-result-object v0
5574 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5576 + move-result-object v1
5578 + :try_start_8
5579 + const-string v2, "android.privacy.IPrivacySettingsManager"
5581 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5583 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5585 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
5587 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5589 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5591 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5593 + const/4 v3, 0x4
5595 + const/4 v4, 0x0
5597 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5599 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5600 + :try_end_23
5601 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
5603 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5605 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5607 + return-void
5609 + :catchall_2a
5610 + move-exception v2
5612 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5614 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5616 + throw v2
5617 +.end method
5619 +.method public purgeSettings()Z
5620 + .registers 7
5621 + .annotation system Ldalvik/annotation/Throws;
5622 + value = {
5623 + Landroid/os/RemoteException;
5625 + .end annotation
5627 + const/4 v2, 0x0
5629 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5631 + move-result-object v0
5633 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5635 + move-result-object v1
5637 + :try_start_9
5638 + const-string v3, "android.privacy.IPrivacySettingsManager"
5640 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5642 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5644 + const/4 v4, 0x7
5646 + const/4 v5, 0x0
5648 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5650 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5652 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5653 + :try_end_1b
5654 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
5656 + move-result v3
5658 + if-eqz v3, :cond_1f
5660 + const/4 v2, 0x1
5662 + :cond_1f
5663 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5665 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5667 + return v2
5669 + :catchall_26
5670 + move-exception v3
5672 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5674 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5676 + throw v3
5677 +.end method
5679 +.method public registerObservers()V
5680 + .registers 6
5681 + .annotation system Ldalvik/annotation/Throws;
5682 + value = {
5683 + Landroid/os/RemoteException;
5685 + .end annotation
5687 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5689 + move-result-object v0
5691 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5693 + move-result-object v1
5695 + :try_start_8
5696 + const-string v2, "android.privacy.IPrivacySettingsManager"
5698 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5700 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5702 + const/4 v3, 0x5
5704 + const/4 v4, 0x0
5706 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5708 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5709 + :try_end_17
5710 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
5712 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5714 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5716 + return-void
5718 + :catchall_1e
5719 + move-exception v2
5721 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5723 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5725 + throw v2
5726 +.end method
5728 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
5729 + .registers 9
5730 + .annotation system Ldalvik/annotation/Throws;
5731 + value = {
5732 + Landroid/os/RemoteException;
5734 + .end annotation
5736 + const/4 v2, 0x1
5738 + const/4 v3, 0x0
5740 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5742 + move-result-object v0
5744 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5746 + move-result-object v1
5748 + :try_start_a
5749 + const-string v4, "android.privacy.IPrivacySettingsManager"
5751 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5753 + if-eqz p1, :cond_30
5755 + const/4 v4, 0x1
5757 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5759 + const/4 v4, 0x0
5761 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
5763 + :goto_19
5764 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5766 + const/4 v5, 0x2
5768 + const/4 v6, 0x0
5770 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5772 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5774 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5775 + :try_end_26
5776 + .catchall {:try_start_a .. :try_end_26} :catchall_35
5778 + move-result v4
5780 + if-eqz v4, :cond_3d
5782 + :goto_29
5783 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5785 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5787 + return v2
5789 + :cond_30
5790 + const/4 v4, 0x0
5792 + :try_start_31
5793 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5794 + :try_end_34
5795 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
5797 + goto :goto_19
5799 + :catchall_35
5800 + move-exception v3
5802 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5804 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5806 + throw v3
5808 + :cond_3d
5809 + move v2, v3
5811 + goto :goto_29
5812 +.end method
5814 +.method public setBootCompleted()V
5815 + .registers 6
5816 + .annotation system Ldalvik/annotation/Throws;
5817 + value = {
5818 + Landroid/os/RemoteException;
5820 + .end annotation
5822 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5824 + move-result-object v0
5826 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5828 + move-result-object v1
5830 + :try_start_8
5831 + const-string v2, "android.privacy.IPrivacySettingsManager"
5833 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5835 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5837 + const/16 v3, 0xb
5839 + const/4 v4, 0x0
5841 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5843 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5844 + :try_end_18
5845 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
5847 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5849 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5851 + return-void
5853 + :catchall_1f
5854 + move-exception v2
5856 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5858 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5860 + throw v2
5861 +.end method
5863 +.method public setEnabled(Z)Z
5864 + .registers 9
5865 + .annotation system Ldalvik/annotation/Throws;
5866 + value = {
5867 + Landroid/os/RemoteException;
5869 + .end annotation
5871 + const/4 v2, 0x1
5873 + const/4 v3, 0x0
5875 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5877 + move-result-object v0
5879 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5881 + move-result-object v1
5883 + :try_start_a
5884 + const-string v4, "android.privacy.IPrivacySettingsManager"
5886 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5888 + if-eqz p1, :cond_2d
5890 + move v4, v2
5892 + :goto_12
5893 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5895 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5897 + const/16 v5, 0x9
5899 + const/4 v6, 0x0
5901 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5903 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5905 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5906 + :try_end_23
5907 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5909 + move-result v4
5911 + if-eqz v4, :cond_2f
5913 + :goto_26
5914 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5916 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5918 + return v2
5920 + :cond_2d
5921 + move v4, v3
5923 + goto :goto_12
5925 + :cond_2f
5926 + move v2, v3
5928 + goto :goto_26
5930 + :catchall_31
5931 + move-exception v3
5933 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5935 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5937 + throw v3
5938 +.end method
5940 +.method public setNotificationsEnabled(Z)Z
5941 + .registers 9
5942 + .annotation system Ldalvik/annotation/Throws;
5943 + value = {
5944 + Landroid/os/RemoteException;
5946 + .end annotation
5948 + const/4 v2, 0x1
5950 + const/4 v3, 0x0
5952 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5954 + move-result-object v0
5956 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5958 + move-result-object v1
5960 + :try_start_a
5961 + const-string v4, "android.privacy.IPrivacySettingsManager"
5963 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5965 + if-eqz p1, :cond_2d
5967 + move v4, v2
5969 + :goto_12
5970 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5972 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5974 + const/16 v5, 0xa
5976 + const/4 v6, 0x0
5978 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5980 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5982 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5983 + :try_end_23
5984 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5986 + move-result v4
5988 + if-eqz v4, :cond_2f
5990 + :goto_26
5991 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5993 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5995 + return v2
5997 + :cond_2d
5998 + move v4, v3
6000 + goto :goto_12
6002 + :cond_2f
6003 + move v2, v3
6005 + goto :goto_26
6007 + :catchall_31
6008 + move-exception v3
6010 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6012 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6014 + throw v3
6015 +.end method
6016 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
6017 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 18:00:00.000000000 -0600
6018 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-05-08 11:54:53.294751983 -0500
6019 @@ -0,0 +1,412 @@
6020 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
6021 +.super Landroid/os/Binder;
6022 +.source "IPrivacySettingsManager.java"
6024 +# interfaces
6025 +.implements Landroid/privacy/IPrivacySettingsManager;
6028 +# annotations
6029 +.annotation system Ldalvik/annotation/EnclosingClass;
6030 + value = Landroid/privacy/IPrivacySettingsManager;
6031 +.end annotation
6033 +.annotation system Ldalvik/annotation/InnerClass;
6034 + accessFlags = 0x409
6035 + name = "Stub"
6036 +.end annotation
6038 +.annotation system Ldalvik/annotation/MemberClasses;
6039 + value = {
6040 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6042 +.end annotation
6045 +# static fields
6046 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
6048 +.field static final TRANSACTION_addObserver:I = 0x6
6050 +.field static final TRANSACTION_deleteSettings:I = 0x3
6052 +.field static final TRANSACTION_getSettings:I = 0x1
6054 +.field static final TRANSACTION_getVersion:I = 0x8
6056 +.field static final TRANSACTION_notification:I = 0x4
6058 +.field static final TRANSACTION_purgeSettings:I = 0x7
6060 +.field static final TRANSACTION_registerObservers:I = 0x5
6062 +.field static final TRANSACTION_saveSettings:I = 0x2
6064 +.field static final TRANSACTION_setBootCompleted:I = 0xb
6066 +.field static final TRANSACTION_setEnabled:I = 0x9
6068 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
6071 +# direct methods
6072 +.method public constructor <init>()V
6073 + .registers 2
6075 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
6077 + const-string v0, "android.privacy.IPrivacySettingsManager"
6079 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
6081 + return-void
6082 +.end method
6084 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
6085 + .registers 3
6087 + if-nez p0, :cond_4
6089 + const/4 v0, 0x0
6091 + :goto_3
6092 + return-object v0
6094 + :cond_4
6095 + const-string v1, "android.privacy.IPrivacySettingsManager"
6097 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
6099 + move-result-object v0
6101 + if-eqz v0, :cond_13
6103 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
6105 + if-eqz v1, :cond_13
6107 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
6109 + goto :goto_3
6111 + :cond_13
6112 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6114 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
6116 + goto :goto_3
6117 +.end method
6120 +# virtual methods
6121 +.method public asBinder()Landroid/os/IBinder;
6122 + .registers 1
6124 + return-object p0
6125 +.end method
6127 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6128 + .registers 14
6129 + .annotation system Ldalvik/annotation/Throws;
6130 + value = {
6131 + Landroid/os/RemoteException;
6133 + .end annotation
6135 + const/4 v6, 0x0
6137 + const/4 v7, 0x1
6139 + sparse-switch p1, :sswitch_data_10e
6141 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6143 + move-result v7
6145 + :goto_9
6146 + return v7
6148 + :sswitch_a
6149 + const-string v6, "android.privacy.IPrivacySettingsManager"
6151 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
6153 + goto :goto_9
6155 + :sswitch_10
6156 + const-string v8, "android.privacy.IPrivacySettingsManager"
6158 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6160 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6162 + move-result-object v0
6164 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6166 + move-result-object v4
6168 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6170 + if-eqz v4, :cond_29
6172 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
6174 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6176 + goto :goto_9
6178 + :cond_29
6179 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6181 + goto :goto_9
6183 + :sswitch_2d
6184 + const-string v8, "android.privacy.IPrivacySettingsManager"
6186 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6188 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6190 + move-result v8
6192 + if-eqz v8, :cond_4e
6194 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
6196 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
6198 + move-result-object v0
6200 + check-cast v0, Landroid/privacy/PrivacySettings;
6202 + :goto_40
6203 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
6205 + move-result v4
6207 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6209 + if-eqz v4, :cond_4a
6211 + move v6, v7
6213 + :cond_4a
6214 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6216 + goto :goto_9
6218 + :cond_4e
6219 + const/4 v0, 0x0
6221 + goto :goto_40
6223 + :sswitch_50
6224 + const-string v8, "android.privacy.IPrivacySettingsManager"
6226 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6228 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6230 + move-result-object v0
6232 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
6234 + move-result v4
6236 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6238 + if-eqz v4, :cond_63
6240 + move v6, v7
6242 + :cond_63
6243 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6245 + goto :goto_9
6247 + :sswitch_67
6248 + const-string v6, "android.privacy.IPrivacySettingsManager"
6250 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6252 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6254 + move-result-object v0
6256 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
6258 + move-result v1
6260 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6262 + move-result-object v2
6264 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6266 + move-result-object v3
6268 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6270 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6272 + goto :goto_9
6274 + :sswitch_83
6275 + const-string v6, "android.privacy.IPrivacySettingsManager"
6277 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6279 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
6281 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6283 + goto/16 :goto_9
6285 + :sswitch_90
6286 + const-string v6, "android.privacy.IPrivacySettingsManager"
6288 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6290 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6292 + move-result-object v0
6294 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
6296 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6298 + goto/16 :goto_9
6300 + :sswitch_a1
6301 + const-string v8, "android.privacy.IPrivacySettingsManager"
6303 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6305 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
6307 + move-result v4
6309 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6311 + if-eqz v4, :cond_b0
6313 + move v6, v7
6315 + :cond_b0
6316 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6318 + goto/16 :goto_9
6320 + :sswitch_b5
6321 + const-string v6, "android.privacy.IPrivacySettingsManager"
6323 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6325 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
6327 + move-result-wide v4
6329 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6331 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
6333 + goto/16 :goto_9
6335 + :sswitch_c6
6336 + const-string v8, "android.privacy.IPrivacySettingsManager"
6338 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6340 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6342 + move-result v8
6344 + if-eqz v8, :cond_e1
6346 + move v0, v7
6348 + :goto_d2
6349 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
6351 + move-result v4
6353 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6355 + if-eqz v4, :cond_dc
6357 + move v6, v7
6359 + :cond_dc
6360 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6362 + goto/16 :goto_9
6364 + :cond_e1
6365 + move v0, v6
6367 + goto :goto_d2
6369 + :sswitch_e3
6370 + const-string v8, "android.privacy.IPrivacySettingsManager"
6372 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6374 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6376 + move-result v8
6378 + if-eqz v8, :cond_fe
6380 + move v0, v7
6382 + :goto_ef
6383 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
6385 + move-result v4
6387 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6389 + if-eqz v4, :cond_f9
6391 + move v6, v7
6393 + :cond_f9
6394 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6396 + goto/16 :goto_9
6398 + :cond_fe
6399 + move v0, v6
6401 + goto :goto_ef
6403 + :sswitch_100
6404 + const-string v6, "android.privacy.IPrivacySettingsManager"
6406 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6408 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
6410 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6412 + goto/16 :goto_9
6414 + nop
6416 + :sswitch_data_10e
6417 + .sparse-switch
6418 + 0x1 -> :sswitch_10
6419 + 0x2 -> :sswitch_2d
6420 + 0x3 -> :sswitch_50
6421 + 0x4 -> :sswitch_67
6422 + 0x5 -> :sswitch_83
6423 + 0x6 -> :sswitch_90
6424 + 0x7 -> :sswitch_a1
6425 + 0x8 -> :sswitch_b5
6426 + 0x9 -> :sswitch_c6
6427 + 0xa -> :sswitch_e3
6428 + 0xb -> :sswitch_100
6429 + 0x5f4e5446 -> :sswitch_a
6430 + .end sparse-switch
6431 +.end method
6432 diff -Npru stock-framework/smali/android/privacy/PrivacyFileObserver.smali pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali
6433 --- stock-framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 18:00:00.000000000 -0600
6434 +++ pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali 2012-05-08 11:54:53.294751983 -0500
6435 @@ -0,0 +1,217 @@
6436 +.class public Landroid/privacy/PrivacyFileObserver;
6437 +.super Landroid/os/FileObserver;
6438 +.source "PrivacyFileObserver.java"
6441 +# static fields
6442 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
6444 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
6447 +# instance fields
6448 +.field public absolutePath:Ljava/lang/String;
6450 +.field public children:Ljava/util/HashMap;
6451 + .annotation system Ldalvik/annotation/Signature;
6452 + value = {
6453 + "Ljava/util/HashMap",
6454 + "<",
6455 + "Ljava/lang/String;",
6456 + "Landroid/privacy/PrivacyFileObserver;",
6457 + ">;"
6459 + .end annotation
6460 +.end field
6462 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6465 +# direct methods
6466 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6467 + .registers 12
6469 + const/16 v8, 0xfff
6471 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
6473 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6475 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6477 + new-instance v8, Ljava/util/HashMap;
6479 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
6481 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6483 + new-instance v7, Ljava/io/File;
6485 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6487 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6489 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
6491 + move-result v8
6493 + if-eqz v8, :cond_42
6495 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
6497 + move-result-object v6
6499 + move-object v0, v6
6501 + array-length v4, v0
6503 + const/4 v3, 0x0
6505 + :goto_24
6506 + if-ge v3, v4, :cond_42
6508 + aget-object v2, v0, v3
6510 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6512 + move-result-object v5
6514 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
6516 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6518 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6520 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6522 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
6524 + move-result v8
6526 + if-eqz v8, :cond_3f
6528 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
6530 + :cond_3f
6531 + add-int/lit8 v3, v3, 0x1
6533 + goto :goto_24
6535 + :cond_42
6536 + return-void
6537 +.end method
6540 +# virtual methods
6541 +.method public addObserver(Ljava/lang/String;)V
6542 + .registers 6
6544 + new-instance v2, Ljava/lang/StringBuilder;
6546 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
6548 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6550 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6552 + move-result-object v2
6554 + const-string v3, "/"
6556 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6558 + move-result-object v2
6560 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6562 + move-result-object v2
6564 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6566 + move-result-object v1
6568 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6570 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
6572 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
6574 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6576 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6578 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6580 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6582 + return-void
6583 +.end method
6585 +.method public onEvent(ILjava/lang/String;)V
6586 + .registers 11
6588 + and-int/lit8 v4, p1, 0x1
6590 + if-eqz v4, :cond_34
6592 + new-instance v3, Ljava/util/StringTokenizer;
6594 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6596 + const-string v5, "/"
6598 + invoke-direct {v3, v4, v5}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
6600 + const/4 v0, 0x0
6602 + :goto_e
6603 + const/4 v4, 0x3
6605 + if-ge v0, v4, :cond_1d
6607 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->hasMoreElements()Z
6609 + move-result v4
6611 + if-eqz v4, :cond_1d
6613 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6615 + add-int/lit8 v0, v0, 0x1
6617 + goto :goto_e
6619 + :cond_1d
6620 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6622 + move-result-object v2
6624 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6626 + invoke-virtual {v4, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6628 + move-result-object v1
6630 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6632 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
6634 + move-result v5
6636 + const-string/jumbo v6, "systemLogs"
6638 + const/4 v7, 0x0
6640 + invoke-virtual {v4, v2, v5, v6, v7}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6642 + :cond_34
6643 + return-void
6644 +.end method
6646 +.method public startWatching()V
6647 + .registers 1
6649 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
6651 + return-void
6652 +.end method
6653 diff -Npru stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
6654 --- stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 18:00:00.000000000 -0600
6655 +++ pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-05-08 11:54:53.298752007 -0500
6656 @@ -0,0 +1,4581 @@
6657 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
6658 +.super Ljava/lang/Object;
6659 +.source "PrivacyPersistenceAdapter.java"
6662 +# static fields
6663 +.field private static final CREATE_TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
6665 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6667 +.field private static final CREATE_TABLE_SETTINGS:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS settings ( _id INTEGER PRIMARY KEY AUTOINCREMENT, packageName TEXT, uid INTEGER, deviceIdSetting INTEGER, deviceId TEXT, line1NumberSetting INTEGER, line1Number TEXT, locationGpsSetting INTEGER, locationGpsLat TEXT, locationGpsLon TEXT, locationNetworkSetting INTEGER, locationNetworkLat TEXT, locationNetworkLon TEXT, networkInfoSetting INTEGER, simInfoSetting INTEGER, simSerialNumberSetting INTEGER, simSerialNumber TEXT, subscriberIdSetting INTEGER, subscriberId TEXT, accountsSetting INTEGER, accountsAuthTokensSetting INTEGER, outgoingCallsSetting INTEGER, incomingCallsSetting INTEGER, contactsSetting INTEGER, calendarSetting INTEGER, mmsSetting INTEGER, smsSetting INTEGER, callLogSetting INTEGER, bookmarksSetting INTEGER, systemLogsSetting INTEGER, externalStorageSetting INTEGER, cameraSetting INTEGER, recordAudioSetting INTEGER, notificationSetting INTEGER, intentBootCompletedSetting INTEGER);"
6669 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
6671 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
6673 +.field private static final DATABASE_VERSION:I = 0x3
6675 +.field public static final DUMMY_UID:I = -0x1
6677 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6679 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6681 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6683 +.field private static final RETRY_QUERY_COUNT:I = 0x5
6685 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
6687 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
6689 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
6691 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
6693 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
6695 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
6697 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
6699 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
6701 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
6703 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
6705 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
6707 +.field public static readingThreads:Ljava/lang/Integer;
6710 +# instance fields
6711 +.field private context:Landroid/content/Context;
6713 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
6716 +# direct methods
6717 +.method static constructor <clinit>()V
6718 + .registers 3
6720 + const/4 v2, 0x0
6722 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
6724 + move-result-object v0
6726 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
6728 + const/16 v0, 0x23
6730 + new-array v0, v0, [Ljava/lang/String;
6732 + const-string v1, "_id"
6734 + aput-object v1, v0, v2
6736 + const/4 v1, 0x1
6738 + const-string/jumbo v2, "packageName"
6740 + aput-object v2, v0, v1
6742 + const/4 v1, 0x2
6744 + const-string/jumbo v2, "uid"
6746 + aput-object v2, v0, v1
6748 + const/4 v1, 0x3
6750 + const-string v2, "deviceIdSetting"
6752 + aput-object v2, v0, v1
6754 + const/4 v1, 0x4
6756 + const-string v2, "deviceId"
6758 + aput-object v2, v0, v1
6760 + const/4 v1, 0x5
6762 + const-string v2, "line1NumberSetting"
6764 + aput-object v2, v0, v1
6766 + const/4 v1, 0x6
6768 + const-string v2, "line1Number"
6770 + aput-object v2, v0, v1
6772 + const/4 v1, 0x7
6774 + const-string v2, "locationGpsSetting"
6776 + aput-object v2, v0, v1
6778 + const/16 v1, 0x8
6780 + const-string v2, "locationGpsLat"
6782 + aput-object v2, v0, v1
6784 + const/16 v1, 0x9
6786 + const-string v2, "locationGpsLon"
6788 + aput-object v2, v0, v1
6790 + const/16 v1, 0xa
6792 + const-string v2, "locationNetworkSetting"
6794 + aput-object v2, v0, v1
6796 + const/16 v1, 0xb
6798 + const-string v2, "locationNetworkLat"
6800 + aput-object v2, v0, v1
6802 + const/16 v1, 0xc
6804 + const-string v2, "locationNetworkLon"
6806 + aput-object v2, v0, v1
6808 + const/16 v1, 0xd
6810 + const-string/jumbo v2, "networkInfoSetting"
6812 + aput-object v2, v0, v1
6814 + const/16 v1, 0xe
6816 + const-string/jumbo v2, "simInfoSetting"
6818 + aput-object v2, v0, v1
6820 + const/16 v1, 0xf
6822 + const-string/jumbo v2, "simSerialNumberSetting"
6824 + aput-object v2, v0, v1
6826 + const/16 v1, 0x10
6828 + const-string/jumbo v2, "simSerialNumber"
6830 + aput-object v2, v0, v1
6832 + const/16 v1, 0x11
6834 + const-string/jumbo v2, "subscriberIdSetting"
6836 + aput-object v2, v0, v1
6838 + const/16 v1, 0x12
6840 + const-string/jumbo v2, "subscriberId"
6842 + aput-object v2, v0, v1
6844 + const/16 v1, 0x13
6846 + const-string v2, "accountsSetting"
6848 + aput-object v2, v0, v1
6850 + const/16 v1, 0x14
6852 + const-string v2, "accountsAuthTokensSetting"
6854 + aput-object v2, v0, v1
6856 + const/16 v1, 0x15
6858 + const-string/jumbo v2, "outgoingCallsSetting"
6860 + aput-object v2, v0, v1
6862 + const/16 v1, 0x16
6864 + const-string v2, "incomingCallsSetting"
6866 + aput-object v2, v0, v1
6868 + const/16 v1, 0x17
6870 + const-string v2, "contactsSetting"
6872 + aput-object v2, v0, v1
6874 + const/16 v1, 0x18
6876 + const-string v2, "calendarSetting"
6878 + aput-object v2, v0, v1
6880 + const/16 v1, 0x19
6882 + const-string/jumbo v2, "mmsSetting"
6884 + aput-object v2, v0, v1
6886 + const/16 v1, 0x1a
6888 + const-string/jumbo v2, "smsSetting"
6890 + aput-object v2, v0, v1
6892 + const/16 v1, 0x1b
6894 + const-string v2, "callLogSetting"
6896 + aput-object v2, v0, v1
6898 + const/16 v1, 0x1c
6900 + const-string v2, "bookmarksSetting"
6902 + aput-object v2, v0, v1
6904 + const/16 v1, 0x1d
6906 + const-string/jumbo v2, "systemLogsSetting"
6908 + aput-object v2, v0, v1
6910 + const/16 v1, 0x1e
6912 + const-string v2, "externalStorageSetting"
6914 + aput-object v2, v0, v1
6916 + const/16 v1, 0x1f
6918 + const-string v2, "cameraSetting"
6920 + aput-object v2, v0, v1
6922 + const/16 v1, 0x20
6924 + const-string/jumbo v2, "recordAudioSetting"
6926 + aput-object v2, v0, v1
6928 + const/16 v1, 0x21
6930 + const-string/jumbo v2, "notificationSetting"
6932 + aput-object v2, v0, v1
6934 + const/16 v1, 0x22
6936 + const-string v2, "intentBootCompletedSetting"
6938 + aput-object v2, v0, v1
6940 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
6942 + return-void
6943 +.end method
6945 +.method public constructor <init>(Landroid/content/Context;)V
6946 + .registers 6
6948 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
6950 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
6952 + new-instance v2, Ljava/io/File;
6954 + const-string v3, "/data/system/"
6956 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6958 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
6960 + move-result v0
6962 + if-eqz v0, :cond_3c
6964 + new-instance v2, Ljava/io/File;
6966 + const-string v3, "/data/system/privacy.db"
6968 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6970 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6972 + move-result v2
6974 + if-nez v2, :cond_22
6976 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
6978 + :cond_22
6979 + new-instance v2, Ljava/io/File;
6981 + const-string v3, "/data/system/privacy"
6983 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6985 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6987 + move-result v2
6989 + if-nez v2, :cond_32
6991 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
6993 + :cond_32
6994 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
6996 + move-result v1
6998 + const/4 v2, 0x3
7000 + if-ge v1, v2, :cond_3c
7002 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
7004 + :cond_3c
7005 + return-void
7006 +.end method
7008 +.method private declared-synchronized createDatabase()V
7009 + .registers 6
7011 + monitor-enter p0
7013 + :try_start_1
7014 + const-string v2, "PrivacyPersistenceAdapter"
7016 + const-string v3, "createDatabase - creating privacy database file"
7018 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7019 + :try_end_8
7020 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
7022 + :try_start_8
7023 + const-string v2, "/data/system/privacy.db"
7025 + const/4 v3, 0x0
7027 + const/high16 v4, 0x1000
7029 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7031 + move-result-object v0
7033 + const-string v2, "PrivacyPersistenceAdapter"
7035 + const-string v3, "createDatabase - creating privacy database"
7037 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7039 + const-string v2, "CREATE TABLE IF NOT EXISTS settings ( _id INTEGER PRIMARY KEY AUTOINCREMENT, packageName TEXT, uid INTEGER, deviceIdSetting INTEGER, deviceId TEXT, line1NumberSetting INTEGER, line1Number TEXT, locationGpsSetting INTEGER, locationGpsLat TEXT, locationGpsLon TEXT, locationNetworkSetting INTEGER, locationNetworkLat TEXT, locationNetworkLon TEXT, networkInfoSetting INTEGER, simInfoSetting INTEGER, simSerialNumberSetting INTEGER, simSerialNumber TEXT, subscriberIdSetting INTEGER, subscriberId TEXT, accountsSetting INTEGER, accountsAuthTokensSetting INTEGER, outgoingCallsSetting INTEGER, incomingCallsSetting INTEGER, contactsSetting INTEGER, calendarSetting INTEGER, mmsSetting INTEGER, smsSetting INTEGER, callLogSetting INTEGER, bookmarksSetting INTEGER, systemLogsSetting INTEGER, externalStorageSetting INTEGER, cameraSetting INTEGER, recordAudioSetting INTEGER, notificationSetting INTEGER, intentBootCompletedSetting INTEGER);"
7041 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7043 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7045 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7047 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7049 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7051 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7053 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7055 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7057 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7059 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7061 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7063 + if-eqz v0, :cond_41
7065 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7067 + move-result v2
7069 + if-eqz v2, :cond_41
7071 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7072 + :try_end_41
7073 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
7074 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
7076 + :cond_41
7077 + :goto_41
7078 + monitor-exit p0
7080 + return-void
7082 + :catch_43
7083 + move-exception v1
7085 + :try_start_44
7086 + const-string v2, "PrivacyPersistenceAdapter"
7088 + const-string v3, "createDatabase - failed to create privacy database"
7090 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7091 + :try_end_4b
7092 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
7094 + goto :goto_41
7096 + :catchall_4c
7097 + move-exception v2
7099 + monitor-exit p0
7101 + throw v2
7102 +.end method
7104 +.method private declared-synchronized createSettingsDir()V
7105 + .registers 4
7107 + monitor-enter p0
7109 + :try_start_1
7110 + new-instance v0, Ljava/io/File;
7112 + const-string v1, "/data/system/privacy/"
7114 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7116 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
7118 + const/4 v1, 0x1
7120 + const/4 v2, 0x0
7122 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
7124 + const/4 v1, 0x1
7126 + const/4 v2, 0x0
7128 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
7129 + :try_end_15
7130 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
7132 + monitor-exit p0
7134 + return-void
7136 + :catchall_17
7137 + move-exception v1
7139 + monitor-exit p0
7141 + throw v1
7142 +.end method
7144 +.method private deleteRecursive(Ljava/io/File;)V
7145 + .registers 7
7147 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
7149 + move-result v4
7151 + if-eqz v4, :cond_16
7153 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
7155 + move-result-object v0
7157 + array-length v3, v0
7159 + const/4 v2, 0x0
7161 + :goto_c
7162 + if-ge v2, v3, :cond_16
7164 + aget-object v1, v0, v2
7166 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7168 + add-int/lit8 v2, v2, 0x1
7170 + goto :goto_c
7172 + :cond_16
7173 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
7175 + return-void
7176 +.end method
7178 +.method private getDbVersion()I
7179 + .registers 9
7181 + const/4 v4, 0x1
7183 + const/4 v3, -0x1
7185 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7187 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7189 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7191 + move-result v6
7193 + add-int/lit8 v6, v6, 0x1
7195 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7197 + move-result-object v6
7199 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7201 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7203 + move-result-object v1
7205 + :try_start_16
7206 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
7208 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7210 + move-result-object v0
7212 + if-eqz v0, :cond_5e
7214 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
7216 + move-result v6
7218 + if-nez v6, :cond_25
7220 + const/4 v3, 0x1
7222 + :cond_25
7223 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7225 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7227 + monitor-enter v7
7228 + :try_end_2b
7229 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
7231 + :try_start_2b
7232 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7234 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7236 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7238 + move-result v6
7240 + add-int/lit8 v6, v6, -0x1
7242 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7244 + move-result-object v6
7246 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7248 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7250 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7252 + move-result v6
7254 + if-nez v6, :cond_4e
7256 + if-eqz v1, :cond_4e
7258 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7260 + move-result v6
7262 + if-eqz v6, :cond_4e
7264 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7266 + :cond_4e
7267 + monitor-exit v7
7269 + :goto_4f
7270 + if-ne v3, v4, :cond_66
7272 + :goto_51
7273 + return v3
7275 + :catchall_52
7276 + move-exception v6
7278 + monitor-exit v7
7279 + :try_end_54
7280 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
7282 + :try_start_54
7283 + throw v6
7284 + :try_end_55
7285 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
7287 + :catch_55
7288 + move-exception v2
7290 + const-string v6, "PrivacyPersistenceAdapter"
7292 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
7294 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7296 + goto :goto_4f
7298 + :cond_5e
7299 + :try_start_5e
7300 + const-string v6, "PrivacyPersistenceAdapter"
7302 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
7304 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7305 + :try_end_65
7306 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
7308 + goto :goto_4f
7310 + :cond_66
7311 + const-string v6, "db_version"
7313 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
7315 + move-result-object v5
7317 + if-nez v5, :cond_70
7319 + move v3, v4
7321 + goto :goto_51
7323 + :cond_70
7324 + :try_start_70
7325 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7326 + :try_end_73
7327 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
7329 + move-result v4
7331 + move v3, v4
7333 + goto :goto_51
7335 + :catch_76
7336 + move-exception v2
7338 + const-string v6, "PrivacyPersistenceAdapter"
7340 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
7342 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7344 + move v3, v4
7346 + goto :goto_51
7347 +.end method
7349 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7350 + .registers 4
7352 + monitor-enter p0
7354 + :try_start_1
7355 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7357 + if-eqz v0, :cond_11
7359 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7361 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7363 + move-result v0
7365 + if-eqz v0, :cond_11
7367 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7368 + :try_end_f
7369 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
7371 + :goto_f
7372 + monitor-exit p0
7374 + return-object v0
7376 + :cond_11
7377 + :try_start_11
7378 + const-string v0, "/data/system/privacy.db"
7380 + const/4 v1, 0x0
7382 + const/4 v2, 0x1
7384 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7386 + move-result-object v0
7388 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7390 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7391 + :try_end_1d
7392 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
7394 + goto :goto_f
7396 + :catchall_1e
7397 + move-exception v0
7399 + monitor-exit p0
7401 + throw v0
7402 +.end method
7404 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7405 + .registers 4
7407 + monitor-enter p0
7409 + :try_start_1
7410 + new-instance v0, Ljava/io/File;
7412 + const-string v1, "/data/system/privacy.db"
7414 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7416 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
7418 + move-result v0
7420 + if-nez v0, :cond_11
7422 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7424 + :cond_11
7425 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7427 + if-eqz v0, :cond_29
7429 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7431 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7433 + move-result v0
7435 + if-eqz v0, :cond_29
7437 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7439 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
7441 + move-result v0
7443 + if-nez v0, :cond_29
7445 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7446 + :try_end_27
7447 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
7449 + :goto_27
7450 + monitor-exit p0
7452 + return-object v0
7454 + :cond_29
7455 + :try_start_29
7456 + const-string v0, "/data/system/privacy.db"
7458 + const/4 v1, 0x0
7460 + const/4 v2, 0x0
7462 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7464 + move-result-object v0
7466 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7468 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7469 + :try_end_35
7470 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
7472 + goto :goto_27
7474 + :catchall_36
7475 + move-exception v0
7477 + monitor-exit p0
7479 + throw v0
7480 +.end method
7482 +.method private 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;Ljava/lang/String;)Landroid/database/Cursor;
7483 + .registers 16
7484 + .annotation system Ldalvik/annotation/Throws;
7485 + value = {
7486 + Ljava/lang/Exception;
7488 + .end annotation
7490 + const/4 v0, 0x0
7492 + const/4 v3, 0x0
7494 + const/4 v2, 0x0
7496 + :goto_3
7497 + if-nez v3, :cond_27
7499 + const/4 v4, 0x5
7501 + if-ge v2, v4, :cond_27
7503 + if-eqz v0, :cond_d
7505 + :try_start_a
7506 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7508 + :cond_d
7509 + invoke-virtual/range {p1 .. p9}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
7510 + :try_end_10
7511 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
7513 + move-result-object v0
7515 + const/4 v3, 0x1
7517 + :goto_12
7518 + add-int/lit8 v2, v2, 0x1
7520 + goto :goto_3
7522 + :catch_15
7523 + move-exception v1
7525 + const/4 v3, 0x0
7527 + if-eqz p1, :cond_22
7529 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7531 + move-result v4
7533 + if-eqz v4, :cond_22
7535 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7537 + :cond_22
7538 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7540 + move-result-object p1
7542 + goto :goto_12
7544 + :cond_27
7545 + if-nez v3, :cond_32
7547 + new-instance v4, Ljava/lang/Exception;
7549 + const-string/jumbo v5, "query - failed to execute query on the DB"
7551 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7553 + throw v4
7555 + :cond_32
7556 + return-object v0
7557 +.end method
7559 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7560 + .registers 9
7561 + .annotation system Ldalvik/annotation/Throws;
7562 + value = {
7563 + Ljava/lang/Exception;
7565 + .end annotation
7567 + const/4 v0, 0x0
7569 + const/4 v3, 0x0
7571 + const/4 v2, 0x0
7573 + :goto_3
7574 + if-nez v3, :cond_28
7576 + const/4 v4, 0x5
7578 + if-ge v2, v4, :cond_28
7580 + if-eqz v0, :cond_d
7582 + :try_start_a
7583 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7585 + :cond_d
7586 + const/4 v4, 0x0
7588 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
7589 + :try_end_11
7590 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
7592 + move-result-object v0
7594 + const/4 v3, 0x1
7596 + :goto_13
7597 + add-int/lit8 v2, v2, 0x1
7599 + goto :goto_3
7601 + :catch_16
7602 + move-exception v1
7604 + const/4 v3, 0x0
7606 + if-eqz p1, :cond_23
7608 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7610 + move-result v4
7612 + if-eqz v4, :cond_23
7614 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7616 + :cond_23
7617 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7619 + move-result-object p1
7621 + goto :goto_13
7623 + :cond_28
7624 + if-nez v3, :cond_33
7626 + new-instance v4, Ljava/lang/Exception;
7628 + const-string/jumbo v5, "query - failed to execute query on the DB"
7630 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7632 + throw v4
7634 + :cond_33
7635 + return-object v0
7636 +.end method
7638 +.method private declared-synchronized upgradeDatabase(I)V
7639 + .registers 23
7641 + monitor-enter p0
7643 + :try_start_1
7644 + const-string v17, "PrivacyPersistenceAdapter"
7646 + new-instance v18, Ljava/lang/StringBuilder;
7648 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
7650 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
7652 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7654 + move-result-object v18
7656 + move-object/from16 v0, v18
7658 + move/from16 v1, p1
7660 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7662 + move-result-object v18
7664 + const-string v19, " to "
7666 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7668 + move-result-object v18
7670 + const/16 v19, 0x3
7672 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7674 + move-result-object v18
7676 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7678 + move-result-object v18
7680 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7682 + new-instance v6, Ljava/io/File;
7684 + const-string v17, "/data/system/privacy.db"
7686 + move-object/from16 v0, v17
7688 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7690 + new-instance v5, Ljava/io/File;
7692 + const-string v17, "/data/system/privacy.db.bak"
7694 + move-object/from16 v0, v17
7696 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7697 + :try_end_3c
7698 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
7700 + :try_start_3c
7701 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7702 + :try_end_3f
7703 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
7704 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
7706 + :goto_3f
7707 + :try_start_3f
7708 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7710 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
7712 + move-result-wide v17
7714 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
7716 + move-result-wide v19
7718 + sub-long v17, v17, v19
7720 + const-wide/16 v19, 0x7d0
7722 + cmp-long v17, v17, v19
7724 + if-lez v17, :cond_69
7726 + const-string v17, "PrivacyPersistenceAdapter"
7728 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
7730 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7731 + :try_end_5a
7732 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
7734 + :goto_5a
7735 + monitor-exit p0
7737 + return-void
7739 + :catch_5c
7740 + move-exception v7
7742 + :try_start_5d
7743 + const-string v17, "PrivacyPersistenceAdapter"
7745 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
7747 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7748 + :try_end_65
7749 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
7751 + goto :goto_3f
7753 + :catchall_66
7754 + move-exception v17
7756 + monitor-exit p0
7758 + throw v17
7760 + :cond_69
7761 + :try_start_69
7762 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7764 + move-result-object v4
7766 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
7768 + packed-switch p1, :pswitch_data_164
7770 + :cond_73
7771 + :goto_73
7772 + if-eqz v4, :cond_159
7774 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7776 + move-result v17
7778 + if-eqz v17, :cond_159
7780 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7782 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7784 + :goto_81
7785 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
7786 + :try_end_84
7787 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
7789 + goto :goto_5a
7791 + :pswitch_85
7792 + if-eqz v4, :cond_73
7794 + :try_start_87
7795 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7797 + move-result v17
7799 + if-eqz v17, :cond_73
7801 + const-string v17, "DROP TABLE IF EXISTS version;"
7803 + move-object/from16 v0, v17
7805 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7807 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7809 + move-object/from16 v0, v17
7811 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7813 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7815 + move-object/from16 v0, v17
7817 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7819 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7821 + move-object/from16 v0, v17
7823 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7825 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7827 + move-object/from16 v0, v17
7829 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7831 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7833 + move-object/from16 v0, v17
7835 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7837 + new-instance v14, Ljava/io/File;
7839 + const-string v17, "/data/system/privacy"
7841 + move-object/from16 v0, v17
7843 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7845 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
7847 + move-result-object v2
7849 + array-length v10, v2
7851 + const/4 v8, 0x0
7853 + move v9, v8
7855 + :goto_c7
7856 + if-ge v9, v10, :cond_127
7858 + aget-object v13, v2, v9
7860 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
7862 + move-result-object v3
7864 + array-length v11, v3
7866 + const/4 v8, 0x0
7868 + :goto_d1
7869 + if-ge v8, v11, :cond_123
7871 + aget-object v16, v3, v8
7873 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
7875 + move-result v17
7877 + if-eqz v17, :cond_120
7879 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
7881 + move-result-object v15
7883 + const/16 v17, 0x0
7885 + aget-object v17, v15, v17
7887 + if-eqz v17, :cond_120
7889 + new-instance v12, Ljava/io/File;
7891 + new-instance v17, Ljava/lang/StringBuilder;
7893 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7895 + move-object/from16 v0, v17
7897 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7899 + move-result-object v17
7901 + const-string v18, "/"
7903 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7905 + move-result-object v17
7907 + const/16 v18, 0x0
7909 + aget-object v18, v15, v18
7911 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
7913 + move-result-object v18
7915 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7917 + move-result-object v17
7919 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7921 + move-result-object v17
7923 + move-object/from16 v0, v17
7925 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7927 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
7929 + const/16 v17, 0x0
7931 + aget-object v17, v15, v17
7933 + move-object/from16 v0, v17
7935 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
7937 + move-object/from16 v0, p0
7939 + move-object/from16 v1, v16
7941 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7943 + :cond_120
7944 + add-int/lit8 v8, v8, 0x1
7946 + goto :goto_d1
7948 + :cond_123
7949 + add-int/lit8 v8, v9, 0x1
7951 + move v9, v8
7953 + goto :goto_c7
7955 + :cond_127
7956 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
7957 + :try_end_12a
7958 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
7959 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
7961 + goto/16 :goto_73
7963 + :catch_12c
7964 + move-exception v7
7966 + if-eqz v4, :cond_13b
7968 + :try_start_12f
7969 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7971 + move-result v17
7973 + if-eqz v17, :cond_13b
7975 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7977 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7979 + :cond_13b
7980 + const-string v17, "PrivacyPersistenceAdapter"
7982 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
7984 + move-object/from16 v0, v17
7986 + move-object/from16 v1, v18
7988 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7990 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7992 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7994 + goto/16 :goto_73
7996 + :pswitch_14f
7997 + const-string v17, "PrivacyPersistenceAdapter"
7999 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
8001 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
8003 + goto/16 :goto_73
8005 + :cond_159
8006 + const-string v17, "PrivacyPersistenceAdapter"
8008 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
8010 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8011 + :try_end_161
8012 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
8014 + goto/16 :goto_81
8016 + nop
8018 + :pswitch_data_164
8019 + .packed-switch 0x1
8020 + :pswitch_85
8021 + :pswitch_85
8022 + :pswitch_14f
8023 + .end packed-switch
8024 +.end method
8027 +# virtual methods
8028 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
8029 + .registers 16
8031 + monitor-enter p0
8033 + const/4 v11, 0x1
8035 + :try_start_2
8036 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8038 + move-result-object v0
8040 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
8041 + :try_end_9
8042 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
8044 + :try_start_9
8045 + const-string/jumbo v1, "settings"
8047 + const/4 v2, 0x1
8049 + new-array v2, v2, [Ljava/lang/String;
8051 + const/4 v3, 0x0
8053 + const-string v4, "_id"
8055 + aput-object v4, v2, v3
8057 + const-string/jumbo v3, "packageName=?"
8059 + const/4 v4, 0x1
8061 + new-array v4, v4, [Ljava/lang/String;
8063 + const/4 v5, 0x0
8065 + aput-object p1, v4, v5
8067 + const/4 v5, 0x0
8069 + const/4 v6, 0x0
8071 + const/4 v7, 0x0
8073 + invoke-virtual/range {v0 .. v7}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
8075 + move-result-object v8
8077 + if-eqz v8, :cond_4c
8079 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
8081 + move-result v1
8083 + if-lez v1, :cond_4c
8085 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
8087 + move-result v1
8089 + if-eqz v1, :cond_4c
8091 + const/4 v1, 0x0
8093 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
8095 + move-result v10
8097 + const-string v1, "allowed_contacts"
8099 + const-string/jumbo v2, "settings_id=?"
8101 + const/4 v3, 0x1
8103 + new-array v3, v3, [Ljava/lang/String;
8105 + const/4 v4, 0x0
8107 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8109 + move-result-object v5
8111 + aput-object v5, v3, v4
8113 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8115 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
8117 + :cond_4c
8118 + const-string/jumbo v1, "settings"
8120 + const-string/jumbo v2, "packageName=?"
8122 + const/4 v3, 0x1
8124 + new-array v3, v3, [Ljava/lang/String;
8126 + const/4 v4, 0x0
8128 + aput-object p1, v3, v4
8130 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8132 + move-result v1
8134 + if-nez v1, :cond_8d
8136 + const-string v1, "PrivacyPersistenceAdapter"
8138 + new-instance v2, Ljava/lang/StringBuilder;
8140 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
8142 + const-string v3, "deleteSettings - database entry for "
8144 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8146 + move-result-object v2
8148 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8150 + move-result-object v2
8152 + const-string v3, " not found"
8154 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8156 + move-result-object v2
8158 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8160 + move-result-object v2
8162 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8163 + :try_end_7c
8164 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
8165 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
8167 + const/4 v1, 0x0
8169 + :try_start_7d
8170 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8172 + if-eqz v0, :cond_8b
8174 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8176 + move-result v2
8178 + if-eqz v2, :cond_8b
8180 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8181 + :try_end_8b
8182 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
8184 + :cond_8b
8185 + :goto_8b
8186 + monitor-exit p0
8188 + return v1
8190 + :cond_8d
8191 + :try_start_8d
8192 + new-instance v12, Ljava/io/File;
8194 + new-instance v1, Ljava/lang/StringBuilder;
8196 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8198 + const-string v2, "/data/system/privacy/"
8200 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8202 + move-result-object v1
8204 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8206 + move-result-object v1
8208 + const-string v2, "/"
8210 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8212 + move-result-object v1
8214 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8216 + move-result-object v1
8218 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8220 + new-instance v13, Ljava/io/File;
8222 + new-instance v1, Ljava/lang/StringBuilder;
8224 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8226 + const-string v2, "/data/system/privacy/"
8228 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8230 + move-result-object v1
8232 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8234 + move-result-object v1
8236 + const-string v2, "/systemLogsSetting"
8238 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8240 + move-result-object v1
8242 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8244 + move-result-object v1
8246 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8248 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
8250 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8252 + move-result-object v1
8254 + if-eqz v1, :cond_d9
8256 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8258 + move-result-object v1
8260 + array-length v1, v1
8262 + if-nez v1, :cond_dc
8264 + :cond_d9
8265 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8267 + :cond_dc
8268 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8269 + :try_end_df
8270 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
8271 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
8273 + :try_start_df
8274 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8276 + if-eqz v0, :cond_ed
8278 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8280 + move-result v1
8282 + if-eqz v1, :cond_ed
8284 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8285 + :try_end_ed
8286 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
8288 + :cond_ed
8289 + :goto_ed
8290 + move v1, v11
8292 + goto :goto_8b
8294 + :catch_ef
8295 + move-exception v9
8297 + const/4 v11, 0x0
8299 + :try_start_f1
8300 + const-string v1, "PrivacyPersistenceAdapter"
8302 + const-string v2, "deleteSettings - could not delete settings"
8304 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8305 + :try_end_f8
8306 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
8308 + :try_start_f8
8309 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8311 + if-eqz v0, :cond_ed
8313 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8315 + move-result v1
8317 + if-eqz v1, :cond_ed
8319 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8320 + :try_end_106
8321 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
8323 + goto :goto_ed
8325 + :catchall_107
8326 + move-exception v1
8328 + monitor-exit p0
8330 + throw v1
8332 + :catchall_10a
8333 + move-exception v1
8335 + :try_start_10b
8336 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8338 + if-eqz v0, :cond_119
8340 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8342 + move-result v2
8344 + if-eqz v2, :cond_119
8346 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8348 + :cond_119
8349 + throw v1
8350 + :try_end_11a
8351 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
8352 +.end method
8354 +.method public getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
8355 + .registers 47
8357 + const/16 v43, 0x0
8359 + if-nez p1, :cond_e
8361 + const-string v1, "PrivacyPersistenceAdapter"
8363 + const-string v4, "getSettings - insufficient application identifier - package name is required"
8365 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8367 + move-object/from16 v3, v43
8369 + :goto_d
8370 + return-object v43
8372 + :cond_e
8373 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8375 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8377 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8379 + move-result v1
8381 + add-int/lit8 v1, v1, 0x1
8383 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8385 + move-result-object v1
8387 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8389 + :try_start_1e
8390 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8391 + :try_end_21
8392 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_1e .. :try_end_21} :catch_243
8394 + move-result-object v2
8396 + const/16 v41, 0x0
8398 + :try_start_24
8399 + const-string/jumbo v3, "settings"
8401 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
8403 + const-string/jumbo v5, "packageName=?"
8405 + const/4 v1, 0x1
8407 + new-array v6, v1, [Ljava/lang/String;
8409 + const/4 v1, 0x0
8411 + aput-object p1, v6, v1
8413 + const/4 v7, 0x0
8415 + const/4 v8, 0x0
8417 + const/4 v9, 0x0
8419 + const/4 v10, 0x0
8421 + move-object/from16 v1, p0
8423 + invoke-direct/range {v1 .. v10}, Landroid/privacy/PrivacyPersistenceAdapter;->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;Ljava/lang/String;)Landroid/database/Cursor;
8425 + move-result-object v41
8427 + if-eqz v41, :cond_2d3
8429 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToFirst()Z
8431 + move-result v1
8433 + if-eqz v1, :cond_2d3
8435 + new-instance v3, Landroid/privacy/PrivacySettings;
8437 + const/4 v1, 0x0
8439 + move-object/from16 v0, v41
8441 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8443 + move-result v1
8445 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8447 + move-result-object v4
8449 + const/4 v1, 0x1
8451 + move-object/from16 v0, v41
8453 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8455 + move-result-object v5
8457 + const/4 v1, 0x2
8459 + move-object/from16 v0, v41
8461 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8463 + move-result v6
8465 + const/4 v1, 0x3
8467 + move-object/from16 v0, v41
8469 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8471 + move-result v1
8473 + int-to-byte v7, v1
8475 + const/4 v1, 0x4
8477 + move-object/from16 v0, v41
8479 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8481 + move-result-object v8
8483 + const/4 v1, 0x5
8485 + move-object/from16 v0, v41
8487 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8489 + move-result v1
8491 + int-to-byte v9, v1
8493 + const/4 v1, 0x6
8495 + move-object/from16 v0, v41
8497 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8499 + move-result-object v10
8501 + const/4 v1, 0x7
8503 + move-object/from16 v0, v41
8505 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8507 + move-result v1
8509 + int-to-byte v11, v1
8511 + const/16 v1, 0x8
8513 + move-object/from16 v0, v41
8515 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8517 + move-result-object v12
8519 + const/16 v1, 0x9
8521 + move-object/from16 v0, v41
8523 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8525 + move-result-object v13
8527 + const/16 v1, 0xa
8529 + move-object/from16 v0, v41
8531 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8533 + move-result v1
8535 + int-to-byte v14, v1
8537 + const/16 v1, 0xb
8539 + move-object/from16 v0, v41
8541 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8543 + move-result-object v15
8545 + const/16 v1, 0xc
8547 + move-object/from16 v0, v41
8549 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8551 + move-result-object v16
8553 + const/16 v1, 0xd
8555 + move-object/from16 v0, v41
8557 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8559 + move-result v1
8561 + int-to-byte v0, v1
8563 + move/from16 v17, v0
8565 + const/16 v1, 0xe
8567 + move-object/from16 v0, v41
8569 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8571 + move-result v1
8573 + int-to-byte v0, v1
8575 + move/from16 v18, v0
8577 + const/16 v1, 0xf
8579 + move-object/from16 v0, v41
8581 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8583 + move-result v1
8585 + int-to-byte v0, v1
8587 + move/from16 v19, v0
8589 + const/16 v1, 0x10
8591 + move-object/from16 v0, v41
8593 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8595 + move-result-object v20
8597 + const/16 v1, 0x11
8599 + move-object/from16 v0, v41
8601 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8603 + move-result v1
8605 + int-to-byte v0, v1
8607 + move/from16 v21, v0
8609 + const/16 v1, 0x12
8611 + move-object/from16 v0, v41
8613 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8615 + move-result-object v22
8617 + const/16 v1, 0x13
8619 + move-object/from16 v0, v41
8621 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8623 + move-result v1
8625 + int-to-byte v0, v1
8627 + move/from16 v23, v0
8629 + const/16 v1, 0x14
8631 + move-object/from16 v0, v41
8633 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8635 + move-result v1
8637 + int-to-byte v0, v1
8639 + move/from16 v24, v0
8641 + const/16 v1, 0x15
8643 + move-object/from16 v0, v41
8645 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8647 + move-result v1
8649 + int-to-byte v0, v1
8651 + move/from16 v25, v0
8653 + const/16 v1, 0x16
8655 + move-object/from16 v0, v41
8657 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8659 + move-result v1
8661 + int-to-byte v0, v1
8663 + move/from16 v26, v0
8665 + const/16 v1, 0x17
8667 + move-object/from16 v0, v41
8669 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8671 + move-result v1
8673 + int-to-byte v0, v1
8675 + move/from16 v27, v0
8677 + const/16 v1, 0x18
8679 + move-object/from16 v0, v41
8681 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8683 + move-result v1
8685 + int-to-byte v0, v1
8687 + move/from16 v28, v0
8689 + const/16 v1, 0x19
8691 + move-object/from16 v0, v41
8693 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8695 + move-result v1
8697 + int-to-byte v0, v1
8699 + move/from16 v29, v0
8701 + const/16 v1, 0x1a
8703 + move-object/from16 v0, v41
8705 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8707 + move-result v1
8709 + int-to-byte v0, v1
8711 + move/from16 v30, v0
8713 + const/16 v1, 0x1b
8715 + move-object/from16 v0, v41
8717 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8719 + move-result v1
8721 + int-to-byte v0, v1
8723 + move/from16 v31, v0
8725 + const/16 v1, 0x1c
8727 + move-object/from16 v0, v41
8729 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8731 + move-result v1
8733 + int-to-byte v0, v1
8735 + move/from16 v32, v0
8737 + const/16 v1, 0x1d
8739 + move-object/from16 v0, v41
8741 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8743 + move-result v1
8745 + int-to-byte v0, v1
8747 + move/from16 v33, v0
8749 + const/16 v1, 0x1e
8751 + move-object/from16 v0, v41
8753 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8755 + move-result v1
8757 + int-to-byte v0, v1
8759 + move/from16 v34, v0
8761 + const/16 v1, 0x1f
8763 + move-object/from16 v0, v41
8765 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8767 + move-result v1
8769 + int-to-byte v0, v1
8771 + move/from16 v35, v0
8773 + const/16 v1, 0x20
8775 + move-object/from16 v0, v41
8777 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8779 + move-result v1
8781 + int-to-byte v0, v1
8783 + move/from16 v36, v0
8785 + const/16 v1, 0x21
8787 + move-object/from16 v0, v41
8789 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8791 + move-result v1
8793 + int-to-byte v0, v1
8795 + move/from16 v37, v0
8797 + const/16 v1, 0x22
8799 + move-object/from16 v0, v41
8801 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8803 + move-result v1
8805 + int-to-byte v0, v1
8807 + move/from16 v38, v0
8809 + const/16 v39, 0x0
8811 + invoke-direct/range {v3 .. v39}, Landroid/privacy/PrivacySettings;-><init>(Ljava/lang/Integer;Ljava/lang/String;IBLjava/lang/String;BLjava/lang/String;BLjava/lang/String;Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;BBBLjava/lang/String;BLjava/lang/String;BBBBBBBBBBBBBBBB[I)V
8812 + :try_end_19f
8813 + .catchall {:try_start_24 .. :try_end_19f} :catchall_299
8814 + .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_19f} :catch_2ce
8816 + :try_start_19f
8817 + new-instance v1, Ljava/lang/StringBuilder;
8819 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8821 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
8823 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8825 + move-result-object v1
8827 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
8829 + move-result-object v4
8831 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
8833 + move-result v4
8835 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8837 + move-result-object v4
8839 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8841 + move-result-object v1
8843 + const-string v4, ";"
8845 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8847 + move-result-object v1
8849 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8851 + move-result-object v1
8853 + move-object/from16 v0, p0
8855 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
8857 + move-result-object v41
8859 + if-eqz v41, :cond_266
8861 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8863 + move-result v1
8865 + if-lez v1, :cond_266
8867 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8869 + move-result v1
8871 + new-array v0, v1, [I
8873 + move-object/from16 v40, v0
8875 + :goto_1da
8876 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToNext()Z
8878 + move-result v1
8880 + if-eqz v1, :cond_261
8882 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getPosition()I
8884 + move-result v1
8886 + const/4 v4, 0x1
8888 + move-object/from16 v0, v41
8890 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
8892 + move-result v4
8894 + aput v4, v40, v1
8895 + :try_end_1ed
8896 + .catchall {:try_start_19f .. :try_end_1ed} :catchall_2cc
8897 + .catch Ljava/lang/Exception; {:try_start_19f .. :try_end_1ed} :catch_1ee
8899 + goto :goto_1da
8901 + :catch_1ee
8902 + move-exception v42
8904 + :goto_1ef
8905 + :try_start_1ef
8906 + const-string v1, "PrivacyPersistenceAdapter"
8908 + new-instance v4, Ljava/lang/StringBuilder;
8910 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
8912 + const-string v5, "getSettings - failed to get settings for package: "
8914 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8916 + move-result-object v4
8918 + move-object/from16 v0, p1
8920 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8922 + move-result-object v4
8924 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8926 + move-result-object v4
8928 + move-object/from16 v0, v42
8930 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8932 + invoke-virtual/range {v42 .. v42}, Ljava/lang/Exception;->printStackTrace()V
8934 + if-eqz v41, :cond_213
8936 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8937 + :try_end_213
8938 + .catchall {:try_start_1ef .. :try_end_213} :catchall_2cc
8940 + :cond_213
8941 + if-eqz v41, :cond_218
8943 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8945 + :cond_218
8946 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8948 + monitor-enter v4
8950 + :try_start_21b
8951 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8953 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8955 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8957 + move-result v1
8959 + add-int/lit8 v1, v1, -0x1
8961 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8963 + move-result-object v1
8965 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8967 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8969 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8971 + move-result v1
8973 + if-nez v1, :cond_23e
8975 + if-eqz v2, :cond_23e
8977 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8979 + move-result v1
8981 + if-eqz v1, :cond_23e
8983 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8985 + :cond_23e
8986 + monitor-exit v4
8987 + :try_end_23f
8988 + .catchall {:try_start_21b .. :try_end_23f} :catchall_296
8990 + :goto_23f
8991 + move-object/from16 v43, v3
8993 + goto/16 :goto_d
8995 + :catch_243
8996 + move-exception v42
8998 + const-string v1, "PrivacyPersistenceAdapter"
9000 + const-string v4, "getSettings - database could not be opened"
9002 + move-object/from16 v0, v42
9004 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9006 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9008 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9010 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9012 + move-result v1
9014 + add-int/lit8 v1, v1, -0x1
9016 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9018 + move-result-object v1
9020 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9022 + move-object/from16 v3, v43
9024 + goto/16 :goto_d
9026 + :cond_261
9027 + :try_start_261
9028 + move-object/from16 v0, v40
9030 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
9031 + :try_end_266
9032 + .catchall {:try_start_261 .. :try_end_266} :catchall_2cc
9033 + .catch Ljava/lang/Exception; {:try_start_261 .. :try_end_266} :catch_1ee
9035 + :cond_266
9036 + :goto_266
9037 + if-eqz v41, :cond_26b
9039 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9041 + :cond_26b
9042 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9044 + monitor-enter v4
9046 + :try_start_26e
9047 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9049 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9051 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9053 + move-result v1
9055 + add-int/lit8 v1, v1, -0x1
9057 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9059 + move-result-object v1
9061 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9063 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9065 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9067 + move-result v1
9069 + if-nez v1, :cond_291
9071 + if-eqz v2, :cond_291
9073 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9075 + move-result v1
9077 + if-eqz v1, :cond_291
9079 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9081 + :cond_291
9082 + monitor-exit v4
9084 + goto :goto_23f
9086 + :catchall_293
9087 + move-exception v1
9089 + monitor-exit v4
9090 + :try_end_295
9091 + .catchall {:try_start_26e .. :try_end_295} :catchall_293
9093 + throw v1
9095 + :catchall_296
9096 + move-exception v1
9098 + :try_start_297
9099 + monitor-exit v4
9100 + :try_end_298
9101 + .catchall {:try_start_297 .. :try_end_298} :catchall_296
9103 + throw v1
9105 + :catchall_299
9106 + move-exception v1
9108 + move-object/from16 v3, v43
9110 + :goto_29c
9111 + if-eqz v41, :cond_2a1
9113 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9115 + :cond_2a1
9116 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9118 + monitor-enter v4
9120 + :try_start_2a4
9121 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9123 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9125 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9127 + move-result v5
9129 + add-int/lit8 v5, v5, -0x1
9131 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9133 + move-result-object v5
9135 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9137 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9139 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9141 + move-result v5
9143 + if-nez v5, :cond_2c7
9145 + if-eqz v2, :cond_2c7
9147 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9149 + move-result v5
9151 + if-eqz v5, :cond_2c7
9153 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9155 + :cond_2c7
9156 + monitor-exit v4
9157 + :try_end_2c8
9158 + .catchall {:try_start_2a4 .. :try_end_2c8} :catchall_2c9
9160 + throw v1
9162 + :catchall_2c9
9163 + move-exception v1
9165 + :try_start_2ca
9166 + monitor-exit v4
9167 + :try_end_2cb
9168 + .catchall {:try_start_2ca .. :try_end_2cb} :catchall_2c9
9170 + throw v1
9172 + :catchall_2cc
9173 + move-exception v1
9175 + goto :goto_29c
9177 + :catch_2ce
9178 + move-exception v42
9180 + move-object/from16 v3, v43
9182 + goto/16 :goto_1ef
9184 + :cond_2d3
9185 + move-object/from16 v3, v43
9187 + goto :goto_266
9188 +.end method
9190 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
9191 + .registers 15
9193 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9195 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9197 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9199 + move-result v0
9201 + add-int/lit8 v0, v0, 0x1
9203 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9205 + move-result-object v0
9207 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9209 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9211 + move-result-object v1
9213 + const/4 v12, 0x0
9215 + :try_start_15
9216 + const-string/jumbo v2, "map"
9218 + const/4 v0, 0x1
9220 + new-array v3, v0, [Ljava/lang/String;
9222 + const/4 v0, 0x0
9224 + const-string/jumbo v4, "value"
9226 + aput-object v4, v3, v0
9228 + const-string/jumbo v4, "name=?"
9230 + const/4 v0, 0x1
9232 + new-array v5, v0, [Ljava/lang/String;
9234 + const/4 v0, 0x0
9236 + aput-object p1, v5, v0
9238 + const/4 v6, 0x0
9240 + const/4 v7, 0x0
9242 + const/4 v8, 0x0
9244 + const/4 v9, 0x0
9246 + move-object v0, p0
9248 + invoke-direct/range {v0 .. v9}, Landroid/privacy/PrivacyPersistenceAdapter;->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;Ljava/lang/String;)Landroid/database/Cursor;
9250 + move-result-object v10
9252 + if-eqz v10, :cond_77
9254 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
9256 + move-result v0
9258 + if-lez v0, :cond_77
9260 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
9262 + move-result v0
9264 + if-eqz v0, :cond_77
9266 + const-string/jumbo v0, "value"
9268 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
9270 + move-result v0
9272 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9274 + move-result-object v12
9276 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
9277 + :try_end_4f
9278 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
9280 + :goto_4f
9281 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9283 + monitor-enter v2
9285 + :try_start_52
9286 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9288 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9290 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9292 + move-result v0
9294 + add-int/lit8 v0, v0, -0x1
9296 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9298 + move-result-object v0
9300 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9302 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9304 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9306 + move-result v0
9308 + if-nez v0, :cond_75
9310 + if-eqz v1, :cond_75
9312 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9314 + move-result v0
9316 + if-eqz v0, :cond_75
9318 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9320 + :cond_75
9321 + monitor-exit v2
9322 + :try_end_76
9323 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
9325 + return-object v12
9327 + :cond_77
9328 + :try_start_77
9329 + const-string v0, "PrivacyPersistenceAdapter"
9331 + new-instance v2, Ljava/lang/StringBuilder;
9333 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9335 + const-string v3, "getValue - could not get value for name: "
9337 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9339 + move-result-object v2
9341 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9343 + move-result-object v2
9345 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9347 + move-result-object v2
9349 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
9350 + :try_end_8f
9351 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
9353 + goto :goto_4f
9355 + :catch_90
9356 + move-exception v11
9358 + const-string v0, "PrivacyPersistenceAdapter"
9360 + new-instance v2, Ljava/lang/StringBuilder;
9362 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9364 + const-string v3, "getValue - could not get value for name: "
9366 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9368 + move-result-object v2
9370 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9372 + move-result-object v2
9374 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9376 + move-result-object v2
9378 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9380 + goto :goto_4f
9382 + :catchall_aa
9383 + move-exception v0
9385 + :try_start_ab
9386 + monitor-exit v2
9387 + :try_end_ac
9388 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
9390 + throw v0
9391 +.end method
9393 +.method public purgeSettings()Z
9394 + .registers 28
9396 + const/16 v25, 0x1
9398 + new-instance v13, Ljava/util/ArrayList;
9400 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
9402 + move-object/from16 v0, p0
9404 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
9406 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
9408 + move-result-object v21
9410 + const/16 v2, 0x80
9412 + move-object/from16 v0, v21
9414 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
9416 + move-result-object v19
9418 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
9420 + move-result-object v18
9422 + :goto_1b
9423 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
9425 + move-result v2
9427 + if-eqz v2, :cond_2d
9429 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
9431 + move-result-object v12
9433 + check-cast v12, Landroid/content/pm/ApplicationInfo;
9435 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
9437 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9439 + goto :goto_1b
9441 + :cond_2d
9442 + new-instance v26, Ljava/io/File;
9444 + const-string v2, "/data/system/privacy"
9446 + move-object/from16 v0, v26
9448 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9450 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
9452 + move-result-object v15
9454 + array-length v0, v15
9456 + move/from16 v20, v0
9458 + const/16 v18, 0x0
9460 + :goto_3f
9461 + move/from16 v0, v18
9463 + move/from16 v1, v20
9465 + if-ge v0, v1, :cond_5d
9467 + aget-object v23, v15, v18
9469 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
9471 + move-result-object v24
9473 + move-object/from16 v0, v24
9475 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9477 + move-result v2
9479 + if-nez v2, :cond_5a
9481 + move-object/from16 v0, p0
9483 + move-object/from16 v1, v23
9485 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
9487 + :cond_5a
9488 + add-int/lit8 v18, v18, 0x1
9490 + goto :goto_3f
9492 + :cond_5d
9493 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9495 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9497 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9499 + move-result v2
9501 + add-int/lit8 v2, v2, 0x1
9503 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9505 + move-result-object v2
9507 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9509 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9511 + move-result-object v3
9513 + const/16 v16, 0x0
9515 + :try_start_73
9516 + const-string/jumbo v4, "settings"
9518 + const/4 v2, 0x1
9520 + new-array v5, v2, [Ljava/lang/String;
9522 + const/4 v2, 0x0
9524 + const-string/jumbo v6, "packageName"
9526 + aput-object v6, v5, v2
9528 + const/4 v6, 0x0
9530 + const/4 v7, 0x0
9532 + const/4 v8, 0x0
9534 + const/4 v9, 0x0
9536 + const/4 v10, 0x0
9538 + const/4 v11, 0x0
9540 + move-object/from16 v2, p0
9542 + invoke-direct/range {v2 .. v11}, Landroid/privacy/PrivacyPersistenceAdapter;->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;Ljava/lang/String;)Landroid/database/Cursor;
9544 + move-result-object v16
9546 + new-instance v14, Ljava/util/ArrayList;
9548 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
9550 + :goto_90
9551 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
9553 + move-result v2
9555 + if-eqz v2, :cond_142
9557 + const/4 v2, 0x0
9559 + move-object/from16 v0, v16
9561 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9563 + move-result-object v24
9565 + move-object/from16 v0, v24
9567 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9569 + move-result v2
9571 + if-nez v2, :cond_e7
9573 + move-object/from16 v0, p0
9575 + move-object/from16 v1, v24
9577 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9578 + :try_end_ac
9579 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
9580 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
9582 + goto :goto_90
9584 + :catch_ad
9585 + move-exception v17
9587 + :try_start_ae
9588 + const-string v2, "PrivacyPersistenceAdapter"
9590 + const-string/jumbo v4, "purgeSettings - purging DB failed"
9592 + move-object/from16 v0, v17
9594 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9595 + :try_end_b8
9596 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
9598 + const/16 v25, 0x0
9600 + if-eqz v16, :cond_bf
9602 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9604 + :cond_bf
9605 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9607 + monitor-enter v4
9609 + :try_start_c2
9610 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9612 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9614 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9616 + move-result v2
9618 + add-int/lit8 v2, v2, -0x1
9620 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9622 + move-result-object v2
9624 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9626 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9628 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9630 + move-result v2
9632 + if-nez v2, :cond_e5
9634 + if-eqz v3, :cond_e5
9636 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9638 + move-result v2
9640 + if-eqz v2, :cond_e5
9642 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9644 + :cond_e5
9645 + monitor-exit v4
9646 + :try_end_e6
9647 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
9649 + :goto_e6
9650 + return v25
9652 + :cond_e7
9653 + :try_start_e7
9654 + move-object/from16 v0, v24
9656 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9658 + move-result v2
9660 + if-eqz v2, :cond_135
9662 + const/4 v2, 0x0
9664 + move-object/from16 v0, p0
9666 + move-object/from16 v1, v24
9668 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
9670 + move-result-object v22
9672 + move-object/from16 v0, p0
9674 + move-object/from16 v1, v24
9676 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9678 + move-object/from16 v0, p0
9680 + move-object/from16 v1, v22
9682 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9683 + :try_end_106
9684 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
9685 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
9687 + goto :goto_90
9689 + :catchall_107
9690 + move-exception v2
9692 + if-eqz v16, :cond_10d
9694 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9696 + :cond_10d
9697 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9699 + monitor-enter v4
9701 + :try_start_110
9702 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9704 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9706 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9708 + move-result v5
9710 + add-int/lit8 v5, v5, -0x1
9712 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9714 + move-result-object v5
9716 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9718 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9720 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9722 + move-result v5
9724 + if-nez v5, :cond_133
9726 + if-eqz v3, :cond_133
9728 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9730 + move-result v5
9732 + if-eqz v5, :cond_133
9734 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9736 + :cond_133
9737 + monitor-exit v4
9738 + :try_end_134
9739 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
9741 + throw v2
9743 + :cond_135
9744 + :try_start_135
9745 + move-object/from16 v0, v24
9747 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9748 + :try_end_13a
9749 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
9750 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
9752 + goto/16 :goto_90
9754 + :catchall_13c
9755 + move-exception v2
9757 + :try_start_13d
9758 + monitor-exit v4
9759 + :try_end_13e
9760 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
9762 + throw v2
9764 + :catchall_13f
9765 + move-exception v2
9767 + :try_start_140
9768 + monitor-exit v4
9769 + :try_end_141
9770 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
9772 + throw v2
9774 + :cond_142
9775 + if-eqz v16, :cond_147
9777 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9779 + :cond_147
9780 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9782 + monitor-enter v4
9784 + :try_start_14a
9785 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9787 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9789 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9791 + move-result v2
9793 + add-int/lit8 v2, v2, -0x1
9795 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9797 + move-result-object v2
9799 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9801 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9803 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9805 + move-result v2
9807 + if-nez v2, :cond_16d
9809 + if-eqz v3, :cond_16d
9811 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9813 + move-result v2
9815 + if-eqz v2, :cond_16d
9817 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9819 + :cond_16d
9820 + monitor-exit v4
9822 + goto/16 :goto_e6
9824 + :catchall_170
9825 + move-exception v2
9827 + monitor-exit v4
9828 + :try_end_172
9829 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
9831 + throw v2
9832 +.end method
9834 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
9835 + .registers 27
9837 + monitor-enter p0
9839 + const/16 v18, 0x1
9841 + :try_start_3
9842 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
9844 + move-result-object v17
9846 + if-eqz v17, :cond_f
9848 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->isEmpty()Z
9850 + move-result v3
9852 + if-eqz v3, :cond_1a
9854 + :cond_f
9855 + const-string v3, "PrivacyPersistenceAdapter"
9857 + const-string/jumbo v4, "saveSettings - either package name, UID or both is missing"
9859 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
9860 + :try_end_17
9861 + .catchall {:try_start_3 .. :try_end_17} :catchall_2c2
9863 + const/4 v3, 0x0
9865 + :goto_18
9866 + monitor-exit p0
9868 + return v3
9870 + :cond_1a
9871 + :try_start_1a
9872 + new-instance v23, Landroid/content/ContentValues;
9874 + invoke-direct/range {v23 .. v23}, Landroid/content/ContentValues;-><init>()V
9876 + const-string/jumbo v3, "packageName"
9878 + move-object/from16 v0, v23
9880 + move-object/from16 v1, v17
9882 + invoke-virtual {v0, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9884 + const-string/jumbo v3, "uid"
9886 + const/4 v4, -0x1
9888 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9890 + move-result-object v4
9892 + move-object/from16 v0, v23
9894 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
9896 + const-string v3, "deviceIdSetting"
9898 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
9900 + move-result v4
9902 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9904 + move-result-object v4
9906 + move-object/from16 v0, v23
9908 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9910 + const-string v3, "deviceId"
9912 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
9914 + move-result-object v4
9916 + move-object/from16 v0, v23
9918 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9920 + const-string v3, "line1NumberSetting"
9922 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
9924 + move-result v4
9926 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9928 + move-result-object v4
9930 + move-object/from16 v0, v23
9932 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9934 + const-string v3, "line1Number"
9936 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
9938 + move-result-object v4
9940 + move-object/from16 v0, v23
9942 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9944 + const-string v3, "locationGpsSetting"
9946 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
9948 + move-result v4
9950 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9952 + move-result-object v4
9954 + move-object/from16 v0, v23
9956 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9958 + const-string v3, "locationGpsLat"
9960 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
9962 + move-result-object v4
9964 + move-object/from16 v0, v23
9966 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9968 + const-string v3, "locationGpsLon"
9970 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
9972 + move-result-object v4
9974 + move-object/from16 v0, v23
9976 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9978 + const-string v3, "locationNetworkSetting"
9980 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
9982 + move-result v4
9984 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9986 + move-result-object v4
9988 + move-object/from16 v0, v23
9990 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9992 + const-string v3, "locationNetworkLat"
9994 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
9996 + move-result-object v4
9998 + move-object/from16 v0, v23
10000 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10002 + const-string v3, "locationNetworkLon"
10004 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
10006 + move-result-object v4
10008 + move-object/from16 v0, v23
10010 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10012 + const-string/jumbo v3, "networkInfoSetting"
10014 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
10016 + move-result v4
10018 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10020 + move-result-object v4
10022 + move-object/from16 v0, v23
10024 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10026 + const-string/jumbo v3, "simInfoSetting"
10028 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
10030 + move-result v4
10032 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10034 + move-result-object v4
10036 + move-object/from16 v0, v23
10038 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10040 + const-string/jumbo v3, "simSerialNumberSetting"
10042 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
10044 + move-result v4
10046 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10048 + move-result-object v4
10050 + move-object/from16 v0, v23
10052 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10054 + const-string/jumbo v3, "simSerialNumber"
10056 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
10058 + move-result-object v4
10060 + move-object/from16 v0, v23
10062 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10064 + const-string/jumbo v3, "subscriberIdSetting"
10066 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
10068 + move-result v4
10070 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10072 + move-result-object v4
10074 + move-object/from16 v0, v23
10076 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10078 + const-string/jumbo v3, "subscriberId"
10080 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
10082 + move-result-object v4
10084 + move-object/from16 v0, v23
10086 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10088 + const-string v3, "accountsSetting"
10090 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
10092 + move-result v4
10094 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10096 + move-result-object v4
10098 + move-object/from16 v0, v23
10100 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10102 + const-string v3, "accountsAuthTokensSetting"
10104 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
10106 + move-result v4
10108 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10110 + move-result-object v4
10112 + move-object/from16 v0, v23
10114 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10116 + const-string/jumbo v3, "outgoingCallsSetting"
10118 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
10120 + move-result v4
10122 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10124 + move-result-object v4
10126 + move-object/from16 v0, v23
10128 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10130 + const-string v3, "incomingCallsSetting"
10132 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
10134 + move-result v4
10136 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10138 + move-result-object v4
10140 + move-object/from16 v0, v23
10142 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10144 + const-string v3, "contactsSetting"
10146 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
10148 + move-result v4
10150 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10152 + move-result-object v4
10154 + move-object/from16 v0, v23
10156 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10158 + const-string v3, "calendarSetting"
10160 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
10162 + move-result v4
10164 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10166 + move-result-object v4
10168 + move-object/from16 v0, v23
10170 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10172 + const-string/jumbo v3, "mmsSetting"
10174 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
10176 + move-result v4
10178 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10180 + move-result-object v4
10182 + move-object/from16 v0, v23
10184 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10186 + const-string/jumbo v3, "smsSetting"
10188 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
10190 + move-result v4
10192 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10194 + move-result-object v4
10196 + move-object/from16 v0, v23
10198 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10200 + const-string v3, "callLogSetting"
10202 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
10204 + move-result v4
10206 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10208 + move-result-object v4
10210 + move-object/from16 v0, v23
10212 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10214 + const-string v3, "bookmarksSetting"
10216 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
10218 + move-result v4
10220 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10222 + move-result-object v4
10224 + move-object/from16 v0, v23
10226 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10228 + const-string/jumbo v3, "systemLogsSetting"
10230 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10232 + move-result v4
10234 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10236 + move-result-object v4
10238 + move-object/from16 v0, v23
10240 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10242 + const-string/jumbo v3, "notificationSetting"
10244 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
10246 + move-result v4
10248 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10250 + move-result-object v4
10252 + move-object/from16 v0, v23
10254 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10256 + const-string v3, "intentBootCompletedSetting"
10258 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
10260 + move-result v4
10262 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10264 + move-result-object v4
10266 + move-object/from16 v0, v23
10268 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10270 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10272 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10274 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10276 + move-result v3
10278 + add-int/lit8 v3, v3, 0x1
10280 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10282 + move-result-object v3
10284 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10286 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10288 + move-result-object v2
10290 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
10291 + :try_end_1eb
10292 + .catchall {:try_start_1a .. :try_end_1eb} :catchall_2c2
10294 + const/4 v11, 0x0
10296 + :try_start_1ec
10297 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
10299 + move-result-object v15
10301 + if-eqz v15, :cond_2c8
10303 + const-string/jumbo v3, "settings"
10305 + const-string v4, "_id=?"
10307 + const/4 v5, 0x1
10309 + new-array v5, v5, [Ljava/lang/String;
10311 + const/4 v6, 0x0
10313 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10315 + move-result-object v7
10317 + aput-object v7, v5, v6
10319 + move-object/from16 v0, v23
10321 + invoke-virtual {v2, v3, v0, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
10323 + move-result v3
10325 + const/4 v4, 0x1
10327 + if-ge v3, v4, :cond_249
10329 + new-instance v3, Ljava/lang/Exception;
10331 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10333 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10335 + throw v3
10336 + :try_end_213
10337 + .catchall {:try_start_1ec .. :try_end_213} :catchall_291
10338 + .catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_213} :catch_213
10340 + :catch_213
10341 + move-exception v13
10343 + const/16 v18, 0x0
10345 + :try_start_216
10346 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10348 + if-eqz v11, :cond_21e
10350 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10352 + :cond_21e
10353 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10355 + monitor-enter v4
10356 + :try_end_221
10357 + .catchall {:try_start_216 .. :try_end_221} :catchall_2c2
10359 + :try_start_221
10360 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10362 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10364 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10366 + move-result v3
10368 + add-int/lit8 v3, v3, -0x1
10370 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10372 + move-result-object v3
10374 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10376 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10378 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10380 + move-result v3
10382 + if-nez v3, :cond_244
10384 + if-eqz v2, :cond_244
10386 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10388 + move-result v3
10390 + if-eqz v3, :cond_244
10392 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10394 + :cond_244
10395 + monitor-exit v4
10396 + :try_end_245
10397 + .catchall {:try_start_221 .. :try_end_245} :catchall_4ca
10399 + :goto_245
10400 + move/from16 v3, v18
10402 + goto/16 :goto_18
10404 + :cond_249
10405 + :try_start_249
10406 + const-string v3, "allowed_contacts"
10408 + const-string/jumbo v4, "settings_id=?"
10410 + const/4 v5, 0x1
10412 + new-array v5, v5, [Ljava/lang/String;
10414 + const/4 v6, 0x0
10416 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10418 + move-result-object v7
10420 + aput-object v7, v5, v6
10422 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10424 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10426 + move-result-object v10
10428 + if-eqz v10, :cond_3f2
10430 + new-instance v12, Landroid/content/ContentValues;
10432 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10434 + const/4 v14, 0x0
10436 + :goto_267
10437 + array-length v3, v10
10439 + if-ge v14, v3, :cond_3f2
10441 + const-string/jumbo v3, "settings_id"
10443 + invoke-virtual {v12, v3, v15}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10445 + const-string v3, "contact_id"
10447 + aget v4, v10, v14
10449 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10451 + move-result-object v4
10453 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10455 + const-string v3, "allowed_contacts"
10457 + const/4 v4, 0x0
10459 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10461 + move-result-wide v3
10463 + const-wide/16 v5, -0x1
10465 + cmp-long v3, v3, v5
10467 + if-nez v3, :cond_2c5
10469 + new-instance v3, Ljava/lang/Exception;
10471 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10473 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10475 + throw v3
10476 + :try_end_291
10477 + .catchall {:try_start_249 .. :try_end_291} :catchall_291
10478 + .catch Ljava/lang/Exception; {:try_start_249 .. :try_end_291} :catch_213
10480 + :catchall_291
10481 + move-exception v3
10483 + :try_start_292
10484 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10486 + if-eqz v11, :cond_29a
10488 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10490 + :cond_29a
10491 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10493 + monitor-enter v4
10494 + :try_end_29d
10495 + .catchall {:try_start_292 .. :try_end_29d} :catchall_2c2
10497 + :try_start_29d
10498 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10500 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10502 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10504 + move-result v5
10506 + add-int/lit8 v5, v5, -0x1
10508 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10510 + move-result-object v5
10512 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10514 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10516 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10518 + move-result v5
10520 + if-nez v5, :cond_2c0
10522 + if-eqz v2, :cond_2c0
10524 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10526 + move-result v5
10528 + if-eqz v5, :cond_2c0
10530 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10532 + :cond_2c0
10533 + monitor-exit v4
10534 + :try_end_2c1
10535 + .catchall {:try_start_29d .. :try_end_2c1} :catchall_4cd
10537 + :try_start_2c1
10538 + throw v3
10539 + :try_end_2c2
10540 + .catchall {:try_start_2c1 .. :try_end_2c2} :catchall_2c2
10542 + :catchall_2c2
10543 + move-exception v3
10545 + monitor-exit p0
10547 + throw v3
10549 + :cond_2c5
10550 + add-int/lit8 v14, v14, 0x1
10552 + goto :goto_267
10554 + :cond_2c8
10555 + :try_start_2c8
10556 + const-string/jumbo v3, "settings"
10558 + const/4 v4, 0x1
10560 + new-array v4, v4, [Ljava/lang/String;
10562 + const/4 v5, 0x0
10564 + const-string v6, "_id"
10566 + aput-object v6, v4, v5
10568 + const-string/jumbo v5, "packageName=?"
10570 + const/4 v6, 0x1
10572 + new-array v6, v6, [Ljava/lang/String;
10574 + const/4 v7, 0x0
10576 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10578 + move-result-object v8
10580 + aput-object v8, v6, v7
10582 + const/4 v7, 0x0
10584 + const/4 v8, 0x0
10586 + const/4 v9, 0x0
10588 + invoke-virtual/range {v2 .. v9}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
10590 + move-result-object v11
10592 + if-eqz v11, :cond_3e7
10594 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10596 + move-result v3
10598 + const/4 v4, 0x1
10600 + if-ne v3, v4, :cond_36e
10602 + const-string/jumbo v3, "settings"
10604 + const-string/jumbo v4, "packageName=?"
10606 + const/4 v5, 0x1
10608 + new-array v5, v5, [Ljava/lang/String;
10610 + const/4 v6, 0x0
10612 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10614 + move-result-object v7
10616 + aput-object v7, v5, v6
10618 + move-object/from16 v0, v23
10620 + invoke-virtual {v2, v3, v0, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
10622 + move-result v3
10624 + const/4 v4, 0x1
10626 + if-ge v3, v4, :cond_312
10628 + new-instance v3, Ljava/lang/Exception;
10630 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10632 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10634 + throw v3
10636 + :cond_312
10637 + invoke-interface {v11}, Landroid/database/Cursor;->moveToFirst()Z
10639 + move-result v3
10641 + if-eqz v3, :cond_3f2
10643 + const/4 v3, 0x0
10645 + invoke-interface {v11, v3}, Landroid/database/Cursor;->getInt(I)I
10647 + move-result v3
10649 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10651 + move-result-object v16
10653 + const-string v3, "allowed_contacts"
10655 + const-string/jumbo v4, "settings_id=?"
10657 + const/4 v5, 0x1
10659 + new-array v5, v5, [Ljava/lang/String;
10661 + const/4 v6, 0x0
10663 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10665 + move-result-object v7
10667 + aput-object v7, v5, v6
10669 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10671 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10673 + move-result-object v10
10675 + if-eqz v10, :cond_3f2
10677 + new-instance v12, Landroid/content/ContentValues;
10679 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10681 + const/4 v14, 0x0
10683 + :goto_33f
10684 + array-length v3, v10
10686 + if-ge v14, v3, :cond_3f2
10688 + const-string/jumbo v3, "settings_id"
10690 + move-object/from16 v0, v16
10692 + invoke-virtual {v12, v3, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10694 + const-string v3, "contact_id"
10696 + aget v4, v10, v14
10698 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10700 + move-result-object v4
10702 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10704 + const-string v3, "allowed_contacts"
10706 + const/4 v4, 0x0
10708 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10710 + move-result-wide v3
10712 + const-wide/16 v5, -0x1
10714 + cmp-long v3, v3, v5
10716 + if-nez v3, :cond_36b
10718 + new-instance v3, Ljava/lang/Exception;
10720 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10722 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10724 + throw v3
10726 + :cond_36b
10727 + add-int/lit8 v14, v14, 0x1
10729 + goto :goto_33f
10731 + :cond_36e
10732 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10734 + move-result v3
10736 + if-nez v3, :cond_3dc
10738 + const-string/jumbo v3, "settings"
10740 + const/4 v4, 0x0
10742 + move-object/from16 v0, v23
10744 + invoke-virtual {v2, v3, v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10746 + move-result-wide v19
10748 + const-wide/16 v3, -0x1
10750 + cmp-long v3, v19, v3
10752 + if-nez v3, :cond_38d
10754 + new-instance v3, Ljava/lang/Exception;
10756 + const-string/jumbo v4, "saveSettings - failed to insert new record into DB"
10758 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10760 + throw v3
10762 + :cond_38d
10763 + const-string v3, "allowed_contacts"
10765 + const-string/jumbo v4, "settings_id=?"
10767 + const/4 v5, 0x1
10769 + new-array v5, v5, [Ljava/lang/String;
10771 + const/4 v6, 0x0
10773 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
10775 + move-result-object v7
10777 + aput-object v7, v5, v6
10779 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10781 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10783 + move-result-object v10
10785 + if-eqz v10, :cond_3f2
10787 + new-instance v12, Landroid/content/ContentValues;
10789 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10791 + const/4 v14, 0x0
10793 + :goto_3ab
10794 + array-length v3, v10
10796 + if-ge v14, v3, :cond_3f2
10798 + const-string/jumbo v3, "settings_id"
10800 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
10802 + move-result-object v4
10804 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
10806 + const-string v3, "contact_id"
10808 + aget v4, v10, v14
10810 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10812 + move-result-object v4
10814 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10816 + const-string v3, "allowed_contacts"
10818 + const/4 v4, 0x0
10820 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10822 + move-result-wide v3
10824 + const-wide/16 v5, -0x1
10826 + cmp-long v3, v3, v5
10828 + if-nez v3, :cond_3d9
10830 + new-instance v3, Ljava/lang/Exception;
10832 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10834 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10836 + throw v3
10838 + :cond_3d9
10839 + add-int/lit8 v14, v14, 0x1
10841 + goto :goto_3ab
10843 + :cond_3dc
10844 + const/16 v18, 0x0
10846 + new-instance v3, Ljava/lang/Exception;
10848 + const-string/jumbo v4, "saveSettings - duplicate entries in the privacy.db"
10850 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10852 + throw v3
10854 + :cond_3e7
10855 + const/16 v18, 0x0
10857 + new-instance v3, Ljava/lang/Exception;
10859 + const-string/jumbo v4, "saveSettings - cursor is null, database access failed"
10861 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10863 + throw v3
10865 + :cond_3f2
10866 + new-instance v21, Ljava/io/File;
10868 + new-instance v3, Ljava/lang/StringBuilder;
10870 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10872 + const-string v4, "/data/system/privacy/"
10874 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10876 + move-result-object v3
10878 + move-object/from16 v0, v17
10880 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10882 + move-result-object v3
10884 + const-string v4, "/"
10886 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10888 + move-result-object v3
10890 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10892 + move-result-object v3
10894 + move-object/from16 v0, v21
10896 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10898 + new-instance v22, Ljava/io/File;
10900 + new-instance v3, Ljava/lang/StringBuilder;
10902 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10904 + const-string v4, "/data/system/privacy/"
10906 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10908 + move-result-object v3
10910 + move-object/from16 v0, v17
10912 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10914 + move-result-object v3
10916 + const-string v4, "/"
10918 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10920 + move-result-object v3
10922 + const-string v4, "/systemLogsSetting"
10924 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10926 + move-result-object v3
10928 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10930 + move-result-object v3
10932 + move-object/from16 v0, v22
10934 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10935 + :try_end_43c
10936 + .catchall {:try_start_2c8 .. :try_end_43c} :catchall_291
10937 + .catch Ljava/lang/Exception; {:try_start_2c8 .. :try_end_43c} :catch_213
10939 + :try_start_43c
10940 + invoke-virtual/range {v21 .. v21}, Ljava/io/File;->mkdirs()Z
10942 + const/4 v3, 0x1
10944 + const/4 v4, 0x0
10946 + move-object/from16 v0, v21
10948 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10950 + const/4 v3, 0x1
10952 + const/4 v4, 0x0
10954 + move-object/from16 v0, v21
10956 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setExecutable(ZZ)Z
10958 + invoke-virtual/range {v22 .. v22}, Ljava/io/File;->createNewFile()Z
10960 + const/4 v3, 0x1
10962 + const/4 v4, 0x0
10964 + move-object/from16 v0, v22
10966 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10968 + new-instance v24, Ljava/io/OutputStreamWriter;
10970 + new-instance v3, Ljava/io/FileOutputStream;
10972 + move-object/from16 v0, v22
10974 + invoke-direct {v3, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
10976 + move-object/from16 v0, v24
10978 + invoke-direct {v0, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
10980 + new-instance v3, Ljava/lang/StringBuilder;
10982 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10984 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10986 + move-result v4
10988 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
10990 + move-result-object v3
10992 + const-string v4, ""
10994 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10996 + move-result-object v3
10998 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11000 + move-result-object v3
11002 + move-object/from16 v0, v24
11004 + invoke-virtual {v0, v3}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
11006 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->flush()V
11008 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->close()V
11009 + :try_end_487
11010 + .catchall {:try_start_43c .. :try_end_487} :catchall_291
11011 + .catch Ljava/io/IOException; {:try_start_43c .. :try_end_487} :catch_4be
11012 + .catch Ljava/lang/Exception; {:try_start_43c .. :try_end_487} :catch_213
11014 + :try_start_487
11015 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11016 + :try_end_48a
11017 + .catchall {:try_start_487 .. :try_end_48a} :catchall_291
11018 + .catch Ljava/lang/Exception; {:try_start_487 .. :try_end_48a} :catch_213
11020 + :try_start_48a
11021 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11023 + if-eqz v11, :cond_492
11025 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
11027 + :cond_492
11028 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11030 + monitor-enter v4
11031 + :try_end_495
11032 + .catchall {:try_start_48a .. :try_end_495} :catchall_2c2
11034 + :try_start_495
11035 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11037 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11039 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11041 + move-result v3
11043 + add-int/lit8 v3, v3, -0x1
11045 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11047 + move-result-object v3
11049 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11051 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11053 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11055 + move-result v3
11057 + if-nez v3, :cond_4b8
11059 + if-eqz v2, :cond_4b8
11061 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11063 + move-result v3
11065 + if-eqz v3, :cond_4b8
11067 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11069 + :cond_4b8
11070 + monitor-exit v4
11072 + goto/16 :goto_245
11074 + :catchall_4bb
11075 + move-exception v3
11077 + monitor-exit v4
11078 + :try_end_4bd
11079 + .catchall {:try_start_495 .. :try_end_4bd} :catchall_4bb
11081 + :try_start_4bd
11082 + throw v3
11083 + :try_end_4be
11084 + .catchall {:try_start_4bd .. :try_end_4be} :catchall_2c2
11086 + :catch_4be
11087 + move-exception v13
11089 + const/16 v18, 0x0
11091 + :try_start_4c1
11092 + new-instance v3, Ljava/lang/Exception;
11094 + const-string/jumbo v4, "saveSettings - could not write settings to file"
11096 + invoke-direct {v3, v4, v13}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
11098 + throw v3
11099 + :try_end_4ca
11100 + .catchall {:try_start_4c1 .. :try_end_4ca} :catchall_291
11101 + .catch Ljava/lang/Exception; {:try_start_4c1 .. :try_end_4ca} :catch_213
11103 + :catchall_4ca
11104 + move-exception v3
11106 + :try_start_4cb
11107 + monitor-exit v4
11108 + :try_end_4cc
11109 + .catchall {:try_start_4cb .. :try_end_4cc} :catchall_4ca
11111 + :try_start_4cc
11112 + throw v3
11113 + :try_end_4cd
11114 + .catchall {:try_start_4cc .. :try_end_4cd} :catchall_2c2
11116 + :catchall_4cd
11117 + move-exception v3
11119 + :try_start_4ce
11120 + monitor-exit v4
11121 + :try_end_4cf
11122 + .catchall {:try_start_4ce .. :try_end_4cf} :catchall_4cd
11124 + :try_start_4cf
11125 + throw v3
11126 + :try_end_4d0
11127 + .catchall {:try_start_4cf .. :try_end_4d0} :catchall_2c2
11128 +.end method
11130 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
11131 + .registers 10
11133 + monitor-enter p0
11135 + :try_start_1
11136 + const-string v3, "PrivacyPersistenceAdapter"
11138 + new-instance v4, Ljava/lang/StringBuilder;
11140 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11142 + const-string/jumbo v5, "setValue - name "
11144 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11146 + move-result-object v4
11148 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11150 + move-result-object v4
11152 + const-string v5, " value "
11154 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11156 + move-result-object v4
11158 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11160 + move-result-object v4
11162 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11164 + move-result-object v4
11166 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11168 + new-instance v2, Landroid/content/ContentValues;
11170 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
11172 + const-string/jumbo v3, "name"
11174 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11176 + const-string/jumbo v3, "value"
11178 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11180 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11182 + move-result-object v0
11184 + const-string/jumbo v3, "map"
11186 + const/4 v4, 0x0
11188 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11190 + move-result-wide v3
11192 + const-wide/16 v5, -0x1
11194 + cmp-long v3, v3, v5
11196 + if-eqz v3, :cond_5d
11198 + const/4 v1, 0x1
11200 + :goto_48
11201 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11203 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11205 + move-result v3
11207 + if-nez v3, :cond_5b
11209 + if-eqz v0, :cond_5b
11211 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11213 + move-result v3
11215 + if-eqz v3, :cond_5b
11217 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11218 + :try_end_5b
11219 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
11221 + :cond_5b
11222 + monitor-exit p0
11224 + return v1
11226 + :cond_5d
11227 + const/4 v1, 0x0
11229 + goto :goto_48
11231 + :catchall_5f
11232 + move-exception v3
11234 + monitor-exit p0
11236 + throw v3
11237 +.end method
11238 diff -Npru stock-framework/smali/android/privacy/PrivacySettings$1.smali pdroid-framework/smali/android/privacy/PrivacySettings$1.smali
11239 --- stock-framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 18:00:00.000000000 -0600
11240 +++ pdroid-framework/smali/android/privacy/PrivacySettings$1.smali 2012-05-08 11:54:53.298752007 -0500
11241 @@ -0,0 +1,77 @@
11242 +.class final Landroid/privacy/PrivacySettings$1;
11243 +.super Ljava/lang/Object;
11244 +.source "PrivacySettings.java"
11246 +# interfaces
11247 +.implements Landroid/os/Parcelable$Creator;
11250 +# annotations
11251 +.annotation system Ldalvik/annotation/EnclosingClass;
11252 + value = Landroid/privacy/PrivacySettings;
11253 +.end annotation
11255 +.annotation system Ldalvik/annotation/InnerClass;
11256 + accessFlags = 0x8
11257 + name = null
11258 +.end annotation
11260 +.annotation system Ldalvik/annotation/Signature;
11261 + value = {
11262 + "Ljava/lang/Object;",
11263 + "Landroid/os/Parcelable$Creator",
11264 + "<",
11265 + "Landroid/privacy/PrivacySettings;",
11266 + ">;"
11268 +.end annotation
11271 +# direct methods
11272 +.method constructor <init>()V
11273 + .registers 1
11275 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11277 + return-void
11278 +.end method
11281 +# virtual methods
11282 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11283 + .registers 3
11285 + new-instance v0, Landroid/privacy/PrivacySettings;
11287 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
11289 + return-object v0
11290 +.end method
11292 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
11293 + .registers 3
11295 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11297 + move-result-object v0
11299 + return-object v0
11300 +.end method
11302 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
11303 + .registers 3
11305 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
11307 + return-object v0
11308 +.end method
11310 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
11311 + .registers 3
11313 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
11315 + move-result-object v0
11317 + return-object v0
11318 +.end method
11319 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali
11320 --- stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 18:00:00.000000000 -0600
11321 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-05-08 11:54:53.306752047 -0500
11322 @@ -0,0 +1,535 @@
11323 +.class public Landroid/privacy/PrivacySettingsManagerService;
11324 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
11325 +.source "PrivacySettingsManagerService.java"
11328 +# static fields
11329 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
11331 +.field private static final VERSION:D = 1.32
11333 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
11335 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
11338 +# instance fields
11339 +.field private bootCompleted:Z
11341 +.field private context:Landroid/content/Context;
11343 +.field private enabled:Z
11345 +.field private notificationsEnabled:Z
11347 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11350 +# direct methods
11351 +.method public constructor <init>(Landroid/content/Context;)V
11352 + .registers 5
11354 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
11356 + const-string v0, "PrivacySettingsManagerService"
11358 + new-instance v1, Ljava/lang/StringBuilder;
11360 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11362 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
11364 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11366 + move-result-object v1
11368 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11370 + move-result-object v2
11372 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11374 + move-result-object v1
11376 + const-string v2, " UID: "
11378 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11380 + move-result-object v1
11382 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11384 + move-result v2
11386 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11388 + move-result-object v1
11390 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11392 + move-result-object v1
11394 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11396 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11398 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
11400 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
11402 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11404 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11406 + const-string v1, "/data/system/privacy"
11408 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11410 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11412 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11414 + const-string v1, "enabled"
11416 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11418 + move-result-object v0
11420 + const-string v1, "1"
11422 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11424 + move-result v0
11426 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11428 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11430 + const-string/jumbo v1, "notifications_enabled"
11432 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11434 + move-result-object v0
11436 + const-string v1, "1"
11438 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11440 + move-result v0
11442 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11444 + const/4 v0, 0x0
11446 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11448 + return-void
11449 +.end method
11452 +# virtual methods
11453 +.method public addObserver(Ljava/lang/String;)V
11454 + .registers 5
11456 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11458 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11460 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11462 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11464 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11466 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11468 + return-void
11469 +.end method
11471 +.method public deleteSettings(Ljava/lang/String;)Z
11472 + .registers 8
11474 + const/4 v5, 0x1
11476 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11478 + move-result v2
11480 + const/16 v3, 0x3e8
11482 + if-eq v2, v3, :cond_12
11484 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11486 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
11488 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
11490 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11492 + :cond_12
11493 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11495 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
11497 + move-result v1
11499 + new-instance v2, Ljava/lang/StringBuilder;
11501 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11503 + const-string v3, "/data/system/privacy/"
11505 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11507 + move-result-object v2
11509 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11511 + move-result-object v2
11513 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11515 + move-result-object v0
11517 + new-instance v2, Ljava/io/File;
11519 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11521 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
11523 + move-result v2
11525 + if-eqz v2, :cond_3e
11527 + if-ne v1, v5, :cond_3e
11529 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11531 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11533 + :cond_3d
11534 + :goto_3d
11535 + return v1
11537 + :cond_3e
11538 + if-ne v1, v5, :cond_3d
11540 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11542 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
11544 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
11546 + goto :goto_3d
11547 +.end method
11549 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11550 + .registers 4
11552 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11554 + if-nez v0, :cond_12
11556 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11558 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11560 + move-result-object v0
11562 + const-string v1, "com.privacy.pdroid"
11564 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11566 + move-result v0
11568 + if-eqz v0, :cond_1a
11570 + :cond_12
11571 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11573 + const/4 v1, 0x0
11575 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
11577 + move-result-object v0
11579 + :goto_19
11580 + return-object v0
11582 + :cond_1a
11583 + const/4 v0, 0x0
11585 + goto :goto_19
11586 +.end method
11588 +.method public getVersion()D
11589 + .registers 3
11591 + const-wide v0, 0x3ff51eb851eb851fL
11593 + return-wide v0
11594 +.end method
11596 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11597 + .registers 8
11599 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11601 + if-eqz v1, :cond_34
11603 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11605 + if-eqz v1, :cond_34
11607 + new-instance v0, Landroid/content/Intent;
11609 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
11611 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11613 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
11615 + const-string/jumbo v1, "packageName"
11617 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11619 + const-string/jumbo v1, "uid"
11621 + const/4 v2, -0x1
11623 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
11625 + const-string v1, "accessMode"
11627 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
11629 + const-string v1, "dataType"
11631 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11633 + const-string/jumbo v1, "output"
11635 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11637 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11639 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
11641 + :cond_34
11642 + return-void
11643 +.end method
11645 +.method public purgeSettings()Z
11646 + .registers 2
11648 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11650 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11652 + move-result v0
11654 + return v0
11655 +.end method
11657 +.method public registerObservers()V
11658 + .registers 4
11660 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11662 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11664 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11666 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11668 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11670 + const-string v1, "/data/system/privacy"
11672 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11674 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11676 + return-void
11677 +.end method
11679 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
11680 + .registers 6
11682 + const-string v1, "PrivacySettingsManagerService"
11684 + new-instance v2, Ljava/lang/StringBuilder;
11686 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11688 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
11690 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11692 + move-result-object v2
11694 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11696 + move-result v3
11698 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11700 + move-result-object v2
11702 + const-string v3, ") has sufficient permissions"
11704 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11706 + move-result-object v2
11708 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11710 + move-result-object v2
11712 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11714 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11716 + move-result v1
11718 + const/16 v2, 0x3e8
11720 + if-eq v1, v2, :cond_34
11722 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11724 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
11726 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
11728 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11730 + :cond_34
11731 + const-string v1, "PrivacySettingsManagerService"
11733 + new-instance v2, Ljava/lang/StringBuilder;
11735 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11737 + const-string/jumbo v3, "saveSettings - "
11739 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11741 + move-result-object v2
11743 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11745 + move-result-object v2
11747 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11749 + move-result-object v2
11751 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11753 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11755 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
11757 + move-result v0
11759 + const/4 v1, 0x1
11761 + if-ne v0, v1, :cond_5f
11763 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11765 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
11767 + move-result-object v2
11769 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11771 + :cond_5f
11772 + return v0
11773 +.end method
11775 +.method public setBootCompleted()V
11776 + .registers 2
11778 + const/4 v0, 0x1
11780 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11782 + return-void
11783 +.end method
11785 +.method public setEnabled(Z)Z
11786 + .registers 6
11788 + const/4 v1, 0x1
11790 + if-eqz p1, :cond_12
11792 + const-string v0, "1"
11794 + :goto_5
11795 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11797 + const-string v3, "enabled"
11799 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11801 + move-result v2
11803 + if-eqz v2, :cond_15
11805 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11807 + :goto_11
11808 + return v1
11810 + :cond_12
11811 + const-string v0, "0"
11813 + goto :goto_5
11815 + :cond_15
11816 + const/4 v1, 0x0
11818 + goto :goto_11
11819 +.end method
11821 +.method public setNotificationsEnabled(Z)Z
11822 + .registers 6
11824 + const/4 v1, 0x1
11826 + if-eqz p1, :cond_15
11828 + const-string v0, "1"
11830 + :goto_5
11831 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11833 + const-string/jumbo v3, "notifications_enabled"
11835 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11837 + move-result v2
11839 + if-eqz v2, :cond_18
11841 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11843 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11845 + :goto_14
11846 + return v1
11848 + :cond_15
11849 + const-string v0, "0"
11851 + goto :goto_5
11853 + :cond_18
11854 + const/4 v1, 0x0
11856 + goto :goto_14
11857 +.end method
11858 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManager.smali pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali
11859 --- stock-framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
11860 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali 2012-05-08 11:54:53.302752023 -0500
11861 @@ -0,0 +1,531 @@
11862 +.class public Landroid/privacy/PrivacySettingsManager;
11863 +.super Ljava/lang/Object;
11864 +.source "PrivacySettingsManager.java"
11867 +# static fields
11868 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11870 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
11873 +# instance fields
11874 +.field private service:Landroid/privacy/IPrivacySettingsManager;
11877 +# direct methods
11878 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
11879 + .registers 3
11881 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11883 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11885 + return-void
11886 +.end method
11889 +# virtual methods
11890 +.method public addObserver(Ljava/lang/String;)V
11891 + .registers 5
11893 + :try_start_0
11894 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11896 + if-eqz v1, :cond_a
11898 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11900 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
11902 + :goto_9
11903 + return-void
11905 + :cond_a
11906 + const-string v1, "PrivacySettingsManager"
11908 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
11910 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11911 + :try_end_11
11912 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
11914 + goto :goto_9
11916 + :catch_12
11917 + move-exception v0
11919 + const-string v1, "PrivacySettingsManager"
11921 + const-string v2, "RemoteException in addObserver: "
11923 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11925 + goto :goto_9
11926 +.end method
11928 +.method public deleteSettings(Ljava/lang/String;)Z
11929 + .registers 3
11931 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11933 + move-result v0
11935 + return v0
11936 +.end method
11938 +.method public deleteSettings(Ljava/lang/String;I)Z
11939 + .registers 7
11941 + const/4 v1, 0x0
11943 + :try_start_1
11944 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11946 + if-eqz v2, :cond_c
11948 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11950 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11952 + move-result v1
11954 + :goto_b
11955 + return v1
11957 + :cond_c
11958 + const-string v2, "PrivacySettingsManager"
11960 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
11962 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11963 + :try_end_13
11964 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11966 + goto :goto_b
11968 + :catch_14
11969 + move-exception v0
11971 + const-string v2, "PrivacySettingsManager"
11973 + const-string v3, "RemoteException in deleteSettings: "
11975 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11977 + goto :goto_b
11978 +.end method
11980 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11981 + .registers 6
11983 + const/4 v1, 0x0
11985 + :try_start_1
11986 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11988 + if-eqz v2, :cond_c
11990 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11992 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11994 + move-result-object v1
11996 + :goto_b
11997 + return-object v1
11999 + :cond_c
12000 + const-string v2, "PrivacySettingsManager"
12002 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
12004 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12005 + :try_end_13
12006 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
12008 + goto :goto_b
12010 + :catch_14
12011 + move-exception v0
12013 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
12015 + goto :goto_b
12016 +.end method
12018 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
12019 + .registers 4
12021 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12023 + move-result-object v0
12025 + return-object v0
12026 +.end method
12028 +.method public getVersion()D
12029 + .registers 4
12031 + :try_start_0
12032 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12034 + if-eqz v1, :cond_b
12036 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12038 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
12040 + move-result-wide v1
12042 + :goto_a
12043 + return-wide v1
12045 + :cond_b
12046 + const-string v1, "PrivacySettingsManager"
12048 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
12050 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12051 + :try_end_12
12052 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
12054 + :goto_12
12055 + const-wide/16 v1, 0x0
12057 + goto :goto_a
12059 + :catch_15
12060 + move-exception v0
12062 + const-string v1, "PrivacySettingsManager"
12064 + const-string v2, "RemoteException in getVersion: "
12066 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12068 + goto :goto_12
12069 +.end method
12071 +.method public isServiceAvailable()Z
12072 + .registers 2
12074 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12076 + if-eqz v0, :cond_6
12078 + const/4 v0, 0x1
12080 + :goto_5
12081 + return v0
12083 + :cond_6
12084 + const/4 v0, 0x0
12086 + goto :goto_5
12087 +.end method
12089 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12090 + .registers 9
12092 + :try_start_0
12093 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12095 + if-eqz v1, :cond_a
12097 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12099 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
12101 + :goto_9
12102 + return-void
12104 + :cond_a
12105 + const-string v1, "PrivacySettingsManager"
12107 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12109 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12110 + :try_end_11
12111 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12113 + goto :goto_9
12115 + :catch_12
12116 + move-exception v0
12118 + const-string v1, "PrivacySettingsManager"
12120 + const-string v2, "RemoteException in notification: "
12122 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12124 + goto :goto_9
12125 +.end method
12127 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12128 + .registers 13
12130 + move-object v0, p0
12132 + move-object v1, p1
12134 + move v2, p3
12136 + move-object v3, p4
12138 + move-object v4, p5
12140 + move-object v5, p6
12142 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12144 + return-void
12145 +.end method
12147 +.method public purgeSettings()Z
12148 + .registers 4
12150 + :try_start_0
12151 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12153 + if-eqz v1, :cond_b
12155 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12157 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
12159 + move-result v1
12161 + :goto_a
12162 + return v1
12164 + :cond_b
12165 + const-string v1, "PrivacySettingsManager"
12167 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12169 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12170 + :try_end_12
12171 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
12173 + :goto_12
12174 + const/4 v1, 0x0
12176 + goto :goto_a
12178 + :catch_14
12179 + move-exception v0
12181 + const-string v1, "PrivacySettingsManager"
12183 + const-string v2, "RemoteException in purgeSettings: "
12185 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12187 + goto :goto_12
12188 +.end method
12190 +.method public registerObservers()V
12191 + .registers 4
12193 + :try_start_0
12194 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12196 + if-eqz v1, :cond_a
12198 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12200 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
12202 + :goto_9
12203 + return-void
12205 + :cond_a
12206 + const-string v1, "PrivacySettingsManager"
12208 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12210 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12211 + :try_end_11
12212 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12214 + goto :goto_9
12216 + :catch_12
12217 + move-exception v0
12219 + const-string v1, "PrivacySettingsManager"
12221 + const-string v2, "RemoteException in registerObservers: "
12223 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12225 + goto :goto_9
12226 +.end method
12228 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
12229 + .registers 6
12231 + const/4 v1, 0x0
12233 + :try_start_1
12234 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12236 + if-eqz v2, :cond_c
12238 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12240 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12242 + move-result v1
12244 + :goto_b
12245 + return v1
12247 + :cond_c
12248 + const-string v2, "PrivacySettingsManager"
12250 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
12252 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12253 + :try_end_14
12254 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
12256 + goto :goto_b
12258 + :catch_15
12259 + move-exception v0
12261 + const-string v2, "PrivacySettingsManager"
12263 + const-string v3, "RemoteException in saveSettings: "
12265 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12267 + goto :goto_b
12268 +.end method
12270 +.method public setBootCompleted()V
12271 + .registers 4
12273 + :try_start_0
12274 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12276 + if-eqz v1, :cond_a
12278 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12280 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
12282 + :goto_9
12283 + return-void
12285 + :cond_a
12286 + const-string v1, "PrivacySettingsManager"
12288 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
12290 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12291 + :try_end_12
12292 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
12294 + goto :goto_9
12296 + :catch_13
12297 + move-exception v0
12299 + const-string v1, "PrivacySettingsManager"
12301 + const-string v2, "RemoteException in setBootCompleted: "
12303 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12305 + goto :goto_9
12306 +.end method
12308 +.method public setEnabled(Z)Z
12309 + .registers 5
12311 + :try_start_0
12312 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12314 + if-eqz v1, :cond_b
12316 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12318 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
12320 + move-result v1
12322 + :goto_a
12323 + return v1
12325 + :cond_b
12326 + const-string v1, "PrivacySettingsManager"
12328 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
12330 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12331 + :try_end_13
12332 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12334 + :goto_13
12335 + const/4 v1, 0x0
12337 + goto :goto_a
12339 + :catch_15
12340 + move-exception v0
12342 + const-string v1, "PrivacySettingsManager"
12344 + const-string v2, "RemoteException in setEnabled: "
12346 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12348 + goto :goto_13
12349 +.end method
12351 +.method public setNotificationsEnabled(Z)Z
12352 + .registers 5
12354 + :try_start_0
12355 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12357 + if-eqz v1, :cond_b
12359 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12361 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
12363 + move-result v1
12365 + :goto_a
12366 + return v1
12368 + :cond_b
12369 + const-string v1, "PrivacySettingsManager"
12371 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
12373 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12374 + :try_end_13
12375 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12377 + :goto_13
12378 + const/4 v1, 0x0
12380 + goto :goto_a
12382 + :catch_15
12383 + move-exception v0
12385 + const-string v1, "PrivacySettingsManager"
12387 + const-string v2, "RemoteException in setNotificationsEnabled: "
12389 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12391 + goto :goto_13
12392 +.end method
12393 diff -Npru stock-framework/smali/android/privacy/PrivacySettings.smali pdroid-framework/smali/android/privacy/PrivacySettings.smali
12394 --- stock-framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 18:00:00.000000000 -0600
12395 +++ pdroid-framework/smali/android/privacy/PrivacySettings.smali 2012-05-08 11:54:53.302752023 -0500
12396 @@ -0,0 +1,2109 @@
12397 +.class public final Landroid/privacy/PrivacySettings;
12398 +.super Ljava/lang/Object;
12399 +.source "PrivacySettings.java"
12401 +# interfaces
12402 +.implements Landroid/os/Parcelable;
12405 +# static fields
12406 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
12407 + .annotation system Ldalvik/annotation/Signature;
12408 + value = {
12409 + "Landroid/os/Parcelable$Creator",
12410 + "<",
12411 + "Landroid/privacy/PrivacySettings;",
12412 + ">;"
12414 + .end annotation
12415 +.end field
12417 +.field public static final CUSTOM:B = 0x2t
12419 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
12421 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
12423 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
12425 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
12427 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
12429 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
12431 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
12433 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
12435 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
12437 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
12439 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
12441 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
12443 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
12445 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
12447 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
12449 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
12451 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
12453 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
12455 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
12457 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
12459 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
12461 +.field public static final EMPTY:B = 0x1t
12463 +.field public static final RANDOM:B = 0x3t
12465 +.field public static final REAL:B = 0x0t
12467 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
12469 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
12472 +# instance fields
12473 +.field private final _id:Ljava/lang/Integer;
12475 +.field private accountsAuthTokensSetting:B
12477 +.field private accountsSetting:B
12479 +.field private allowedContacts:[I
12481 +.field private bookmarksSetting:B
12483 +.field private calendarSetting:B
12485 +.field private callLogSetting:B
12487 +.field private contactsSetting:B
12489 +.field private deviceId:Ljava/lang/String;
12491 +.field private deviceIdSetting:B
12493 +.field private incomingCallsSetting:B
12495 +.field private intentBootCompletedSetting:B
12497 +.field private line1Number:Ljava/lang/String;
12499 +.field private line1NumberSetting:B
12501 +.field private locationGpsLat:Ljava/lang/String;
12503 +.field private locationGpsLon:Ljava/lang/String;
12505 +.field private locationGpsSetting:B
12507 +.field private locationNetworkLat:Ljava/lang/String;
12509 +.field private locationNetworkLon:Ljava/lang/String;
12511 +.field private locationNetworkSetting:B
12513 +.field private mmsSetting:B
12515 +.field private networkInfoSetting:B
12517 +.field private notificationSetting:B
12519 +.field private outgoingCallsSetting:B
12521 +.field private packageName:Ljava/lang/String;
12523 +.field private simInfoSetting:B
12525 +.field private simSerialNumber:Ljava/lang/String;
12527 +.field private simSerialNumberSetting:B
12529 +.field private smsSetting:B
12531 +.field private subscriberId:Ljava/lang/String;
12533 +.field private subscriberIdSetting:B
12535 +.field private systemLogsSetting:B
12537 +.field private uid:I
12540 +# direct methods
12541 +.method static constructor <clinit>()V
12542 + .registers 1
12544 + new-instance v0, Landroid/privacy/PrivacySettings$1;
12546 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
12548 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
12550 + return-void
12551 +.end method
12553 +.method public constructor <init>(Landroid/os/Parcel;)V
12554 + .registers 4
12556 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12558 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12560 + move-result v0
12562 + const/4 v1, -0x1
12564 + if-ne v0, v1, :cond_ce
12566 + const/4 v1, 0x0
12568 + :goto_b
12569 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12571 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12573 + move-result-object v1
12575 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12577 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12579 + move-result v1
12581 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
12583 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12585 + move-result v1
12587 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12589 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12591 + move-result-object v1
12593 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12595 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12597 + move-result v1
12599 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12601 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12603 + move-result-object v1
12605 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12607 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12609 + move-result v1
12611 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12613 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12615 + move-result-object v1
12617 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12619 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12621 + move-result-object v1
12623 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12625 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12627 + move-result v1
12629 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12631 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12633 + move-result-object v1
12635 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12637 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12639 + move-result-object v1
12641 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12643 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12645 + move-result v1
12647 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12649 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12651 + move-result v1
12653 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12655 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12657 + move-result v1
12659 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12661 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12663 + move-result-object v1
12665 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12667 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12669 + move-result v1
12671 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12673 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12675 + move-result-object v1
12677 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12679 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12681 + move-result v1
12683 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12685 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12687 + move-result v1
12689 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12691 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12693 + move-result v1
12695 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12697 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12699 + move-result v1
12701 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12703 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12705 + move-result v1
12707 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12709 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12711 + move-result v1
12713 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12715 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12717 + move-result v1
12719 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12721 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12723 + move-result v1
12725 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12727 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12729 + move-result v1
12731 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12733 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12735 + move-result v1
12737 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12739 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12741 + move-result v1
12743 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12745 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12747 + move-result v1
12749 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12751 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12753 + move-result v1
12755 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12757 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
12759 + move-result-object v1
12761 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12763 + return-void
12765 + :cond_ce
12766 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12768 + move-result-object v1
12770 + goto/16 :goto_b
12771 +.end method
12773 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
12774 + .registers 6
12776 + const/4 v1, 0x0
12778 + const/4 v0, 0x0
12780 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12782 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12784 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12786 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12788 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12790 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12792 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12794 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12796 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12798 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12800 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12802 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12804 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12806 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12808 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12810 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12812 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12814 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12816 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12818 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12820 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12822 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12824 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12826 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12828 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12830 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12832 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12834 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12836 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12838 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12840 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12842 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12844 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12846 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12848 + return-void
12849 +.end method
12851 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;IBLjava/lang/String;BLjava/lang/String;BLjava/lang/String;Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;BBBLjava/lang/String;BLjava/lang/String;BBBBBBBBBBBBBBBB[I)V
12852 + .registers 38
12854 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12856 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12858 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12860 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12862 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12864 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12866 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12868 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12870 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12872 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12874 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12876 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12878 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12880 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12882 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12884 + move/from16 v0, p15
12886 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12888 + move/from16 v0, p16
12890 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12892 + move-object/from16 v0, p17
12894 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12896 + move/from16 v0, p18
12898 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12900 + move-object/from16 v0, p19
12902 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12904 + move/from16 v0, p20
12906 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12908 + move/from16 v0, p21
12910 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12912 + move/from16 v0, p22
12914 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12916 + move/from16 v0, p23
12918 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12920 + move/from16 v0, p24
12922 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12924 + move/from16 v0, p25
12926 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12928 + move/from16 v0, p26
12930 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12932 + move/from16 v0, p27
12934 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12936 + move/from16 v0, p28
12938 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12940 + move/from16 v0, p29
12942 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12944 + move/from16 v0, p30
12946 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12948 + move/from16 v0, p34
12950 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12952 + move/from16 v0, p35
12954 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12956 + move-object/from16 v0, p36
12958 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12960 + return-void
12961 +.end method
12963 +.method private getRandomLat()Ljava/lang/String;
12964 + .registers 10
12966 + const-wide v7, 0x4056800000000000L
12968 + invoke-static {}, Ljava/lang/Math;->random()D
12970 + move-result-wide v3
12972 + const-wide v5, 0x4066800000000000L
12974 + mul-double v0, v3, v5
12976 + cmpl-double v3, v0, v7
12978 + if-lez v3, :cond_35
12980 + new-instance v2, Ljava/math/BigDecimal;
12982 + sub-double v3, v0, v7
12984 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12986 + :goto_1b
12987 + new-instance v3, Ljava/lang/StringBuilder;
12989 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
12991 + const/4 v4, 0x6
12993 + const/4 v5, 0x4
12995 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
12997 + move-result-object v4
12999 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13001 + move-result-object v3
13003 + const-string v4, ""
13005 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13007 + move-result-object v3
13009 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13011 + move-result-object v3
13013 + return-object v3
13015 + :cond_35
13016 + new-instance v2, Ljava/math/BigDecimal;
13018 + neg-double v3, v0
13020 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13022 + goto :goto_1b
13023 +.end method
13025 +.method private getRandomLon()Ljava/lang/String;
13026 + .registers 10
13028 + const-wide v7, 0x4066800000000000L
13030 + invoke-static {}, Ljava/lang/Math;->random()D
13032 + move-result-wide v3
13034 + const-wide v5, 0x4076800000000000L
13036 + mul-double v0, v3, v5
13038 + cmpl-double v3, v0, v7
13040 + if-lez v3, :cond_35
13042 + new-instance v2, Ljava/math/BigDecimal;
13044 + sub-double v3, v0, v7
13046 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13048 + :goto_1b
13049 + new-instance v3, Ljava/lang/StringBuilder;
13051 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
13053 + const/4 v4, 0x6
13055 + const/4 v5, 0x4
13057 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
13059 + move-result-object v4
13061 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13063 + move-result-object v3
13065 + const-string v4, ""
13067 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13069 + move-result-object v3
13071 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13073 + move-result-object v3
13075 + return-object v3
13077 + :cond_35
13078 + new-instance v2, Ljava/math/BigDecimal;
13080 + neg-double v3, v0
13082 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13084 + goto :goto_1b
13085 +.end method
13088 +# virtual methods
13089 +.method public describeContents()I
13090 + .registers 2
13092 + const/4 v0, 0x0
13094 + return v0
13095 +.end method
13097 +.method public getAccountsAuthTokensSetting()B
13098 + .registers 2
13100 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13102 + return v0
13103 +.end method
13105 +.method public getAccountsSetting()B
13106 + .registers 2
13108 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13110 + return v0
13111 +.end method
13113 +.method public getAllowedContacts()[I
13114 + .registers 2
13116 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13118 + return-object v0
13119 +.end method
13121 +.method public getBookmarksSetting()B
13122 + .registers 2
13124 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13126 + return v0
13127 +.end method
13129 +.method public getCalendarSetting()B
13130 + .registers 2
13132 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13134 + return v0
13135 +.end method
13137 +.method public getCallLogSetting()B
13138 + .registers 2
13140 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13142 + return v0
13143 +.end method
13145 +.method public getContactsSetting()B
13146 + .registers 2
13148 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13150 + return v0
13151 +.end method
13153 +.method public getDeviceId()Ljava/lang/String;
13154 + .registers 6
13156 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13158 + const/4 v3, 0x1
13160 + if-ne v2, v3, :cond_8
13162 + const-string v2, ""
13164 + :goto_7
13165 + return-object v2
13167 + :cond_8
13168 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13170 + const/4 v3, 0x3
13172 + if-ne v2, v3, :cond_35
13174 + new-instance v0, Ljava/util/Random;
13176 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13178 + new-instance v2, Ljava/lang/StringBuilder;
13180 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13182 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13184 + move-result-wide v3
13186 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13188 + move-result-wide v3
13190 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13192 + move-result-object v2
13194 + const-string v3, ""
13196 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13198 + move-result-object v2
13200 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13202 + move-result-object v1
13204 + const/4 v2, 0x0
13206 + const/16 v3, 0xf
13208 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13210 + move-result-object v2
13212 + goto :goto_7
13214 + :cond_35
13215 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13217 + goto :goto_7
13218 +.end method
13220 +.method public getDeviceIdSetting()B
13221 + .registers 2
13223 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13225 + return v0
13226 +.end method
13228 +.method public getIncomingCallsSetting()B
13229 + .registers 2
13231 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13233 + return v0
13234 +.end method
13236 +.method public getIntentBootCompletedSetting()B
13237 + .registers 2
13239 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13241 + return v0
13242 +.end method
13244 +.method public getLine1Number()Ljava/lang/String;
13245 + .registers 6
13247 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13249 + const/4 v3, 0x1
13251 + if-ne v2, v3, :cond_8
13253 + const-string v2, ""
13255 + :goto_7
13256 + return-object v2
13258 + :cond_8
13259 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13261 + const/4 v3, 0x3
13263 + if-ne v2, v3, :cond_3b
13265 + new-instance v0, Ljava/util/Random;
13267 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13269 + new-instance v2, Ljava/lang/StringBuilder;
13271 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13273 + const-string v3, "+"
13275 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13277 + move-result-object v2
13279 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13281 + move-result-wide v3
13283 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13285 + move-result-wide v3
13287 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13289 + move-result-object v2
13291 + const-string v3, ""
13293 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13295 + move-result-object v2
13297 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13299 + move-result-object v1
13301 + const/4 v2, 0x0
13303 + const/16 v3, 0xd
13305 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13307 + move-result-object v2
13309 + goto :goto_7
13311 + :cond_3b
13312 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13314 + goto :goto_7
13315 +.end method
13317 +.method public getLine1NumberSetting()B
13318 + .registers 2
13320 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13322 + return v0
13323 +.end method
13325 +.method public getLocationGpsLat()Ljava/lang/String;
13326 + .registers 3
13328 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13330 + const/4 v1, 0x1
13332 + if-ne v0, v1, :cond_8
13334 + const-string v0, ""
13336 + :goto_7
13337 + return-object v0
13339 + :cond_8
13340 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13342 + const/4 v1, 0x3
13344 + if-ne v0, v1, :cond_12
13346 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13348 + move-result-object v0
13350 + goto :goto_7
13352 + :cond_12
13353 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13355 + goto :goto_7
13356 +.end method
13358 +.method public getLocationGpsLon()Ljava/lang/String;
13359 + .registers 3
13361 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13363 + const/4 v1, 0x1
13365 + if-ne v0, v1, :cond_8
13367 + const-string v0, ""
13369 + :goto_7
13370 + return-object v0
13372 + :cond_8
13373 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13375 + const/4 v1, 0x3
13377 + if-ne v0, v1, :cond_12
13379 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13381 + move-result-object v0
13383 + goto :goto_7
13385 + :cond_12
13386 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13388 + goto :goto_7
13389 +.end method
13391 +.method public getLocationGpsSetting()B
13392 + .registers 2
13394 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13396 + return v0
13397 +.end method
13399 +.method public getLocationNetworkLat()Ljava/lang/String;
13400 + .registers 3
13402 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13404 + const/4 v1, 0x1
13406 + if-ne v0, v1, :cond_8
13408 + const-string v0, ""
13410 + :goto_7
13411 + return-object v0
13413 + :cond_8
13414 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13416 + const/4 v1, 0x3
13418 + if-ne v0, v1, :cond_12
13420 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13422 + move-result-object v0
13424 + goto :goto_7
13426 + :cond_12
13427 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13429 + goto :goto_7
13430 +.end method
13432 +.method public getLocationNetworkLon()Ljava/lang/String;
13433 + .registers 3
13435 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13437 + const/4 v1, 0x1
13439 + if-ne v0, v1, :cond_8
13441 + const-string v0, ""
13443 + :goto_7
13444 + return-object v0
13446 + :cond_8
13447 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13449 + const/4 v1, 0x3
13451 + if-ne v0, v1, :cond_12
13453 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13455 + move-result-object v0
13457 + goto :goto_7
13459 + :cond_12
13460 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13462 + goto :goto_7
13463 +.end method
13465 +.method public getLocationNetworkSetting()B
13466 + .registers 2
13468 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13470 + return v0
13471 +.end method
13473 +.method public getMmsSetting()B
13474 + .registers 2
13476 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13478 + return v0
13479 +.end method
13481 +.method public getNetworkInfoSetting()B
13482 + .registers 2
13484 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13486 + return v0
13487 +.end method
13489 +.method public getNotificationSetting()B
13490 + .registers 2
13492 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13494 + return v0
13495 +.end method
13497 +.method public getOutgoingCallsSetting()B
13498 + .registers 2
13500 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13502 + return v0
13503 +.end method
13505 +.method public getPackageName()Ljava/lang/String;
13506 + .registers 2
13508 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13510 + return-object v0
13511 +.end method
13513 +.method public getSimInfoSetting()B
13514 + .registers 2
13516 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13518 + return v0
13519 +.end method
13521 +.method public getSimSerialNumber()Ljava/lang/String;
13522 + .registers 5
13524 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13526 + const/4 v2, 0x1
13528 + if-ne v1, v2, :cond_8
13530 + const-string v1, ""
13532 + :goto_7
13533 + return-object v1
13535 + :cond_8
13536 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13538 + const/4 v2, 0x3
13540 + if-ne v1, v2, :cond_2e
13542 + new-instance v0, Ljava/util/Random;
13544 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13546 + new-instance v1, Ljava/lang/StringBuilder;
13548 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
13550 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13552 + move-result-wide v2
13554 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
13556 + move-result-wide v2
13558 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13560 + move-result-object v1
13562 + const-string v2, ""
13564 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13566 + move-result-object v1
13568 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13570 + move-result-object v1
13572 + goto :goto_7
13574 + :cond_2e
13575 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13577 + goto :goto_7
13578 +.end method
13580 +.method public getSimSerialNumberSetting()B
13581 + .registers 2
13583 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13585 + return v0
13586 +.end method
13588 +.method public getSmsSetting()B
13589 + .registers 2
13591 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13593 + return v0
13594 +.end method
13596 +.method public getSubscriberId()Ljava/lang/String;
13597 + .registers 6
13599 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13601 + const/4 v3, 0x1
13603 + if-ne v2, v3, :cond_8
13605 + const-string v2, ""
13607 + :goto_7
13608 + return-object v2
13610 + :cond_8
13611 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13613 + const/4 v3, 0x3
13615 + if-ne v2, v3, :cond_35
13617 + new-instance v0, Ljava/util/Random;
13619 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13621 + new-instance v2, Ljava/lang/StringBuilder;
13623 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13625 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13627 + move-result-wide v3
13629 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13631 + move-result-wide v3
13633 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13635 + move-result-object v2
13637 + const-string v3, ""
13639 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13641 + move-result-object v2
13643 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13645 + move-result-object v1
13647 + const/4 v2, 0x0
13649 + const/16 v3, 0xf
13651 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13653 + move-result-object v2
13655 + goto :goto_7
13657 + :cond_35
13658 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13660 + goto :goto_7
13661 +.end method
13663 +.method public getSubscriberIdSetting()B
13664 + .registers 2
13666 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13668 + return v0
13669 +.end method
13671 +.method public getSystemLogsSetting()B
13672 + .registers 2
13674 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13676 + return v0
13677 +.end method
13679 +.method public getUid()I
13680 + .registers 2
13682 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
13684 + return v0
13685 +.end method
13687 +.method public get_id()Ljava/lang/Integer;
13688 + .registers 2
13690 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13692 + return-object v0
13693 +.end method
13695 +.method public setAccountsAuthTokensSetting(B)V
13696 + .registers 2
13698 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13700 + return-void
13701 +.end method
13703 +.method public setAccountsSetting(B)V
13704 + .registers 2
13706 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13708 + return-void
13709 +.end method
13711 +.method public setAllowedContacts([I)V
13712 + .registers 2
13714 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13716 + return-void
13717 +.end method
13719 +.method public setBookmarksSetting(B)V
13720 + .registers 2
13722 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13724 + return-void
13725 +.end method
13727 +.method public setCalendarSetting(B)V
13728 + .registers 2
13730 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13732 + return-void
13733 +.end method
13735 +.method public setCallLogSetting(B)V
13736 + .registers 2
13738 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13740 + return-void
13741 +.end method
13743 +.method public setContactsSetting(B)V
13744 + .registers 2
13746 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13748 + return-void
13749 +.end method
13751 +.method public setDeviceId(Ljava/lang/String;)V
13752 + .registers 2
13754 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13756 + return-void
13757 +.end method
13759 +.method public setDeviceIdSetting(B)V
13760 + .registers 2
13762 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13764 + return-void
13765 +.end method
13767 +.method public setIncomingCallsSetting(B)V
13768 + .registers 2
13770 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13772 + return-void
13773 +.end method
13775 +.method public setIntentBootCompletedSetting(B)V
13776 + .registers 2
13778 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13780 + return-void
13781 +.end method
13783 +.method public setLine1Number(Ljava/lang/String;)V
13784 + .registers 2
13786 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13788 + return-void
13789 +.end method
13791 +.method public setLine1NumberSetting(B)V
13792 + .registers 2
13794 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13796 + return-void
13797 +.end method
13799 +.method public setLocationGpsLat(Ljava/lang/String;)V
13800 + .registers 2
13802 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13804 + return-void
13805 +.end method
13807 +.method public setLocationGpsLon(Ljava/lang/String;)V
13808 + .registers 2
13810 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13812 + return-void
13813 +.end method
13815 +.method public setLocationGpsSetting(B)V
13816 + .registers 2
13818 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13820 + return-void
13821 +.end method
13823 +.method public setLocationNetworkLat(Ljava/lang/String;)V
13824 + .registers 2
13826 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13828 + return-void
13829 +.end method
13831 +.method public setLocationNetworkLon(Ljava/lang/String;)V
13832 + .registers 2
13834 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13836 + return-void
13837 +.end method
13839 +.method public setLocationNetworkSetting(B)V
13840 + .registers 2
13842 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13844 + return-void
13845 +.end method
13847 +.method public setMmsSetting(B)V
13848 + .registers 2
13850 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13852 + return-void
13853 +.end method
13855 +.method public setNetworkInfoSetting(B)V
13856 + .registers 2
13858 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13860 + return-void
13861 +.end method
13863 +.method public setNotificationSetting(B)V
13864 + .registers 2
13866 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13868 + return-void
13869 +.end method
13871 +.method public setOutgoingCallsSetting(B)V
13872 + .registers 2
13874 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13876 + return-void
13877 +.end method
13879 +.method public setPackageName(Ljava/lang/String;)V
13880 + .registers 2
13882 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13884 + return-void
13885 +.end method
13887 +.method public setSimInfoSetting(B)V
13888 + .registers 2
13890 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13892 + return-void
13893 +.end method
13895 +.method public setSimSerialNumber(Ljava/lang/String;)V
13896 + .registers 2
13898 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13900 + return-void
13901 +.end method
13903 +.method public setSimSerialNumberSetting(B)V
13904 + .registers 2
13906 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13908 + return-void
13909 +.end method
13911 +.method public setSmsSetting(B)V
13912 + .registers 2
13914 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13916 + return-void
13917 +.end method
13919 +.method public setSubscriberId(Ljava/lang/String;)V
13920 + .registers 2
13922 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13924 + return-void
13925 +.end method
13927 +.method public setSubscriberIdSetting(B)V
13928 + .registers 2
13930 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13932 + return-void
13933 +.end method
13935 +.method public setSystemLogsSetting(B)V
13936 + .registers 2
13938 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13940 + return-void
13941 +.end method
13943 +.method public setUid(I)V
13944 + .registers 2
13946 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
13948 + return-void
13949 +.end method
13951 +.method public toString()Ljava/lang/String;
13952 + .registers 3
13954 + new-instance v0, Ljava/lang/StringBuilder;
13956 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
13958 + const-string v1, "PrivacySettings [_id="
13960 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13962 + move-result-object v0
13964 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13966 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13968 + move-result-object v0
13970 + const-string v1, ", accountsAuthTokensSetting="
13972 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13974 + move-result-object v0
13976 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13978 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13980 + move-result-object v0
13982 + const-string v1, ", accountsSetting="
13984 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13986 + move-result-object v0
13988 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13990 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13992 + move-result-object v0
13994 + const-string v1, ", bookmarksSetting="
13996 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13998 + move-result-object v0
14000 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14002 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14004 + move-result-object v0
14006 + const-string v1, ", calendarSetting="
14008 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14010 + move-result-object v0
14012 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14014 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14016 + move-result-object v0
14018 + const-string v1, ", callLogSetting="
14020 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14022 + move-result-object v0
14024 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14026 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14028 + move-result-object v0
14030 + const-string v1, ", contactsSetting="
14032 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14034 + move-result-object v0
14036 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14038 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14040 + move-result-object v0
14042 + const-string v1, ", deviceId="
14044 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14046 + move-result-object v0
14048 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14050 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14052 + move-result-object v0
14054 + const-string v1, ", deviceIdSetting="
14056 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14058 + move-result-object v0
14060 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14062 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14064 + move-result-object v0
14066 + const-string v1, ", incomingCallsSetting="
14068 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14070 + move-result-object v0
14072 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14074 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14076 + move-result-object v0
14078 + const-string v1, ", intentBootCompletedSetting="
14080 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14082 + move-result-object v0
14084 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14086 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14088 + move-result-object v0
14090 + const-string v1, ", line1Number="
14092 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14094 + move-result-object v0
14096 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14098 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14100 + move-result-object v0
14102 + const-string v1, ", line1NumberSetting="
14104 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14106 + move-result-object v0
14108 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14110 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14112 + move-result-object v0
14114 + const-string v1, ", locationGpsLat="
14116 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14118 + move-result-object v0
14120 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14122 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14124 + move-result-object v0
14126 + const-string v1, ", locationGpsLon="
14128 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14130 + move-result-object v0
14132 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14134 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14136 + move-result-object v0
14138 + const-string v1, ", locationGpsSetting="
14140 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14142 + move-result-object v0
14144 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14146 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14148 + move-result-object v0
14150 + const-string v1, ", locationNetworkLat="
14152 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14154 + move-result-object v0
14156 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14158 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14160 + move-result-object v0
14162 + const-string v1, ", locationNetworkLon="
14164 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14166 + move-result-object v0
14168 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14170 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14172 + move-result-object v0
14174 + const-string v1, ", locationNetworkSetting="
14176 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14178 + move-result-object v0
14180 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14182 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14184 + move-result-object v0
14186 + const-string v1, ", mmsSetting="
14188 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14190 + move-result-object v0
14192 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14194 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14196 + move-result-object v0
14198 + const-string v1, ", networkInfoSetting="
14200 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14202 + move-result-object v0
14204 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14206 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14208 + move-result-object v0
14210 + const-string v1, ", notificationSetting="
14212 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14214 + move-result-object v0
14216 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14218 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14220 + move-result-object v0
14222 + const-string v1, ", outgoingCallsSetting="
14224 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14226 + move-result-object v0
14228 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14230 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14232 + move-result-object v0
14234 + const-string v1, ", packageName="
14236 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14238 + move-result-object v0
14240 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14242 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14244 + move-result-object v0
14246 + const-string v1, ", simInfoSetting="
14248 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14250 + move-result-object v0
14252 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14254 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14256 + move-result-object v0
14258 + const-string v1, ", simSerialNumber="
14260 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14262 + move-result-object v0
14264 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14266 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14268 + move-result-object v0
14270 + const-string v1, ", simSerialNumberSetting="
14272 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14274 + move-result-object v0
14276 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14278 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14280 + move-result-object v0
14282 + const-string v1, ", smsSetting="
14284 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14286 + move-result-object v0
14288 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14290 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14292 + move-result-object v0
14294 + const-string v1, ", subscriberId="
14296 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14298 + move-result-object v0
14300 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14302 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14304 + move-result-object v0
14306 + const-string v1, ", subscriberIdSetting="
14308 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14310 + move-result-object v0
14312 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14314 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14316 + move-result-object v0
14318 + const-string v1, ", systemLogsSetting="
14320 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14322 + move-result-object v0
14324 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14326 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14328 + move-result-object v0
14330 + const-string v1, ", uid="
14332 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14334 + move-result-object v0
14336 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
14338 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14340 + move-result-object v0
14342 + const-string v1, "]"
14344 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14346 + move-result-object v0
14348 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
14350 + move-result-object v0
14352 + return-object v0
14353 +.end method
14355 +.method public writeToParcel(Landroid/os/Parcel;I)V
14356 + .registers 4
14358 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14360 + if-nez v0, :cond_a9
14362 + const/4 v0, -0x1
14364 + :goto_5
14365 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14367 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14369 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14371 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
14373 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14375 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14377 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14379 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14381 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14383 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14385 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14387 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14389 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14391 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14393 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14395 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14397 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14399 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14401 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14403 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14405 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14407 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14409 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14411 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14413 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14415 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14417 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14419 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14421 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14423 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14425 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14427 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14429 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14431 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14433 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14435 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14437 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14439 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14441 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14443 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14445 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14447 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14449 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14451 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14453 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14455 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14457 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14459 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14461 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14463 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14465 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14467 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14469 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14471 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14473 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14475 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14477 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14479 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14481 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14483 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14485 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14487 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14489 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14491 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14493 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
14495 + return-void
14497 + :cond_a9
14498 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14500 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
14502 + move-result v0
14504 + goto/16 :goto_5
14505 +.end method
14506 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
14507 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 18:00:00.000000000 -0600
14508 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-05-08 11:54:53.306752047 -0500
14509 @@ -0,0 +1,129 @@
14510 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14511 +.super Ljava/lang/Object;
14512 +.source "PrivacyAccountManager.java"
14514 +# interfaces
14515 +.implements Landroid/accounts/AccountManagerFuture;
14518 +# annotations
14519 +.annotation system Ldalvik/annotation/EnclosingClass;
14520 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
14521 +.end annotation
14523 +.annotation system Ldalvik/annotation/InnerClass;
14524 + accessFlags = 0x2
14525 + name = "PrivacyAccountManagerFuture"
14526 +.end annotation
14528 +.annotation system Ldalvik/annotation/Signature;
14529 + value = {
14530 + "<V:",
14531 + "Ljava/lang/Object;",
14532 + ">",
14533 + "Ljava/lang/Object;",
14534 + "Landroid/accounts/AccountManagerFuture",
14535 + "<TV;>;"
14537 +.end annotation
14540 +# instance fields
14541 +.field private result:Ljava/lang/Object;
14542 + .annotation system Ldalvik/annotation/Signature;
14543 + value = {
14544 + "TV;"
14546 + .end annotation
14547 +.end field
14549 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14552 +# direct methods
14553 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14554 + .registers 3
14555 + .annotation system Ldalvik/annotation/Signature;
14556 + value = {
14557 + "(TV;)V"
14559 + .end annotation
14561 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14563 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
14565 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14567 + return-void
14568 +.end method
14571 +# virtual methods
14572 +.method public cancel(Z)Z
14573 + .registers 3
14575 + const/4 v0, 0x0
14577 + return v0
14578 +.end method
14580 +.method public getResult()Ljava/lang/Object;
14581 + .registers 2
14582 + .annotation system Ldalvik/annotation/Signature;
14583 + value = {
14584 + "()TV;"
14586 + .end annotation
14588 + .annotation system Ldalvik/annotation/Throws;
14589 + value = {
14590 + Landroid/accounts/OperationCanceledException;,
14591 + Ljava/io/IOException;,
14592 + Landroid/accounts/AuthenticatorException;
14594 + .end annotation
14596 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14598 + return-object v0
14599 +.end method
14601 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
14602 + .registers 5
14603 + .annotation system Ldalvik/annotation/Signature;
14604 + value = {
14605 + "(J",
14606 + "Ljava/util/concurrent/TimeUnit;",
14607 + ")TV;"
14609 + .end annotation
14611 + .annotation system Ldalvik/annotation/Throws;
14612 + value = {
14613 + Landroid/accounts/OperationCanceledException;,
14614 + Ljava/io/IOException;,
14615 + Landroid/accounts/AuthenticatorException;
14617 + .end annotation
14619 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14621 + return-object v0
14622 +.end method
14624 +.method public isCancelled()Z
14625 + .registers 2
14627 + const/4 v0, 0x0
14629 + return v0
14630 +.end method
14632 +.method public isDone()Z
14633 + .registers 2
14635 + const/4 v0, 0x1
14637 + return v0
14638 +.end method
14639 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
14640 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 18:00:00.000000000 -0600
14641 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-05-08 11:54:53.306752047 -0500
14642 @@ -0,0 +1,701 @@
14643 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
14644 +.super Landroid/accounts/AccountManager;
14645 +.source "PrivacyAccountManager.java"
14648 +# annotations
14649 +.annotation system Ldalvik/annotation/MemberClasses;
14650 + value = {
14651 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14653 +.end annotation
14656 +# static fields
14657 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
14660 +# instance fields
14661 +.field private context:Landroid/content/Context;
14663 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
14666 +# direct methods
14667 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14668 + .registers 5
14670 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14672 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14674 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14676 + const-string/jumbo v1, "privacy"
14678 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14680 + move-result-object v1
14682 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14684 + move-result-object v1
14686 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14688 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14690 + return-void
14691 +.end method
14693 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14694 + .registers 6
14696 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14698 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14700 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14702 + const-string/jumbo v1, "privacy"
14704 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14706 + move-result-object v1
14708 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14710 + move-result-object v1
14712 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14714 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14716 + return-void
14717 +.end method
14720 +# virtual methods
14721 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14722 + .registers 12
14723 + .annotation system Ldalvik/annotation/Throws;
14724 + value = {
14725 + Landroid/accounts/OperationCanceledException;,
14726 + Ljava/io/IOException;,
14727 + Landroid/accounts/AuthenticatorException;
14729 + .end annotation
14731 + const/4 v5, 0x0
14733 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14735 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14737 + move-result-object v1
14739 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14741 + move-result v2
14743 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14745 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14747 + move-result-object v6
14749 + if-eqz v6, :cond_23
14751 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
14753 + move-result v0
14755 + if-eqz v0, :cond_23
14757 + const/4 v7, 0x0
14759 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14761 + const/4 v3, 0x1
14763 + const-string v4, "authTokens"
14765 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14767 + :goto_22
14768 + return-object v7
14770 + :cond_23
14771 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14773 + move-result-object v7
14775 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14777 + const/4 v3, 0x0
14779 + const-string v4, "authTokens"
14781 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14783 + goto :goto_22
14784 +.end method
14786 +.method public getAccounts()[Landroid/accounts/Account;
14787 + .registers 10
14789 + const/4 v5, 0x0
14791 + const/4 v3, 0x0
14793 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14795 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14797 + move-result-object v1
14799 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14801 + move-result v2
14803 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14805 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14807 + move-result-object v6
14809 + if-eqz v6, :cond_27
14811 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14813 + move-result v0
14815 + if-eqz v0, :cond_27
14817 + const-string v8, "[empty accounts list]"
14819 + new-array v7, v3, [Landroid/accounts/Account;
14821 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14823 + const/4 v3, 0x1
14825 + const-string v4, "accountsList"
14827 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14829 + :goto_26
14830 + return-object v7
14832 + :cond_27
14833 + const-string v8, "[real value]"
14835 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
14837 + move-result-object v7
14839 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14841 + const-string v4, "accountsList"
14843 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14845 + goto :goto_26
14846 +.end method
14848 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14849 + .registers 11
14851 + const/4 v5, 0x0
14853 + const/4 v3, 0x0
14855 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14857 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14859 + move-result-object v1
14861 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14863 + move-result v2
14865 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14867 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14869 + move-result-object v6
14871 + if-eqz v6, :cond_27
14873 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14875 + move-result v0
14877 + if-eqz v0, :cond_27
14879 + const-string v8, "[empty accounts list]"
14881 + new-array v7, v3, [Landroid/accounts/Account;
14883 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14885 + const/4 v3, 0x1
14887 + const-string v4, "accountsList"
14889 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14891 + :goto_26
14892 + return-object v7
14894 + :cond_27
14895 + const-string v8, "[real value]"
14897 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14899 + move-result-object v7
14901 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14903 + const-string v4, "accountsList"
14905 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14907 + goto :goto_26
14908 +.end method
14910 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14911 + .registers 14
14912 + .annotation system Ldalvik/annotation/Signature;
14913 + value = {
14914 + "(",
14915 + "Ljava/lang/String;",
14916 + "[",
14917 + "Ljava/lang/String;",
14918 + "Landroid/accounts/AccountManagerCallback",
14919 + "<[",
14920 + "Landroid/accounts/Account;",
14921 + ">;",
14922 + "Landroid/os/Handler;",
14923 + ")",
14924 + "Landroid/accounts/AccountManagerFuture",
14925 + "<[",
14926 + "Landroid/accounts/Account;",
14927 + ">;"
14929 + .end annotation
14931 + const/4 v5, 0x0
14933 + const/4 v3, 0x0
14935 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14937 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14939 + move-result-object v1
14941 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14943 + move-result v2
14945 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14947 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14949 + move-result-object v6
14951 + if-eqz v6, :cond_2c
14953 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14955 + move-result v0
14957 + if-eqz v0, :cond_2c
14959 + const-string v8, "[false]"
14961 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14963 + new-array v0, v3, [Landroid/accounts/Account;
14965 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14967 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14969 + const/4 v3, 0x1
14971 + const-string v4, "accountsList"
14973 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14975 + :goto_2b
14976 + return-object v7
14978 + :cond_2c
14979 + const-string v8, "[real value]"
14981 + invoke-super {p0, p1, p2, p3, p4}, Landroid/accounts/AccountManager;->getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14983 + move-result-object v7
14985 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14987 + const-string v4, "accountsList"
14989 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14991 + goto :goto_2b
14992 +.end method
14994 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14995 + .registers 16
14996 + .annotation system Ldalvik/annotation/Signature;
14997 + value = {
14998 + "(",
14999 + "Landroid/accounts/Account;",
15000 + "Ljava/lang/String;",
15001 + "Landroid/os/Bundle;",
15002 + "Landroid/app/Activity;",
15003 + "Landroid/accounts/AccountManagerCallback",
15004 + "<",
15005 + "Landroid/os/Bundle;",
15006 + ">;",
15007 + "Landroid/os/Handler;",
15008 + ")",
15009 + "Landroid/accounts/AccountManagerFuture",
15010 + "<",
15011 + "Landroid/os/Bundle;",
15012 + ">;"
15014 + .end annotation
15016 + const/4 v5, 0x0
15018 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15020 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15022 + move-result-object v1
15024 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15026 + move-result v2
15028 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15030 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15032 + move-result-object v6
15034 + if-eqz v6, :cond_2e
15036 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15038 + move-result v0
15040 + if-eqz v0, :cond_2e
15042 + const-string v8, "[empty]"
15044 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15046 + new-instance v0, Landroid/os/Bundle;
15048 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15050 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15052 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15054 + const/4 v3, 0x1
15056 + const-string v4, "authTokens"
15058 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15060 + :goto_2d
15061 + return-object v7
15063 + :cond_2e
15064 + const-string v8, "[real value]"
15066 + invoke-super/range {p0 .. p6}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15068 + move-result-object v7
15070 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15072 + const/4 v3, 0x0
15074 + const-string v4, "authTokens"
15076 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15078 + goto :goto_2d
15079 +.end method
15081 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15082 + .registers 15
15083 + .annotation system Ldalvik/annotation/Signature;
15084 + value = {
15085 + "(",
15086 + "Landroid/accounts/Account;",
15087 + "Ljava/lang/String;",
15088 + "Z",
15089 + "Landroid/accounts/AccountManagerCallback",
15090 + "<",
15091 + "Landroid/os/Bundle;",
15092 + ">;",
15093 + "Landroid/os/Handler;",
15094 + ")",
15095 + "Landroid/accounts/AccountManagerFuture",
15096 + "<",
15097 + "Landroid/os/Bundle;",
15098 + ">;"
15100 + .end annotation
15102 + const/4 v5, 0x0
15104 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15106 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15108 + move-result-object v1
15110 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15112 + move-result v2
15114 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15116 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15118 + move-result-object v6
15120 + if-eqz v6, :cond_2e
15122 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15124 + move-result v0
15126 + if-eqz v0, :cond_2e
15128 + const-string v8, "[empty]"
15130 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15132 + new-instance v0, Landroid/os/Bundle;
15134 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15136 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15138 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15140 + const/4 v3, 0x1
15142 + const-string v4, "authTokens"
15144 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15146 + :goto_2d
15147 + return-object v7
15149 + :cond_2e
15150 + const-string v8, "[real value]"
15152 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15154 + move-result-object v7
15156 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15158 + const/4 v3, 0x0
15160 + const-string v4, "authTokens"
15162 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15164 + goto :goto_2d
15165 +.end method
15167 +.method public getAuthTokenByFeatures(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Landroid/app/Activity;Landroid/os/Bundle;Landroid/os/Bundle;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15168 + .registers 18
15169 + .annotation system Ldalvik/annotation/Signature;
15170 + value = {
15171 + "(",
15172 + "Ljava/lang/String;",
15173 + "Ljava/lang/String;",
15174 + "[",
15175 + "Ljava/lang/String;",
15176 + "Landroid/app/Activity;",
15177 + "Landroid/os/Bundle;",
15178 + "Landroid/os/Bundle;",
15179 + "Landroid/accounts/AccountManagerCallback",
15180 + "<",
15181 + "Landroid/os/Bundle;",
15182 + ">;",
15183 + "Landroid/os/Handler;",
15184 + ")",
15185 + "Landroid/accounts/AccountManagerFuture",
15186 + "<",
15187 + "Landroid/os/Bundle;",
15188 + ">;"
15190 + .end annotation
15192 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15194 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15196 + move-result-object v1
15198 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15200 + move-result v2
15202 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15204 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15206 + move-result-object v6
15208 + if-eqz v6, :cond_2e
15210 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15212 + move-result v0
15214 + if-eqz v0, :cond_2e
15216 + const-string v8, "[empty]"
15218 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15220 + new-instance v0, Landroid/os/Bundle;
15222 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15224 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15226 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15228 + const/4 v3, 0x1
15230 + const-string v4, "authTokens"
15232 + const/4 v5, 0x0
15234 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15236 + :goto_2d
15237 + return-object v7
15239 + :cond_2e
15240 + const-string v8, "[real value]"
15242 + invoke-super/range {p0 .. p8}, Landroid/accounts/AccountManager;->getAuthTokenByFeatures(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Landroid/app/Activity;Landroid/os/Bundle;Landroid/os/Bundle;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15244 + move-result-object v7
15246 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15248 + const/4 v3, 0x0
15250 + const-string v4, "authTokens"
15252 + const/4 v5, 0x0
15254 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15256 + goto :goto_2d
15257 +.end method
15259 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15260 + .registers 14
15261 + .annotation system Ldalvik/annotation/Signature;
15262 + value = {
15263 + "(",
15264 + "Landroid/accounts/Account;",
15265 + "[",
15266 + "Ljava/lang/String;",
15267 + "Landroid/accounts/AccountManagerCallback",
15268 + "<",
15269 + "Ljava/lang/Boolean;",
15270 + ">;",
15271 + "Landroid/os/Handler;",
15272 + ")",
15273 + "Landroid/accounts/AccountManagerFuture",
15274 + "<",
15275 + "Ljava/lang/Boolean;",
15276 + ">;"
15278 + .end annotation
15280 + const/4 v5, 0x0
15282 + const/4 v3, 0x0
15284 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15286 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15288 + move-result-object v1
15290 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15292 + move-result v2
15294 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15296 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15298 + move-result-object v6
15300 + if-eqz v6, :cond_2e
15302 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15304 + move-result v0
15306 + if-eqz v0, :cond_2e
15308 + const-string v8, "[false]"
15310 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15312 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
15314 + move-result-object v0
15316 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15318 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15320 + const/4 v3, 0x1
15322 + const-string v4, "accountsList"
15324 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15326 + :goto_2d
15327 + return-object v7
15329 + :cond_2e
15330 + const-string v8, "[real value]"
15332 + invoke-super {p0, p1, p2, p3, p4}, Landroid/accounts/AccountManager;->hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15334 + move-result-object v7
15336 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15338 + const-string v4, "accountsList"
15340 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15342 + goto :goto_2d
15343 +.end method
15344 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
15345 --- stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 18:00:00.000000000 -0600
15346 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-05-08 11:54:53.306752047 -0500
15347 @@ -0,0 +1,1087 @@
15348 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
15349 +.super Ljava/lang/Object;
15350 +.source "PrivacyActivityManagerService.java"
15353 +# static fields
15354 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
15356 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
15358 +.field private static tmpIn:Landroid/content/Intent;
15360 +.field private static tmpInHash:J
15362 +.field private static tmpInReceivers:I
15364 +.field private static tmpMms:Landroid/content/Intent;
15366 +.field private static tmpMmsHash:J
15368 +.field private static tmpMmsReceivers:I
15370 +.field private static tmpOut:Landroid/content/Intent;
15372 +.field private static tmpOutHash:J
15374 +.field private static tmpOutReceivers:I
15376 +.field private static tmpPackageAddedHash:J
15378 +.field private static tmpSms:Landroid/content/Intent;
15380 +.field private static tmpSmsHash:J
15382 +.field private static tmpSmsReceivers:I
15385 +# direct methods
15386 +.method static constructor <clinit>()V
15387 + .registers 3
15389 + const/4 v2, 0x0
15391 + const-wide/16 v0, 0x0
15393 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15395 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15397 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15399 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15401 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15403 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15405 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15407 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
15409 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
15411 + return-void
15412 +.end method
15414 +.method public constructor <init>()V
15415 + .registers 1
15417 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15419 + return-void
15420 +.end method
15422 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
15423 + .registers 22
15425 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15427 + if-nez v2, :cond_11
15429 + const-string/jumbo v2, "privacy"
15431 + move-object/from16 v0, p3
15433 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
15435 + move-result-object v2
15437 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
15439 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15441 + :cond_11
15442 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
15444 + move-result-object v9
15446 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
15448 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15450 + move-result v2
15452 + if-eqz v2, :cond_ad
15454 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15456 + move-object/from16 v0, p0
15458 + move/from16 v1, p1
15460 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15462 + move-result-object v8
15464 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15466 + move-object/from16 v0, p2
15468 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15470 + move-result-object v16
15472 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15474 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15476 + move-result-wide v4
15478 + cmp-long v2, v2, v4
15480 + if-eqz v2, :cond_49
15482 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15484 + move-result-object v2
15486 + check-cast v2, Landroid/content/Intent;
15488 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15490 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15492 + move-result-wide v2
15494 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15496 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15498 + :cond_49
15499 + if-eqz v8, :cond_76
15501 + :try_start_4b
15502 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
15504 + move-result v2
15506 + if-eqz v2, :cond_76
15508 + const-string v16, ""
15510 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15512 + move-object/from16 v0, p2
15514 + move-object/from16 v1, v16
15516 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15518 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15520 + const/4 v5, 0x1
15522 + const-string/jumbo v6, "outgoingCall"
15524 + const/4 v7, 0x0
15526 + move-object/from16 v3, p0
15528 + move/from16 v4, p1
15530 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15531 + :try_end_6a
15532 + .catch Ljava/lang/Exception; {:try_start_4b .. :try_end_6a} :catch_a0
15534 + :cond_6a
15535 + :goto_6a
15536 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15538 + const/4 v3, 0x1
15540 + if-le v2, v3, :cond_a9
15542 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15544 + add-int/lit8 v2, v2, -0x1
15546 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15548 + :cond_75
15549 + :goto_75
15550 + return-void
15552 + :cond_76
15553 + :try_start_76
15554 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15556 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15558 + move-result-wide v4
15560 + cmp-long v2, v2, v4
15562 + if-nez v2, :cond_6a
15564 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15566 + const-string v3, "android.intent.extra.PHONE_NUMBER"
15568 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15570 + move-result-object v16
15572 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15574 + move-object/from16 v0, p2
15576 + move-object/from16 v1, v16
15578 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15580 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15582 + const/4 v5, 0x0
15584 + const-string/jumbo v6, "outgoingCall"
15586 + const/4 v7, 0x0
15588 + move-object/from16 v3, p0
15590 + move/from16 v4, p1
15592 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15593 + :try_end_9f
15594 + .catch Ljava/lang/Exception; {:try_start_76 .. :try_end_9f} :catch_a0
15596 + goto :goto_6a
15598 + :catch_a0
15599 + move-exception v13
15601 + const-string v2, "PrivacyActivityManagerService"
15603 + const-string v3, "failed to enforce intent broadcast permission"
15605 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15607 + goto :goto_6a
15609 + :cond_a9
15610 + const/4 v2, 0x0
15612 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15614 + goto :goto_75
15616 + :cond_ad
15617 + const-string v2, "android.intent.action.PHONE_STATE"
15619 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15621 + move-result v2
15623 + if-eqz v2, :cond_14d
15625 + const-string v2, "incoming_number"
15627 + move-object/from16 v0, p2
15629 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15631 + move-result-object v16
15633 + if-eqz v16, :cond_75
15635 + invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->isEmpty()Z
15637 + move-result v2
15639 + if-nez v2, :cond_75
15641 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15643 + move-object/from16 v0, p0
15645 + move/from16 v1, p1
15647 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15649 + move-result-object v8
15651 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15653 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15655 + move-result-wide v4
15657 + cmp-long v2, v2, v4
15659 + if-eqz v2, :cond_e9
15661 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15663 + move-result-object v2
15665 + check-cast v2, Landroid/content/Intent;
15667 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15669 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15671 + move-result-wide v2
15673 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15675 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15677 + :cond_e9
15678 + if-eqz v8, :cond_116
15680 + :try_start_eb
15681 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
15683 + move-result v2
15685 + if-eqz v2, :cond_116
15687 + const-string v16, ""
15689 + const-string v2, "incoming_number"
15691 + move-object/from16 v0, p2
15693 + move-object/from16 v1, v16
15695 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15697 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15699 + const/4 v5, 0x1
15701 + const-string v6, "incomingCall"
15703 + const/4 v7, 0x0
15705 + move-object/from16 v3, p0
15707 + move/from16 v4, p1
15709 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15710 + :try_end_109
15711 + .catch Ljava/lang/Exception; {:try_start_eb .. :try_end_109} :catch_13f
15713 + :cond_109
15714 + :goto_109
15715 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15717 + const/4 v3, 0x1
15719 + if-le v2, v3, :cond_148
15721 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15723 + add-int/lit8 v2, v2, -0x1
15725 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15727 + goto/16 :goto_75
15729 + :cond_116
15730 + :try_start_116
15731 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15733 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15735 + move-result-wide v4
15737 + cmp-long v2, v2, v4
15739 + if-nez v2, :cond_109
15741 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15743 + const-string v3, "incoming_number"
15745 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15747 + move-result-object v16
15749 + const-string v2, "incoming_number"
15751 + move-object/from16 v0, p2
15753 + move-object/from16 v1, v16
15755 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15757 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15759 + const/4 v5, 0x0
15761 + const-string v6, "incomingCall"
15763 + const/4 v7, 0x0
15765 + move-object/from16 v3, p0
15767 + move/from16 v4, p1
15769 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15770 + :try_end_13e
15771 + .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_13e} :catch_13f
15773 + goto :goto_109
15775 + :catch_13f
15776 + move-exception v13
15778 + const-string v2, "PrivacyActivityManagerService"
15780 + const-string v3, "failed to enforce intent broadcast permission"
15782 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15784 + goto :goto_109
15786 + :cond_148
15787 + const/4 v2, 0x0
15789 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15791 + goto/16 :goto_75
15793 + :cond_14d
15794 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
15796 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15798 + move-result v2
15800 + if-eqz v2, :cond_222
15802 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15804 + move-object/from16 v0, p0
15806 + move/from16 v1, p1
15808 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15810 + move-result-object v8
15812 + const-string v16, "[real]"
15814 + const-string/jumbo v2, "pdus"
15816 + move-object/from16 v0, p2
15818 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15820 + move-result-object v2
15822 + check-cast v2, [Ljava/lang/Object;
15824 + move-object v15, v2
15826 + check-cast v15, [Ljava/lang/Object;
15828 + if-eqz v15, :cond_1cd
15830 + const/4 v2, 0x0
15832 + aget-object v2, v15, v2
15834 + check-cast v2, [B
15836 + check-cast v2, [B
15838 + move-object v12, v2
15840 + :goto_179
15841 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15843 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15845 + move-result-wide v4
15847 + cmp-long v2, v2, v4
15849 + if-eqz v2, :cond_193
15851 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15853 + move-result-object v2
15855 + check-cast v2, Landroid/content/Intent;
15857 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15859 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15861 + move-result-wide v2
15863 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15865 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15867 + :cond_193
15868 + if-eqz v8, :cond_1cf
15870 + :try_start_195
15871 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
15873 + move-result v2
15875 + if-eqz v2, :cond_1cf
15877 + const-string v16, "[empty]"
15879 + const/4 v2, 0x1
15881 + new-array v14, v2, [Ljava/lang/Object;
15883 + const/4 v2, 0x0
15885 + const/16 v3, 0x10
15887 + new-array v3, v3, [B
15889 + fill-array-data v3, :array_350
15891 + aput-object v3, v14, v2
15893 + const-string/jumbo v2, "pdus"
15895 + move-object/from16 v0, p2
15897 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15899 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15901 + const/4 v5, 0x1
15903 + const-string/jumbo v6, "sms"
15905 + const/4 v7, 0x0
15907 + move-object/from16 v3, p0
15909 + move/from16 v4, p1
15911 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15912 + :try_end_1c0
15913 + .catch Ljava/lang/Exception; {:try_start_195 .. :try_end_1c0} :catch_212
15915 + :cond_1c0
15916 + :goto_1c0
15917 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15919 + const/4 v3, 0x1
15921 + if-le v2, v3, :cond_21d
15923 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15925 + add-int/lit8 v2, v2, -0x1
15927 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15929 + goto/16 :goto_75
15931 + :cond_1cd
15932 + const/4 v12, 0x0
15934 + goto :goto_179
15936 + :cond_1cf
15937 + :try_start_1cf
15938 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15940 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15942 + move-result-wide v4
15944 + cmp-long v2, v2, v4
15946 + if-nez v2, :cond_1c0
15948 + const-string/jumbo v2, "pdus"
15950 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15952 + const-string/jumbo v4, "pdus"
15954 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15956 + move-result-object v3
15958 + move-object/from16 v0, p2
15960 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15962 + const-string/jumbo v2, "pdus"
15964 + move-object/from16 v0, p2
15966 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15968 + move-result-object v2
15970 + check-cast v2, [Ljava/lang/Object;
15972 + move-object v0, v2
15974 + check-cast v0, [Ljava/lang/Object;
15976 + move-object v15, v0
15978 + if-eqz v15, :cond_21b
15980 + const/4 v2, 0x0
15982 + aget-object v2, v15, v2
15984 + check-cast v2, [B
15986 + check-cast v2, [B
15988 + move-object v12, v2
15990 + :goto_203
15991 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15993 + const/4 v5, 0x0
15995 + const-string/jumbo v6, "sms"
15997 + const/4 v7, 0x0
15999 + move-object/from16 v3, p0
16001 + move/from16 v4, p1
16003 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16004 + :try_end_211
16005 + .catch Ljava/lang/Exception; {:try_start_1cf .. :try_end_211} :catch_212
16007 + goto :goto_1c0
16009 + :catch_212
16010 + move-exception v13
16012 + const-string v2, "PrivacyActivityManagerService"
16014 + const-string v3, "failed to enforce intent broadcast permission"
16016 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16018 + goto :goto_1c0
16020 + :cond_21b
16021 + const/4 v12, 0x0
16023 + goto :goto_203
16025 + :cond_21d
16026 + const/4 v2, 0x0
16028 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16030 + goto/16 :goto_75
16032 + :cond_222
16033 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
16035 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16037 + move-result v2
16039 + if-nez v2, :cond_232
16041 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
16043 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16045 + move-result v2
16047 + if-eqz v2, :cond_2ff
16049 + :cond_232
16050 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16052 + move-object/from16 v0, p0
16054 + move/from16 v1, p1
16056 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16058 + move-result-object v8
16060 + const-string v16, "[real]"
16062 + const-string/jumbo v2, "pdus"
16064 + move-object/from16 v0, p2
16066 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16068 + move-result-object v2
16070 + check-cast v2, [Ljava/lang/Object;
16072 + move-object v15, v2
16074 + check-cast v15, [Ljava/lang/Object;
16076 + if-eqz v15, :cond_2aa
16078 + const/4 v2, 0x0
16080 + aget-object v2, v15, v2
16082 + check-cast v2, [B
16084 + check-cast v2, [B
16086 + move-object v12, v2
16088 + :goto_256
16089 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16091 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16093 + move-result-wide v4
16095 + cmp-long v2, v2, v4
16097 + if-eqz v2, :cond_270
16099 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
16101 + move-result-object v2
16103 + check-cast v2, Landroid/content/Intent;
16105 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16107 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16109 + move-result-wide v2
16111 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16113 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16115 + :cond_270
16116 + if-eqz v8, :cond_2ac
16118 + :try_start_272
16119 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16121 + move-result v2
16123 + if-eqz v2, :cond_2ac
16125 + const-string v16, "[empty]"
16127 + const/4 v2, 0x1
16129 + new-array v14, v2, [Ljava/lang/Object;
16131 + const/4 v2, 0x0
16133 + const/16 v3, 0x10
16135 + new-array v3, v3, [B
16137 + fill-array-data v3, :array_35c
16139 + aput-object v3, v14, v2
16141 + const-string/jumbo v2, "pdus"
16143 + move-object/from16 v0, p2
16145 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16147 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16149 + const/4 v5, 0x1
16151 + const-string/jumbo v6, "mms"
16153 + const/4 v7, 0x0
16155 + move-object/from16 v3, p0
16157 + move/from16 v4, p1
16159 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16160 + :try_end_29d
16161 + .catch Ljava/lang/Exception; {:try_start_272 .. :try_end_29d} :catch_2ef
16163 + :cond_29d
16164 + :goto_29d
16165 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16167 + const/4 v3, 0x1
16169 + if-le v2, v3, :cond_2fa
16171 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16173 + add-int/lit8 v2, v2, -0x1
16175 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16177 + goto/16 :goto_75
16179 + :cond_2aa
16180 + const/4 v12, 0x0
16182 + goto :goto_256
16184 + :cond_2ac
16185 + :try_start_2ac
16186 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16188 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16190 + move-result-wide v4
16192 + cmp-long v2, v2, v4
16194 + if-nez v2, :cond_29d
16196 + const-string/jumbo v2, "pdus"
16198 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16200 + const-string/jumbo v4, "pdus"
16202 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16204 + move-result-object v3
16206 + move-object/from16 v0, p2
16208 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16210 + const-string/jumbo v2, "pdus"
16212 + move-object/from16 v0, p2
16214 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16216 + move-result-object v2
16218 + check-cast v2, [Ljava/lang/Object;
16220 + move-object v0, v2
16222 + check-cast v0, [Ljava/lang/Object;
16224 + move-object v15, v0
16226 + if-eqz v15, :cond_2f8
16228 + const/4 v2, 0x0
16230 + aget-object v2, v15, v2
16232 + check-cast v2, [B
16234 + check-cast v2, [B
16236 + move-object v12, v2
16238 + :goto_2e0
16239 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16241 + const/4 v5, 0x0
16243 + const-string/jumbo v6, "mms"
16245 + const/4 v7, 0x0
16247 + move-object/from16 v3, p0
16249 + move/from16 v4, p1
16251 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16252 + :try_end_2ee
16253 + .catch Ljava/lang/Exception; {:try_start_2ac .. :try_end_2ee} :catch_2ef
16255 + goto :goto_29d
16257 + :catch_2ef
16258 + move-exception v13
16260 + const-string v2, "PrivacyActivityManagerService"
16262 + const-string v3, "failed to enforce intent broadcast permission"
16264 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16266 + goto :goto_29d
16268 + :cond_2f8
16269 + const/4 v12, 0x0
16271 + goto :goto_2e0
16273 + :cond_2fa
16274 + const/4 v2, 0x0
16276 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16278 + goto/16 :goto_75
16280 + :cond_2ff
16281 + const-string v2, "android.intent.action.BOOT_COMPLETED"
16283 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16285 + move-result v2
16287 + if-eqz v2, :cond_30e
16289 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16291 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
16293 + goto/16 :goto_75
16295 + :cond_30e
16296 + const-string v2, "android.intent.action.PACKAGE_ADDED"
16298 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16300 + move-result v2
16302 + if-eqz v2, :cond_75
16304 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16306 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16308 + move-result-wide v4
16310 + cmp-long v2, v2, v4
16312 + if-eqz v2, :cond_75
16314 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16316 + move-result-wide v2
16318 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16320 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
16322 + move-result-object v2
16324 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
16326 + move-result-object v10
16328 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
16330 + move-result-object v2
16332 + const-string v3, "android.intent.extra.UID"
16334 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
16336 + move-result v11
16338 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16340 + invoke-virtual {v2, v10, v11}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16342 + move-result-object v8
16344 + if-eqz v8, :cond_75
16346 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
16348 + move-result v2
16350 + if-eq v2, v11, :cond_75
16352 + invoke-virtual {v8, v11}, Landroid/privacy/PrivacySettings;->setUid(I)V
16354 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16356 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16358 + goto/16 :goto_75
16360 + :array_350
16361 + .array-data 0x1
16362 + 0x0t
16363 + 0x20t
16364 + 0x1t
16365 + 0x81t
16366 + 0xf0t
16367 + 0x0t
16368 + 0x0t
16369 + 0x11t
16370 + 0x90t
16371 + 0x1t
16372 + 0x30t
16373 + 0x22t
16374 + 0x22t
16375 + 0x80t
16376 + 0x1t
16377 + 0x20t
16378 + .end array-data
16380 + :array_35c
16381 + .array-data 0x1
16382 + 0x0t
16383 + 0x20t
16384 + 0x1t
16385 + 0x81t
16386 + 0xf0t
16387 + 0x0t
16388 + 0x0t
16389 + 0x11t
16390 + 0x90t
16391 + 0x1t
16392 + 0x30t
16393 + 0x22t
16394 + 0x22t
16395 + 0x80t
16396 + 0x1t
16397 + 0x20t
16398 + .end array-data
16399 +.end method
16401 +.method private static hashCode(Landroid/content/Intent;)J
16402 + .registers 7
16404 + const-wide/16 v3, 0x0
16406 + const-string/jumbo v2, "privacy_hash"
16408 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
16410 + move-result-wide v0
16412 + cmp-long v2, v0, v3
16414 + if-nez v2, :cond_1e
16416 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
16418 + move-result v2
16420 + int-to-long v2, v2
16422 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
16424 + move-result-wide v4
16426 + add-long v0, v2, v4
16428 + const-string/jumbo v2, "privacy_hash"
16430 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
16432 + :cond_1e
16433 + return-wide v0
16434 +.end method
16435 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
16436 --- stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 18:00:00.000000000 -0600
16437 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-05-08 11:54:53.310752063 -0500
16438 @@ -0,0 +1,624 @@
16439 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
16440 +.super Ljava/lang/Object;
16441 +.source "PrivacyContentResolver.java"
16444 +# static fields
16445 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
16447 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
16450 +# direct methods
16451 +.method public constructor <init>()V
16452 + .registers 1
16454 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16456 + return-void
16457 +.end method
16459 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
16460 + .registers 8
16462 + new-instance v4, Ljava/lang/StringBuffer;
16464 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
16466 + if-eqz p0, :cond_2d
16468 + move-object v0, p0
16470 + array-length v3, v0
16472 + const/4 v2, 0x0
16474 + :goto_a
16475 + if-ge v2, v3, :cond_30
16477 + aget-object v1, v0, v2
16479 + new-instance v5, Ljava/lang/StringBuilder;
16481 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
16483 + const-string v6, "["
16485 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16487 + move-result-object v5
16489 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16491 + move-result-object v5
16493 + const-string v6, "]"
16495 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16497 + move-result-object v5
16499 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
16501 + move-result-object v5
16503 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
16505 + add-int/lit8 v2, v2, 0x1
16507 + goto :goto_a
16509 + :cond_2d
16510 + const-string v5, ""
16512 + :goto_2f
16513 + return-object v5
16515 + :cond_30
16516 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
16518 + move-result-object v5
16520 + goto :goto_2f
16521 +.end method
16523 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
16524 + .registers 21
16525 + .annotation system Ldalvik/annotation/Throws;
16526 + value = {
16527 + Landroid/os/RemoteException;
16529 + .end annotation
16531 + if-eqz p0, :cond_1e4
16533 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16535 + if-nez v1, :cond_13
16537 + const-string/jumbo v1, "privacy"
16539 + move-object/from16 v0, p2
16541 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
16543 + move-result-object v1
16545 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
16547 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16549 + :cond_13
16550 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
16552 + move-result-object v2
16554 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
16556 + move-result v3
16558 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16560 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16562 + move-result-object v7
16564 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16566 + move-result-object v9
16568 + const-string v15, "[real]"
16570 + move-object/from16 v13, p3
16572 + if-eqz v9, :cond_54
16574 + const-string v1, "contacts"
16576 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16578 + move-result v1
16580 + if-nez v1, :cond_3b
16582 + const-string v1, "com.android.contacts"
16584 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16586 + move-result v1
16588 + if-eqz v1, :cond_ab
16590 + :cond_3b
16591 + if-eqz v7, :cond_54
16593 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16595 + move-result v1
16597 + const/4 v4, 0x1
16599 + if-ne v1, v4, :cond_55
16601 + const-string v15, "[empty]"
16603 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16605 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16607 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16609 + const/4 v4, 0x1
16611 + const-string v5, "contacts"
16613 + const/4 v6, 0x0
16615 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16617 + :cond_54
16618 + :goto_54
16619 + return-object v13
16621 + :cond_55
16622 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16624 + move-result v1
16626 + const/4 v4, 0x2
16628 + if-ne v1, v4, :cond_a1
16630 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
16632 + move-result-object v1
16634 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
16636 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
16638 + move-result-object v4
16640 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
16642 + move-result v1
16644 + if-eqz v1, :cond_a1
16646 + const/4 v11, 0x0
16648 + if-eqz p1, :cond_82
16650 + move-object/from16 v8, p1
16652 + array-length v12, v8
16654 + const/4 v10, 0x0
16656 + :goto_73
16657 + if-ge v10, v12, :cond_82
16659 + aget-object v16, v8, v10
16661 + const-string v1, "_id"
16663 + move-object/from16 v0, v16
16665 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16667 + move-result v1
16669 + if-eqz v1, :cond_93
16671 + const/4 v11, 0x1
16673 + :cond_82
16674 + if-nez v11, :cond_96
16676 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16678 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16680 + :goto_89
16681 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16683 + const/4 v4, 0x2
16685 + const-string v5, "contacts"
16687 + const/4 v6, 0x0
16689 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16691 + goto :goto_54
16693 + :cond_93
16694 + add-int/lit8 v10, v10, 0x1
16696 + goto :goto_73
16698 + :cond_96
16699 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
16701 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
16703 + move-result-object v1
16705 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
16707 + move-object v13, v14
16709 + goto :goto_89
16711 + :cond_a1
16712 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16714 + const/4 v4, 0x0
16716 + const-string v5, "contacts"
16718 + const/4 v6, 0x0
16720 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16722 + goto :goto_54
16724 + :cond_ab
16725 + const-string v1, "com.android.calendar"
16727 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16729 + move-result v1
16731 + if-eqz v1, :cond_d8
16733 + if-eqz v7, :cond_cd
16735 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
16737 + move-result v1
16739 + const/4 v4, 0x1
16741 + if-ne v1, v4, :cond_cd
16743 + const-string v15, "[empty]"
16745 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16747 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16749 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16751 + const/4 v4, 0x1
16753 + const-string v5, "calendar"
16755 + const/4 v6, 0x0
16757 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16759 + goto :goto_54
16761 + :cond_cd
16762 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16764 + const/4 v4, 0x0
16766 + const-string v5, "calendar"
16768 + const/4 v6, 0x0
16770 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16772 + goto/16 :goto_54
16774 + :cond_d8
16775 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
16777 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16779 + move-result-object v1
16781 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16783 + move-result v1
16785 + if-eqz v1, :cond_10c
16787 + if-eqz v7, :cond_100
16789 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16791 + move-result v1
16793 + const/4 v4, 0x1
16795 + if-ne v1, v4, :cond_100
16797 + const-string v15, "[empty]"
16799 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16801 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16803 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16805 + const/4 v4, 0x1
16807 + const-string/jumbo v5, "mms"
16809 + const/4 v6, 0x0
16811 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16813 + goto/16 :goto_54
16815 + :cond_100
16816 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16818 + const/4 v4, 0x0
16820 + const-string/jumbo v5, "mms"
16822 + const/4 v6, 0x0
16824 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16826 + goto/16 :goto_54
16828 + :cond_10c
16829 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
16831 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16833 + move-result-object v1
16835 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16837 + move-result v1
16839 + if-eqz v1, :cond_140
16841 + if-eqz v7, :cond_134
16843 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16845 + move-result v1
16847 + const/4 v4, 0x1
16849 + if-ne v1, v4, :cond_134
16851 + const-string v15, "[empty]"
16853 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16855 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16857 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16859 + const/4 v4, 0x1
16861 + const-string/jumbo v5, "sms"
16863 + const/4 v6, 0x0
16865 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16867 + goto/16 :goto_54
16869 + :cond_134
16870 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16872 + const/4 v4, 0x0
16874 + const-string/jumbo v5, "sms"
16876 + const/4 v6, 0x0
16878 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16880 + goto/16 :goto_54
16882 + :cond_140
16883 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
16885 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16887 + move-result-object v1
16889 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16891 + move-result v1
16893 + if-nez v1, :cond_155
16895 + const-string/jumbo v1, "mms-sms-v2"
16897 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16899 + move-result v1
16901 + if-eqz v1, :cond_184
16903 + :cond_155
16904 + if-eqz v7, :cond_178
16906 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16908 + move-result v1
16910 + const/4 v4, 0x1
16912 + if-eq v1, v4, :cond_165
16914 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16916 + move-result v1
16918 + const/4 v4, 0x1
16920 + if-ne v1, v4, :cond_178
16922 + :cond_165
16923 + const-string v15, "[empty]"
16925 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16927 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16929 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16931 + const/4 v4, 0x1
16933 + const-string/jumbo v5, "mmsSms"
16935 + const/4 v6, 0x0
16937 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16939 + goto/16 :goto_54
16941 + :cond_178
16942 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16944 + const/4 v4, 0x0
16946 + const-string/jumbo v5, "mmsSms"
16948 + const/4 v6, 0x0
16950 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16952 + goto/16 :goto_54
16954 + :cond_184
16955 + const-string v1, "call_log"
16957 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16959 + move-result v1
16961 + if-eqz v1, :cond_1b2
16963 + if-eqz v7, :cond_1a7
16965 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
16967 + move-result v1
16969 + const/4 v4, 0x1
16971 + if-ne v1, v4, :cond_1a7
16973 + const-string v15, "[empty]"
16975 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16977 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16979 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16981 + const/4 v4, 0x1
16983 + const-string v5, "callLog"
16985 + const/4 v6, 0x0
16987 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16989 + goto/16 :goto_54
16991 + :cond_1a7
16992 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16994 + const/4 v4, 0x0
16996 + const-string v5, "callLog"
16998 + const/4 v6, 0x0
17000 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17002 + goto/16 :goto_54
17004 + :cond_1b2
17005 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
17007 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
17009 + move-result-object v1
17011 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17013 + move-result v1
17015 + if-eqz v1, :cond_54
17017 + if-eqz v7, :cond_1d9
17019 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
17021 + move-result v1
17023 + const/4 v4, 0x1
17025 + if-ne v1, v4, :cond_1d9
17027 + const-string v15, "[empty]"
17029 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17031 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17033 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17035 + const/4 v4, 0x1
17037 + const-string v5, "bookmarks"
17039 + const/4 v6, 0x0
17041 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17043 + goto/16 :goto_54
17045 + :cond_1d9
17046 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17048 + const/4 v4, 0x0
17050 + const-string v5, "bookmarks"
17052 + const/4 v6, 0x0
17054 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17056 + goto/16 :goto_54
17058 + :cond_1e4
17059 + move-object/from16 v13, p3
17061 + goto/16 :goto_54
17062 +.end method
17063 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali
17064 --- stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 18:00:00.000000000 -0600
17065 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-05-08 11:54:53.310752063 -0500
17066 @@ -0,0 +1,1225 @@
17067 +.class public Landroid/privacy/surrogate/PrivacyCursor;
17068 +.super Ljava/lang/Object;
17069 +.source "PrivacyCursor.java"
17071 +# interfaces
17072 +.implements Landroid/database/Cursor;
17075 +# static fields
17076 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
17079 +# instance fields
17080 +.field private allowedIdMapping:[I
17082 +.field private allowedIds:[I
17084 +.field private realCursor:Landroid/database/Cursor;
17087 +# direct methods
17088 +.method public constructor <init>()V
17089 + .registers 1
17091 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17093 + return-void
17094 +.end method
17096 +.method public constructor <init>(Landroid/database/Cursor;[I)V
17097 + .registers 7
17099 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17101 + if-eqz p2, :cond_8
17103 + array-length v2, p2
17105 + if-nez v2, :cond_9
17107 + :cond_8
17108 + const/4 p1, 0x0
17110 + :cond_9
17111 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17113 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17115 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17117 + if-eqz v2, :cond_3f
17119 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17121 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
17123 + move-result v0
17125 + array-length v2, p2
17127 + new-array v2, v2, [I
17129 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17131 + const/4 v1, 0x0
17133 + :cond_1d
17134 + :goto_1d
17135 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17137 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
17139 + move-result v2
17141 + if-eqz v2, :cond_3a
17143 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17145 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17147 + move-result v2
17149 + if-eqz v2, :cond_1d
17151 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17153 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17155 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17157 + move-result v3
17159 + aput v3, v2, v1
17161 + add-int/lit8 v1, v1, 0x1
17163 + goto :goto_1d
17165 + :cond_3a
17166 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17168 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
17170 + :cond_3f
17171 + return-void
17172 +.end method
17174 +.method private getContactId(Landroid/database/Cursor;)I
17175 + .registers 5
17177 + const-string v2, "_id"
17179 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17181 + move-result v0
17183 + const/4 v1, -0x1
17185 + const/4 v2, -0x1
17187 + if-eq v0, v2, :cond_e
17189 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
17191 + move-result v1
17193 + :cond_e
17194 + return v1
17195 +.end method
17197 +.method private getMappedPos(I)I
17198 + .registers 4
17200 + const/4 v0, 0x0
17202 + :goto_1
17203 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17205 + array-length v1, v1
17207 + if-ge v0, v1, :cond_10
17209 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17211 + aget v1, v1, v0
17213 + if-ne v1, p1, :cond_d
17215 + :goto_c
17216 + return v0
17218 + :cond_d
17219 + add-int/lit8 v0, v0, 0x1
17221 + goto :goto_1
17223 + :cond_10
17224 + const/4 v0, -0x1
17226 + goto :goto_c
17227 +.end method
17229 +.method private isAllowed(I)Z
17230 + .registers 7
17232 + const/4 v4, 0x0
17234 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17236 + array-length v3, v0
17238 + const/4 v2, 0x0
17240 + :goto_5
17241 + if-ge v2, v3, :cond_c
17243 + aget v1, v0, v2
17245 + if-ne p1, v1, :cond_d
17247 + const/4 v4, 0x1
17249 + :cond_c
17250 + return v4
17252 + :cond_d
17253 + add-int/lit8 v2, v2, 0x1
17255 + goto :goto_5
17256 +.end method
17258 +.method private isAllowed(Landroid/database/Cursor;)Z
17259 + .registers 3
17261 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
17263 + move-result v0
17265 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
17267 + move-result v0
17269 + return v0
17270 +.end method
17273 +# virtual methods
17274 +.method public close()V
17275 + .registers 2
17277 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17279 + if-eqz v0, :cond_9
17281 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17283 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
17285 + :cond_9
17286 + return-void
17287 +.end method
17289 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17290 + .registers 4
17292 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17294 + if-eqz v0, :cond_9
17296 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17298 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17300 + :cond_9
17301 + return-void
17302 +.end method
17304 +.method public deactivate()V
17305 + .registers 2
17307 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17309 + if-eqz v0, :cond_9
17311 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17313 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
17315 + :cond_9
17316 + return-void
17317 +.end method
17319 +.method public getBlob(I)[B
17320 + .registers 3
17322 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17324 + if-eqz v0, :cond_b
17326 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17328 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
17330 + move-result-object v0
17332 + :goto_a
17333 + return-object v0
17335 + :cond_b
17336 + const/4 v0, 0x0
17338 + new-array v0, v0, [B
17340 + goto :goto_a
17341 +.end method
17343 +.method public getColumnCount()I
17344 + .registers 2
17346 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17348 + if-eqz v0, :cond_b
17350 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17352 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
17354 + move-result v0
17356 + :goto_a
17357 + return v0
17359 + :cond_b
17360 + const/4 v0, 0x0
17362 + goto :goto_a
17363 +.end method
17365 +.method public getColumnIndex(Ljava/lang/String;)I
17366 + .registers 3
17368 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17370 + if-eqz v0, :cond_b
17372 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17374 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17376 + move-result v0
17378 + :goto_a
17379 + return v0
17381 + :cond_b
17382 + const/4 v0, -0x1
17384 + goto :goto_a
17385 +.end method
17387 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
17388 + .registers 3
17389 + .annotation system Ldalvik/annotation/Throws;
17390 + value = {
17391 + Ljava/lang/IllegalArgumentException;
17393 + .end annotation
17395 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17397 + if-eqz v0, :cond_b
17399 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17401 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
17403 + move-result v0
17405 + :goto_a
17406 + return v0
17408 + :cond_b
17409 + const/4 v0, -0x1
17411 + goto :goto_a
17412 +.end method
17414 +.method public getColumnName(I)Ljava/lang/String;
17415 + .registers 3
17417 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17419 + if-eqz v0, :cond_b
17421 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17423 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
17425 + move-result-object v0
17427 + :goto_a
17428 + return-object v0
17430 + :cond_b
17431 + const-string v0, ""
17433 + goto :goto_a
17434 +.end method
17436 +.method public getColumnNames()[Ljava/lang/String;
17437 + .registers 4
17439 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17441 + if-eqz v0, :cond_b
17443 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17445 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnNames()[Ljava/lang/String;
17447 + move-result-object v0
17449 + :goto_a
17450 + return-object v0
17452 + :cond_b
17453 + const/4 v0, 0x1
17455 + new-array v0, v0, [Ljava/lang/String;
17457 + const/4 v1, 0x0
17459 + const-string v2, ""
17461 + aput-object v2, v0, v1
17463 + goto :goto_a
17464 +.end method
17466 +.method public getCount()I
17467 + .registers 4
17469 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17471 + if-eqz v0, :cond_23
17473 + const-string v0, "PrivacyCursor"
17475 + new-instance v1, Ljava/lang/StringBuilder;
17477 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17479 + const-string v2, "getCount: "
17481 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17483 + move-result-object v1
17485 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17487 + array-length v2, v2
17489 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17491 + move-result-object v1
17493 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17495 + move-result-object v1
17497 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17499 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17501 + array-length v0, v0
17503 + :goto_22
17504 + return v0
17506 + :cond_23
17507 + const/4 v0, 0x0
17509 + goto :goto_22
17510 +.end method
17512 +.method public getDouble(I)D
17513 + .registers 4
17515 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17517 + if-eqz v0, :cond_b
17519 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17521 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
17523 + move-result-wide v0
17525 + :goto_a
17526 + return-wide v0
17528 + :cond_b
17529 + const-wide/16 v0, 0x0
17531 + goto :goto_a
17532 +.end method
17534 +.method public getExtras()Landroid/os/Bundle;
17535 + .registers 2
17537 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17539 + if-eqz v0, :cond_b
17541 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17543 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
17545 + move-result-object v0
17547 + :goto_a
17548 + return-object v0
17550 + :cond_b
17551 + new-instance v0, Landroid/os/Bundle;
17553 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
17555 + goto :goto_a
17556 +.end method
17558 +.method public getFloat(I)F
17559 + .registers 3
17561 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17563 + if-eqz v0, :cond_b
17565 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17567 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
17569 + move-result v0
17571 + :goto_a
17572 + return v0
17574 + :cond_b
17575 + const/4 v0, 0x0
17577 + goto :goto_a
17578 +.end method
17580 +.method public getInt(I)I
17581 + .registers 4
17583 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17585 + if-eqz v1, :cond_b
17587 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17589 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
17591 + move-result v0
17593 + :goto_a
17594 + return v0
17596 + :cond_b
17597 + const/4 v0, 0x0
17599 + goto :goto_a
17600 +.end method
17602 +.method public getLong(I)J
17603 + .registers 4
17605 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17607 + if-eqz v0, :cond_b
17609 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17611 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
17613 + move-result-wide v0
17615 + :goto_a
17616 + return-wide v0
17618 + :cond_b
17619 + const-wide/16 v0, 0x0
17621 + goto :goto_a
17622 +.end method
17624 +.method public getPosition()I
17625 + .registers 5
17627 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17629 + if-eqz v1, :cond_37
17631 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17633 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17635 + move-result v1
17637 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17639 + move-result v0
17641 + const-string v1, "PrivacyCursor"
17643 + new-instance v2, Ljava/lang/StringBuilder;
17645 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
17647 + const-string v3, "getPosition - mapped position: "
17649 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17651 + move-result-object v2
17653 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17655 + move-result-object v2
17657 + const-string v3, " real position: "
17659 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17661 + move-result-object v2
17663 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17665 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17667 + move-result v3
17669 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17671 + move-result-object v2
17673 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17675 + move-result-object v2
17677 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17679 + :goto_36
17680 + return v0
17682 + :cond_37
17683 + const/4 v0, -0x1
17685 + goto :goto_36
17686 +.end method
17688 +.method public getShort(I)S
17689 + .registers 3
17691 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17693 + if-eqz v0, :cond_b
17695 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17697 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
17699 + move-result v0
17701 + :goto_a
17702 + return v0
17704 + :cond_b
17705 + const/4 v0, 0x0
17707 + goto :goto_a
17708 +.end method
17710 +.method public getString(I)Ljava/lang/String;
17711 + .registers 3
17713 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17715 + if-eqz v0, :cond_b
17717 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17719 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
17721 + move-result-object v0
17723 + :goto_a
17724 + return-object v0
17726 + :cond_b
17727 + const-string v0, ""
17729 + goto :goto_a
17730 +.end method
17732 +.method public getType(I)I
17733 + .registers 3
17735 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17737 + if-eqz v0, :cond_b
17739 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17741 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
17743 + move-result v0
17745 + :goto_a
17746 + return v0
17748 + :cond_b
17749 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17751 + const/4 v0, 0x0
17753 + goto :goto_a
17754 +.end method
17756 +.method public getWantsAllOnMoveCalls()Z
17757 + .registers 2
17759 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17761 + if-eqz v0, :cond_b
17763 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17765 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
17767 + move-result v0
17769 + :goto_a
17770 + return v0
17772 + :cond_b
17773 + const/4 v0, 0x0
17775 + goto :goto_a
17776 +.end method
17778 +.method public isAfterLast()Z
17779 + .registers 2
17781 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17783 + if-eqz v0, :cond_b
17785 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17787 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
17789 + move-result v0
17791 + :goto_a
17792 + return v0
17794 + :cond_b
17795 + const/4 v0, 0x0
17797 + goto :goto_a
17798 +.end method
17800 +.method public isBeforeFirst()Z
17801 + .registers 2
17803 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17805 + if-eqz v0, :cond_b
17807 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17809 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
17811 + move-result v0
17813 + :goto_a
17814 + return v0
17816 + :cond_b
17817 + const/4 v0, 0x0
17819 + goto :goto_a
17820 +.end method
17822 +.method public isClosed()Z
17823 + .registers 2
17825 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17827 + if-eqz v0, :cond_b
17829 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17831 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
17833 + move-result v0
17835 + :goto_a
17836 + return v0
17838 + :cond_b
17839 + const/4 v0, 0x0
17841 + goto :goto_a
17842 +.end method
17844 +.method public isFirst()Z
17845 + .registers 4
17847 + const/4 v0, 0x0
17849 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17851 + if-eqz v1, :cond_12
17853 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17855 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17857 + move-result v1
17859 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17861 + aget v2, v2, v0
17863 + if-ne v1, v2, :cond_12
17865 + const/4 v0, 0x1
17867 + :cond_12
17868 + return v0
17869 +.end method
17871 +.method public isLast()Z
17872 + .registers 4
17874 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17876 + if-eqz v0, :cond_17
17878 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17880 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
17882 + move-result v0
17884 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17886 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17888 + array-length v2, v2
17890 + add-int/lit8 v2, v2, -0x1
17892 + aget v1, v1, v2
17894 + if-ne v0, v1, :cond_17
17896 + const/4 v0, 0x1
17898 + :goto_16
17899 + return v0
17901 + :cond_17
17902 + const/4 v0, 0x0
17904 + goto :goto_16
17905 +.end method
17907 +.method public isNull(I)Z
17908 + .registers 3
17910 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17912 + if-eqz v0, :cond_b
17914 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17916 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
17918 + move-result v0
17920 + :goto_a
17921 + return v0
17923 + :cond_b
17924 + const/4 v0, 0x0
17926 + goto :goto_a
17927 +.end method
17929 +.method public move(I)Z
17930 + .registers 8
17932 + const/4 v2, 0x0
17934 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17936 + if-eqz v3, :cond_33
17938 + const-string v3, "PrivacyCursor"
17940 + new-instance v4, Ljava/lang/StringBuilder;
17942 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
17944 + const-string/jumbo v5, "move - offset: "
17946 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17948 + move-result-object v4
17950 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17952 + move-result-object v4
17954 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17956 + move-result-object v4
17958 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17960 + :try_start_1e
17961 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17963 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17965 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
17967 + move-result v4
17969 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17971 + move-result v4
17973 + add-int/2addr v4, p1
17975 + aget v1, v3, v4
17977 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17979 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
17980 + :try_end_32
17981 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_1e .. :try_end_32} :catch_34
17983 + move-result v2
17985 + :cond_33
17986 + :goto_33
17987 + return v2
17989 + :catch_34
17990 + move-exception v0
17992 + goto :goto_33
17993 +.end method
17995 +.method public moveToFirst()Z
17996 + .registers 4
17998 + const/4 v0, 0x0
18000 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18002 + if-eqz v1, :cond_f
18004 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18006 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18008 + aget v2, v2, v0
18010 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18012 + move-result v0
18014 + :cond_f
18015 + return v0
18016 +.end method
18018 +.method public moveToLast()Z
18019 + .registers 5
18021 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18023 + if-eqz v1, :cond_14
18025 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18027 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18029 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18031 + array-length v3, v3
18033 + add-int/lit8 v3, v3, -0x1
18035 + aget v2, v2, v3
18037 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18039 + move-result v0
18041 + :goto_13
18042 + return v0
18044 + :cond_14
18045 + const/4 v0, 0x0
18047 + goto :goto_13
18048 +.end method
18050 +.method public moveToNext()Z
18051 + .registers 3
18053 + const/4 v0, 0x0
18055 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18057 + if-eqz v1, :cond_d
18059 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18061 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18063 + move-result v1
18065 + if-nez v1, :cond_e
18067 + :cond_d
18068 + return v0
18070 + :cond_e
18071 + const/4 v0, 0x1
18073 + :goto_f
18074 + const/4 v1, 0x1
18076 + if-ne v0, v1, :cond_d
18078 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18080 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18082 + move-result v1
18084 + if-nez v1, :cond_d
18086 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18088 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18090 + move-result v0
18092 + goto :goto_f
18093 +.end method
18095 +.method public moveToPosition(I)Z
18096 + .registers 6
18098 + const/4 v1, 0x0
18100 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18102 + if-eqz v2, :cond_f
18104 + :try_start_5
18105 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18107 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18109 + aget v3, v3, p1
18111 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
18112 + :try_end_e
18113 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_5 .. :try_end_e} :catch_10
18115 + move-result v1
18117 + :cond_f
18118 + :goto_f
18119 + return v1
18121 + :catch_10
18122 + move-exception v0
18124 + goto :goto_f
18125 +.end method
18127 +.method public moveToPrevious()Z
18128 + .registers 3
18130 + const/4 v0, 0x0
18132 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18134 + if-eqz v1, :cond_d
18136 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18138 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18140 + move-result v1
18142 + if-nez v1, :cond_e
18144 + :cond_d
18145 + return v0
18147 + :cond_e
18148 + const/4 v0, 0x1
18150 + :goto_f
18151 + const/4 v1, 0x1
18153 + if-ne v0, v1, :cond_d
18155 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18157 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18159 + move-result v1
18161 + if-nez v1, :cond_d
18163 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18165 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18167 + move-result v0
18169 + goto :goto_f
18170 +.end method
18172 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
18173 + .registers 3
18175 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18177 + if-eqz v0, :cond_9
18179 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18181 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
18183 + :cond_9
18184 + return-void
18185 +.end method
18187 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
18188 + .registers 3
18190 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18192 + if-eqz v0, :cond_9
18194 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18196 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
18198 + :cond_9
18199 + return-void
18200 +.end method
18202 +.method public requery()Z
18203 + .registers 2
18205 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18207 + if-eqz v0, :cond_b
18209 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18211 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
18213 + move-result v0
18215 + :goto_a
18216 + return v0
18218 + :cond_b
18219 + const/4 v0, 0x0
18221 + goto :goto_a
18222 +.end method
18224 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18225 + .registers 3
18227 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18229 + if-eqz v0, :cond_b
18231 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18233 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18235 + move-result-object v0
18237 + :goto_a
18238 + return-object v0
18240 + :cond_b
18241 + new-instance v0, Landroid/os/Bundle;
18243 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
18245 + goto :goto_a
18246 +.end method
18248 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18249 + .registers 4
18251 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18253 + if-eqz v0, :cond_9
18255 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18257 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18259 + :cond_9
18260 + return-void
18261 +.end method
18263 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
18264 + .registers 3
18266 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18268 + if-eqz v0, :cond_9
18270 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18272 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
18274 + :cond_9
18275 + return-void
18276 +.end method
18278 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18279 + .registers 3
18281 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18283 + if-eqz v0, :cond_9
18285 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18287 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18289 + :cond_9
18290 + return-void
18291 +.end method
18292 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
18293 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 18:00:00.000000000 -0600
18294 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-05-08 11:54:53.310752063 -0500
18295 @@ -0,0 +1,134 @@
18296 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18297 +.super Ljava/lang/Thread;
18298 +.source "PrivacyLocationManager.java"
18301 +# annotations
18302 +.annotation system Ldalvik/annotation/EnclosingClass;
18303 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
18304 +.end annotation
18306 +.annotation system Ldalvik/annotation/InnerClass;
18307 + accessFlags = 0x2
18308 + name = "PrivacyLocationUpdater"
18309 +.end annotation
18312 +# instance fields
18313 +.field private intent:Landroid/app/PendingIntent;
18315 +.field private latitude:D
18317 +.field private listener:Landroid/location/LocationListener;
18319 +.field private longitude:D
18321 +.field private provider:Ljava/lang/String;
18323 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18326 +# direct methods
18327 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18328 + .registers 9
18330 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18332 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
18334 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18336 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18338 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18340 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18342 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18344 + return-void
18345 +.end method
18348 +# virtual methods
18349 +.method public run()V
18350 + .registers 8
18352 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18354 + if-eqz v3, :cond_43
18356 + new-instance v2, Landroid/location/Location;
18358 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18360 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
18362 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18364 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
18366 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18368 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
18370 + const/4 v1, 0x0
18372 + :goto_16
18373 + const/4 v3, 0x5
18375 + if-ge v1, v3, :cond_43
18377 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18379 + if-eqz v3, :cond_34
18381 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18383 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
18385 + :cond_22
18386 + :goto_22
18387 + :try_start_22
18388 + invoke-static {}, Ljava/lang/Math;->random()D
18390 + move-result-wide v3
18392 + const-wide v5, 0x408f400000000000L
18394 + mul-double/2addr v3, v5
18396 + double-to-int v3, v3
18398 + int-to-long v3, v3
18400 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
18401 + :try_end_31
18402 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
18404 + :goto_31
18405 + add-int/lit8 v1, v1, 0x1
18407 + goto :goto_16
18409 + :cond_34
18410 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18412 + if-eqz v3, :cond_22
18414 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18416 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
18418 + goto :goto_22
18420 + :catch_3e
18421 + move-exception v0
18423 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
18425 + goto :goto_31
18427 + :cond_43
18428 + return-void
18429 +.end method
18430 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
18431 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 18:00:00.000000000 -0600
18432 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-05-08 11:54:53.314752087 -0500
18433 @@ -0,0 +1,2091 @@
18434 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
18435 +.super Landroid/location/LocationManager;
18436 +.source "PrivacyLocationManager.java"
18439 +# annotations
18440 +.annotation system Ldalvik/annotation/MemberClasses;
18441 + value = {
18442 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18444 +.end annotation
18447 +# static fields
18448 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
18450 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
18453 +# instance fields
18454 +.field private context:Landroid/content/Context;
18456 +.field private lock:Ljava/lang/Object;
18458 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
18461 +# direct methods
18462 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
18463 + .registers 5
18465 + invoke-direct {p0, p1}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
18467 + new-instance v0, Ljava/lang/Object;
18469 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
18471 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18473 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18475 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
18477 + const-string/jumbo v1, "privacy"
18479 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
18481 + move-result-object v1
18483 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
18485 + move-result-object v1
18487 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
18489 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18491 + return-void
18492 +.end method
18494 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18495 + .registers 7
18497 + const/4 v2, 0x3
18499 + if-nez p1, :cond_5
18501 + const/4 v0, 0x0
18503 + :goto_4
18504 + return v0
18506 + :cond_5
18507 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
18509 + move-result v0
18511 + const/4 v1, 0x1
18513 + if-eq v0, v1, :cond_24
18515 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
18517 + move-result v0
18519 + if-eq v0, v2, :cond_24
18521 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
18523 + move-result v0
18525 + if-eq v0, v2, :cond_24
18527 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
18529 + move-result v0
18531 + if-eq v0, v2, :cond_24
18533 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
18535 + move-result v0
18537 + if-ne v0, v2, :cond_2b
18539 + :cond_24
18540 + const-string v0, "gps"
18542 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18544 + move-result v0
18546 + goto :goto_4
18548 + :cond_2b
18549 + const-string/jumbo v0, "network"
18551 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18553 + move-result v0
18555 + goto :goto_4
18556 +.end method
18558 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18559 + .registers 24
18561 + move-object/from16 v0, p0
18563 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18565 + move-object/from16 v19, v0
18567 + monitor-enter v19
18569 + :try_start_7
18570 + move-object/from16 v0, p0
18572 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18574 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
18576 + move-result-object v2
18578 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
18580 + move-result v3
18582 + move-object/from16 v0, p0
18584 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18586 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
18588 + move-result-object v7
18590 + const/16 v18, 0x0
18592 + if-eqz v7, :cond_239
18594 + const-string v1, "gps"
18596 + move-object/from16 v0, p1
18598 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18600 + move-result v1
18602 + if-eqz v1, :cond_111
18604 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
18606 + move-result v1
18608 + packed-switch v1, :pswitch_data_25e
18610 + :cond_30
18611 + :goto_30
18612 + monitor-exit v19
18614 + return v18
18616 + :pswitch_32
18617 + move-object/from16 v0, p0
18619 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18621 + const/4 v4, 0x0
18623 + const-string v5, "locationGPS"
18625 + const/4 v6, 0x0
18627 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18629 + goto :goto_30
18631 + :catchall_3e
18632 + move-exception v1
18634 + monitor-exit v19
18635 + :try_end_40
18636 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
18638 + throw v1
18640 + :pswitch_41
18641 + if-eqz p3, :cond_46
18643 + :try_start_43
18644 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18646 + :cond_46
18647 + const/16 v18, 0x1
18649 + move-object/from16 v0, p0
18651 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18653 + const/4 v4, 0x1
18655 + const-string v5, "locationGPS"
18657 + const/4 v6, 0x0
18659 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18660 + :try_end_53
18661 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
18663 + goto :goto_30
18665 + :pswitch_54
18666 + :try_start_54
18667 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18669 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18671 + move-result-object v1
18673 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18675 + move-result-wide v13
18677 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18679 + move-result-object v1
18681 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18683 + move-result-wide v15
18685 + move-object/from16 v9, p0
18687 + move-object/from16 v10, p1
18689 + move-object/from16 v11, p2
18691 + move-object/from16 v12, p3
18693 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18695 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18696 + :try_end_74
18697 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
18698 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
18700 + const/16 v18, 0x1
18702 + :goto_76
18703 + :try_start_76
18704 + move-object/from16 v0, p0
18706 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18708 + const/4 v4, 0x2
18710 + const-string v5, "locationGPS"
18712 + new-instance v6, Ljava/lang/StringBuilder;
18714 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18716 + const-string v8, "Lat: "
18718 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18720 + move-result-object v6
18722 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18724 + move-result-object v8
18726 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18728 + move-result-object v6
18730 + const-string v8, " Lon: "
18732 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18734 + move-result-object v6
18736 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18738 + move-result-object v8
18740 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18742 + move-result-object v6
18744 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18746 + move-result-object v6
18748 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18750 + goto :goto_30
18752 + :catch_a6
18753 + move-exception v17
18755 + const-string v1, "PrivacyLocationManager"
18757 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18759 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18760 + :try_end_af
18761 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
18763 + const/16 v18, 0x1
18765 + goto :goto_76
18767 + :pswitch_b2
18768 + :try_start_b2
18769 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18771 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18773 + move-result-object v1
18775 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18777 + move-result-wide v13
18779 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18781 + move-result-object v1
18783 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18785 + move-result-wide v15
18787 + move-object/from16 v9, p0
18789 + move-object/from16 v10, p1
18791 + move-object/from16 v11, p2
18793 + move-object/from16 v12, p3
18795 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18797 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18798 + :try_end_d2
18799 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
18800 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
18802 + const/16 v18, 0x1
18804 + :goto_d4
18805 + :try_start_d4
18806 + move-object/from16 v0, p0
18808 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18810 + const/4 v4, 0x3
18812 + const-string v5, "locationGPS"
18814 + new-instance v6, Ljava/lang/StringBuilder;
18816 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18818 + const-string v8, "Lat: "
18820 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18822 + move-result-object v6
18824 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18826 + move-result-object v8
18828 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18830 + move-result-object v6
18832 + const-string v8, " Lon: "
18834 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18836 + move-result-object v6
18838 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18840 + move-result-object v8
18842 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18844 + move-result-object v6
18846 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18848 + move-result-object v6
18850 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18852 + goto/16 :goto_30
18854 + :catch_105
18855 + move-exception v17
18857 + const-string v1, "PrivacyLocationManager"
18859 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18861 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18863 + const/16 v18, 0x1
18865 + goto :goto_d4
18867 + :cond_111
18868 + const-string/jumbo v1, "network"
18870 + move-object/from16 v0, p1
18872 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18874 + move-result v1
18876 + if-eqz v1, :cond_204
18878 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
18880 + move-result v1
18882 + packed-switch v1, :pswitch_data_26a
18884 + goto/16 :goto_30
18886 + :pswitch_125
18887 + move-object/from16 v0, p0
18889 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18891 + const/4 v4, 0x0
18893 + const-string v5, "locationNetwork"
18895 + const/4 v6, 0x0
18897 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18899 + goto/16 :goto_30
18901 + :pswitch_132
18902 + if-eqz p3, :cond_137
18904 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18906 + :cond_137
18907 + const/16 v18, 0x1
18909 + move-object/from16 v0, p0
18911 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18913 + const/4 v4, 0x1
18915 + const-string v5, "locationNetwork"
18917 + const/4 v6, 0x0
18919 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18920 + :try_end_144
18921 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
18923 + goto/16 :goto_30
18925 + :pswitch_146
18926 + :try_start_146
18927 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18929 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18931 + move-result-object v1
18933 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18935 + move-result-wide v13
18937 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18939 + move-result-object v1
18941 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18943 + move-result-wide v15
18945 + move-object/from16 v9, p0
18947 + move-object/from16 v10, p1
18949 + move-object/from16 v11, p2
18951 + move-object/from16 v12, p3
18953 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18955 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18956 + :try_end_166
18957 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
18958 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
18960 + const/16 v18, 0x1
18962 + :goto_168
18963 + :try_start_168
18964 + move-object/from16 v0, p0
18966 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18968 + const/4 v4, 0x2
18970 + const-string v5, "locationNetwork"
18972 + new-instance v6, Ljava/lang/StringBuilder;
18974 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18976 + const-string v8, "Lat: "
18978 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18980 + move-result-object v6
18982 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18984 + move-result-object v8
18986 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18988 + move-result-object v6
18990 + const-string v8, " Lon: "
18992 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18994 + move-result-object v6
18996 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18998 + move-result-object v8
19000 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19002 + move-result-object v6
19004 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19006 + move-result-object v6
19008 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19010 + goto/16 :goto_30
19012 + :catch_199
19013 + move-exception v17
19015 + const-string v1, "PrivacyLocationManager"
19017 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19019 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19020 + :try_end_1a2
19021 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
19023 + const/16 v18, 0x1
19025 + goto :goto_168
19027 + :pswitch_1a5
19028 + :try_start_1a5
19029 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19031 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19033 + move-result-object v1
19035 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19037 + move-result-wide v13
19039 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19041 + move-result-object v1
19043 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19045 + move-result-wide v15
19047 + move-object/from16 v9, p0
19049 + move-object/from16 v10, p1
19051 + move-object/from16 v11, p2
19053 + move-object/from16 v12, p3
19055 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
19057 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19058 + :try_end_1c5
19059 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
19060 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
19062 + const/16 v18, 0x1
19064 + :goto_1c7
19065 + :try_start_1c7
19066 + move-object/from16 v0, p0
19068 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19070 + const/4 v4, 0x3
19072 + const-string v5, "locationNetwork"
19074 + new-instance v6, Ljava/lang/StringBuilder;
19076 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19078 + const-string v8, "Lat: "
19080 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19082 + move-result-object v6
19084 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19086 + move-result-object v8
19088 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19090 + move-result-object v6
19092 + const-string v8, " Lon: "
19094 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19096 + move-result-object v6
19098 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19100 + move-result-object v8
19102 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19104 + move-result-object v6
19106 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19108 + move-result-object v6
19110 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19112 + goto/16 :goto_30
19114 + :catch_1f8
19115 + move-exception v17
19117 + const-string v1, "PrivacyLocationManager"
19119 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19121 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19123 + const/16 v18, 0x1
19125 + goto :goto_1c7
19127 + :cond_204
19128 + const-string/jumbo v1, "passive"
19130 + move-object/from16 v0, p1
19132 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19134 + move-result v1
19136 + if-eqz v1, :cond_30
19138 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19140 + move-result v1
19142 + if-nez v1, :cond_22a
19144 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19146 + move-result v1
19148 + if-nez v1, :cond_22a
19150 + const/16 v18, 0x0
19152 + move-object/from16 v0, p0
19154 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19156 + const/4 v4, 0x0
19158 + const-string v5, "locationGPS"
19160 + const/4 v6, 0x0
19162 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19164 + goto/16 :goto_30
19166 + :cond_22a
19167 + const/16 v18, 0x1
19169 + move-object/from16 v0, p0
19171 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19173 + const/4 v4, 0x1
19175 + const-string v5, "locationGPS"
19177 + const/4 v6, 0x0
19179 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19181 + goto/16 :goto_30
19183 + :cond_239
19184 + const-string/jumbo v1, "network"
19186 + move-object/from16 v0, p1
19188 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19190 + move-result v1
19192 + if-eqz v1, :cond_251
19194 + move-object/from16 v0, p0
19196 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19198 + const/4 v4, 0x0
19200 + const-string v5, "locationNetwork"
19202 + const/4 v6, 0x0
19204 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19206 + goto/16 :goto_30
19208 + :cond_251
19209 + move-object/from16 v0, p0
19211 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19213 + const/4 v4, 0x0
19215 + const-string v5, "locationGPS"
19217 + const/4 v6, 0x0
19219 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19220 + :try_end_25c
19221 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
19223 + goto/16 :goto_30
19225 + :pswitch_data_25e
19226 + .packed-switch 0x0
19227 + :pswitch_32
19228 + :pswitch_41
19229 + :pswitch_54
19230 + :pswitch_b2
19231 + .end packed-switch
19233 + :pswitch_data_26a
19234 + .packed-switch 0x0
19235 + :pswitch_125
19236 + :pswitch_132
19237 + :pswitch_146
19238 + :pswitch_1a5
19239 + .end packed-switch
19240 +.end method
19243 +# virtual methods
19244 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19245 + .registers 10
19247 + const/4 v5, 0x0
19249 + const/4 v7, 0x0
19251 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19253 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19255 + move-result-object v1
19257 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19259 + move-result v2
19261 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19263 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19265 + move-result-object v6
19267 + if-eqz v6, :cond_24
19269 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19271 + move-result v0
19273 + if-eqz v0, :cond_24
19275 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19277 + const/4 v3, 0x1
19279 + const-string v4, "locationGPS"
19281 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19283 + move v0, v7
19285 + :goto_23
19286 + return v0
19288 + :cond_24
19289 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19291 + const-string v4, "locationGPS"
19293 + move v3, v7
19295 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19297 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19299 + move-result v0
19301 + goto :goto_23
19302 +.end method
19304 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19305 + .registers 14
19307 + const/4 v11, 0x3
19309 + const/4 v10, 0x2
19311 + const/4 v8, 0x1
19313 + const/4 v3, 0x0
19315 + const/4 v5, 0x0
19317 + if-nez p1, :cond_c
19319 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19321 + move-result-object v7
19323 + :cond_b
19324 + :goto_b
19325 + return-object v7
19327 + :cond_c
19328 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19330 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19332 + move-result-object v1
19334 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19336 + move-result v2
19338 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19340 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19342 + move-result-object v6
19344 + const/4 v7, 0x0
19346 + if-eqz v6, :cond_22c
19348 + const-string v0, "gps"
19350 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19352 + move-result v0
19354 + if-eqz v0, :cond_ff
19356 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19358 + move-result v0
19360 + packed-switch v0, :pswitch_data_29a
19362 + goto :goto_b
19364 + :pswitch_2f
19365 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19367 + move-result-object v7
19369 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19371 + const-string v4, "locationGPS"
19373 + if-eqz v7, :cond_5e
19375 + new-instance v5, Ljava/lang/StringBuilder;
19377 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19379 + const-string v8, "Lat: "
19381 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19383 + move-result-object v5
19385 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19387 + move-result-wide v8
19389 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19391 + move-result-object v5
19393 + const-string v8, " Lon: "
19395 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19397 + move-result-object v5
19399 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19401 + move-result-wide v8
19403 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19405 + move-result-object v5
19407 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19409 + move-result-object v5
19411 + :cond_5e
19412 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19414 + goto :goto_b
19416 + :pswitch_62
19417 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19419 + const-string v4, "locationGPS"
19421 + move v3, v8
19423 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19425 + goto :goto_b
19427 + :pswitch_6b
19428 + new-instance v7, Landroid/location/Location;
19430 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19432 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19434 + move-result-object v0
19436 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19438 + move-result-wide v3
19440 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19442 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19444 + move-result-object v0
19446 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19448 + move-result-wide v3
19450 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19452 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19454 + const-string v4, "locationGPS"
19456 + new-instance v3, Ljava/lang/StringBuilder;
19458 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19460 + const-string v5, "Lat: "
19462 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19464 + move-result-object v3
19466 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19468 + move-result-wide v8
19470 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19472 + move-result-object v3
19474 + const-string v5, " Lon: "
19476 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19478 + move-result-object v3
19480 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19482 + move-result-wide v8
19484 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19486 + move-result-object v3
19488 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19490 + move-result-object v5
19492 + move v3, v10
19494 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19496 + goto/16 :goto_b
19498 + :pswitch_b5
19499 + new-instance v7, Landroid/location/Location;
19501 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19503 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19505 + move-result-object v0
19507 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19509 + move-result-wide v3
19511 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19513 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19515 + move-result-object v0
19517 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19519 + move-result-wide v3
19521 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19523 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19525 + const-string v4, "locationGPS"
19527 + new-instance v3, Ljava/lang/StringBuilder;
19529 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19531 + const-string v5, "Lat: "
19533 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19535 + move-result-object v3
19537 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19539 + move-result-wide v8
19541 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19543 + move-result-object v3
19545 + const-string v5, " Lon: "
19547 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19549 + move-result-object v3
19551 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19553 + move-result-wide v8
19555 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19557 + move-result-object v3
19559 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19561 + move-result-object v5
19563 + move v3, v11
19565 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19567 + goto/16 :goto_b
19569 + :cond_ff
19570 + const-string/jumbo v0, "network"
19572 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19574 + move-result v0
19576 + if-eqz v0, :cond_1e3
19578 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19580 + move-result v0
19582 + packed-switch v0, :pswitch_data_2a6
19584 + goto/16 :goto_b
19586 + :pswitch_111
19587 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19589 + move-result-object v7
19591 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19593 + const-string v4, "locationNetwork"
19595 + if-eqz v7, :cond_140
19597 + new-instance v5, Ljava/lang/StringBuilder;
19599 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19601 + const-string v8, "Lat: "
19603 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19605 + move-result-object v5
19607 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19609 + move-result-wide v8
19611 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19613 + move-result-object v5
19615 + const-string v8, " Lon: "
19617 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19619 + move-result-object v5
19621 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19623 + move-result-wide v8
19625 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19627 + move-result-object v5
19629 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19631 + move-result-object v5
19633 + :cond_140
19634 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19636 + goto/16 :goto_b
19638 + :pswitch_145
19639 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19641 + const-string v4, "locationNetwork"
19643 + move v3, v8
19645 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19647 + goto/16 :goto_b
19649 + :pswitch_14f
19650 + new-instance v7, Landroid/location/Location;
19652 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19654 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19656 + move-result-object v0
19658 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19660 + move-result-wide v3
19662 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19664 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19666 + move-result-object v0
19668 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19670 + move-result-wide v3
19672 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19674 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19676 + const-string v4, "locationNetwork"
19678 + new-instance v3, Ljava/lang/StringBuilder;
19680 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19682 + const-string v5, "Lat: "
19684 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19686 + move-result-object v3
19688 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19690 + move-result-wide v8
19692 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19694 + move-result-object v3
19696 + const-string v5, " Lon: "
19698 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19700 + move-result-object v3
19702 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19704 + move-result-wide v8
19706 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19708 + move-result-object v3
19710 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19712 + move-result-object v5
19714 + move v3, v10
19716 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19718 + goto/16 :goto_b
19720 + :pswitch_199
19721 + new-instance v7, Landroid/location/Location;
19723 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19725 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19727 + move-result-object v0
19729 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19731 + move-result-wide v3
19733 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19735 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19737 + move-result-object v0
19739 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19741 + move-result-wide v3
19743 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19745 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19747 + const-string v4, "locationNetwork"
19749 + new-instance v3, Ljava/lang/StringBuilder;
19751 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19753 + const-string v5, "Lat: "
19755 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19757 + move-result-object v3
19759 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19761 + move-result-wide v8
19763 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19765 + move-result-object v3
19767 + const-string v5, " Lon: "
19769 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19771 + move-result-object v3
19773 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19775 + move-result-wide v8
19777 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19779 + move-result-object v3
19781 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19783 + move-result-object v5
19785 + move v3, v11
19787 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19789 + goto/16 :goto_b
19791 + :cond_1e3
19792 + const-string/jumbo v0, "passive"
19794 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19796 + move-result v0
19798 + if-eqz v0, :cond_b
19800 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19802 + move-result v0
19804 + if-nez v0, :cond_b
19806 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19808 + move-result v0
19810 + if-nez v0, :cond_b
19812 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19814 + move-result-object v7
19816 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19818 + const-string v4, "locationGPS"
19820 + if-eqz v7, :cond_227
19822 + new-instance v5, Ljava/lang/StringBuilder;
19824 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19826 + const-string v8, "Lat: "
19828 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19830 + move-result-object v5
19832 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19834 + move-result-wide v8
19836 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19838 + move-result-object v5
19840 + const-string v8, " Lon: "
19842 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19844 + move-result-object v5
19846 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19848 + move-result-wide v8
19850 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19852 + move-result-object v5
19854 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19856 + move-result-object v5
19858 + :cond_227
19859 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19861 + goto/16 :goto_b
19863 + :cond_22c
19864 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19866 + move-result-object v7
19868 + const-string/jumbo v0, "network"
19870 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19872 + move-result v0
19874 + if-eqz v0, :cond_269
19876 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19878 + const-string v4, "locationNetwork"
19880 + if-eqz v7, :cond_264
19882 + new-instance v5, Ljava/lang/StringBuilder;
19884 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19886 + const-string v8, "Lat: "
19888 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19890 + move-result-object v5
19892 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19894 + move-result-wide v8
19896 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19898 + move-result-object v5
19900 + const-string v8, " Lon: "
19902 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19904 + move-result-object v5
19906 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19908 + move-result-wide v8
19910 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19912 + move-result-object v5
19914 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19916 + move-result-object v5
19918 + :cond_264
19919 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19921 + goto/16 :goto_b
19923 + :cond_269
19924 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19926 + const-string v4, "locationGPS"
19928 + if-eqz v7, :cond_294
19930 + new-instance v5, Ljava/lang/StringBuilder;
19932 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19934 + const-string v8, "Lat: "
19936 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19938 + move-result-object v5
19940 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19942 + move-result-wide v8
19944 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19946 + move-result-object v5
19948 + const-string v8, " Lon: "
19950 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19952 + move-result-object v5
19954 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19956 + move-result-wide v8
19958 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19960 + move-result-object v5
19962 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19964 + move-result-object v5
19966 + :cond_294
19967 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19969 + goto/16 :goto_b
19971 + nop
19973 + :pswitch_data_29a
19974 + .packed-switch 0x0
19975 + :pswitch_2f
19976 + :pswitch_62
19977 + :pswitch_6b
19978 + :pswitch_b5
19979 + .end packed-switch
19981 + :pswitch_data_2a6
19982 + .packed-switch 0x0
19983 + :pswitch_111
19984 + :pswitch_145
19985 + :pswitch_14f
19986 + :pswitch_199
19987 + .end packed-switch
19988 +.end method
19990 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19991 + .registers 7
19993 + if-nez p1, :cond_7
19995 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19997 + move-result-object v0
19999 + :cond_6
20000 + :goto_6
20001 + return-object v0
20003 + :cond_7
20004 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20006 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20008 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20010 + move-result-object v3
20012 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20014 + move-result v4
20016 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20018 + move-result-object v1
20020 + const/4 v0, 0x0
20022 + if-eqz v1, :cond_5f
20024 + const-string v2, "gps"
20026 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20028 + move-result v2
20030 + if-eqz v2, :cond_2f
20032 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20034 + move-result v2
20036 + packed-switch v2, :pswitch_data_64
20038 + :pswitch_29
20039 + goto :goto_6
20041 + :pswitch_2a
20042 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20044 + move-result-object v0
20046 + goto :goto_6
20048 + :cond_2f
20049 + const-string/jumbo v2, "network"
20051 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20053 + move-result v2
20055 + if-eqz v2, :cond_45
20057 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20059 + move-result v2
20061 + packed-switch v2, :pswitch_data_70
20063 + :pswitch_3f
20064 + goto :goto_6
20066 + :pswitch_40
20067 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20069 + move-result-object v0
20071 + goto :goto_6
20073 + :cond_45
20074 + const-string/jumbo v2, "passive"
20076 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20078 + move-result v2
20080 + if-eqz v2, :cond_6
20082 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20084 + move-result v2
20086 + if-eqz v2, :cond_5a
20088 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20090 + move-result v2
20092 + if-nez v2, :cond_6
20094 + :cond_5a
20095 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20097 + move-result-object v0
20099 + goto :goto_6
20101 + :cond_5f
20102 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20104 + move-result-object v0
20106 + goto :goto_6
20108 + :pswitch_data_64
20109 + .packed-switch 0x0
20110 + :pswitch_2a
20111 + :pswitch_29
20112 + :pswitch_2a
20113 + :pswitch_2a
20114 + .end packed-switch
20116 + :pswitch_data_70
20117 + .packed-switch 0x0
20118 + :pswitch_40
20119 + :pswitch_3f
20120 + :pswitch_40
20121 + :pswitch_40
20122 + .end packed-switch
20123 +.end method
20125 +.method public isProviderEnabled(Ljava/lang/String;)Z
20126 + .registers 7
20128 + if-nez p1, :cond_7
20130 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20132 + move-result v0
20134 + :cond_6
20135 + :goto_6
20136 + :pswitch_6
20137 + return v0
20139 + :cond_7
20140 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20142 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20144 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20146 + move-result-object v3
20148 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20150 + move-result v4
20152 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20154 + move-result-object v1
20156 + const/4 v0, 0x0
20158 + if-eqz v1, :cond_65
20160 + const-string v2, "gps"
20162 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20164 + move-result v2
20166 + if-eqz v2, :cond_31
20168 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20170 + move-result v2
20172 + packed-switch v2, :pswitch_data_6a
20174 + goto :goto_6
20176 + :pswitch_2a
20177 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20179 + move-result v0
20181 + goto :goto_6
20183 + :pswitch_2f
20184 + const/4 v0, 0x1
20186 + goto :goto_6
20188 + :cond_31
20189 + const-string/jumbo v2, "network"
20191 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20193 + move-result v2
20195 + if-eqz v2, :cond_49
20197 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20199 + move-result v2
20201 + packed-switch v2, :pswitch_data_76
20203 + goto :goto_6
20205 + :pswitch_42
20206 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20208 + move-result v0
20210 + goto :goto_6
20212 + :pswitch_47
20213 + const/4 v0, 0x1
20215 + goto :goto_6
20217 + :cond_49
20218 + const-string/jumbo v2, "passive"
20220 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20222 + move-result v2
20224 + if-eqz v2, :cond_6
20226 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20228 + move-result v2
20230 + if-eqz v2, :cond_5e
20232 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20234 + move-result v2
20236 + if-nez v2, :cond_63
20238 + :cond_5e
20239 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20241 + move-result v0
20243 + goto :goto_6
20245 + :cond_63
20246 + const/4 v0, 0x0
20248 + goto :goto_6
20250 + :cond_65
20251 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20253 + move-result v0
20255 + goto :goto_6
20257 + :pswitch_data_6a
20258 + .packed-switch 0x0
20259 + :pswitch_2a
20260 + :pswitch_6
20261 + :pswitch_2f
20262 + :pswitch_2f
20263 + .end packed-switch
20265 + :pswitch_data_76
20266 + .packed-switch 0x0
20267 + :pswitch_42
20268 + :pswitch_6
20269 + :pswitch_47
20270 + :pswitch_47
20271 + .end packed-switch
20272 +.end method
20274 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20275 + .registers 7
20277 + if-eqz p4, :cond_4
20279 + if-nez p5, :cond_8
20281 + :cond_4
20282 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20284 + :cond_7
20285 + :goto_7
20286 + return-void
20288 + :cond_8
20289 + const/4 v0, 0x0
20291 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20293 + move-result v0
20295 + if-nez v0, :cond_7
20297 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20299 + goto :goto_7
20300 +.end method
20302 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20303 + .registers 8
20305 + if-eqz p4, :cond_4
20307 + if-nez p5, :cond_8
20309 + :cond_4
20310 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20312 + :cond_7
20313 + :goto_7
20314 + return-void
20316 + :cond_8
20317 + const/4 v0, 0x0
20319 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20321 + move-result v0
20323 + if-nez v0, :cond_7
20325 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20327 + goto :goto_7
20328 +.end method
20330 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20331 + .registers 7
20333 + if-eqz p1, :cond_4
20335 + if-nez p5, :cond_8
20337 + :cond_4
20338 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20340 + :cond_7
20341 + :goto_7
20342 + return-void
20344 + :cond_8
20345 + const/4 v0, 0x0
20347 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20349 + move-result v0
20351 + if-nez v0, :cond_7
20353 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20355 + goto :goto_7
20356 +.end method
20358 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20359 + .registers 7
20361 + if-eqz p1, :cond_4
20363 + if-nez p5, :cond_8
20365 + :cond_4
20366 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20368 + :cond_7
20369 + :goto_7
20370 + return-void
20372 + :cond_8
20373 + const/4 v0, 0x0
20375 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20377 + move-result v0
20379 + if-nez v0, :cond_7
20381 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20383 + goto :goto_7
20384 +.end method
20386 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20387 + .registers 8
20389 + if-eqz p1, :cond_4
20391 + if-nez p5, :cond_8
20393 + :cond_4
20394 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20396 + :cond_7
20397 + :goto_7
20398 + return-void
20400 + :cond_8
20401 + const/4 v0, 0x0
20403 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20405 + move-result v0
20407 + if-nez v0, :cond_7
20409 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20411 + goto :goto_7
20412 +.end method
20414 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20415 + .registers 4
20417 + if-eqz p1, :cond_4
20419 + if-nez p2, :cond_8
20421 + :cond_4
20422 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20424 + :cond_7
20425 + :goto_7
20426 + return-void
20428 + :cond_8
20429 + const/4 v0, 0x0
20431 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20433 + move-result v0
20435 + if-nez v0, :cond_7
20437 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20439 + goto :goto_7
20440 +.end method
20442 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20443 + .registers 5
20445 + if-eqz p1, :cond_4
20447 + if-nez p2, :cond_8
20449 + :cond_4
20450 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20452 + :cond_7
20453 + :goto_7
20454 + return-void
20456 + :cond_8
20457 + const/4 v0, 0x0
20459 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20461 + move-result v0
20463 + if-nez v0, :cond_7
20465 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20467 + goto :goto_7
20468 +.end method
20470 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20471 + .registers 4
20473 + if-eqz p1, :cond_4
20475 + if-nez p2, :cond_8
20477 + :cond_4
20478 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20480 + :cond_7
20481 + :goto_7
20482 + return-void
20484 + :cond_8
20485 + const/4 v0, 0x0
20487 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20489 + move-result v0
20491 + if-nez v0, :cond_7
20493 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20495 + goto :goto_7
20496 +.end method
20498 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20499 + .registers 5
20501 + if-eqz p1, :cond_4
20503 + if-nez p2, :cond_8
20505 + :cond_4
20506 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20508 + :cond_7
20509 + :goto_7
20510 + return-void
20512 + :cond_8
20513 + const/4 v0, 0x0
20515 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20517 + move-result v0
20519 + if-nez v0, :cond_7
20521 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20523 + goto :goto_7
20524 +.end method
20525 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
20526 --- stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 18:00:00.000000000 -0600
20527 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-05-08 11:54:53.318752103 -0500
20528 @@ -0,0 +1,731 @@
20529 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
20530 +.super Landroid/telephony/TelephonyManager;
20531 +.source "PrivacyTelephonyManager.java"
20534 +# static fields
20535 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
20538 +# instance fields
20539 +.field private context:Landroid/content/Context;
20541 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
20544 +# direct methods
20545 +.method public constructor <init>(Landroid/content/Context;)V
20546 + .registers 4
20548 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
20550 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20552 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
20554 + const-string/jumbo v1, "privacy"
20556 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20558 + move-result-object v1
20560 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20562 + move-result-object v1
20564 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20566 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20568 + return-void
20569 +.end method
20571 +.method private getNetworkInfo()Ljava/lang/String;
20572 + .registers 8
20574 + const/4 v5, 0x0
20576 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20578 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20580 + move-result-object v1
20582 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20584 + move-result v2
20586 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20588 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20590 + move-result-object v6
20592 + if-eqz v6, :cond_25
20594 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
20596 + move-result v0
20598 + if-eqz v0, :cond_25
20600 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20602 + const/4 v3, 0x1
20604 + const-string/jumbo v4, "networkInfoCurrent"
20606 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20608 + const-string v5, ""
20610 + :goto_24
20611 + return-object v5
20613 + :cond_25
20614 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20616 + const/4 v3, 0x0
20618 + const-string/jumbo v4, "networkInfoCurrent"
20620 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20622 + goto :goto_24
20623 +.end method
20625 +.method private getSimInfo()Ljava/lang/String;
20626 + .registers 8
20628 + const/4 v5, 0x0
20630 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20632 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20634 + move-result-object v1
20636 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20638 + move-result v2
20640 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20642 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20644 + move-result-object v6
20646 + if-eqz v6, :cond_25
20648 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
20650 + move-result v0
20652 + if-eqz v0, :cond_25
20654 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20656 + const/4 v3, 0x1
20658 + const-string/jumbo v4, "networkInfoSIM"
20660 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20662 + const-string v5, ""
20664 + :goto_24
20665 + return-object v5
20667 + :cond_25
20668 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20670 + const/4 v3, 0x0
20672 + const-string/jumbo v4, "networkInfoSIM"
20674 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20676 + goto :goto_24
20677 +.end method
20680 +# virtual methods
20681 +.method public getDeviceId()Ljava/lang/String;
20682 + .registers 8
20684 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20686 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20688 + move-result-object v1
20690 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20692 + move-result v2
20694 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20696 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20698 + move-result-object v6
20700 + if-eqz v6, :cond_28
20702 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20704 + move-result v0
20706 + if-eqz v0, :cond_28
20708 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
20710 + move-result-object v5
20712 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20714 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20716 + move-result v3
20718 + const-string v4, "deviceID"
20720 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20722 + :goto_27
20723 + return-object v5
20725 + :cond_28
20726 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
20728 + move-result-object v5
20730 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20732 + const/4 v3, 0x0
20734 + const-string v4, "deviceID"
20736 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20738 + goto :goto_27
20739 +.end method
20741 +.method public getLine1Number()Ljava/lang/String;
20742 + .registers 8
20744 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20746 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20748 + move-result-object v1
20750 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20752 + move-result v2
20754 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20756 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20758 + move-result-object v6
20760 + if-eqz v6, :cond_28
20762 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20764 + move-result v0
20766 + if-eqz v0, :cond_28
20768 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
20770 + move-result-object v5
20772 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20774 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20776 + move-result v3
20778 + const-string v4, "line1Number"
20780 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20782 + :goto_27
20783 + return-object v5
20785 + :cond_28
20786 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
20788 + move-result-object v5
20790 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20792 + const/4 v3, 0x0
20794 + const-string v4, "line1Number"
20796 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20798 + goto :goto_27
20799 +.end method
20801 +.method public getNeighboringCellInfo()Ljava/util/List;
20802 + .registers 10
20803 + .annotation system Ldalvik/annotation/Signature;
20804 + value = {
20805 + "()",
20806 + "Ljava/util/List",
20807 + "<",
20808 + "Landroid/telephony/NeighboringCellInfo;",
20809 + ">;"
20811 + .end annotation
20813 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20815 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20817 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20819 + move-result-object v7
20821 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20823 + move-result v8
20825 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20827 + move-result-object v5
20829 + const/4 v3, 0x0
20831 + const-string v4, "[null]"
20833 + if-eqz v5, :cond_1c
20835 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20837 + move-result v6
20839 + const/4 v7, 0x1
20841 + if-ne v6, v7, :cond_1d
20843 + :cond_1c
20844 + :goto_1c
20845 + return-object v3
20847 + :cond_1d
20848 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20850 + move-result v6
20852 + if-eqz v6, :cond_2b
20854 + new-instance v3, Ljava/util/ArrayList;
20856 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
20858 + const-string v4, "[empty list of cells]"
20860 + goto :goto_1c
20862 + :cond_2b
20863 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
20865 + move-result-object v3
20867 + const-string v0, ""
20869 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
20871 + move-result-object v2
20873 + :goto_35
20874 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
20876 + move-result v6
20878 + if-eqz v6, :cond_5f
20880 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
20882 + move-result-object v1
20884 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
20886 + new-instance v6, Ljava/lang/StringBuilder;
20888 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20890 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20892 + move-result-object v6
20894 + const-string v7, "\t"
20896 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20898 + move-result-object v6
20900 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
20902 + move-result-object v6
20904 + const-string v7, "\n"
20906 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20908 + move-result-object v6
20910 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20912 + move-result-object v0
20914 + goto :goto_35
20916 + :cond_5f
20917 + new-instance v6, Ljava/lang/StringBuilder;
20919 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20921 + const-string v7, "[real value]:\n"
20923 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20925 + move-result-object v6
20927 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20929 + move-result-object v6
20931 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20933 + move-result-object v4
20935 + goto :goto_1c
20936 +.end method
20938 +.method public getNetworkCountryIso()Ljava/lang/String;
20939 + .registers 2
20941 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20943 + move-result-object v0
20945 + if-nez v0, :cond_a
20947 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
20949 + move-result-object v0
20951 + :cond_a
20952 + return-object v0
20953 +.end method
20955 +.method public getNetworkOperator()Ljava/lang/String;
20956 + .registers 2
20958 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20960 + move-result-object v0
20962 + if-nez v0, :cond_a
20964 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
20966 + move-result-object v0
20968 + :cond_a
20969 + return-object v0
20970 +.end method
20972 +.method public getNetworkOperatorName()Ljava/lang/String;
20973 + .registers 2
20975 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20977 + move-result-object v0
20979 + if-nez v0, :cond_a
20981 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
20983 + move-result-object v0
20985 + :cond_a
20986 + return-object v0
20987 +.end method
20989 +.method public getSimCountryIso()Ljava/lang/String;
20990 + .registers 2
20992 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20994 + move-result-object v0
20996 + if-nez v0, :cond_a
20998 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
21000 + move-result-object v0
21002 + :cond_a
21003 + return-object v0
21004 +.end method
21006 +.method public getSimOperator()Ljava/lang/String;
21007 + .registers 2
21009 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21011 + move-result-object v0
21013 + if-nez v0, :cond_a
21015 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
21017 + move-result-object v0
21019 + :cond_a
21020 + return-object v0
21021 +.end method
21023 +.method public getSimOperatorName()Ljava/lang/String;
21024 + .registers 2
21026 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21028 + move-result-object v0
21030 + if-nez v0, :cond_a
21032 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
21034 + move-result-object v0
21036 + :cond_a
21037 + return-object v0
21038 +.end method
21040 +.method public getSimSerialNumber()Ljava/lang/String;
21041 + .registers 8
21043 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21045 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21047 + move-result-object v1
21049 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21051 + move-result v2
21053 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21055 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21057 + move-result-object v6
21059 + if-eqz v6, :cond_29
21061 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21063 + move-result v0
21065 + if-eqz v0, :cond_29
21067 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
21069 + move-result-object v5
21071 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21073 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21075 + move-result v3
21077 + const-string/jumbo v4, "simSerial"
21079 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21081 + :goto_28
21082 + return-object v5
21084 + :cond_29
21085 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
21087 + move-result-object v5
21089 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21091 + const/4 v3, 0x0
21093 + const-string/jumbo v4, "simSerial"
21095 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21097 + goto :goto_28
21098 +.end method
21100 +.method public getSubscriberId()Ljava/lang/String;
21101 + .registers 8
21103 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21105 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21107 + move-result-object v1
21109 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21111 + move-result v2
21113 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21115 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21117 + move-result-object v6
21119 + if-eqz v6, :cond_29
21121 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21123 + move-result v0
21125 + if-eqz v0, :cond_29
21127 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
21129 + move-result-object v5
21131 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21133 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21135 + move-result v3
21137 + const-string/jumbo v4, "subscriberID"
21139 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21141 + :goto_28
21142 + return-object v5
21144 + :cond_29
21145 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
21147 + move-result-object v5
21149 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21151 + const/4 v3, 0x0
21153 + const-string/jumbo v4, "subscriberID"
21155 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21157 + goto :goto_28
21158 +.end method
21160 +.method public getVoiceMailNumber()Ljava/lang/String;
21161 + .registers 8
21163 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21165 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21167 + move-result-object v1
21169 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21171 + move-result v2
21173 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21175 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21177 + move-result-object v6
21179 + if-eqz v6, :cond_28
21181 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21183 + move-result v0
21185 + if-eqz v0, :cond_28
21187 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21189 + move-result-object v5
21191 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21193 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21195 + move-result v3
21197 + const-string v4, "line1Number"
21199 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21201 + :goto_27
21202 + return-object v5
21204 + :cond_28
21205 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
21207 + move-result-object v5
21209 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21211 + const/4 v3, 0x0
21213 + const-string v4, "line1Number"
21215 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21217 + goto :goto_27
21218 +.end method
21220 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
21221 + .registers 4
21223 + and-int/lit8 v0, p2, 0x10
21225 + if-nez v0, :cond_8
21227 + and-int/lit8 v0, p2, 0x20
21229 + if-eqz v0, :cond_21
21231 + :cond_8
21232 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21234 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
21236 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21238 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21240 + move-result-object v0
21242 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
21244 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21246 + move-result v0
21248 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setUid(I)V
21250 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21252 + :goto_20
21253 + return-void
21255 + :cond_21
21256 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21258 + goto :goto_20
21259 +.end method
21260 diff -Npru stock-framework/smali/android/server/BluetoothA2dpService$1.smali pdroid-framework/smali/android/server/BluetoothA2dpService$1.smali
21261 --- stock-framework/smali/android/server/BluetoothA2dpService$1.smali 2012-05-08 11:54:29.650634739 -0500
21262 +++ pdroid-framework/smali/android/server/BluetoothA2dpService$1.smali 2012-05-08 11:54:53.470752857 -0500
21263 @@ -74,7 +74,7 @@
21265 move-result v16
21267 - packed-switch v16, :pswitch_data_54e
21268 + packed-switch v16, :pswitch_data_550
21270 :cond_2b
21271 :goto_2b
21272 @@ -366,7 +366,7 @@
21274 move-result v18
21276 - if-eqz v18, :cond_33e
21277 + if-eqz v18, :cond_33f
21279 move-object/from16 v0, p0
21281 @@ -756,7 +756,7 @@
21283 invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
21285 - const-string v20, "mPostion "
21286 + const-string/jumbo v20, "mPostion "
21288 invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21290 @@ -839,7 +839,7 @@
21292 move-result-object v10
21294 - :goto_303
21295 + :goto_304
21296 invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
21298 move-result v18
21299 @@ -899,9 +899,9 @@
21300 #calls: Landroid/server/BluetoothA2dpService;->sendEvent(Ljava/lang/String;IJ)V
21301 invoke-static {v0, v13, v1, v2, v3}, Landroid/server/BluetoothA2dpService;->access$1600(Landroid/server/BluetoothA2dpService;Ljava/lang/String;IJ)V
21303 - goto :goto_303
21304 + goto :goto_304
21306 - :cond_33e
21307 + :cond_33f
21308 const-string v18, "com.android.music.playstatechanged"
21310 move-object/from16 v0, v18
21311 @@ -922,7 +922,7 @@
21313 move-result-object v6
21315 - if-eqz v6, :cond_48e
21316 + if-eqz v6, :cond_48f
21318 move-object/from16 v0, p0
21320 @@ -941,7 +941,7 @@
21322 move-result v18
21324 - if-nez v18, :cond_48e
21325 + if-nez v18, :cond_48f
21327 move-object/from16 v0, p0
21329 @@ -1003,7 +1003,7 @@
21331 move-result-object v18
21333 - if-nez v18, :cond_3af
21334 + if-nez v18, :cond_3b0
21336 move-object/from16 v0, p0
21338 @@ -1016,7 +1016,7 @@
21339 #setter for: Landroid/server/BluetoothA2dpService;->mTrackName:Ljava/lang/String;
21340 invoke-static/range {v18 .. v19}, Landroid/server/BluetoothA2dpService;->access$802(Landroid/server/BluetoothA2dpService;Ljava/lang/String;)Ljava/lang/String;
21342 - :cond_3af
21343 + :cond_3b0
21344 move-object/from16 v0, p0
21346 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21347 @@ -1028,7 +1028,7 @@
21349 move-result-object v18
21351 - if-nez v18, :cond_3c6
21352 + if-nez v18, :cond_3c7
21354 move-object/from16 v0, p0
21356 @@ -1041,7 +1041,7 @@
21357 #setter for: Landroid/server/BluetoothA2dpService;->mArtistName:Ljava/lang/String;
21358 invoke-static/range {v18 .. v19}, Landroid/server/BluetoothA2dpService;->access$902(Landroid/server/BluetoothA2dpService;Ljava/lang/String;)Ljava/lang/String;
21360 - :cond_3c6
21361 + :cond_3c7
21362 move-object/from16 v0, p0
21364 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21365 @@ -1053,7 +1053,7 @@
21367 move-result-object v18
21369 - if-nez v18, :cond_3dd
21370 + if-nez v18, :cond_3de
21372 move-object/from16 v0, p0
21374 @@ -1066,7 +1066,7 @@
21375 #setter for: Landroid/server/BluetoothA2dpService;->mAlbumName:Ljava/lang/String;
21376 invoke-static/range {v18 .. v19}, Landroid/server/BluetoothA2dpService;->access$1002(Landroid/server/BluetoothA2dpService;Ljava/lang/String;)Ljava/lang/String;
21378 - :cond_3dd
21379 + :cond_3de
21380 const-string v18, "id"
21382 const-wide/16 v19, 0x0
21383 @@ -1085,11 +1085,11 @@
21385 cmp-long v18, v8, v18
21387 - if-gez v18, :cond_3f3
21388 + if-gez v18, :cond_3f4
21390 const-wide/16 v8, 0x0
21392 - :cond_3f3
21393 + :cond_3f4
21394 move-object/from16 v0, p0
21396 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21397 @@ -1121,11 +1121,11 @@
21399 cmp-long v18, v8, v18
21401 - if-gez v18, :cond_416
21402 + if-gez v18, :cond_417
21404 const-wide/16 v8, 0x0
21406 - :cond_416
21407 + :cond_417
21408 move-object/from16 v0, p0
21410 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21411 @@ -1157,11 +1157,11 @@
21413 cmp-long v18, v8, v18
21415 - if-gez v18, :cond_439
21416 + if-gez v18, :cond_43a
21418 const-wide/16 v8, 0x0
21420 - :cond_439
21421 + :cond_43a
21422 move-object/from16 v0, p0
21424 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21425 @@ -1193,11 +1193,11 @@
21427 cmp-long v18, v8, v18
21429 - if-gez v18, :cond_45d
21430 + if-gez v18, :cond_45e
21432 const-wide/16 v8, 0x0
21434 - :cond_45d
21435 + :cond_45e
21436 move-object/from16 v0, p0
21438 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21439 @@ -1223,12 +1223,12 @@
21441 move-result-object v10
21443 - :goto_476
21444 + :goto_477
21445 invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
21447 move-result v18
21449 - if-eqz v18, :cond_48e
21450 + if-eqz v18, :cond_48f
21452 invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object;
21454 @@ -1247,9 +1247,9 @@
21455 #calls: Landroid/server/BluetoothA2dpService;->sendMetaData(Ljava/lang/String;)V
21456 invoke-static {v0, v13}, Landroid/server/BluetoothA2dpService;->access$1500(Landroid/server/BluetoothA2dpService;Ljava/lang/String;)V
21458 - goto :goto_476
21459 + goto :goto_477
21461 - :cond_48e
21462 + :cond_48f
21463 const-string/jumbo v18, "playing"
21465 const/16 v19, 0x0
21466 @@ -1302,7 +1302,7 @@
21468 cmp-long v18, v18, v20
21470 - if-gez v18, :cond_4d0
21471 + if-gez v18, :cond_4d1
21473 move-object/from16 v0, p0
21475 @@ -1315,7 +1315,7 @@
21476 #setter for: Landroid/server/BluetoothA2dpService;->mPosition:J
21477 invoke-static/range {v18 .. v20}, Landroid/server/BluetoothA2dpService;->access$1402(Landroid/server/BluetoothA2dpService;J)J
21479 - :cond_4d0
21480 + :cond_4d1
21481 move-object/from16 v0, p0
21483 iget-object v0, v0, Landroid/server/BluetoothA2dpService$1;->this$0:Landroid/server/BluetoothA2dpService;
21484 @@ -1398,7 +1398,7 @@
21486 move-result-object v10
21488 - :goto_521
21489 + :goto_522
21490 invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
21492 move-result v18
21493 @@ -1445,9 +1445,11 @@
21494 #calls: Landroid/server/BluetoothA2dpService;->sendEvent(Ljava/lang/String;IJ)V
21495 invoke-static {v0, v13, v1, v2, v3}, Landroid/server/BluetoothA2dpService;->access$1600(Landroid/server/BluetoothA2dpService;Ljava/lang/String;IJ)V
21497 - goto :goto_521
21498 + goto :goto_522
21500 - :pswitch_data_54e
21501 + nop
21503 + :pswitch_data_550
21504 .packed-switch 0xc
21505 :pswitch_2c
21506 :pswitch_36
21507 diff -Npru stock-framework/smali/android/server/BluetoothA2dpService.smali pdroid-framework/smali/android/server/BluetoothA2dpService.smali
21508 --- stock-framework/smali/android/server/BluetoothA2dpService.smali 2012-05-08 11:54:29.654634759 -0500
21509 +++ pdroid-framework/smali/android/server/BluetoothA2dpService.smali 2012-05-08 11:54:53.474752877 -0500
21510 @@ -1861,7 +1861,7 @@
21512 invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
21514 - const-string v2, "mPostion "
21515 + const-string/jumbo v2, "mPostion "
21517 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21519 @@ -1904,14 +1904,14 @@
21520 invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
21522 invoke-direct {p0, p1}, Landroid/server/BluetoothA2dpService;->sendMetaDataNative(Ljava/lang/String;)Z
21523 - :try_end_9b
21524 - .catchall {:try_start_1 .. :try_end_9b} :catchall_9d
21525 + :try_end_9c
21526 + .catchall {:try_start_1 .. :try_end_9c} :catchall_9e
21528 monitor-exit p0
21530 return-void
21532 - :catchall_9d
21533 + :catchall_9e
21534 move-exception v0
21536 monitor-exit p0
21537 diff -Npru stock-framework/smali/android/server/BluetoothService.smali pdroid-framework/smali/android/server/BluetoothService.smali
21538 --- stock-framework/smali/android/server/BluetoothService.smali 2012-05-08 11:54:29.694634957 -0500
21539 +++ pdroid-framework/smali/android/server/BluetoothService.smali 2012-05-08 11:54:53.526753138 -0500
21540 @@ -2367,9 +2367,9 @@
21542 invoke-direct {v4, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
21543 :try_end_19
21544 - .catchall {:try_start_d .. :try_end_19} :catchall_83
21545 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_63
21546 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_73
21547 + .catchall {:try_start_d .. :try_end_19} :catchall_7e
21548 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_60
21549 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_70
21551 const/16 v7, 0x11
21553 @@ -2396,9 +2396,9 @@
21555 sget-object v5, Landroid/server/BluetoothService;->mDockAddress:Ljava/lang/String;
21556 :try_end_33
21557 - .catchall {:try_start_1b .. :try_end_33} :catchall_8c
21558 - .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_92
21559 - .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8f
21560 + .catchall {:try_start_1b .. :try_end_33} :catchall_89
21561 + .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_8f
21562 + .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8c
21564 if-eqz v4, :cond_a
21566 @@ -2439,18 +2439,20 @@
21568 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21569 :try_end_53
21570 - .catchall {:try_start_3b .. :try_end_53} :catchall_8c
21571 - .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_92
21572 - .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8f
21573 + .catchall {:try_start_3b .. :try_end_53} :catchall_89
21574 + .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_8f
21575 + .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8c
21577 - if-eqz v4, :cond_95
21578 + if-eqz v4, :cond_58
21580 :try_start_55
21581 invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
21582 :try_end_58
21583 .catchall {:try_start_55 .. :try_end_58} :catchall_5d
21584 - .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_60
21585 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_87
21587 + :cond_58
21588 + :goto_58
21589 move-object v3, v4
21591 :cond_59
21592 @@ -2472,117 +2474,105 @@
21593 throw v5
21595 :catch_60
21596 - move-exception v7
21598 - move-object v3, v4
21600 - goto :goto_59
21602 - :catch_63
21603 move-exception v2
21605 - :goto_64
21606 - :try_start_64
21607 + :goto_61
21608 + :try_start_61
21609 const-string v7, "BluetoothService"
21611 const-string v8, "FileNotFoundException while trying to read dock address"
21613 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21614 - :try_end_6b
21615 - .catchall {:try_start_64 .. :try_end_6b} :catchall_83
21616 + :try_end_68
21617 + .catchall {:try_start_61 .. :try_end_68} :catchall_7e
21619 if-eqz v3, :cond_59
21621 - :try_start_6d
21622 + :try_start_6a
21623 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21624 - :try_end_70
21625 - .catchall {:try_start_6d .. :try_end_70} :catchall_5d
21626 - .catch Ljava/io/IOException; {:try_start_6d .. :try_end_70} :catch_71
21627 + :try_end_6d
21628 + .catchall {:try_start_6a .. :try_end_6d} :catchall_5d
21629 + .catch Ljava/io/IOException; {:try_start_6a .. :try_end_6d} :catch_6e
21631 goto :goto_59
21633 - :catch_71
21634 + :catch_6e
21635 move-exception v7
21637 goto :goto_59
21639 - :catch_73
21640 + :catch_70
21641 move-exception v2
21643 - :goto_74
21644 - :try_start_74
21645 + :goto_71
21646 + :try_start_71
21647 const-string v7, "BluetoothService"
21649 const-string v8, "IOException while trying to read dock address"
21651 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21652 - :try_end_7b
21653 - .catchall {:try_start_74 .. :try_end_7b} :catchall_83
21654 + :try_end_78
21655 + .catchall {:try_start_71 .. :try_end_78} :catchall_7e
21657 if-eqz v3, :cond_59
21659 - :try_start_7d
21660 + :try_start_7a
21661 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21662 - :try_end_80
21663 - .catchall {:try_start_7d .. :try_end_80} :catchall_5d
21664 - .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81
21666 - goto :goto_59
21668 - :catch_81
21669 - move-exception v7
21670 + :try_end_7d
21671 + .catchall {:try_start_7a .. :try_end_7d} :catchall_5d
21672 + .catch Ljava/io/IOException; {:try_start_7a .. :try_end_7d} :catch_6e
21674 goto :goto_59
21676 - :catchall_83
21677 + :catchall_7e
21678 move-exception v5
21680 - :goto_84
21681 - if-eqz v3, :cond_89
21682 + :goto_7f
21683 + if-eqz v3, :cond_84
21685 - :try_start_86
21686 + :try_start_81
21687 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21688 - :try_end_89
21689 - .catchall {:try_start_86 .. :try_end_89} :catchall_5d
21690 - .catch Ljava/io/IOException; {:try_start_86 .. :try_end_89} :catch_8a
21692 - :cond_89
21693 - :goto_89
21694 - :try_start_89
21695 + :try_end_84
21696 + .catchall {:try_start_81 .. :try_end_84} :catchall_5d
21697 + .catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
21699 + :cond_84
21700 + :goto_84
21701 + :try_start_84
21702 throw v5
21703 - :try_end_8a
21704 - .catchall {:try_start_89 .. :try_end_8a} :catchall_5d
21705 + :try_end_85
21706 + .catchall {:try_start_84 .. :try_end_85} :catchall_5d
21708 - :catch_8a
21709 + :catch_85
21710 move-exception v7
21712 - goto :goto_89
21713 + goto :goto_84
21715 + :catch_87
21716 + move-exception v7
21718 - :catchall_8c
21719 + goto :goto_58
21721 + :catchall_89
21722 move-exception v5
21724 move-object v3, v4
21726 - goto :goto_84
21727 + goto :goto_7f
21729 - :catch_8f
21730 + :catch_8c
21731 move-exception v2
21733 move-object v3, v4
21735 - goto :goto_74
21736 + goto :goto_71
21738 - :catch_92
21739 + :catch_8f
21740 move-exception v2
21742 move-object v3, v4
21744 - goto :goto_64
21746 - :cond_95
21747 - move-object v3, v4
21749 - goto :goto_59
21750 + goto :goto_61
21751 .end method
21753 .method private readIncomingConnectionState()V
21754 @@ -2601,9 +2591,9 @@
21756 invoke-direct {v3, v9}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
21757 :try_end_b
21758 - .catchall {:try_start_4 .. :try_end_b} :catchall_a2
21759 - .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b9
21760 - .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7f
21761 + .catchall {:try_start_4 .. :try_end_b} :catchall_9f
21762 + .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b6
21763 + .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7c
21765 :try_start_b
21766 new-instance v4, Ljava/io/DataInputStream;
21767 @@ -2678,9 +2668,9 @@
21769 invoke-virtual {v9, v11, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
21770 :try_end_51
21771 - .catchall {:try_start_b .. :try_end_51} :catchall_b3
21772 + .catchall {:try_start_b .. :try_end_51} :catchall_b0
21773 .catch Ljava/io/FileNotFoundException; {:try_start_b .. :try_end_51} :catch_52
21774 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b6
21775 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b3
21777 goto :goto_1a
21779 @@ -2715,50 +2705,45 @@
21781 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21782 :try_end_6e
21783 - .catchall {:try_start_54 .. :try_end_6e} :catchall_a2
21784 + .catchall {:try_start_54 .. :try_end_6e} :catchall_9f
21786 if-eqz v2, :cond_73
21788 :try_start_70
21789 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21790 :try_end_73
21791 - .catchall {:try_start_70 .. :try_end_73} :catchall_a9
21792 - .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_ac
21793 + .catchall {:try_start_70 .. :try_end_73} :catchall_a6
21794 + .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_9d
21796 :cond_73
21797 :goto_73
21798 :try_start_73
21799 monitor-exit v10
21800 :try_end_74
21801 - .catchall {:try_start_73 .. :try_end_74} :catchall_a9
21802 + .catchall {:try_start_73 .. :try_end_74} :catchall_a6
21804 return-void
21806 :cond_75
21807 - if-eqz v3, :cond_bb
21808 + if-eqz v3, :cond_7a
21810 :try_start_77
21811 invoke-virtual {v3}, Ljava/io/FileInputStream;->close()V
21812 :try_end_7a
21813 - .catchall {:try_start_77 .. :try_end_7a} :catchall_b0
21814 - .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_7c
21815 + .catchall {:try_start_77 .. :try_end_7a} :catchall_ad
21816 + .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_ab
21818 + :cond_7a
21819 + :goto_7a
21820 move-object v2, v3
21822 goto :goto_73
21824 :catch_7c
21825 - move-exception v9
21827 - move-object v2, v3
21829 - goto :goto_73
21831 - :catch_7f
21832 move-exception v0
21834 - :goto_80
21835 - :try_start_80
21836 + :goto_7d
21837 + :try_start_7d
21838 new-instance v9, Ljava/lang/StringBuilder;
21840 invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
21841 @@ -2782,91 +2767,86 @@
21842 move-result-object v9
21844 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21845 - :try_end_9a
21846 - .catchall {:try_start_80 .. :try_end_9a} :catchall_a2
21847 + :try_end_97
21848 + .catchall {:try_start_7d .. :try_end_97} :catchall_9f
21850 if-eqz v2, :cond_73
21852 - :try_start_9c
21853 + :try_start_99
21854 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21855 - :try_end_9f
21856 - .catchall {:try_start_9c .. :try_end_9f} :catchall_a9
21857 - .catch Ljava/io/IOException; {:try_start_9c .. :try_end_9f} :catch_a0
21858 + :try_end_9c
21859 + .catchall {:try_start_99 .. :try_end_9c} :catchall_a6
21860 + .catch Ljava/io/IOException; {:try_start_99 .. :try_end_9c} :catch_9d
21862 goto :goto_73
21864 - :catch_a0
21865 + :catch_9d
21866 move-exception v9
21868 goto :goto_73
21870 - :catchall_a2
21871 + :catchall_9f
21872 move-exception v9
21874 - :goto_a3
21875 - if-eqz v2, :cond_a8
21876 + :goto_a0
21877 + if-eqz v2, :cond_a5
21879 - :try_start_a5
21880 + :try_start_a2
21881 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21882 - :try_end_a8
21883 - .catchall {:try_start_a5 .. :try_end_a8} :catchall_a9
21884 - .catch Ljava/io/IOException; {:try_start_a5 .. :try_end_a8} :catch_ae
21885 + :try_end_a5
21886 + .catchall {:try_start_a2 .. :try_end_a5} :catchall_a6
21887 + .catch Ljava/io/IOException; {:try_start_a2 .. :try_end_a5} :catch_a9
21889 - :cond_a8
21890 - :goto_a8
21891 - :try_start_a8
21892 + :cond_a5
21893 + :goto_a5
21894 + :try_start_a5
21895 throw v9
21897 - :catchall_a9
21898 + :catchall_a6
21899 move-exception v9
21901 - :goto_aa
21902 + :goto_a7
21903 monitor-exit v10
21904 - :try_end_ab
21905 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_a9
21906 + :try_end_a8
21907 + .catchall {:try_start_a5 .. :try_end_a8} :catchall_a6
21909 throw v9
21911 - :catch_ac
21912 - move-exception v9
21913 + :catch_a9
21914 + move-exception v11
21916 - goto :goto_73
21917 + goto :goto_a5
21919 - :catch_ae
21920 - move-exception v11
21921 + :catch_ab
21922 + move-exception v9
21924 - goto :goto_a8
21925 + goto :goto_7a
21927 - :catchall_b0
21928 + :catchall_ad
21929 move-exception v9
21931 move-object v2, v3
21933 - goto :goto_aa
21934 + goto :goto_a7
21936 - :catchall_b3
21937 + :catchall_b0
21938 move-exception v9
21940 move-object v2, v3
21942 - goto :goto_a3
21943 + goto :goto_a0
21945 - :catch_b6
21946 + :catch_b3
21947 move-exception v0
21949 move-object v2, v3
21951 - goto :goto_80
21952 + goto :goto_7d
21954 - :catch_b9
21955 + :catch_b6
21956 move-exception v0
21958 goto :goto_54
21960 - :cond_bb
21961 - move-object v2, v3
21963 - goto :goto_73
21964 .end method
21966 .method private registerForAirplaneMode(Landroid/content/IntentFilter;)V
21967 @@ -3164,26 +3144,28 @@
21969 invoke-direct {v2, v3, v4}, Ljava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V
21970 :try_end_b
21971 - .catchall {:try_start_1 .. :try_end_b} :catchall_60
21972 - .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_1a
21973 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3d
21974 + .catchall {:try_start_1 .. :try_end_b} :catchall_5b
21975 + .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_17
21976 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3a
21978 const-wide/16 v3, 0x0
21980 :try_start_d
21981 invoke-virtual {v2, v3, v4}, Ljava/io/RandomAccessFile;->setLength(J)V
21982 :try_end_10
21983 - .catchall {:try_start_d .. :try_end_10} :catchall_69
21984 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6f
21985 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_6c
21986 + .catchall {:try_start_d .. :try_end_10} :catchall_66
21987 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6c
21988 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_69
21990 - if-eqz v2, :cond_72
21991 + if-eqz v2, :cond_15
21993 :try_start_12
21994 invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V
21995 :try_end_15
21996 - .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_17
21997 + .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_64
21999 + :cond_15
22000 + :goto_15
22001 move-object v1, v2
22003 :cond_16
22004 @@ -3191,17 +3173,10 @@
22005 return-void
22007 :catch_17
22008 - move-exception v3
22010 - move-object v1, v2
22012 - goto :goto_16
22014 - :catch_1a
22015 move-exception v0
22017 - :goto_1b
22018 - :try_start_1b
22019 + :goto_18
22020 + :try_start_18
22021 new-instance v3, Ljava/lang/StringBuilder;
22023 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22024 @@ -3225,28 +3200,28 @@
22025 move-result-object v3
22027 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22028 - :try_end_35
22029 - .catchall {:try_start_1b .. :try_end_35} :catchall_60
22030 + :try_end_32
22031 + .catchall {:try_start_18 .. :try_end_32} :catchall_5b
22033 if-eqz v1, :cond_16
22035 - :try_start_37
22036 + :try_start_34
22037 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
22038 - :try_end_3a
22039 - .catch Ljava/io/IOException; {:try_start_37 .. :try_end_3a} :catch_3b
22040 + :try_end_37
22041 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_37} :catch_38
22043 goto :goto_16
22045 - :catch_3b
22046 + :catch_38
22047 move-exception v3
22049 goto :goto_16
22051 - :catch_3d
22052 + :catch_3a
22053 move-exception v0
22055 - :goto_3e
22056 - :try_start_3e
22057 + :goto_3b
22058 + :try_start_3b
22059 new-instance v3, Ljava/lang/StringBuilder;
22061 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22062 @@ -3270,68 +3245,63 @@
22063 move-result-object v3
22065 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22066 - :try_end_58
22067 - .catchall {:try_start_3e .. :try_end_58} :catchall_60
22068 + :try_end_55
22069 + .catchall {:try_start_3b .. :try_end_55} :catchall_5b
22071 if-eqz v1, :cond_16
22073 - :try_start_5a
22074 + :try_start_57
22075 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
22076 - :try_end_5d
22077 - .catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
22079 - goto :goto_16
22081 - :catch_5e
22082 - move-exception v3
22083 + :try_end_5a
22084 + .catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_38
22086 goto :goto_16
22088 - :catchall_60
22089 + :catchall_5b
22090 move-exception v3
22092 - :goto_61
22093 - if-eqz v1, :cond_66
22094 + :goto_5c
22095 + if-eqz v1, :cond_61
22097 - :try_start_63
22098 + :try_start_5e
22099 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
22100 - :try_end_66
22101 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67
22102 + :try_end_61
22103 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
22105 - :cond_66
22106 - :goto_66
22107 + :cond_61
22108 + :goto_61
22109 throw v3
22111 - :catch_67
22112 + :catch_62
22113 move-exception v4
22115 - goto :goto_66
22116 + goto :goto_61
22118 - :catchall_69
22119 + :catch_64
22120 move-exception v3
22122 - move-object v1, v2
22124 - goto :goto_61
22125 + goto :goto_15
22127 - :catch_6c
22128 - move-exception v0
22129 + :catchall_66
22130 + move-exception v3
22132 move-object v1, v2
22134 - goto :goto_3e
22135 + goto :goto_5c
22137 - :catch_6f
22138 + :catch_69
22139 move-exception v0
22141 move-object v1, v2
22143 - goto :goto_1b
22144 + goto :goto_3b
22146 + :catch_6c
22147 + move-exception v0
22149 - :cond_72
22150 move-object v1, v2
22152 - goto :goto_16
22153 + goto :goto_18
22154 .end method
22156 .method private updateCountersAndCheckForConnectionStateChange(II)Z
22157 @@ -3784,17 +3754,17 @@
22159 invoke-virtual {v2, v6}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22160 :try_end_36
22161 - .catchall {:try_start_10 .. :try_end_36} :catchall_70
22162 - .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_76
22163 - .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_73
22164 + .catchall {:try_start_10 .. :try_end_36} :catchall_6e
22165 + .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_74
22166 + .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_71
22168 if-eqz v2, :cond_3b
22170 :try_start_38
22171 invoke-virtual {v2}, Ljava/io/BufferedWriter;->close()V
22172 :try_end_3b
22173 - .catchall {:try_start_38 .. :try_end_3b} :catchall_79
22174 - .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6a
22175 + .catchall {:try_start_38 .. :try_end_3b} :catchall_77
22176 + .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6c
22178 :cond_3b
22179 :goto_3b
22180 @@ -3824,7 +3794,7 @@
22181 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
22182 :try_end_4b
22183 .catchall {:try_start_48 .. :try_end_4b} :catchall_67
22184 - .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_6c
22185 + .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_5e
22187 :cond_4b
22188 :goto_4b
22189 @@ -3877,7 +3847,7 @@
22190 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
22191 :try_end_66
22192 .catchall {:try_start_63 .. :try_end_66} :catchall_67
22193 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6e
22194 + .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6a
22196 :cond_66
22197 :goto_66
22198 @@ -3897,40 +3867,35 @@
22199 :catch_6a
22200 move-exception v5
22202 - goto :goto_3b
22203 + goto :goto_66
22205 :catch_6c
22206 - move-exception v4
22208 - goto :goto_4b
22210 - :catch_6e
22211 move-exception v5
22213 - goto :goto_66
22214 + goto :goto_3b
22216 - :catchall_70
22217 + :catchall_6e
22218 move-exception v4
22220 move-object v1, v2
22222 goto :goto_61
22224 - :catch_73
22225 + :catch_71
22226 move-exception v0
22228 move-object v1, v2
22230 goto :goto_51
22232 - :catch_76
22233 + :catch_74
22234 move-exception v0
22236 move-object v1, v2
22238 goto :goto_3f
22240 - :catchall_79
22241 + :catchall_77
22242 move-exception v4
22244 move-object v1, v2
22245 @@ -4854,8 +4819,8 @@
22247 invoke-interface {v4}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOff()V
22248 :try_end_47
22249 - .catchall {:try_start_42 .. :try_end_47} :catchall_51
22250 - .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_4c
22251 + .catchall {:try_start_42 .. :try_end_47} :catchall_4c
22252 + .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_51
22254 :try_start_47
22255 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22256 @@ -4867,22 +4832,22 @@
22258 return-void
22260 - :catch_4c
22261 + :catchall_4c
22262 move-exception v4
22264 :try_start_4d
22265 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22267 - goto :goto_4a
22268 + throw v4
22270 - :catchall_51
22271 + :catch_51
22272 move-exception v4
22274 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22275 + :try_end_55
22276 + .catchall {:try_start_4d .. :try_end_55} :catchall_24
22278 - throw v4
22279 - :try_end_56
22280 - .catchall {:try_start_4d .. :try_end_56} :catchall_24
22281 + goto :goto_4a
22282 .end method
22284 .method clearApplicationStateChangeTracker()V
22285 @@ -9234,12 +9199,12 @@
22287 invoke-interface {v3}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOn()V
22288 :try_end_c
22289 - .catchall {:try_start_7 .. :try_end_c} :catchall_1c
22290 + .catchall {:try_start_7 .. :try_end_c} :catchall_19
22291 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_c} :catch_10
22293 + :goto_c
22294 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22296 - :goto_f
22297 return-void
22299 :catch_10
22300 @@ -9252,13 +9217,11 @@
22302 invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22303 :try_end_18
22304 - .catchall {:try_start_11 .. :try_end_18} :catchall_1c
22306 - invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22307 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
22309 - goto :goto_f
22310 + goto :goto_c
22312 - :catchall_1c
22313 + :catchall_19
22314 move-exception v3
22316 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22317 @@ -11409,7 +11372,7 @@
22319 invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
22320 :try_end_11
22321 - .catchall {:try_start_3 .. :try_end_11} :catchall_bf
22322 + .catchall {:try_start_3 .. :try_end_11} :catchall_bc
22324 :try_start_11
22325 new-instance v4, Ljava/io/BufferedWriter;
22326 @@ -11424,9 +11387,9 @@
22328 invoke-direct {v4, v7}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
22329 :try_end_1e
22330 - .catchall {:try_start_11 .. :try_end_1e} :catchall_b8
22331 - .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_cc
22332 - .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_95
22333 + .catchall {:try_start_11 .. :try_end_1e} :catchall_b5
22334 + .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_c9
22335 + .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_92
22337 :try_start_1e
22338 iget-object v7, p0, Landroid/server/BluetoothService;->mIncomingConnections:Ljava/util/HashMap;
22339 @@ -11490,9 +11453,9 @@
22341 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22342 :try_end_60
22343 - .catchall {:try_start_1e .. :try_end_60} :catchall_c6
22344 + .catchall {:try_start_1e .. :try_end_60} :catchall_c3
22345 .catch Ljava/io/FileNotFoundException; {:try_start_1e .. :try_end_60} :catch_61
22346 - .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c9
22347 + .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c6
22349 goto :goto_28
22351 @@ -11527,22 +11490,22 @@
22353 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22354 :try_end_7d
22355 - .catchall {:try_start_63 .. :try_end_7d} :catchall_b8
22356 + .catchall {:try_start_63 .. :try_end_7d} :catchall_b5
22358 if-eqz v3, :cond_82
22360 :try_start_7f
22361 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22362 :try_end_82
22363 - .catchall {:try_start_7f .. :try_end_82} :catchall_bf
22364 - .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_c2
22365 + .catchall {:try_start_7f .. :try_end_82} :catchall_bc
22366 + .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_b3
22368 :cond_82
22369 :goto_82
22370 :try_start_82
22371 monitor-exit v8
22372 :try_end_83
22373 - .catchall {:try_start_82 .. :try_end_83} :catchall_bf
22374 + .catchall {:try_start_82 .. :try_end_83} :catchall_bc
22376 return-void
22378 @@ -11554,34 +11517,29 @@
22380 invoke-virtual {v4, v7}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22381 :try_end_8b
22382 - .catchall {:try_start_84 .. :try_end_8b} :catchall_c6
22383 + .catchall {:try_start_84 .. :try_end_8b} :catchall_c3
22384 .catch Ljava/io/FileNotFoundException; {:try_start_84 .. :try_end_8b} :catch_61
22385 - .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c9
22386 + .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c6
22388 - if-eqz v4, :cond_ce
22389 + if-eqz v4, :cond_90
22391 :try_start_8d
22392 invoke-virtual {v4}, Ljava/io/BufferedWriter;->close()V
22393 :try_end_90
22394 - .catchall {:try_start_8d .. :try_end_90} :catchall_bf
22395 - .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_92
22396 + .catchall {:try_start_8d .. :try_end_90} :catchall_bc
22397 + .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_c1
22399 + :cond_90
22400 + :goto_90
22401 move-object v3, v4
22403 goto :goto_82
22405 :catch_92
22406 - move-exception v7
22408 - move-object v3, v4
22410 - goto :goto_82
22412 - :catch_95
22413 move-exception v1
22415 - :goto_96
22416 - :try_start_96
22417 + :goto_93
22418 + :try_start_93
22419 new-instance v7, Ljava/lang/StringBuilder;
22421 invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
22422 @@ -11605,81 +11563,76 @@
22423 move-result-object v7
22425 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22426 - :try_end_b0
22427 - .catchall {:try_start_96 .. :try_end_b0} :catchall_b8
22428 + :try_end_ad
22429 + .catchall {:try_start_93 .. :try_end_ad} :catchall_b5
22431 if-eqz v3, :cond_82
22433 - :try_start_b2
22434 + :try_start_af
22435 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22436 - :try_end_b5
22437 - .catchall {:try_start_b2 .. :try_end_b5} :catchall_bf
22438 - .catch Ljava/io/IOException; {:try_start_b2 .. :try_end_b5} :catch_b6
22439 + :try_end_b2
22440 + .catchall {:try_start_af .. :try_end_b2} :catchall_bc
22441 + .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_b3
22443 goto :goto_82
22445 - :catch_b6
22446 + :catch_b3
22447 move-exception v7
22449 goto :goto_82
22451 - :catchall_b8
22452 + :catchall_b5
22453 move-exception v7
22455 - :goto_b9
22456 - if-eqz v3, :cond_be
22457 + :goto_b6
22458 + if-eqz v3, :cond_bb
22460 - :try_start_bb
22461 + :try_start_b8
22462 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22463 - :try_end_be
22464 - .catchall {:try_start_bb .. :try_end_be} :catchall_bf
22465 - .catch Ljava/io/IOException; {:try_start_bb .. :try_end_be} :catch_c4
22466 + :try_end_bb
22467 + .catchall {:try_start_b8 .. :try_end_bb} :catchall_bc
22468 + .catch Ljava/io/IOException; {:try_start_b8 .. :try_end_bb} :catch_bf
22470 - :cond_be
22471 - :goto_be
22472 - :try_start_be
22473 + :cond_bb
22474 + :goto_bb
22475 + :try_start_bb
22476 throw v7
22478 - :catchall_bf
22479 + :catchall_bc
22480 move-exception v7
22482 monitor-exit v8
22483 - :try_end_c1
22484 - .catchall {:try_start_be .. :try_end_c1} :catchall_bf
22485 + :try_end_be
22486 + .catchall {:try_start_bb .. :try_end_be} :catchall_bc
22488 throw v7
22490 - :catch_c2
22491 - move-exception v7
22492 + :catch_bf
22493 + move-exception v9
22495 - goto :goto_82
22496 + goto :goto_bb
22498 - :catch_c4
22499 - move-exception v9
22500 + :catch_c1
22501 + move-exception v7
22503 - goto :goto_be
22504 + goto :goto_90
22506 - :catchall_c6
22507 + :catchall_c3
22508 move-exception v7
22510 move-object v3, v4
22512 - goto :goto_b9
22513 + goto :goto_b6
22515 - :catch_c9
22516 + :catch_c6
22517 move-exception v1
22519 move-object v3, v4
22521 - goto :goto_96
22522 + goto :goto_93
22524 - :catch_cc
22525 + :catch_c9
22526 move-exception v1
22528 goto :goto_63
22530 - :cond_ce
22531 - move-object v3, v4
22533 - goto :goto_82
22534 .end method
22535 diff -Npru stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali
22536 --- stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-05-08 11:54:29.698634981 -0500
22537 +++ pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-05-08 11:54:53.534753178 -0500
22538 @@ -161,25 +161,23 @@
22540 invoke-interface {v1, v2}, Lcom/android/internal/textservice/ISpellCheckerSessionListener;->onGetSuggestions([Landroid/view/textservice/SuggestionsInfo;)V
22541 :try_end_18
22542 - .catchall {:try_start_a .. :try_end_18} :catchall_21
22543 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_1c
22544 + .catchall {:try_start_a .. :try_end_18} :catchall_1c
22545 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_21
22547 + :goto_18
22548 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22550 - :goto_1b
22551 return-void
22553 - :catch_1c
22554 + :catchall_1c
22555 move-exception v1
22557 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22559 - goto :goto_1b
22560 + throw v1
22562 - :catchall_21
22563 + :catch_21
22564 move-exception v1
22566 - invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22568 - throw v1
22569 + goto :goto_18
22570 .end method
22571 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener$1.smali pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali
22572 --- stock-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-05-08 11:54:29.770635331 -0500
22573 +++ pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-05-08 11:54:53.594753475 -0500
22574 @@ -64,47 +64,317 @@
22575 .end method
22577 .method public onCallStateChanged(ILjava/lang/String;)V
22578 - .registers 6
22579 + .registers 19
22581 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22582 + move-object/from16 v0, p0
22584 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22585 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22587 - const/16 v1, 0x20
22588 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22589 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22591 - const/4 v2, 0x0
22592 + move-result-object v3
22594 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22595 + if-eqz v3, :cond_99
22597 - move-result-object v0
22598 + if-eqz p2, :cond_99
22600 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
22602 + move-result v3
22604 + if-nez v3, :cond_99
22606 + move-object/from16 v0, p0
22608 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22610 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22611 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22613 + move-result-object v3
22615 + const-string/jumbo v4, "privacy"
22617 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22619 + move-result-object v2
22621 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
22623 + move-object/from16 v0, p0
22625 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22627 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22628 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22630 + move-result-object v3
22632 + move-object/from16 v0, p0
22634 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22636 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22637 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22639 + move-result v4
22641 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22643 + move-result-object v8
22645 + if-eqz v8, :cond_6a
22647 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
22649 + move-result v3
22651 + if-eqz v3, :cond_6a
22653 + const-string v7, ""
22655 + move-object/from16 v0, p0
22657 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22659 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22661 + const/16 v4, 0x20
22663 + const/4 v5, 0x0
22665 + move/from16 v0, p1
22667 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22669 + move-result-object v3
22671 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
22672 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22674 + move-object/from16 v0, p0
22676 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22678 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22679 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22681 + move-result-object v3
22683 + move-object/from16 v0, p0
22685 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22687 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22688 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22690 + move-result v4
22692 + const/4 v5, 0x1
22694 + const-string v6, "incomingCall"
22696 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22698 + :goto_69
22699 return-void
22701 + :cond_6a
22702 + move-object/from16 v0, p0
22704 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22706 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22708 + const/16 v4, 0x20
22710 + const/4 v5, 0x0
22712 + move/from16 v0, p1
22714 + move-object/from16 v1, p2
22716 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22718 + move-result-object v3
22720 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22722 + move-object/from16 v0, p0
22724 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22726 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22727 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22729 + move-result-object v10
22731 + move-object/from16 v0, p0
22733 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22735 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22736 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22738 + move-result v11
22740 + const/4 v12, 0x0
22742 + const-string v13, "incomingCall"
22744 + move-object v9, v2
22746 + move-object/from16 v14, p2
22748 + move-object v15, v8
22750 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22752 + goto :goto_69
22754 + :cond_99
22755 + move-object/from16 v0, p0
22757 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22759 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22761 + const/16 v4, 0x20
22763 + const/4 v5, 0x0
22765 + move/from16 v0, p1
22767 + move-object/from16 v1, p2
22769 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22771 + move-result-object v3
22773 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22775 + goto :goto_69
22776 .end method
22778 .method public onCellLocationChanged(Landroid/os/Bundle;)V
22779 - .registers 6
22780 + .registers 10
22782 + const/4 v5, 0x0
22784 const/4 v3, 0x0
22786 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
22788 + move-result-object v7
22790 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22792 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22793 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22795 + move-result-object v1
22797 + if-eqz v1, :cond_4a
22799 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22801 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22802 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22804 + move-result-object v1
22806 + const-string/jumbo v2, "privacy"
22808 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22810 move-result-object v0
22812 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
22814 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22816 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22817 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22819 + move-result-object v1
22821 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22823 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22824 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22826 + move-result v2
22828 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22830 + move-result-object v6
22832 + if-eqz v6, :cond_4b
22834 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22836 + move-result v1
22838 + if-eqz v1, :cond_4b
22840 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22842 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22843 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22845 + move-result-object v1
22847 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22849 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22850 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22852 + move-result v2
22854 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22856 + move-result v3
22858 + const-string v4, "locationNetwork"
22860 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22862 + :cond_4a
22863 + :goto_4a
22864 + return-void
22866 + :cond_4b
22867 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22869 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22871 const/16 v2, 0x10
22873 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22874 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22876 move-result-object v1
22878 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
22880 - return-void
22881 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22883 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22884 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22886 + move-result-object v1
22888 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22890 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22891 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22893 + move-result v2
22895 + const-string v4, "locationNetwork"
22897 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22899 + goto :goto_4a
22900 .end method
22902 .method public onDataActivity(I)V
22903 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener.smali pdroid-framework/smali/android/telephony/PhoneStateListener.smali
22904 --- stock-framework/smali/android/telephony/PhoneStateListener.smali 2012-05-08 11:54:28.586629463 -0500
22905 +++ pdroid-framework/smali/android/telephony/PhoneStateListener.smali 2012-05-08 11:54:52.598748537 -0500
22906 @@ -29,12 +29,20 @@
22908 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
22910 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
22913 # instance fields
22914 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
22916 +.field private context:Landroid/content/Context;
22918 .field mHandler:Landroid/os/Handler;
22920 +.field private packageName:Ljava/lang/String;
22922 +.field private uid:I
22925 # direct methods
22926 .method public constructor <init>()V
22927 @@ -57,6 +65,30 @@
22928 return-void
22929 .end method
22931 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22932 + .registers 2
22934 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22936 + return-object v0
22937 +.end method
22939 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22940 + .registers 2
22942 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22944 + return-object v0
22945 +.end method
22947 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
22948 + .registers 2
22950 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
22952 + return v0
22953 +.end method
22956 # virtual methods
22957 .method public onCallForwardingIndicatorChanged(Z)V
22958 @@ -126,3 +158,27 @@
22960 return-void
22961 .end method
22963 +.method public setContext(Landroid/content/Context;)V
22964 + .registers 2
22966 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22968 + return-void
22969 +.end method
22971 +.method public setPackageName(Ljava/lang/String;)V
22972 + .registers 2
22974 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22976 + return-void
22977 +.end method
22979 +.method public setUid(I)V
22980 + .registers 2
22982 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
22984 + return-void
22985 +.end method
22986 diff -Npru stock-framework/smali/android/view/accessibility/AccessibilityManager.smali pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali
22987 --- stock-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-05-08 11:54:30.422638571 -0500
22988 +++ pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-05-08 11:54:53.894754959 -0500
22989 @@ -637,15 +637,15 @@
22991 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22992 :try_end_21
22993 - .catchall {:try_start_d .. :try_end_21} :catchall_4c
22994 + .catchall {:try_start_d .. :try_end_21} :catchall_49
22995 .catch Landroid/os/RemoteException; {:try_start_d .. :try_end_21} :catch_27
22997 if-eqz v0, :cond_26
22999 + :goto_23
23000 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
23002 :cond_26
23003 - :goto_26
23004 return-void
23006 :catch_27
23007 @@ -680,21 +680,19 @@
23009 invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23010 :try_end_46
23011 - .catchall {:try_start_28 .. :try_end_46} :catchall_4c
23012 + .catchall {:try_start_28 .. :try_end_46} :catchall_49
23014 if-eqz v0, :cond_26
23016 - invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
23018 - goto :goto_26
23019 + goto :goto_23
23021 - :catchall_4c
23022 + :catchall_49
23023 move-exception v4
23025 - if-eqz v0, :cond_52
23026 + if-eqz v0, :cond_4f
23028 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
23030 - :cond_52
23031 + :cond_4f
23032 throw v4
23033 .end method
23034 diff -Npru stock-framework/smali/android/view/SurfaceView.smali pdroid-framework/smali/android/view/SurfaceView.smali
23035 --- stock-framework/smali/android/view/SurfaceView.smali 2012-05-08 11:54:29.270632859 -0500
23036 +++ pdroid-framework/smali/android/view/SurfaceView.smali 2012-05-08 11:54:53.098751012 -0500
23037 @@ -1342,7 +1342,7 @@
23039 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback;->surfaceDestroyed(Landroid/view/SurfaceHolder;)V
23040 :try_end_29b
23041 - .catchall {:try_start_262 .. :try_end_29b} :catchall_3c6
23042 + .catchall {:try_start_262 .. :try_end_29b} :catchall_3a7
23044 add-int/lit8 v22, v22, 0x1
23046 @@ -1486,7 +1486,7 @@
23048 invoke-virtual {v3, v4}, Landroid/view/Surface;->transferFrom(Landroid/view/Surface;)V
23050 - if-eqz v34, :cond_3a7
23051 + if-eqz v34, :cond_3c6
23053 move-object/from16 v0, p0
23055 @@ -1608,7 +1608,7 @@
23056 goto :goto_35e
23058 :cond_37a
23059 - if-eqz p2, :cond_3a7
23060 + if-eqz p2, :cond_3c6
23062 if-nez v19, :cond_382
23064 @@ -1632,7 +1632,7 @@
23066 move/from16 v1, v23
23068 - if-ge v0, v1, :cond_3a7
23069 + if-ge v0, v1, :cond_3c6
23071 aget-object v18, v17, v22
23073 @@ -1652,81 +1652,81 @@
23075 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback2;->surfaceRedrawNeeded(Landroid/view/SurfaceHolder;)V
23076 :try_end_3a4
23077 - .catchall {:try_start_301 .. :try_end_3a4} :catchall_3c6
23078 + .catchall {:try_start_301 .. :try_end_3a4} :catchall_3a7
23080 :cond_3a4
23081 add-int/lit8 v22, v22, 0x1
23083 goto :goto_38b
23085 - :cond_3a7
23086 - const/4 v3, 0x0
23087 + :catchall_3a7
23088 + move-exception v3
23090 - :try_start_3a8
23091 + const/4 v4, 0x0
23093 + :try_start_3a9
23094 move-object/from16 v0, p0
23096 - iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23097 + iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23099 - if-eqz p2, :cond_3b9
23100 + if-eqz p2, :cond_3ba
23102 move-object/from16 v0, p0
23104 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23105 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23107 move-object/from16 v0, p0
23109 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23110 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23112 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23113 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23115 - :cond_3b9
23116 + :cond_3ba
23117 move-object/from16 v0, p0
23119 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23120 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23122 move-object/from16 v0, p0
23124 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23126 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23127 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23129 - goto/16 :goto_6
23130 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23132 - :catchall_3c6
23133 - move-exception v3
23134 + throw v3
23136 - const/4 v4, 0x0
23137 + :cond_3c6
23138 + const/4 v3, 0x0
23140 move-object/from16 v0, p0
23142 - iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23143 + iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23145 - if-eqz p2, :cond_3d9
23146 + if-eqz p2, :cond_3d8
23148 move-object/from16 v0, p0
23150 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23151 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23153 move-object/from16 v0, p0
23155 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23156 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23158 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23159 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23161 - :cond_3d9
23162 + :cond_3d8
23163 move-object/from16 v0, p0
23165 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23166 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23168 move-object/from16 v0, p0
23170 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23171 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23173 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23174 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23175 + :try_end_3e3
23176 + .catch Landroid/os/RemoteException; {:try_start_3a9 .. :try_end_3e3} :catch_2f6
23178 - throw v3
23179 - :try_end_3e5
23180 - .catch Landroid/os/RemoteException; {:try_start_3a8 .. :try_end_3e5} :catch_2f6
23181 + goto/16 :goto_6
23182 .end method
23185 diff -Npru stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali
23186 --- stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-05-08 11:54:30.378638349 -0500
23187 +++ pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-05-08 11:54:53.850754742 -0500
23188 @@ -364,7 +364,7 @@
23189 :try_start_13
23190 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23191 :try_end_16
23192 - .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1c
23193 + .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1e
23195 :goto_16
23196 return-void
23197 @@ -375,20 +375,20 @@
23198 :try_start_18
23199 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23200 :try_end_1b
23201 - .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1e
23202 + .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1c
23204 :goto_1b
23205 throw v5
23207 :catch_1c
23208 - move-exception v5
23209 + move-exception v6
23211 - goto :goto_16
23212 + goto :goto_1b
23214 :catch_1e
23215 - move-exception v6
23216 + move-exception v5
23218 - goto :goto_1b
23219 + goto :goto_16
23220 .end method
23222 .method public findAccessibilityNodeInfoByViewIdClientThread(IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23223 @@ -491,7 +491,7 @@
23224 :try_start_1d
23225 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23226 :try_end_20
23227 - .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_26
23228 + .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_28
23230 :goto_20
23231 return-void
23232 @@ -502,20 +502,20 @@
23233 :try_start_22
23234 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23235 :try_end_25
23236 - .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_28
23237 + .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_26
23239 :goto_25
23240 throw v6
23242 :catch_26
23243 - move-exception v6
23244 + move-exception v7
23246 - goto :goto_20
23247 + goto :goto_25
23249 :catch_28
23250 - move-exception v7
23251 + move-exception v6
23253 - goto :goto_25
23254 + goto :goto_20
23255 .end method
23257 .method public findAccessibilityNodeInfosByViewTextClientThread(Ljava/lang/String;IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23258 @@ -639,7 +639,7 @@
23260 invoke-virtual {v8}, Landroid/view/View;->getVisibility()I
23261 :try_end_2c
23262 - .catchall {:try_start_16 .. :try_end_2c} :catchall_70
23263 + .catchall {:try_start_16 .. :try_end_2c} :catchall_6a
23265 move-result v11
23267 @@ -649,7 +649,7 @@
23268 :try_start_2f
23269 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23270 :try_end_32
23271 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_75
23272 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_46
23274 :goto_32
23275 return-void
23276 @@ -669,7 +669,7 @@
23278 invoke-virtual {v4}, Ljava/util/ArrayList;->isEmpty()Z
23279 :try_end_3f
23280 - .catchall {:try_start_33 .. :try_end_3f} :catchall_70
23281 + .catchall {:try_start_33 .. :try_end_3f} :catchall_6a
23283 move-result v11
23285 @@ -700,7 +700,7 @@
23286 const/4 v5, 0x0
23288 :goto_52
23289 - if-ge v5, v10, :cond_6a
23290 + if-ge v5, v10, :cond_71
23292 invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
23294 @@ -720,46 +720,36 @@
23296 invoke-interface {v6, v11}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23297 :try_end_67
23298 - .catchall {:try_start_48 .. :try_end_67} :catchall_70
23299 + .catchall {:try_start_48 .. :try_end_67} :catchall_6a
23301 :cond_67
23302 add-int/lit8 v5, v5, 0x1
23304 goto :goto_52
23306 - :cond_6a
23307 - :try_start_6a
23308 - invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23309 - :try_end_6d
23310 - .catch Landroid/os/RemoteException; {:try_start_6a .. :try_end_6d} :catch_6e
23311 + :catchall_6a
23312 + move-exception v11
23314 - goto :goto_32
23315 + :try_start_6b
23316 + invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23317 + :try_end_6e
23318 + .catch Landroid/os/RemoteException; {:try_start_6b .. :try_end_6e} :catch_6f
23320 - :catch_6e
23321 - move-exception v11
23322 + :goto_6e
23323 + throw v11
23325 - goto :goto_32
23326 + :catch_6f
23327 + move-exception v12
23329 - :catchall_70
23330 - move-exception v11
23331 + goto :goto_6e
23333 + :cond_71
23334 :try_start_71
23335 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23336 :try_end_74
23337 - .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_77
23339 - :goto_74
23340 - throw v11
23342 - :catch_75
23343 - move-exception v11
23344 + .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_46
23346 goto :goto_32
23348 - :catch_77
23349 - move-exception v12
23351 - goto :goto_74
23352 .end method
23354 .method public performAccessibilityActionClientThread(IIILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23355 @@ -864,7 +854,7 @@
23356 :try_start_17
23357 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23358 :try_end_1a
23359 - .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_34
23360 + .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_36
23362 :goto_1a
23363 return-void
23364 @@ -906,20 +896,20 @@
23365 :try_start_30
23366 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23367 :try_end_33
23368 - .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_36
23369 + .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_34
23371 :goto_33
23372 throw v6
23374 :catch_34
23375 - move-exception v6
23376 + move-exception v7
23378 - goto :goto_1a
23379 + goto :goto_33
23381 :catch_36
23382 - move-exception v7
23383 + move-exception v6
23385 - goto :goto_33
23386 + goto :goto_1a
23388 :pswitch_data_38
23389 .packed-switch 0x1
23390 diff -Npru stock-framework/smali/android/view/ViewRootImpl$W.smali pdroid-framework/smali/android/view/ViewRootImpl$W.smali
23391 --- stock-framework/smali/android/view/ViewRootImpl$W.smali 2012-05-08 11:54:30.382638373 -0500
23392 +++ pdroid-framework/smali/android/view/ViewRootImpl$W.smali 2012-05-08 11:54:53.854754764 -0500
23393 @@ -301,21 +301,21 @@
23395 invoke-direct {v1, p3}, Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V
23396 :try_end_47
23397 - .catchall {:try_start_42 .. :try_end_47} :catchall_64
23398 - .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_55
23399 + .catchall {:try_start_42 .. :try_end_47} :catchall_5f
23400 + .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_50
23402 :try_start_47
23403 invoke-static {v3, p1, p2, v1}, Landroid/view/ViewDebug;->dispatchCommand(Landroid/view/View;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;)V
23404 :try_end_4a
23405 - .catchall {:try_start_47 .. :try_end_4a} :catchall_70
23406 - .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_73
23407 + .catchall {:try_start_47 .. :try_end_4a} :catchall_6d
23408 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_70
23410 if-eqz v1, :cond_4f
23412 :try_start_4c
23413 invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
23414 :try_end_4f
23415 - .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50
23416 + .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_6b
23418 :cond_4f
23419 :goto_4f
23420 @@ -324,70 +324,69 @@
23421 :catch_50
23422 move-exception v2
23424 + :goto_51
23425 + :try_start_51
23426 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23428 - goto :goto_4f
23430 - :catch_55
23431 - move-exception v2
23433 - :goto_56
23434 - :try_start_56
23435 - invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23436 - :try_end_59
23437 - .catchall {:try_start_56 .. :try_end_59} :catchall_64
23438 + :try_end_54
23439 + .catchall {:try_start_51 .. :try_end_54} :catchall_5f
23441 if-eqz v0, :cond_4f
23443 - :try_start_5b
23444 + :try_start_56
23445 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23446 - :try_end_5e
23447 - .catch Ljava/io/IOException; {:try_start_5b .. :try_end_5e} :catch_5f
23448 + :try_end_59
23449 + .catch Ljava/io/IOException; {:try_start_56 .. :try_end_59} :catch_5a
23451 goto :goto_4f
23453 - :catch_5f
23454 + :catch_5a
23455 move-exception v2
23457 + :goto_5b
23458 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23460 goto :goto_4f
23462 - :catchall_64
23463 + :catchall_5f
23464 move-exception v5
23466 - :goto_65
23467 - if-eqz v0, :cond_6a
23468 + :goto_60
23469 + if-eqz v0, :cond_65
23471 - :try_start_67
23472 + :try_start_62
23473 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23474 - :try_end_6a
23475 - .catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_6b
23476 + :try_end_65
23477 + .catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
23479 - :cond_6a
23480 - :goto_6a
23481 + :cond_65
23482 + :goto_65
23483 throw v5
23485 - :catch_6b
23486 + :catch_66
23487 move-exception v2
23489 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23491 - goto :goto_6a
23492 + goto :goto_65
23494 - :catchall_70
23495 + :catch_6b
23496 + move-exception v2
23498 + goto :goto_5b
23500 + :catchall_6d
23501 move-exception v5
23503 move-object v0, v1
23505 - goto :goto_65
23506 + goto :goto_60
23508 - :catch_73
23509 + :catch_70
23510 move-exception v2
23512 move-object v0, v1
23514 - goto :goto_56
23515 + goto :goto_51
23516 .end method
23518 .method public resized(IILandroid/graphics/Rect;Landroid/graphics/Rect;ZLandroid/content/res/Configuration;)V
23519 diff -Npru stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali
23520 --- stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-05-08 11:54:30.514639023 -0500
23521 +++ pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-05-08 11:54:54.014755553 -0500
23522 @@ -123,28 +123,26 @@
23524 invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
23525 :try_end_a
23526 - .catchall {:try_start_5 .. :try_end_a} :catchall_11
23527 - .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_d
23528 + .catchall {:try_start_5 .. :try_end_a} :catchall_d
23529 + .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_11
23531 + :goto_a
23532 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23534 :cond_c
23535 - :goto_c
23536 return-void
23538 - :catch_d
23539 + :catchall_d
23540 move-exception v0
23542 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23544 - goto :goto_c
23545 + throw v0
23547 - :catchall_11
23548 + :catch_11
23549 move-exception v0
23551 - iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23553 - throw v0
23554 + goto :goto_a
23555 .end method
23557 .method private releaseQueue()V
23558 diff -Npru stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali
23559 --- stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-05-08 11:54:30.542639162 -0500
23560 +++ pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-05-08 11:54:54.042755697 -0500
23561 @@ -189,7 +189,7 @@
23563 invoke-interface {v6}, Landroid/database/Cursor;->moveToNext()Z
23564 :try_end_40
23565 - .catchall {:try_start_1e .. :try_end_40} :catchall_57
23566 + .catchall {:try_start_1e .. :try_end_40} :catchall_54
23567 .catch Ljava/lang/IllegalStateException; {:try_start_1e .. :try_end_40} :catch_49
23569 move-result v1
23570 @@ -199,10 +199,10 @@
23571 :cond_43
23572 if-eqz v6, :cond_48
23574 + :goto_45
23575 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23577 :cond_48
23578 - :goto_48
23579 return-void
23581 :catch_49
23582 @@ -215,22 +215,20 @@
23584 invoke-static {v1, v2, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23585 :try_end_51
23586 - .catchall {:try_start_4a .. :try_end_51} :catchall_57
23587 + .catchall {:try_start_4a .. :try_end_51} :catchall_54
23589 if-eqz v6, :cond_48
23591 - invoke-interface {v6}, Landroid/database/Cursor;->close()V
23593 - goto :goto_48
23594 + goto :goto_45
23596 - :catchall_57
23597 + :catchall_54
23598 move-exception v1
23600 - if-eqz v6, :cond_5d
23601 + if-eqz v6, :cond_5a
23603 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23605 - :cond_5d
23606 + :cond_5a
23607 throw v1
23608 .end method
23610 diff -Npru stock-framework/smali/android/webkit/WebView$6.smali pdroid-framework/smali/android/webkit/WebView$6.smali
23611 --- stock-framework/smali/android/webkit/WebView$6.smali 2012-05-08 11:54:30.562639261 -0500
23612 +++ pdroid-framework/smali/android/webkit/WebView$6.smali 2012-05-08 11:54:54.062755797 -0500
23613 @@ -58,8 +58,8 @@
23615 invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
23616 :try_end_8
23617 - .catchall {:try_start_1 .. :try_end_8} :catchall_2c
23618 - .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_20
23619 + .catchall {:try_start_1 .. :try_end_8} :catchall_20
23620 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_2c
23622 :try_start_8
23623 iget-object v2, p0, Landroid/webkit/WebView$6;->val$p:Landroid/graphics/Picture;
23624 @@ -80,7 +80,7 @@
23625 :try_start_16
23626 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23627 :try_end_19
23628 - .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_38
23629 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_3c
23631 :cond_19
23632 :goto_19
23633 @@ -93,7 +93,7 @@
23634 :goto_1f
23635 return-void
23637 - :catch_20
23638 + :catchall_20
23639 move-exception v2
23641 :goto_21
23642 @@ -106,13 +106,13 @@
23644 :cond_26
23645 :goto_26
23646 - iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23647 + iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23649 - invoke-virtual {v2}, Ljava/io/File;->delete()Z
23650 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
23652 - goto :goto_1f
23653 + throw v2
23655 - :catchall_2c
23656 + :catch_2c
23657 move-exception v2
23659 :goto_2d
23660 @@ -121,42 +121,42 @@
23661 :try_start_2f
23662 invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
23663 :try_end_32
23664 - .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_3c
23665 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_38
23667 :cond_32
23668 :goto_32
23669 - iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23670 + iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23672 - invoke-virtual {v3}, Ljava/io/File;->delete()Z
23673 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
23675 - throw v2
23676 + goto :goto_1f
23678 :catch_38
23679 move-exception v2
23681 - goto :goto_19
23682 + goto :goto_32
23684 :catch_3a
23685 - move-exception v2
23686 + move-exception v3
23688 goto :goto_26
23690 :catch_3c
23691 - move-exception v3
23692 + move-exception v2
23694 - goto :goto_32
23695 + goto :goto_19
23697 :catchall_3e
23698 move-exception v2
23700 move-object v0, v1
23702 - goto :goto_2d
23703 + goto :goto_21
23705 :catch_41
23706 move-exception v2
23708 move-object v0, v1
23710 - goto :goto_21
23711 + goto :goto_2d
23712 .end method
23713 diff -Npru stock-framework/smali/android/webkit/WebView$7.smali pdroid-framework/smali/android/webkit/WebView$7.smali
23714 --- stock-framework/smali/android/webkit/WebView$7.smali 2012-05-08 11:54:30.562639261 -0500
23715 +++ pdroid-framework/smali/android/webkit/WebView$7.smali 2012-05-08 11:54:54.062755797 -0500
23716 @@ -72,7 +72,7 @@
23718 invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
23719 :try_end_19
23720 - .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_23
23721 + .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_21
23723 :goto_19
23724 return-void
23725 @@ -85,18 +85,18 @@
23727 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
23728 :try_end_20
23729 - .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_21
23730 + .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_23
23732 :goto_20
23733 throw v1
23735 :catch_21
23736 - move-exception v2
23737 + move-exception v1
23739 - goto :goto_20
23740 + goto :goto_19
23742 :catch_23
23743 - move-exception v1
23744 + move-exception v2
23746 - goto :goto_19
23747 + goto :goto_20
23748 .end method
23749 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali
23750 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-05-08 11:54:30.670639801 -0500
23751 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-05-08 11:54:54.206756507 -0500
23752 @@ -140,7 +140,7 @@
23754 throw v21
23755 :try_end_51
23756 - .catchall {:try_start_19 .. :try_end_51} :catchall_15b
23757 + .catchall {:try_start_19 .. :try_end_51} :catchall_158
23758 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_19 .. :try_end_51} :catch_51
23759 .catch Ljava/io/IOException; {:try_start_19 .. :try_end_51} :catch_ed
23761 @@ -189,7 +189,7 @@
23763 invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23764 :try_end_7c
23765 - .catchall {:try_start_52 .. :try_end_7c} :catchall_15b
23766 + .catchall {:try_start_52 .. :try_end_7c} :catchall_158
23768 if-eqz v4, :cond_3c
23770 @@ -238,7 +238,7 @@
23772 monitor-enter v22
23773 :try_end_a0
23774 - .catchall {:try_start_84 .. :try_end_a0} :catchall_15b
23775 + .catchall {:try_start_84 .. :try_end_a0} :catchall_158
23776 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_84 .. :try_end_a0} :catch_51
23777 .catch Ljava/io/IOException; {:try_start_84 .. :try_end_a0} :catch_ed
23779 @@ -267,7 +267,7 @@
23780 add-int/lit8 v9, v8, -0x1
23782 :goto_b7
23783 - if-ltz v9, :cond_162
23784 + if-ltz v9, :cond_15f
23786 invoke-interface {v7, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
23788 @@ -279,7 +279,7 @@
23790 invoke-interface {v0, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
23791 :try_end_c4
23792 - .catchall {:try_start_a0 .. :try_end_c4} :catchall_1b3
23793 + .catchall {:try_start_a0 .. :try_end_c4} :catchall_1aa
23795 add-int/lit8 v9, v9, -0x1
23797 @@ -315,7 +315,7 @@
23799 move-result v21
23801 - if-nez v21, :cond_120
23802 + if-nez v21, :cond_11d
23804 new-instance v21, Lorg/xmlpull/v1/XmlPullParserException;
23806 @@ -325,7 +325,7 @@
23808 throw v21
23809 :try_end_ed
23810 - .catchall {:try_start_d7 .. :try_end_ed} :catchall_15b
23811 + .catchall {:try_start_d7 .. :try_end_ed} :catchall_158
23812 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_d7 .. :try_end_ed} :catch_51
23813 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_ed} :catch_ed
23815 @@ -372,26 +372,21 @@
23817 invoke-static {v0, v1, v10}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23818 :try_end_116
23819 - .catchall {:try_start_ee .. :try_end_116} :catchall_15b
23820 + .catchall {:try_start_ee .. :try_end_116} :catchall_158
23822 if-eqz v4, :cond_3c
23824 :try_start_118
23825 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23826 :try_end_11b
23827 - .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_11d
23828 + .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_82
23830 goto/16 :goto_3c
23832 - :catch_11d
23833 - move-exception v21
23835 - goto/16 :goto_3c
23837 - :cond_120
23838 + :cond_11d
23839 const/16 v21, 0x0
23841 - :try_start_122
23842 + :try_start_11f
23843 const-string v22, "activity"
23845 move-object/from16 v0, v21
23846 @@ -443,29 +438,29 @@
23847 invoke-direct {v13, v3, v0, v1, v2}, Landroid/widget/ActivityChooserModel$HistoricalRecord;-><init>(Ljava/lang/String;JF)V
23849 invoke-interface {v14, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23850 - :try_end_159
23851 - .catchall {:try_start_122 .. :try_end_159} :catchall_15b
23852 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_122 .. :try_end_159} :catch_51
23853 - .catch Ljava/io/IOException; {:try_start_122 .. :try_end_159} :catch_ed
23854 + :try_end_156
23855 + .catchall {:try_start_11f .. :try_end_156} :catchall_158
23856 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_11f .. :try_end_156} :catch_51
23857 + .catch Ljava/io/IOException; {:try_start_11f .. :try_end_156} :catch_ed
23859 goto/16 :goto_89
23861 - :catchall_15b
23862 + :catchall_158
23863 move-exception v21
23865 - if-eqz v4, :cond_161
23866 + if-eqz v4, :cond_15e
23868 - :try_start_15e
23869 + :try_start_15b
23870 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23871 - :try_end_161
23872 - .catch Ljava/io/IOException; {:try_start_15e .. :try_end_161} :catch_1b6
23873 + :try_end_15e
23874 + .catch Ljava/io/IOException; {:try_start_15b .. :try_end_15e} :catch_1ad
23876 - :cond_161
23877 - :goto_161
23878 + :cond_15e
23879 + :goto_15e
23880 throw v21
23882 - :cond_162
23883 - :try_start_162
23884 + :cond_15f
23885 + :try_start_15f
23886 invoke-interface {v7}, Ljava/util/List;->size()I
23888 move-result v21
23889 @@ -478,28 +473,23 @@
23891 move/from16 v1, v23
23893 - if-ne v0, v1, :cond_17b
23894 + if-ne v0, v1, :cond_175
23896 monitor-exit v22
23897 - :try_end_171
23898 - .catchall {:try_start_162 .. :try_end_171} :catchall_1b3
23899 + :try_end_16e
23900 + .catchall {:try_start_15f .. :try_end_16e} :catchall_1aa
23902 if-eqz v4, :cond_3c
23904 - :try_start_173
23905 + :try_start_170
23906 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23907 - :try_end_176
23908 - .catch Ljava/io/IOException; {:try_start_173 .. :try_end_176} :catch_178
23910 - goto/16 :goto_3c
23912 - :catch_178
23913 - move-exception v21
23914 + :try_end_173
23915 + .catch Ljava/io/IOException; {:try_start_170 .. :try_end_173} :catch_82
23917 goto/16 :goto_3c
23919 - :cond_17b
23920 - :try_start_17b
23921 + :cond_175
23922 + :try_start_175
23923 invoke-interface {v7}, Ljava/util/List;->clear()V
23925 move-object/from16 v0, v18
23926 @@ -543,40 +533,35 @@
23927 invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
23929 monitor-exit v22
23930 - :try_end_1a9
23931 - .catchall {:try_start_17b .. :try_end_1a9} :catchall_1b3
23932 + :try_end_1a3
23933 + .catchall {:try_start_175 .. :try_end_1a3} :catchall_1aa
23935 if-eqz v4, :cond_3c
23937 - :try_start_1ab
23938 + :try_start_1a5
23939 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23940 - :try_end_1ae
23941 - .catch Ljava/io/IOException; {:try_start_1ab .. :try_end_1ae} :catch_1b0
23942 + :try_end_1a8
23943 + .catch Ljava/io/IOException; {:try_start_1a5 .. :try_end_1a8} :catch_82
23945 goto/16 :goto_3c
23947 - :catch_1b0
23948 + :catchall_1aa
23949 move-exception v21
23951 - goto/16 :goto_3c
23953 - :catchall_1b3
23954 - move-exception v21
23956 - :try_start_1b4
23957 + :try_start_1ab
23958 monitor-exit v22
23959 - :try_end_1b5
23960 - .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_1b3
23961 + :try_end_1ac
23962 + .catchall {:try_start_1ab .. :try_end_1ac} :catchall_1aa
23964 - :try_start_1b5
23965 + :try_start_1ac
23966 throw v21
23967 - :try_end_1b6
23968 - .catchall {:try_start_1b5 .. :try_end_1b6} :catchall_15b
23969 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1b5 .. :try_end_1b6} :catch_51
23970 - .catch Ljava/io/IOException; {:try_start_1b5 .. :try_end_1b6} :catch_ed
23971 + :try_end_1ad
23972 + .catchall {:try_start_1ac .. :try_end_1ad} :catchall_158
23973 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1ac .. :try_end_1ad} :catch_51
23974 + .catch Ljava/io/IOException; {:try_start_1ac .. :try_end_1ad} :catch_ed
23976 - :catch_1b6
23977 + :catch_1ad
23978 move-exception v22
23980 - goto :goto_161
23981 + goto :goto_15e
23982 .end method
23983 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali
23984 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-05-08 11:54:30.670639801 -0500
23985 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-05-08 11:54:54.206756507 -0500
23986 @@ -75,7 +75,7 @@
23987 :try_start_14
23988 monitor-exit v12
23989 :try_end_15
23990 - .catchall {:try_start_14 .. :try_end_15} :catchall_13d
23991 + .catchall {:try_start_14 .. :try_end_15} :catchall_136
23993 :try_start_15
23994 iget-object v11, p0, Landroid/widget/ActivityChooserModel$HistoryPersister;->this$0:Landroid/widget/ActivityChooserModel;
23995 @@ -190,10 +190,10 @@
23997 invoke-interface {v10, v11, v12}, Lorg/xmlpull/v1/XmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
23998 :try_end_7e
23999 - .catchall {:try_start_2b .. :try_end_7e} :catchall_134
24000 + .catchall {:try_start_2b .. :try_end_7e} :catchall_12d
24001 .catch Ljava/lang/IllegalArgumentException; {:try_start_2b .. :try_end_7e} :catch_b7
24002 - .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_e0
24003 - .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_109
24004 + .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_de
24005 + .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_105
24007 add-int/lit8 v2, v2, 0x1
24009 @@ -258,10 +258,10 @@
24011 invoke-interface {v10}, Lorg/xmlpull/v1/XmlSerializer;->endDocument()V
24012 :try_end_af
24013 - .catchall {:try_start_a7 .. :try_end_af} :catchall_134
24014 + .catchall {:try_start_a7 .. :try_end_af} :catchall_12d
24015 .catch Ljava/lang/IllegalArgumentException; {:try_start_a7 .. :try_end_af} :catch_b7
24016 - .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_e0
24017 - .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_109
24018 + .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_de
24019 + .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_105
24021 if-eqz v1, :cond_a5
24023 @@ -312,26 +312,21 @@
24025 invoke-static {v11, v12, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24026 :try_end_d8
24027 - .catchall {:try_start_b8 .. :try_end_d8} :catchall_134
24028 + .catchall {:try_start_b8 .. :try_end_d8} :catchall_12d
24030 if-eqz v1, :cond_a5
24032 :try_start_da
24033 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24034 :try_end_dd
24035 - .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_de
24036 + .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_b5
24038 goto :goto_a5
24040 :catch_de
24041 - move-exception v11
24043 - goto :goto_a5
24045 - :catch_e0
24046 move-exception v5
24048 - :try_start_e1
24049 + :try_start_df
24050 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
24052 move-result-object v11
24053 @@ -362,27 +357,22 @@
24054 move-result-object v12
24056 invoke-static {v11, v12, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24057 - :try_end_101
24058 - .catchall {:try_start_e1 .. :try_end_101} :catchall_134
24059 + :try_end_ff
24060 + .catchall {:try_start_df .. :try_end_ff} :catchall_12d
24062 if-eqz v1, :cond_a5
24064 - :try_start_103
24065 + :try_start_101
24066 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24067 - :try_end_106
24068 - .catch Ljava/io/IOException; {:try_start_103 .. :try_end_106} :catch_107
24070 - goto :goto_a5
24072 - :catch_107
24073 - move-exception v11
24074 + :try_end_104
24075 + .catch Ljava/io/IOException; {:try_start_101 .. :try_end_104} :catch_b5
24077 goto :goto_a5
24079 - :catch_109
24080 + :catch_105
24081 move-exception v4
24083 - :try_start_10a
24084 + :try_start_106
24085 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
24087 move-result-object v11
24088 @@ -413,43 +403,38 @@
24089 move-result-object v12
24091 invoke-static {v11, v12, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24092 - :try_end_12a
24093 - .catchall {:try_start_10a .. :try_end_12a} :catchall_134
24094 + :try_end_126
24095 + .catchall {:try_start_106 .. :try_end_126} :catchall_12d
24097 if-eqz v1, :cond_a5
24099 - :try_start_12c
24100 + :try_start_128
24101 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24102 - :try_end_12f
24103 - .catch Ljava/io/IOException; {:try_start_12c .. :try_end_12f} :catch_131
24105 - goto/16 :goto_a5
24107 - :catch_131
24108 - move-exception v11
24109 + :try_end_12b
24110 + .catch Ljava/io/IOException; {:try_start_128 .. :try_end_12b} :catch_b5
24112 goto/16 :goto_a5
24114 - :catchall_134
24115 + :catchall_12d
24116 move-exception v11
24118 - if-eqz v1, :cond_13a
24119 + if-eqz v1, :cond_133
24121 - :try_start_137
24122 + :try_start_130
24123 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24124 - :try_end_13a
24125 - .catch Ljava/io/IOException; {:try_start_137 .. :try_end_13a} :catch_13b
24126 + :try_end_133
24127 + .catch Ljava/io/IOException; {:try_start_130 .. :try_end_133} :catch_134
24129 - :cond_13a
24130 - :goto_13a
24131 + :cond_133
24132 + :goto_133
24133 throw v11
24135 - :catch_13b
24136 + :catch_134
24137 move-exception v12
24139 - goto :goto_13a
24140 + goto :goto_133
24142 - :catchall_13d
24143 + :catchall_136
24144 move-exception v11
24146 move-object v8, v9
24147 diff -Npru stock-framework/smali/android/widget/Filter$RequestHandler.smali pdroid-framework/smali/android/widget/Filter$RequestHandler.smali
24148 --- stock-framework/smali/android/widget/Filter$RequestHandler.smali 2012-05-08 11:54:30.738640138 -0500
24149 +++ pdroid-framework/smali/android/widget/Filter$RequestHandler.smali 2012-05-08 11:54:54.286756902 -0500
24150 @@ -36,7 +36,7 @@
24152 iget v4, p1, Landroid/os/Message;->what:I
24154 - sparse-switch v4, :sswitch_data_a8
24155 + sparse-switch v4, :sswitch_data_a4
24157 :goto_5
24158 return-void
24159 @@ -57,7 +57,7 @@
24161 iput-object v5, v0, Landroid/widget/Filter$RequestArguments;->results:Landroid/widget/Filter$FilterResults;
24162 :try_end_14
24163 - .catchall {:try_start_a .. :try_end_14} :catchall_6e
24164 + .catchall {:try_start_a .. :try_end_14} :catchall_6b
24165 .catch Ljava/lang/Exception; {:try_start_a .. :try_end_14} :catch_4f
24167 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24168 @@ -73,9 +73,9 @@
24170 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
24172 + :goto_20
24173 invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
24175 - :goto_23
24176 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24178 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
24179 @@ -149,7 +149,7 @@
24181 invoke-static {v5, v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24182 :try_end_5e
24183 - .catchall {:try_start_50 .. :try_end_5e} :catchall_6e
24184 + .catchall {:try_start_50 .. :try_end_5e} :catchall_6b
24186 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24188 @@ -164,11 +164,9 @@
24190 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
24192 - invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
24194 - goto :goto_23
24195 + goto :goto_20
24197 - :catchall_6e
24198 + :catchall_6b
24199 move-exception v5
24201 iget-object v6, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24202 @@ -188,7 +186,7 @@
24204 throw v5
24206 - :sswitch_7f
24207 + :sswitch_7c
24208 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24210 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
24211 @@ -198,7 +196,7 @@
24213 monitor-enter v6
24215 - :try_start_86
24216 + :try_start_83
24217 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24219 #getter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
24220 @@ -206,7 +204,7 @@
24222 move-result-object v5
24224 - if-eqz v5, :cond_a1
24225 + if-eqz v5, :cond_9e
24227 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24229 @@ -228,25 +226,23 @@
24230 #setter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
24231 invoke-static {v5, v7}, Landroid/widget/Filter;->access$402(Landroid/widget/Filter;Landroid/os/Handler;)Landroid/os/Handler;
24233 - :cond_a1
24234 + :cond_9e
24235 monitor-exit v6
24237 goto/16 :goto_5
24239 - :catchall_a4
24240 + :catchall_a1
24241 move-exception v5
24243 monitor-exit v6
24244 - :try_end_a6
24245 - .catchall {:try_start_86 .. :try_end_a6} :catchall_a4
24246 + :try_end_a3
24247 + .catchall {:try_start_83 .. :try_end_a3} :catchall_a1
24249 throw v5
24251 - nop
24253 - :sswitch_data_a8
24254 + :sswitch_data_a4
24255 .sparse-switch
24256 -0x2f2f0ff3 -> :sswitch_6
24257 - -0x21524111 -> :sswitch_7f
24258 + -0x21524111 -> :sswitch_7c
24259 .end sparse-switch
24260 .end method
24261 diff -Npru stock-framework/smali/android/widget/GridView.smali pdroid-framework/smali/android/widget/GridView.smali
24262 --- stock-framework/smali/android/widget/GridView.smali 2012-05-08 11:54:30.762640253 -0500
24263 +++ pdroid-framework/smali/android/widget/GridView.smali 2012-05-08 11:54:54.322757082 -0500
24264 @@ -4243,10 +4243,11 @@
24266 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24267 :try_end_22
24268 - .catchall {:try_start_e .. :try_end_22} :catchall_1c6
24269 + .catchall {:try_start_e .. :try_end_22} :catchall_1b5
24271 if-nez v3, :cond_2c
24273 + :goto_24
24274 const/16 v19, 0x0
24276 move/from16 v0, v19
24277 @@ -4256,7 +4257,6 @@
24278 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24280 :cond_2c
24281 - :goto_2c
24282 return-void
24284 :cond_2d
24285 @@ -4317,7 +4317,7 @@
24287 move/from16 v19, v0
24289 - packed-switch v19, :pswitch_data_304
24290 + packed-switch v19, :pswitch_data_2f2
24292 move-object/from16 v0, p0
24294 @@ -4372,28 +4372,17 @@
24296 move/from16 v19, v0
24298 - if-nez v19, :cond_d9
24299 + if-nez v19, :cond_d1
24301 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->resetList()V
24303 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24304 - :try_end_9e
24305 - .catchall {:try_start_2d .. :try_end_9e} :catchall_1c6
24307 if-nez v3, :cond_2c
24309 - const/16 v19, 0x0
24311 - move/from16 v0, v19
24313 - move-object/from16 v1, p0
24315 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24317 - goto :goto_2c
24318 + goto :goto_24
24320 - :pswitch_a9
24321 - :try_start_a9
24322 + :pswitch_a1
24323 move-object/from16 v0, p0
24325 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24326 @@ -4420,7 +4409,7 @@
24328 goto :goto_87
24330 - :pswitch_c2
24331 + :pswitch_ba
24332 move-object/from16 v0, p0
24334 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24335 @@ -4445,7 +4434,7 @@
24337 goto :goto_87
24339 - :cond_d9
24340 + :cond_d1
24341 move-object/from16 v0, p0
24343 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24344 @@ -4468,12 +4457,12 @@
24346 move-object/from16 v17, v0
24348 - if-eqz v8, :cond_109
24349 + if-eqz v8, :cond_101
24351 const/4 v11, 0x0
24353 - :goto_f3
24354 - if-ge v11, v5, :cond_10e
24355 + :goto_eb
24356 + if-ge v11, v5, :cond_106
24358 move-object/from16 v0, p0
24360 @@ -4493,14 +4482,14 @@
24362 add-int/lit8 v11, v11, 0x1
24364 - goto :goto_f3
24365 + goto :goto_eb
24367 - :cond_109
24368 + :cond_101
24369 move-object/from16 v0, v17
24371 invoke-virtual {v0, v5, v10}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24373 - :cond_10e
24374 + :cond_106
24375 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->detachAllViewsFromParent()V
24377 move-object/from16 v0, p0
24378 @@ -4509,9 +4498,9 @@
24380 move/from16 v19, v0
24382 - packed-switch v19, :pswitch_data_314
24383 + packed-switch v19, :pswitch_data_302
24385 - if-nez v5, :cond_24d
24386 + if-nez v5, :cond_23c
24388 move-object/from16 v0, p0
24390 @@ -4519,7 +4508,7 @@
24392 move/from16 v19, v0
24394 - if-nez v19, :cond_223
24395 + if-nez v19, :cond_212
24397 move-object/from16 v0, p0
24399 @@ -4527,18 +4516,18 @@
24401 move-object/from16 v19, v0
24403 - if-eqz v19, :cond_132
24404 + if-eqz v19, :cond_12a
24406 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24408 move-result v19
24410 - if-eqz v19, :cond_21f
24411 + if-eqz v19, :cond_20e
24413 - :cond_132
24414 + :cond_12a
24415 const/16 v19, -0x1
24417 - :goto_134
24418 + :goto_12c
24419 move-object/from16 v0, p0
24421 move/from16 v1, v19
24422 @@ -4551,10 +4540,10 @@
24424 move-result-object v18
24426 - :goto_141
24427 + :goto_139
24428 invoke-virtual/range {v17 .. v17}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24430 - if-eqz v18, :cond_2b3
24431 + if-eqz v18, :cond_2a2
24433 const/16 v19, -0x1
24435 @@ -4576,8 +4565,8 @@
24437 iput v0, v1, Landroid/widget/GridView;->mSelectedTop:I
24439 - :cond_15b
24440 - :goto_15b
24441 + :cond_153
24442 + :goto_153
24443 const/16 v19, 0x0
24445 move/from16 v0, v19
24446 @@ -4622,31 +4611,20 @@
24448 move/from16 v19, v0
24450 - if-lez v19, :cond_18e
24451 + if-lez v19, :cond_186
24453 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->checkSelectionChanged()V
24455 - :cond_18e
24456 + :cond_186
24457 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24458 - :try_end_191
24459 - .catchall {:try_start_a9 .. :try_end_191} :catchall_1c6
24461 if-nez v3, :cond_2c
24463 - const/16 v19, 0x0
24465 - move/from16 v0, v19
24466 + goto/16 :goto_24
24468 - move-object/from16 v1, p0
24469 + :pswitch_18d
24470 + if-eqz v14, :cond_19c
24472 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24474 - goto/16 :goto_2c
24476 - :pswitch_19d
24477 - if-eqz v14, :cond_1ac
24479 - :try_start_19f
24480 invoke-virtual {v14}, Landroid/view/View;->getTop()I
24482 move-result v19
24483 @@ -4659,18 +4637,18 @@
24485 move-result-object v18
24487 - goto :goto_141
24488 + goto :goto_139
24490 - :cond_1ac
24491 + :cond_19c
24492 move-object/from16 v0, p0
24494 invoke-direct {v0, v7, v6}, Landroid/widget/GridView;->fillSelection(II)Landroid/view/View;
24496 move-result-object v18
24498 - goto :goto_141
24499 + goto :goto_139
24501 - :pswitch_1b3
24502 + :pswitch_1a3
24503 const/16 v19, 0x0
24505 move/from16 v0, v19
24506 @@ -4686,15 +4664,15 @@
24507 move-result-object v18
24509 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24510 - :try_end_1c4
24511 - .catchall {:try_start_19f .. :try_end_1c4} :catchall_1c6
24512 + :try_end_1b4
24513 + .catchall {:try_start_2d .. :try_end_1b4} :catchall_1b5
24515 - goto/16 :goto_141
24516 + goto :goto_139
24518 - :catchall_1c6
24519 + :catchall_1b5
24520 move-exception v19
24522 - if-nez v3, :cond_1d1
24523 + if-nez v3, :cond_1c0
24525 const/16 v20, 0x0
24527 @@ -4704,11 +4682,11 @@
24529 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24531 - :cond_1d1
24532 + :cond_1c0
24533 throw v19
24535 - :pswitch_1d2
24536 - :try_start_1d2
24537 + :pswitch_1c1
24538 + :try_start_1c1
24539 move-object/from16 v0, p0
24541 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24542 @@ -4727,9 +4705,9 @@
24544 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24546 - goto/16 :goto_141
24547 + goto/16 :goto_139
24549 - :pswitch_1e7
24550 + :pswitch_1d6
24551 move-object/from16 v0, p0
24553 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24554 @@ -4752,9 +4730,9 @@
24556 move-result-object v18
24558 - goto/16 :goto_141
24559 + goto/16 :goto_139
24561 - :pswitch_1ff
24562 + :pswitch_1ee
24563 move-object/from16 v0, p0
24565 iget v0, v0, Landroid/widget/GridView;->mSyncPosition:I
24566 @@ -4777,23 +4755,23 @@
24568 move-result-object v18
24570 - goto/16 :goto_141
24571 + goto/16 :goto_139
24573 - :pswitch_217
24574 + :pswitch_206
24575 move-object/from16 v0, p0
24577 invoke-direct {v0, v9, v7, v6}, Landroid/widget/GridView;->moveSelection(III)Landroid/view/View;
24579 move-result-object v18
24581 - goto/16 :goto_141
24582 + goto/16 :goto_139
24584 - :cond_21f
24585 + :cond_20e
24586 const/16 v19, 0x0
24588 - goto/16 :goto_134
24589 + goto/16 :goto_12c
24591 - :cond_223
24592 + :cond_212
24593 move-object/from16 v0, p0
24595 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24596 @@ -4808,18 +4786,18 @@
24598 move-object/from16 v19, v0
24600 - if-eqz v19, :cond_239
24601 + if-eqz v19, :cond_228
24603 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24605 move-result v19
24607 - if-eqz v19, :cond_24a
24608 + if-eqz v19, :cond_239
24610 - :cond_239
24611 + :cond_228
24612 const/16 v19, -0x1
24614 - :goto_23b
24615 + :goto_22a
24616 move-object/from16 v0, p0
24618 move/from16 v1, v19
24619 @@ -4832,21 +4810,21 @@
24621 move-result-object v18
24623 - goto/16 :goto_141
24624 + goto/16 :goto_139
24626 - :cond_24a
24627 + :cond_239
24628 move/from16 v19, v13
24630 - goto :goto_23b
24631 + goto :goto_22a
24633 - :cond_24d
24634 + :cond_23c
24635 move-object/from16 v0, p0
24637 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24639 move/from16 v19, v0
24641 - if-ltz v19, :cond_27e
24642 + if-ltz v19, :cond_26d
24644 move-object/from16 v0, p0
24646 @@ -4864,7 +4842,7 @@
24648 move/from16 v1, v20
24650 - if-ge v0, v1, :cond_27e
24651 + if-ge v0, v1, :cond_26d
24653 move-object/from16 v0, p0
24655 @@ -4872,9 +4850,9 @@
24657 move/from16 v19, v0
24659 - if-nez v16, :cond_279
24660 + if-nez v16, :cond_268
24662 - :goto_26f
24663 + :goto_25e
24664 move-object/from16 v0, p0
24666 move/from16 v1, v19
24667 @@ -4883,16 +4861,16 @@
24669 move-result-object v18
24671 - goto/16 :goto_141
24672 + goto/16 :goto_139
24674 - :cond_279
24675 + :cond_268
24676 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->getTop()I
24678 move-result v7
24680 - goto :goto_26f
24681 + goto :goto_25e
24683 - :cond_27e
24684 + :cond_26d
24685 move-object/from16 v0, p0
24687 iget v0, v0, Landroid/widget/GridView;->mFirstPosition:I
24688 @@ -4909,7 +4887,7 @@
24690 move/from16 v1, v20
24692 - if-ge v0, v1, :cond_2a7
24693 + if-ge v0, v1, :cond_296
24695 move-object/from16 v0, p0
24697 @@ -4917,9 +4895,9 @@
24699 move/from16 v19, v0
24701 - if-nez v15, :cond_2a2
24702 + if-nez v15, :cond_291
24704 - :goto_298
24705 + :goto_287
24706 move-object/from16 v0, p0
24708 move/from16 v1, v19
24709 @@ -4928,16 +4906,16 @@
24711 move-result-object v18
24713 - goto/16 :goto_141
24714 + goto/16 :goto_139
24716 - :cond_2a2
24717 + :cond_291
24718 invoke-virtual {v15}, Landroid/view/View;->getTop()I
24720 move-result v7
24722 - goto :goto_298
24723 + goto :goto_287
24725 - :cond_2a7
24726 + :cond_296
24727 const/16 v19, 0x0
24729 move-object/from16 v0, p0
24730 @@ -4948,16 +4926,16 @@
24732 move-result-object v18
24734 - goto/16 :goto_141
24735 + goto/16 :goto_139
24737 - :cond_2b3
24738 + :cond_2a2
24739 move-object/from16 v0, p0
24741 iget v0, v0, Landroid/widget/GridView;->mTouchMode:I
24743 move/from16 v19, v0
24745 - if-lez v19, :cond_2f0
24746 + if-lez v19, :cond_2df
24748 move-object/from16 v0, p0
24750 @@ -4971,7 +4949,7 @@
24752 move/from16 v1, v20
24754 - if-ge v0, v1, :cond_2f0
24755 + if-ge v0, v1, :cond_2df
24757 move-object/from16 v0, p0
24759 @@ -4995,7 +4973,7 @@
24761 move-result-object v4
24763 - if-eqz v4, :cond_15b
24764 + if-eqz v4, :cond_153
24766 move-object/from16 v0, p0
24768 @@ -5009,9 +4987,9 @@
24770 invoke-virtual {v0, v1, v4}, Landroid/widget/GridView;->positionSelector(ILandroid/view/View;)V
24772 - goto/16 :goto_15b
24773 + goto/16 :goto_153
24775 - :cond_2f0
24776 + :cond_2df
24777 const/16 v19, 0x0
24779 move/from16 v0, v19
24780 @@ -5027,31 +5005,29 @@
24781 move-object/from16 v19, v0
24783 invoke-virtual/range {v19 .. v19}, Landroid/graphics/Rect;->setEmpty()V
24784 - :try_end_301
24785 - .catchall {:try_start_1d2 .. :try_end_301} :catchall_1c6
24787 - goto/16 :goto_15b
24788 + :try_end_2f0
24789 + .catchall {:try_start_1c1 .. :try_end_2f0} :catchall_1b5
24791 - nop
24792 + goto/16 :goto_153
24794 - :pswitch_data_304
24795 + :pswitch_data_2f2
24796 .packed-switch 0x1
24797 :pswitch_87
24798 - :pswitch_a9
24799 + :pswitch_a1
24800 :pswitch_87
24801 :pswitch_87
24802 :pswitch_87
24803 - :pswitch_c2
24804 + :pswitch_ba
24805 .end packed-switch
24807 - :pswitch_data_314
24808 + :pswitch_data_302
24809 .packed-switch 0x1
24810 - :pswitch_1b3
24811 - :pswitch_19d
24812 - :pswitch_1d2
24813 - :pswitch_1e7
24814 - :pswitch_1ff
24815 - :pswitch_217
24816 + :pswitch_1a3
24817 + :pswitch_18d
24818 + :pswitch_1c1
24819 + :pswitch_1d6
24820 + :pswitch_1ee
24821 + :pswitch_206
24822 .end packed-switch
24823 .end method
24825 diff -Npru stock-framework/smali/android/widget/ListView.smali pdroid-framework/smali/android/widget/ListView.smali
24826 --- stock-framework/smali/android/widget/ListView.smali 2012-05-08 11:54:30.730640095 -0500
24827 +++ pdroid-framework/smali/android/widget/ListView.smali 2012-05-08 11:54:54.278756862 -0500
24828 @@ -6868,10 +6868,11 @@
24830 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24831 :try_end_1d
24832 - .catchall {:try_start_b .. :try_end_1d} :catchall_125
24833 + .catchall {:try_start_b .. :try_end_1d} :catchall_120
24835 if-nez v8, :cond_24
24837 + :goto_1f
24838 const/4 v2, 0x0
24840 move-object/from16 v0, p0
24841 @@ -6879,7 +6880,6 @@
24842 iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24844 :cond_24
24845 - :goto_24
24846 return-void
24848 :cond_25
24849 @@ -6936,7 +6936,7 @@
24851 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24853 - packed-switch v2, :pswitch_data_36e
24854 + packed-switch v2, :pswitch_data_364
24856 move-object/from16 v0, p0
24858 @@ -7016,26 +7016,17 @@
24860 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24862 - if-nez v2, :cond_cc
24863 + if-nez v2, :cond_c7
24865 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->resetList()V
24867 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24868 - :try_end_a8
24869 - .catchall {:try_start_25 .. :try_end_a8} :catchall_125
24871 if-nez v8, :cond_24
24873 - const/4 v2, 0x0
24875 - move-object/from16 v0, p0
24877 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24879 - goto/16 :goto_24
24880 + goto/16 :goto_1f
24882 - :pswitch_b1
24883 - :try_start_b1
24884 + :pswitch_ac
24885 move-object/from16 v0, p0
24887 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24888 @@ -7064,7 +7055,7 @@
24890 goto :goto_93
24892 - :cond_cc
24893 + :cond_c7
24894 move-object/from16 v0, p0
24896 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24897 @@ -7081,7 +7072,7 @@
24899 move/from16 v0, v24
24901 - if-eq v2, v0, :cond_131
24902 + if-eq v2, v0, :cond_12c
24904 new-instance v2, Ljava/lang/IllegalStateException;
24906 @@ -7152,13 +7143,13 @@
24907 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
24909 throw v2
24910 - :try_end_125
24911 - .catchall {:try_start_b1 .. :try_end_125} :catchall_125
24912 + :try_end_120
24913 + .catchall {:try_start_25 .. :try_end_120} :catchall_120
24915 - :catchall_125
24916 + :catchall_120
24917 move-exception v2
24919 - if-nez v8, :cond_130
24920 + if-nez v8, :cond_12b
24922 const/16 v24, 0x0
24924 @@ -7168,11 +7159,11 @@
24926 iput-boolean v0, v1, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24928 - :cond_130
24929 + :cond_12b
24930 throw v2
24932 - :cond_131
24933 - :try_start_131
24934 + :cond_12c
24935 + :try_start_12c
24936 move-object/from16 v0, p0
24938 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24939 @@ -7193,14 +7184,14 @@
24941 const/4 v13, 0x0
24943 - if-eqz v11, :cond_161
24944 + if-eqz v11, :cond_15c
24946 const/16 v18, 0x0
24948 - :goto_149
24949 + :goto_144
24950 move/from16 v0, v18
24952 - if-ge v0, v10, :cond_166
24953 + if-ge v0, v10, :cond_161
24955 move-object/from16 v0, p0
24957 @@ -7220,21 +7211,21 @@
24959 add-int/lit8 v18, v18, 0x1
24961 - goto :goto_149
24962 + goto :goto_144
24964 - :cond_161
24965 + :cond_15c
24966 move-object/from16 v0, v22
24968 invoke-virtual {v0, v10, v12}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24970 - :cond_166
24971 + :cond_161
24972 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24974 move-result-object v17
24976 - if-eqz v17, :cond_186
24977 + if-eqz v17, :cond_181
24979 - if-eqz v11, :cond_178
24980 + if-eqz v11, :cond_173
24982 move-object/from16 v0, p0
24984 @@ -7244,38 +7235,38 @@
24986 move-result v2
24988 - if-eqz v2, :cond_183
24989 + if-eqz v2, :cond_17e
24991 - :cond_178
24992 + :cond_173
24993 move-object/from16 v13, v17
24995 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->findFocus()Landroid/view/View;
24997 move-result-object v14
24999 - if-eqz v14, :cond_183
25000 + if-eqz v14, :cond_17e
25002 invoke-virtual {v14}, Landroid/view/View;->onStartTemporaryDetach()V
25004 - :cond_183
25005 + :cond_17e
25006 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->requestFocus()Z
25008 - :cond_186
25009 + :cond_181
25010 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->detachAllViewsFromParent()V
25012 move-object/from16 v0, p0
25014 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
25016 - packed-switch v2, :pswitch_data_37c
25017 + packed-switch v2, :pswitch_data_372
25019 - if-nez v10, :cond_2ba
25020 + if-nez v10, :cond_2b0
25022 move-object/from16 v0, p0
25024 iget-boolean v2, v0, Landroid/widget/ListView;->mStackFromBottom:Z
25026 - if-nez v2, :cond_295
25027 + if-nez v2, :cond_28b
25029 const/4 v2, 0x0
25031 @@ -7301,61 +7292,61 @@
25033 move-result-object v23
25035 - :goto_1b0
25036 + :goto_1ab
25037 invoke-virtual/range {v22 .. v22}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
25039 - if-eqz v23, :cond_327
25040 + if-eqz v23, :cond_31d
25042 move-object/from16 v0, p0
25044 iget-boolean v2, v0, Landroid/widget/ListView;->mItemsCanFocus:Z
25046 - if-eqz v2, :cond_31d
25047 + if-eqz v2, :cond_313
25049 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25051 move-result v2
25053 - if-eqz v2, :cond_31d
25054 + if-eqz v2, :cond_313
25056 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->hasFocus()Z
25058 move-result v2
25060 - if-nez v2, :cond_31d
25061 + if-nez v2, :cond_313
25063 move-object/from16 v0, v23
25065 - if-ne v0, v13, :cond_1d1
25066 + if-ne v0, v13, :cond_1cc
25068 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25070 move-result v2
25072 - if-nez v2, :cond_1d7
25073 + if-nez v2, :cond_1d2
25075 - :cond_1d1
25076 + :cond_1cc
25077 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->requestFocus()Z
25079 move-result v2
25081 - if-eqz v2, :cond_30b
25082 + if-eqz v2, :cond_301
25084 - :cond_1d7
25085 + :cond_1d2
25086 const/4 v15, 0x1
25088 - :goto_1d8
25089 - if-nez v15, :cond_30e
25090 + :goto_1d3
25091 + if-nez v15, :cond_304
25093 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
25095 move-result-object v16
25097 - if-eqz v16, :cond_1e3
25098 + if-eqz v16, :cond_1de
25100 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->clearFocus()V
25102 - :cond_1e3
25103 + :cond_1de
25104 const/4 v2, -0x1
25106 move-object/from16 v0, p0
25107 @@ -7364,7 +7355,7 @@
25109 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25111 - :goto_1eb
25112 + :goto_1e6
25113 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->getTop()I
25115 move-result v2
25116 @@ -7373,19 +7364,19 @@
25118 iput v2, v0, Landroid/widget/ListView;->mSelectedTop:I
25120 - :cond_1f3
25121 - :goto_1f3
25122 - if-eqz v14, :cond_1fe
25123 + :cond_1ee
25124 + :goto_1ee
25125 + if-eqz v14, :cond_1f9
25127 invoke-virtual {v14}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
25129 move-result-object v2
25131 - if-eqz v2, :cond_1fe
25132 + if-eqz v2, :cond_1f9
25134 invoke-virtual {v14}, Landroid/view/View;->onFinishTemporaryDetach()V
25136 - :cond_1fe
25137 + :cond_1f9
25138 const/4 v2, 0x0
25140 move-object/from16 v0, p0
25141 @@ -7418,29 +7409,20 @@
25143 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25145 - if-lez v2, :cond_222
25146 + if-lez v2, :cond_21d
25148 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->checkSelectionChanged()V
25150 - :cond_222
25151 + :cond_21d
25152 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
25153 - :try_end_225
25154 - .catchall {:try_start_131 .. :try_end_225} :catchall_125
25156 if-nez v8, :cond_24
25158 - const/4 v2, 0x0
25160 - move-object/from16 v0, p0
25162 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
25164 - goto/16 :goto_24
25165 + goto/16 :goto_1f
25167 - :pswitch_22e
25168 - if-eqz v4, :cond_23c
25169 + :pswitch_224
25170 + if-eqz v4, :cond_232
25172 - :try_start_230
25173 invoke-virtual {v4}, Landroid/view/View;->getTop()I
25175 move-result v2
25176 @@ -7451,18 +7433,18 @@
25178 move-result-object v23
25180 - goto/16 :goto_1b0
25181 + goto/16 :goto_1ab
25183 - :cond_23c
25184 + :cond_232
25185 move-object/from16 v0, p0
25187 invoke-direct {v0, v6, v7}, Landroid/widget/ListView;->fillFromMiddle(II)Landroid/view/View;
25189 move-result-object v23
25191 - goto/16 :goto_1b0
25192 + goto/16 :goto_1ab
25194 - :pswitch_244
25195 + :pswitch_23a
25196 move-object/from16 v0, p0
25198 iget v2, v0, Landroid/widget/ListView;->mSyncPosition:I
25199 @@ -7481,9 +7463,9 @@
25201 move-result-object v23
25203 - goto/16 :goto_1b0
25204 + goto/16 :goto_1ab
25206 - :pswitch_258
25207 + :pswitch_24e
25208 move-object/from16 v0, p0
25210 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25211 @@ -7498,9 +7480,9 @@
25213 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
25215 - goto/16 :goto_1b0
25216 + goto/16 :goto_1ab
25218 - :pswitch_269
25219 + :pswitch_25f
25220 const/4 v2, 0x0
25222 move-object/from16 v0, p0
25223 @@ -7515,9 +7497,9 @@
25225 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
25227 - goto/16 :goto_1b0
25228 + goto/16 :goto_1ab
25230 - :pswitch_279
25231 + :pswitch_26f
25232 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->reconcileSelectedPosition()I
25234 move-result v2
25235 @@ -7536,18 +7518,18 @@
25237 move-result-object v23
25239 - goto/16 :goto_1b0
25240 + goto/16 :goto_1ab
25242 - :pswitch_28d
25243 + :pswitch_283
25244 move-object/from16 v2, p0
25246 invoke-direct/range {v2 .. v7}, Landroid/widget/ListView;->moveSelection(Landroid/view/View;Landroid/view/View;III)Landroid/view/View;
25248 move-result-object v23
25250 - goto/16 :goto_1b0
25251 + goto/16 :goto_1ab
25253 - :cond_295
25254 + :cond_28b
25255 move-object/from16 v0, p0
25257 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25258 @@ -7582,14 +7564,14 @@
25260 move-result-object v23
25262 - goto/16 :goto_1b0
25263 + goto/16 :goto_1ab
25265 - :cond_2ba
25266 + :cond_2b0
25267 move-object/from16 v0, p0
25269 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
25271 - if-ltz v2, :cond_2e1
25272 + if-ltz v2, :cond_2d7
25274 move-object/from16 v0, p0
25276 @@ -7603,31 +7585,31 @@
25278 move/from16 v0, v24
25280 - if-ge v2, v0, :cond_2e1
25281 + if-ge v2, v0, :cond_2d7
25283 move-object/from16 v0, p0
25285 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
25287 - if-nez v3, :cond_2dc
25288 + if-nez v3, :cond_2d2
25290 - :goto_2d4
25291 + :goto_2ca
25292 move-object/from16 v0, p0
25294 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25296 move-result-object v23
25298 - goto/16 :goto_1b0
25299 + goto/16 :goto_1ab
25301 - :cond_2dc
25302 + :cond_2d2
25303 invoke-virtual {v3}, Landroid/view/View;->getTop()I
25305 move-result v6
25307 - goto :goto_2d4
25308 + goto :goto_2ca
25310 - :cond_2e1
25311 + :cond_2d7
25312 move-object/from16 v0, p0
25314 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25315 @@ -7640,31 +7622,31 @@
25317 move/from16 v0, v24
25319 - if-ge v2, v0, :cond_302
25320 + if-ge v2, v0, :cond_2f8
25322 move-object/from16 v0, p0
25324 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25326 - if-nez v20, :cond_2fd
25327 + if-nez v20, :cond_2f3
25329 - :goto_2f5
25330 + :goto_2eb
25331 move-object/from16 v0, p0
25333 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25335 move-result-object v23
25337 - goto/16 :goto_1b0
25338 + goto/16 :goto_1ab
25340 - :cond_2fd
25341 + :cond_2f3
25342 invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getTop()I
25344 move-result v6
25346 - goto :goto_2f5
25347 + goto :goto_2eb
25349 - :cond_302
25350 + :cond_2f8
25351 const/4 v2, 0x0
25353 move-object/from16 v0, p0
25354 @@ -7673,14 +7655,14 @@
25356 move-result-object v23
25358 - goto/16 :goto_1b0
25359 + goto/16 :goto_1ab
25361 - :cond_30b
25362 + :cond_301
25363 const/4 v15, 0x0
25365 - goto/16 :goto_1d8
25366 + goto/16 :goto_1d3
25368 - :cond_30e
25369 + :cond_304
25370 const/4 v2, 0x0
25372 move-object/from16 v0, v23
25373 @@ -7693,9 +7675,9 @@
25375 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25377 - goto/16 :goto_1eb
25378 + goto/16 :goto_1e6
25380 - :cond_31d
25381 + :cond_313
25382 const/4 v2, -0x1
25384 move-object/from16 v0, p0
25385 @@ -7704,14 +7686,14 @@
25387 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25389 - goto/16 :goto_1eb
25390 + goto/16 :goto_1e6
25392 - :cond_327
25393 + :cond_31d
25394 move-object/from16 v0, p0
25396 iget v2, v0, Landroid/widget/ListView;->mTouchMode:I
25398 - if-lez v2, :cond_361
25399 + if-lez v2, :cond_357
25401 move-object/from16 v0, p0
25403 @@ -7721,7 +7703,7 @@
25405 move/from16 v0, v24
25407 - if-ge v2, v0, :cond_361
25408 + if-ge v2, v0, :cond_357
25410 move-object/from16 v0, p0
25412 @@ -7741,7 +7723,7 @@
25414 move-result-object v9
25416 - if-eqz v9, :cond_354
25417 + if-eqz v9, :cond_34a
25419 move-object/from16 v0, p0
25421 @@ -7751,21 +7733,21 @@
25423 invoke-virtual {v0, v2, v9}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25425 - :cond_354
25426 - :goto_354
25427 + :cond_34a
25428 + :goto_34a
25429 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25431 move-result v2
25433 - if-eqz v2, :cond_1f3
25434 + if-eqz v2, :cond_1ee
25436 - if-eqz v14, :cond_1f3
25437 + if-eqz v14, :cond_1ee
25439 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25441 - goto/16 :goto_1f3
25442 + goto/16 :goto_1ee
25444 - :cond_361
25445 + :cond_357
25446 const/4 v2, 0x0
25448 move-object/from16 v0, p0
25449 @@ -7777,28 +7759,28 @@
25450 iget-object v2, v0, Landroid/widget/ListView;->mSelectorRect:Landroid/graphics/Rect;
25452 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25453 - :try_end_36d
25454 - .catchall {:try_start_230 .. :try_end_36d} :catchall_125
25455 + :try_end_363
25456 + .catchall {:try_start_12c .. :try_end_363} :catchall_120
25458 - goto :goto_354
25459 + goto :goto_34a
25461 - :pswitch_data_36e
25462 + :pswitch_data_364
25463 .packed-switch 0x1
25464 :pswitch_93
25465 - :pswitch_b1
25466 + :pswitch_ac
25467 :pswitch_93
25468 :pswitch_93
25469 :pswitch_93
25470 .end packed-switch
25472 - :pswitch_data_37c
25473 + :pswitch_data_372
25474 .packed-switch 0x1
25475 - :pswitch_269
25476 - :pswitch_22e
25477 - :pswitch_258
25478 - :pswitch_279
25479 - :pswitch_244
25480 - :pswitch_28d
25481 + :pswitch_25f
25482 + :pswitch_224
25483 + :pswitch_24e
25484 + :pswitch_26f
25485 + :pswitch_23a
25486 + :pswitch_283
25487 .end packed-switch
25488 .end method
25490 diff -Npru stock-framework/smali/android/widget/TextView.smali pdroid-framework/smali/android/widget/TextView.smali
25491 --- stock-framework/smali/android/widget/TextView.smali 2012-05-08 11:54:28.418628634 -0500
25492 +++ pdroid-framework/smali/android/widget/TextView.smali 2012-05-08 11:54:52.522748160 -0500
25493 @@ -5274,18 +5274,18 @@
25494 return v2
25496 :cond_b
25497 - sparse-switch p1, :sswitch_data_ec
25498 + sparse-switch p1, :sswitch_data_e8
25500 :cond_e
25501 iget-object v2, p0, Landroid/widget/TextView;->mInput:Landroid/text/method/KeyListener;
25503 - if-eqz v2, :cond_bb
25504 + if-eqz v2, :cond_b7
25506 invoke-virtual {p0}, Landroid/widget/TextView;->resetErrorChangedFlag()V
25508 const/4 v0, 0x1
25510 - if-eqz p3, :cond_97
25511 + if-eqz p3, :cond_9d
25513 :try_start_18
25514 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25515 @@ -5302,12 +5302,12 @@
25517 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25518 :try_end_28
25519 - .catchall {:try_start_18 .. :try_end_28} :catchall_b6
25520 - .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_b1
25521 + .catchall {:try_start_18 .. :try_end_28} :catchall_94
25522 + .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_99
25524 const/4 v0, 0x0
25526 - if-eqz v1, :cond_94
25527 + if-eqz v1, :cond_9a
25529 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25531 @@ -5433,12 +5433,21 @@
25533 goto/16 :goto_a
25535 - :cond_94
25536 + :catchall_94
25537 + move-exception v2
25539 + invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25541 + throw v2
25543 + :catch_99
25544 + move-exception v2
25546 + :cond_9a
25547 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25549 - :cond_97
25550 - :goto_97
25551 - if-eqz v0, :cond_bb
25552 + :cond_9d
25553 + if-eqz v0, :cond_b7
25555 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25557 @@ -5456,40 +5465,26 @@
25559 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25561 - if-eqz v1, :cond_bb
25562 + if-eqz v1, :cond_b7
25564 move v2, v5
25566 goto/16 :goto_a
25568 - :catch_b1
25569 - move-exception v2
25571 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25573 - goto :goto_97
25575 - :catchall_b6
25576 - move-exception v2
25578 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25580 - throw v2
25582 - :cond_bb
25583 + :cond_b7
25584 iget-object v2, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25586 - if-eqz v2, :cond_e8
25587 + if-eqz v2, :cond_e4
25589 iget-object v2, p0, Landroid/widget/TextView;->mLayout:Landroid/text/Layout;
25591 - if-eqz v2, :cond_e8
25592 + if-eqz v2, :cond_e4
25594 const/4 v0, 0x1
25596 - if-eqz p3, :cond_d7
25597 + if-eqz p3, :cond_d3
25599 - :try_start_c6
25600 + :try_start_c2
25601 iget-object v5, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25603 iget-object v2, p0, Landroid/widget/TextView;->mText:Ljava/lang/CharSequence;
25604 @@ -5497,24 +5492,24 @@
25605 check-cast v2, Landroid/text/Spannable;
25607 invoke-interface {v5, p0, v2, p3}, Landroid/text/method/MovementMethod;->onKeyOther(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
25608 - :try_end_cf
25609 - .catch Ljava/lang/AbstractMethodError; {:try_start_c6 .. :try_end_cf} :catch_d6
25610 + :try_end_cb
25611 + .catch Ljava/lang/AbstractMethodError; {:try_start_c2 .. :try_end_cb} :catch_d2
25613 move-result v1
25615 const/4 v0, 0x0
25617 - if-eqz v1, :cond_d7
25618 + if-eqz v1, :cond_d3
25620 move v2, v4
25622 goto/16 :goto_a
25624 - :catch_d6
25625 + :catch_d2
25626 move-exception v2
25628 - :cond_d7
25629 - if-eqz v0, :cond_e8
25630 + :cond_d3
25631 + if-eqz v0, :cond_e4
25633 iget-object v4, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25635 @@ -5526,20 +5521,20 @@
25637 move-result v2
25639 - if-eqz v2, :cond_e8
25640 + if-eqz v2, :cond_e4
25642 const/4 v2, 0x2
25644 goto/16 :goto_a
25646 - :cond_e8
25647 + :cond_e4
25648 move v2, v3
25650 goto/16 :goto_a
25654 - :sswitch_data_ec
25655 + :sswitch_data_e8
25656 .sparse-switch
25657 0x4 -> :sswitch_8a
25658 0x17 -> :sswitch_68
25659 diff -Npru stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali
25660 --- stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-05-08 11:54:31.018641523 -0500
25661 +++ pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-05-08 11:54:54.594758434 -0500
25662 @@ -4343,13 +4343,14 @@
25664 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->commit()V
25665 :try_end_30
25666 - .catchall {:try_start_10 .. :try_end_30} :catchall_52
25667 + .catchall {:try_start_10 .. :try_end_30} :catchall_4f
25668 .catch Ljava/io/IOException; {:try_start_10 .. :try_end_30} :catch_3c
25670 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25672 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25674 + :goto_35
25675 invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25677 goto :goto_9
25678 @@ -4378,17 +4379,15 @@
25680 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->rollback()V
25681 :try_end_49
25682 - .catchall {:try_start_3d .. :try_end_49} :catchall_52
25683 + .catchall {:try_start_3d .. :try_end_49} :catchall_4f
25685 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25687 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25689 - invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25691 - goto :goto_9
25692 + goto :goto_35
25694 - :catchall_52
25695 + :catchall_4f
25696 move-exception v3
25698 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25699 diff -Npru stock-framework/smali/com/android/internal/telephony/BaseCommands.smali pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali
25700 --- stock-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-05-08 11:54:31.062641745 -0500
25701 +++ pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-05-08 11:54:54.710759005 -0500
25702 @@ -555,8 +555,8 @@
25704 invoke-direct {v6, v7}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
25705 :try_end_a
25706 - .catchall {:try_start_3 .. :try_end_a} :catchall_5e
25707 - .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3d
25708 + .catchall {:try_start_3 .. :try_end_a} :catchall_5b
25709 + .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3a
25711 const/16 v7, 0x800
25713 @@ -575,19 +575,21 @@
25715 invoke-direct {v2, v0, v7, v3}, Ljava/lang/String;-><init>([BII)V
25716 :try_end_1a
25717 - .catchall {:try_start_c .. :try_end_1a} :catchall_67
25718 - .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_6a
25719 + .catchall {:try_start_c .. :try_end_1a} :catchall_66
25720 + .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_69
25722 move-object v1, v2
25724 :cond_1b
25725 - if-eqz v6, :cond_6d
25726 + if-eqz v6, :cond_20
25728 :try_start_1d
25729 invoke-virtual {v6}, Ljava/io/FileInputStream;->close()V
25730 :try_end_20
25731 - .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_3a
25732 + .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_64
25734 + :cond_20
25735 + :goto_20
25736 move-object v5, v6
25738 :cond_21
25739 @@ -617,17 +619,10 @@
25740 return-object v1
25742 :catch_3a
25743 - move-exception v7
25745 - move-object v5, v6
25747 - goto :goto_21
25749 - :catch_3d
25750 move-exception v4
25752 - :goto_3e
25753 - :try_start_3e
25754 + :goto_3b
25755 + :try_start_3b
25756 const-string v7, "RILB"
25758 new-instance v8, Ljava/lang/StringBuilder;
25759 @@ -649,61 +644,61 @@
25760 move-result-object v8
25762 invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25763 - :try_end_56
25764 - .catchall {:try_start_3e .. :try_end_56} :catchall_5e
25765 + :try_end_53
25766 + .catchall {:try_start_3b .. :try_end_53} :catchall_5b
25768 if-eqz v5, :cond_21
25770 - :try_start_58
25771 + :try_start_55
25772 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25773 - :try_end_5b
25774 - .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c
25775 + :try_end_58
25776 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_59
25778 goto :goto_21
25780 - :catch_5c
25781 + :catch_59
25782 move-exception v7
25784 goto :goto_21
25786 - :catchall_5e
25787 + :catchall_5b
25788 move-exception v7
25790 - :goto_5f
25791 - if-eqz v5, :cond_64
25792 + :goto_5c
25793 + if-eqz v5, :cond_61
25795 - :try_start_61
25796 + :try_start_5e
25797 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25798 - :try_end_64
25799 - .catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
25800 + :try_end_61
25801 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
25803 - :cond_64
25804 - :goto_64
25805 + :cond_61
25806 + :goto_61
25807 throw v7
25809 - :catch_65
25810 + :catch_62
25811 move-exception v8
25813 - goto :goto_64
25814 + goto :goto_61
25816 - :catchall_67
25817 + :catch_64
25818 move-exception v7
25820 - move-object v5, v6
25821 + goto :goto_20
25823 - goto :goto_5f
25825 - :catch_6a
25826 - move-exception v4
25827 + :catchall_66
25828 + move-exception v7
25830 move-object v5, v6
25832 - goto :goto_3e
25833 + goto :goto_5c
25835 + :catch_69
25836 + move-exception v4
25838 - :cond_6d
25839 move-object v5, v6
25841 - goto :goto_21
25842 + goto :goto_3b
25843 .end method
25846 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali
25847 --- stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-05-08 11:54:31.358643213 -0500
25848 +++ pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-05-08 11:54:55.054760715 -0500
25849 @@ -666,8 +666,8 @@
25851 invoke-static {v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25852 :try_end_34
25853 - .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_20c
25854 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_207
25855 + .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_209
25856 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_204
25858 move-object/from16 v15, v16
25860 @@ -872,7 +872,7 @@
25861 :try_start_f8
25862 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25863 :try_end_fb
25864 - .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_202
25865 + .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_15c
25867 :cond_fb
25868 :goto_fb
25869 @@ -1058,7 +1058,7 @@
25870 :try_start_190
25871 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25872 :try_end_193
25873 - .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_205
25874 + .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_202
25876 :cond_193
25877 :goto_193
25878 @@ -1184,23 +1184,18 @@
25879 goto/16 :goto_96
25881 :catch_202
25882 - move-exception v2
25884 - goto/16 :goto_fb
25886 - :catch_205
25887 move-exception v18
25889 goto :goto_193
25891 - :catch_207
25892 + :catch_204
25893 move-exception v9
25895 move-object/from16 v15, v16
25897 goto/16 :goto_10a
25899 - :catch_20c
25900 + :catch_209
25901 move-exception v9
25903 move-object/from16 v15, v16
25904 diff -Npru stock-framework/smali/com/android/internal/telephony/IccRecords.smali pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali
25905 --- stock-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-05-08 11:54:31.166642261 -0500
25906 +++ pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-05-08 11:54:54.802759465 -0500
25907 @@ -260,7 +260,7 @@
25909 iget v3, p1, Landroid/os/Message;->what:I
25911 - packed-switch v3, :pswitch_data_70
25912 + packed-switch v3, :pswitch_data_6c
25914 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V
25916 @@ -327,7 +327,7 @@
25918 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25919 :try_end_47
25920 - .catchall {:try_start_9 .. :try_end_47} :catchall_6a
25921 + .catchall {:try_start_9 .. :try_end_47} :catchall_67
25922 .catch Ljava/lang/RuntimeException; {:try_start_9 .. :try_end_47} :catch_4f
25924 :goto_47
25925 @@ -339,7 +339,7 @@
25926 :try_start_4b
25927 invoke-interface {v2, v0}, Lcom/android/internal/telephony/IccRecords$IccRecordLoaded;->onRecordLoaded(Landroid/os/AsyncResult;)V
25928 :try_end_4e
25929 - .catchall {:try_start_4b .. :try_end_4e} :catchall_6a
25930 + .catchall {:try_start_4b .. :try_end_4e} :catchall_67
25931 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_4e} :catch_4f
25933 goto :goto_47
25934 @@ -368,22 +368,18 @@
25936 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25937 :try_end_66
25938 - .catchall {:try_start_50 .. :try_end_66} :catchall_6a
25939 + .catchall {:try_start_50 .. :try_end_66} :catchall_67
25941 - invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25943 - goto :goto_8
25944 + goto :goto_47
25946 - :catchall_6a
25947 + :catchall_67
25948 move-exception v3
25950 invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25952 throw v3
25954 - nop
25956 - :pswitch_data_70
25957 + :pswitch_data_6c
25958 .packed-switch 0x64
25959 :pswitch_9
25960 .end packed-switch
25961 diff -Npru stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali
25962 --- stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-05-08 11:54:31.238642614 -0500
25963 +++ pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-05-08 11:54:54.850759699 -0500
25964 @@ -1777,14 +1777,15 @@
25966 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
25967 :try_end_9b
25968 - .catchall {:try_start_5 .. :try_end_9b} :catchall_1a2
25969 - .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_192
25970 + .catchall {:try_start_5 .. :try_end_9b} :catchall_19c
25971 + .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_18f
25973 :cond_9b
25974 const/4 v3, 0x1
25976 if-eqz v9, :cond_a1
25978 + :goto_9e
25979 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25981 :cond_a1
25982 @@ -1829,7 +1830,7 @@
25984 add-int/lit8 v3, p5, -0x1
25986 - if-eq v10, v3, :cond_130
25987 + if-eq v10, v3, :cond_12d
25989 new-instance v23, Landroid/content/ContentValues;
25991 @@ -1919,20 +1920,14 @@
25992 move-object/from16 v0, v23
25994 invoke-virtual {v3, v4, v0}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
25995 - :try_end_128
25996 - .catchall {:try_start_a2 .. :try_end_128} :catchall_1a2
25997 - .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_128} :catch_192
25999 const/4 v3, 0x1
26001 if-eqz v9, :cond_a1
26003 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26005 - goto/16 :goto_a1
26006 + goto/16 :goto_9e
26008 - :cond_130
26009 - :try_start_130
26010 + :cond_12d
26011 move/from16 v0, p5
26013 new-array v0, v0, [[B
26014 @@ -1941,8 +1936,8 @@
26016 const/4 v15, 0x0
26018 - :goto_137
26019 - if-ge v15, v10, :cond_161
26020 + :goto_134
26021 + if-ge v15, v10, :cond_15e
26023 invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
26025 @@ -1952,11 +1947,11 @@
26027 move-result v11
26029 - if-nez p9, :cond_145
26030 + if-nez p9, :cond_142
26032 add-int/lit8 v11, v11, -0x1
26034 - :cond_145
26035 + :cond_142
26036 const/4 v3, 0x0
26038 invoke-interface {v9, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
26039 @@ -1969,7 +1964,7 @@
26041 aput-object v3, v20, v11
26043 - if-nez v11, :cond_15e
26044 + if-nez v11, :cond_15b
26046 const/4 v3, 0x2
26048 @@ -1977,7 +1972,7 @@
26050 move-result v3
26052 - if-nez v3, :cond_15e
26053 + if-nez v3, :cond_15b
26055 const/4 v3, 0x2
26057 @@ -1985,17 +1980,17 @@
26059 move-result p8
26061 - :cond_15e
26062 + :cond_15b
26063 add-int/lit8 v15, v15, 0x1
26065 - goto :goto_137
26066 + goto :goto_134
26068 - :cond_161
26069 - if-eqz p9, :cond_18d
26070 + :cond_15e
26071 + if-eqz p9, :cond_18a
26073 aput-object p1, v20, p4
26075 - :goto_165
26076 + :goto_162
26077 move-object/from16 v0, p0
26079 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mResolver:Landroid/content/ContentResolver;
26080 @@ -2003,16 +1998,16 @@
26081 sget-object v4, Lcom/android/internal/telephony/SMSDispatcher;->mRawUri:Landroid/net/Uri;
26083 invoke-virtual {v3, v4, v6, v7}, Landroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
26084 - :try_end_16e
26085 - .catchall {:try_start_130 .. :try_end_16e} :catchall_1a2
26086 - .catch Landroid/database/SQLException; {:try_start_130 .. :try_end_16e} :catch_192
26087 + :try_end_16b
26088 + .catchall {:try_start_a2 .. :try_end_16b} :catchall_19c
26089 + .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_16b} :catch_18f
26091 - if-eqz v9, :cond_173
26092 + if-eqz v9, :cond_170
26094 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26096 - :cond_173
26097 - if-eqz p9, :cond_1d1
26098 + :cond_170
26099 + if-eqz p9, :cond_1cb
26101 new-instance v19, Ljava/io/ByteArrayOutputStream;
26103 @@ -2020,10 +2015,10 @@
26105 const/4 v15, 0x0
26107 - :goto_17b
26108 + :goto_178
26109 move/from16 v0, p5
26111 - if-ge v15, v0, :cond_1a9
26112 + if-ge v15, v0, :cond_1a3
26114 aget-object v3, v20, v15
26116 @@ -2039,50 +2034,48 @@
26118 add-int/lit8 v15, v15, 0x1
26120 - goto :goto_17b
26121 + goto :goto_178
26123 - :cond_18d
26124 + :cond_18a
26125 add-int/lit8 v3, p4, -0x1
26127 - :try_start_18f
26128 + :try_start_18c
26129 aput-object p1, v20, v3
26130 - :try_end_191
26131 - .catchall {:try_start_18f .. :try_end_191} :catchall_1a2
26132 - .catch Landroid/database/SQLException; {:try_start_18f .. :try_end_191} :catch_192
26133 + :try_end_18e
26134 + .catchall {:try_start_18c .. :try_end_18e} :catchall_19c
26135 + .catch Landroid/database/SQLException; {:try_start_18c .. :try_end_18e} :catch_18f
26137 - goto :goto_165
26138 + goto :goto_162
26140 - :catch_192
26141 + :catch_18f
26142 move-exception v14
26144 - :try_start_193
26145 + :try_start_190
26146 const-string v3, "SMS"
26148 const-string v4, "Can\'t access multipart SMS database"
26150 invoke-static {v3, v4, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
26151 - :try_end_19a
26152 - .catchall {:try_start_193 .. :try_end_19a} :catchall_1a2
26153 + :try_end_197
26154 + .catchall {:try_start_190 .. :try_end_197} :catchall_19c
26156 const/4 v3, 0x2
26158 if-eqz v9, :cond_a1
26160 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26162 - goto/16 :goto_a1
26163 + goto/16 :goto_9e
26165 - :catchall_1a2
26166 + :catchall_19c
26167 move-exception v3
26169 - if-eqz v9, :cond_1a8
26170 + if-eqz v9, :cond_1a2
26172 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26174 - :cond_1a8
26175 + :cond_1a2
26176 throw v3
26178 - :cond_1a9
26179 + :cond_1a3
26180 invoke-virtual/range {v19 .. v19}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
26182 move-result-object v13
26183 @@ -2091,7 +2084,7 @@
26185 move/from16 v0, p8
26187 - if-ne v0, v3, :cond_1bd
26188 + if-ne v0, v3, :cond_1b7
26190 move-object/from16 v0, p0
26192 @@ -2103,7 +2096,7 @@
26194 goto/16 :goto_a1
26196 - :cond_1bd
26197 + :cond_1b7
26198 const/4 v3, 0x1
26200 new-array v0, v3, [[B
26201 @@ -2126,18 +2119,18 @@
26203 goto/16 :goto_a1
26205 - :cond_1d1
26206 + :cond_1cb
26207 const/4 v3, -0x1
26209 move/from16 v0, p8
26211 - if-eq v0, v3, :cond_218
26212 + if-eq v0, v3, :cond_212
26214 const/16 v3, 0xb84
26216 move/from16 v0, p8
26218 - if-ne v0, v3, :cond_20c
26219 + if-ne v0, v3, :cond_206
26221 new-instance v19, Ljava/io/ByteArrayOutputStream;
26223 @@ -2145,10 +2138,10 @@
26225 const/4 v15, 0x0
26227 - :goto_1e2
26228 + :goto_1dc
26229 move/from16 v0, p5
26231 - if-ge v15, v0, :cond_1fe
26232 + if-ge v15, v0, :cond_1f8
26234 aget-object v3, v20, v15
26236 @@ -2174,9 +2167,9 @@
26238 add-int/lit8 v15, v15, 0x1
26240 - goto :goto_1e2
26241 + goto :goto_1dc
26243 - :cond_1fe
26244 + :cond_1f8
26245 move-object/from16 v0, p0
26247 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
26248 @@ -2191,7 +2184,7 @@
26250 goto/16 :goto_a1
26252 - :cond_20c
26253 + :cond_206
26254 move-object/from16 v0, p0
26256 move-object/from16 v1, v20
26257 @@ -2200,19 +2193,19 @@
26259 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPortAddressedPdus([[BI)V
26261 - :goto_215
26262 + :goto_20f
26263 const/4 v3, -0x1
26265 goto/16 :goto_a1
26267 - :cond_218
26268 + :cond_212
26269 move-object/from16 v0, p0
26271 move-object/from16 v1, v20
26273 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPdus([[B)V
26275 - goto :goto_215
26276 + goto :goto_20f
26277 .end method
26279 .method protected abstract sendData(Ljava/lang/String;Ljava/lang/String;I[BLandroid/app/PendingIntent;Landroid/app/PendingIntent;)V