Revert "Fixed pdroid security hole (ported from OpenPDroid)"
[auto-patcher.git] / patches / pdroid / 4.0 / aokp / 20120702 / framework.patch
blob1aece5509dbcad652246219d223638e89b54d39c
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-07-02 10:16:11.401578064 -0700
3 +++ pdroid_framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-07-02 10:16:44.874550679 -0700
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-07-02 10:16:11.467593787 -0700
43 +++ pdroid_framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-07-02 10:16:44.931564259 -0700
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-07-02 10:16:11.443588070 -0700
280 +++ pdroid_framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-07-02 10:16:44.911559494 -0700
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-07-02 10:16:11.824678837 -0700
500 +++ pdroid_framework/smali/android/accounts/AccountManagerService.smali 2012-07-02 10:16:45.302652646 -0700
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
757 + .catchall {:try_start_135 .. :try_end_14e} :catchall_14f
759 - invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
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-07-02 10:16:12.677882052 -0700
811 +++ pdroid_framework/smali/android/app/ActivityThread.smali 2012-07-02 10:16:46.051831088 -0700
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 @@ -10122,7 +10120,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 @@ -10135,15 +10133,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 @@ -10151,18 +10149,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 @@ -10192,43 +10179,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 @@ -10237,18 +10236,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 @@ -10332,9 +10329,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 @@ -10355,7 +10352,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 @@ -10364,7 +10361,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 @@ -10381,7 +10378,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 @@ -10420,7 +10417,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 @@ -10438,35 +10435,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 @@ -10475,30 +10476,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-07-02 10:16:12.881930652 -0700
1122 +++ pdroid_framework/smali/android/app/BackStackRecord.smali 2012-07-02 10:16:46.204867539 -0700
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-07-02 10:16:15.228489552 -0700
1326 +++ pdroid_framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-07-02 10:16:47.550187971 -0700
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-07-02 10:16:15.274500511 -0700
1588 +++ pdroid_framework/smali/android/app/backup/RestoreSession.smali 2012-07-02 10:16:47.597199171 -0700
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-07-02 10:16:12.903935893 -0700
1623 +++ pdroid_framework/smali/android/app/ContextImpl$18.smali 2012-07-02 10:16:46.209868730 -0700
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-07-02 10:16:12.929942087 -0700
1660 +++ pdroid_framework/smali/android/app/ContextImpl$26.smali 2012-07-02 10:16:46.242876592 -0700
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$34.smali pdroid_framework/smali/android/app/ContextImpl$34.smali
1678 --- stock_framework/smali/android/app/ContextImpl$34.smali 1969-12-31 16:00:00.000000000 -0800
1679 +++ pdroid_framework/smali/android/app/ContextImpl$34.smali 2012-07-02 10:16:46.718989994 -0700
1680 @@ -0,0 +1,50 @@
1681 +.class final Landroid/app/ContextImpl$34;
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-07-02 10:16:12.944945660 -0700
1733 +++ pdroid_framework/smali/android/app/ContextImpl$3.smali 2012-07-02 10:16:46.718989994 -0700
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-07-02 10:16:14.281263943 -0700
1748 +++ pdroid_framework/smali/android/app/ContextImpl.smali 2012-07-02 10:16:46.764000715 -0700
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 @@ -394,6 +396,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$34;
1766 + invoke-direct {v1}, Landroid/app/ContextImpl$34;-><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 @@ -428,6 +438,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 @@ -482,6 +494,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 @@ -951,6 +965,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 @@ -4116,6 +4138,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-07-02 10:16:14.360282762 -0700
1817 +++ pdroid_framework/smali/android/app/DownloadManager.smali 2012-07-02 10:16:46.829016200 -0700
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
1868 - goto :goto_1c
1869 + goto :goto_19
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-07-02 10:16:15.152471446 -0700
2006 +++ pdroid_framework/smali/android/app/WallpaperManager$Globals.smali 2012-07-02 10:16:47.498175583 -0700
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-07-02 10:16:15.488551493 -0700
2093 +++ pdroid_framework/smali/android/bluetooth/BluetoothSocket.smali 2012-07-02 10:16:47.765239193 -0700
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-07-02 10:16:15.573571743 -0700
2138 +++ pdroid_framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-07-02 10:16:47.838256585 -0700
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-07-02 10:16:12.983954952 -0700
2320 +++ pdroid_framework/smali/android/content/ContentResolver.smali 2012-07-02 10:16:46.735994044 -0700
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-07-02 10:16:15.700601999 -0700
2792 +++ pdroid_framework/smali/android/content/CursorLoader.smali 2012-07-02 10:16:48.004296133 -0700
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-07-02 10:16:15.788622964 -0700
2804 +++ pdroid_framework/smali/android/content/IntentFilter.smali 2012-07-02 10:16:48.103319718 -0700
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-07-02 10:16:15.842635828 -0700
2833 +++ pdroid_framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-07-02 10:16:48.173336394 -0700
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-07-02 10:16:15.945660367 -0700
2879 +++ pdroid_framework/smali/android/content/SyncStorageEngine.smali 2012-07-02 10:16:48.272359981 -0700
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
2999 - goto :goto_a6
3001 - :catch_122
3002 - move-exception v14
3003 + .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_102
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
3090 + .catchall {:try_start_16 .. :try_end_1b} :catchall_1c
3092 - invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3093 + goto :goto_11
3095 - goto :goto_14
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-07-02 10:16:16.217725167 -0700
3104 +++ pdroid_framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-07-02 10:16:48.549425974 -0700
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-07-02 10:16:16.281740414 -0700
3140 +++ pdroid_framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-07-02 10:16:48.624443842 -0700
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-07-02 10:16:16.300744940 -0700
3191 +++ pdroid_framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-07-02 10:16:48.650450036 -0700
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
3309 + .catchall {:try_start_b .. :try_end_1a} :catchall_1b
3311 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
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
3536 - invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3537 + :catchall_af
3538 + move-exception v6
3540 - :cond_b4
3541 - add-int/lit8 v2, v2, 0x1
3542 + if-eqz v4, :cond_b5
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-07-02 10:16:16.322750181 -0700
3569 +++ pdroid_framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-07-02 10:16:48.666453848 -0700
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/media/MediaPlayer.smali pdroid_framework/smali/android/media/MediaPlayer.smali
3624 --- stock_framework/smali/android/media/MediaPlayer.smali 2012-07-02 10:16:17.187956255 -0700
3625 +++ pdroid_framework/smali/android/media/MediaPlayer.smali 2012-07-02 10:16:49.507654208 -0700
3626 @@ -985,9 +985,9 @@
3628 invoke-virtual {v7, p2, v0}, Landroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
3629 :try_end_21
3630 - .catchall {:try_start_17 .. :try_end_21} :catchall_6e
3631 - .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_52
3632 - .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_67
3633 + .catchall {:try_start_17 .. :try_end_21} :catchall_64
3634 + .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_4f
3635 + .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_6b
3637 move-result-object v6
3639 @@ -995,6 +995,7 @@
3641 if-eqz v6, :cond_15
3643 + :goto_26
3644 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3646 goto :goto_15
3647 @@ -1009,27 +1010,20 @@
3649 cmp-long v0, v0, v2
3651 - if-gez v0, :cond_41
3652 + if-gez v0, :cond_3e
3654 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3656 move-result-object v0
3658 invoke-virtual {p0, v0}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V
3659 - :try_end_3b
3660 - .catchall {:try_start_2a .. :try_end_3b} :catchall_6e
3661 - .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_3b} :catch_52
3662 - .catch Ljava/io/IOException; {:try_start_2a .. :try_end_3b} :catch_67
3664 :goto_3b
3665 if-eqz v6, :cond_15
3667 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3669 - goto :goto_15
3670 + goto :goto_26
3672 - :cond_41
3673 - :try_start_41
3674 + :cond_3e
3675 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3677 move-result-object v1
3678 @@ -1045,22 +1039,22 @@
3679 move-object v0, p0
3681 invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V
3682 - :try_end_51
3683 - .catchall {:try_start_41 .. :try_end_51} :catchall_6e
3684 - .catch Ljava/lang/SecurityException; {:try_start_41 .. :try_end_51} :catch_52
3685 - .catch Ljava/io/IOException; {:try_start_41 .. :try_end_51} :catch_67
3686 + :try_end_4e
3687 + .catchall {:try_start_2a .. :try_end_4e} :catchall_64
3688 + .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_4e} :catch_4f
3689 + .catch Ljava/io/IOException; {:try_start_2a .. :try_end_4e} :catch_6b
3691 goto :goto_3b
3693 - :catch_52
3694 + :catch_4f
3695 move-exception v0
3697 - if-eqz v6, :cond_58
3698 + if-eqz v6, :cond_55
3700 + :goto_52
3701 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3703 - :cond_58
3704 - :goto_58
3705 + :cond_55
3706 const-string v0, "MediaPlayer"
3708 const-string v1, "Couldn\'t open file on client side, trying server side"
3709 @@ -1075,24 +1069,22 @@
3711 goto :goto_15
3713 - :catch_67
3714 + :catchall_64
3715 move-exception v0
3717 - if-eqz v6, :cond_58
3718 + if-eqz v6, :cond_6a
3720 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3722 - goto :goto_58
3723 + :cond_6a
3724 + throw v0
3726 - :catchall_6e
3727 + :catch_6b
3728 move-exception v0
3730 - if-eqz v6, :cond_74
3732 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3733 + if-eqz v6, :cond_55
3735 - :cond_74
3736 - throw v0
3737 + goto :goto_52
3738 .end method
3740 .method public setDataSource(Ljava/io/FileDescriptor;)V
3741 diff -Npru stock_framework/smali/android/net/VpnService.smali pdroid_framework/smali/android/net/VpnService.smali
3742 --- stock_framework/smali/android/net/VpnService.smali 2012-07-02 10:16:17.657067988 -0700
3743 +++ pdroid_framework/smali/android/net/VpnService.smali 2012-07-02 10:16:49.886744501 -0700
3744 @@ -155,8 +155,6 @@
3746 :try_start_d
3747 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3748 - :try_end_10
3749 - .catch Ljava/lang/Exception; {:try_start_d .. :try_end_10} :catch_1e
3751 :goto_10
3752 return v2
3753 @@ -166,10 +164,9 @@
3755 const/4 v2, 0x0
3757 - :try_start_13
3758 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3759 :try_end_16
3760 - .catch Ljava/lang/Exception; {:try_start_13 .. :try_end_16} :catch_17
3761 + .catch Ljava/lang/Exception; {:try_start_d .. :try_end_16} :catch_17
3763 goto :goto_10
3765 @@ -184,7 +181,7 @@
3766 :try_start_1a
3767 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3768 :try_end_1d
3769 - .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_20
3770 + .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_1e
3772 :goto_1d
3773 throw v2
3774 @@ -192,11 +189,6 @@
3775 :catch_1e
3776 move-exception v3
3778 - goto :goto_10
3780 - :catch_20
3781 - move-exception v3
3783 goto :goto_1d
3784 .end method
3786 diff -Npru stock_framework/smali/android/net/wifi/WifiConfigStore.smali pdroid_framework/smali/android/net/wifi/WifiConfigStore.smali
3787 --- stock_framework/smali/android/net/wifi/WifiConfigStore.smali 2012-07-02 10:16:17.838111109 -0700
3788 +++ pdroid_framework/smali/android/net/wifi/WifiConfigStore.smali 2012-07-02 10:16:50.052784049 -0700
3789 @@ -2904,9 +2904,9 @@
3791 invoke-direct {v9, v0}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
3792 :try_end_14
3793 - .catchall {:try_start_1 .. :try_end_14} :catchall_23d
3794 - .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_243
3795 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_240
3796 + .catchall {:try_start_1 .. :try_end_14} :catchall_23a
3797 + .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_240
3798 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_23d
3800 :try_start_14
3801 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3802 @@ -2933,7 +2933,7 @@
3804 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3805 :try_end_2d
3806 - .catchall {:try_start_14 .. :try_end_2d} :catchall_17e
3807 + .catchall {:try_start_14 .. :try_end_2d} :catchall_17b
3808 .catch Ljava/io/EOFException; {:try_start_14 .. :try_end_2d} :catch_d5
3809 .catch Ljava/io/IOException; {:try_start_14 .. :try_end_2d} :catch_10b
3811 @@ -2960,27 +2960,27 @@
3813 invoke-virtual {v11, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
3814 :try_end_3b
3815 - .catchall {:try_start_34 .. :try_end_3b} :catchall_17e
3816 + .catchall {:try_start_34 .. :try_end_3b} :catchall_17b
3817 .catch Ljava/lang/IllegalArgumentException; {:try_start_34 .. :try_end_3b} :catch_bb
3818 .catch Ljava/io/EOFException; {:try_start_34 .. :try_end_3b} :catch_d5
3819 .catch Ljava/io/IOException; {:try_start_34 .. :try_end_3b} :catch_10b
3821 move-result v19
3823 - if-eqz v19, :cond_1cd
3824 + if-eqz v19, :cond_1ca
3826 const/16 v19, -0x1
3828 move/from16 v0, v19
3830 - if-eq v7, v0, :cond_230
3831 + if-eq v7, v0, :cond_22d
3833 :try_start_44
3834 sget-object v20, Landroid/net/wifi/WifiConfigStore;->sConfiguredNetworks:Ljava/util/HashMap;
3836 monitor-enter v20
3837 :try_end_47
3838 - .catchall {:try_start_44 .. :try_end_47} :catchall_17e
3839 + .catchall {:try_start_44 .. :try_end_47} :catchall_17b
3840 .catch Ljava/io/EOFException; {:try_start_44 .. :try_end_47} :catch_d5
3841 .catch Ljava/io/IOException; {:try_start_44 .. :try_end_47} :catch_10b
3843 @@ -3007,7 +3007,7 @@
3845 check-cast v2, Landroid/net/wifi/WifiConfiguration;
3847 - if-nez v2, :cond_1ee
3848 + if-nez v2, :cond_1eb
3850 const-string v19, "configuration found for missing network, ignored"
3852 @@ -3017,7 +3017,7 @@
3853 :pswitch_64
3854 monitor-exit v20
3855 :try_end_65
3856 - .catchall {:try_start_47 .. :try_end_65} :catchall_212
3857 + .catchall {:try_start_47 .. :try_end_65} :catchall_20f
3859 :cond_65
3860 :goto_65
3861 @@ -3041,7 +3041,7 @@
3862 :goto_72
3863 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3864 :try_end_75
3865 - .catchall {:try_start_66 .. :try_end_75} :catchall_17e
3866 + .catchall {:try_start_66 .. :try_end_75} :catchall_17b
3867 .catch Ljava/io/EOFException; {:try_start_66 .. :try_end_75} :catch_d5
3868 .catch Ljava/io/IOException; {:try_start_66 .. :try_end_75} :catch_10b
3870 @@ -3118,7 +3118,7 @@
3872 invoke-virtual {v13, v12}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)V
3873 :try_end_ba
3874 - .catchall {:try_start_76 .. :try_end_ba} :catchall_17e
3875 + .catchall {:try_start_76 .. :try_end_ba} :catchall_17b
3876 .catch Ljava/lang/IllegalArgumentException; {:try_start_76 .. :try_end_ba} :catch_bb
3877 .catch Ljava/io/EOFException; {:try_start_76 .. :try_end_ba} :catch_d5
3878 .catch Ljava/io/IOException; {:try_start_76 .. :try_end_ba} :catch_10b
3879 @@ -3151,7 +3151,7 @@
3881 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3882 :try_end_d4
3883 - .catchall {:try_start_bc .. :try_end_d4} :catchall_17e
3884 + .catchall {:try_start_bc .. :try_end_d4} :catchall_17b
3885 .catch Ljava/io/EOFException; {:try_start_bc .. :try_end_d4} :catch_d5
3886 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_d4} :catch_10b
3888 @@ -3187,7 +3187,7 @@
3890 move-result v19
3892 - if-eqz v19, :cond_165
3893 + if-eqz v19, :cond_162
3895 const/4 v3, 0x0
3897 @@ -3199,7 +3199,7 @@
3899 move/from16 v1, v19
3901 - if-ne v0, v1, :cond_12f
3902 + if-ne v0, v1, :cond_12c
3904 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3906 @@ -3221,7 +3221,7 @@
3908 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)V
3909 :try_end_109
3910 - .catchall {:try_start_e1 .. :try_end_109} :catchall_17e
3911 + .catchall {:try_start_e1 .. :try_end_109} :catchall_17b
3912 .catch Ljava/lang/IllegalArgumentException; {:try_start_e1 .. :try_end_109} :catch_bb
3913 .catch Ljava/io/EOFException; {:try_start_e1 .. :try_end_109} :catch_d5
3914 .catch Ljava/io/IOException; {:try_start_e1 .. :try_end_109} :catch_10b
3915 @@ -3257,24 +3257,19 @@
3917 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3918 :try_end_125
3919 - .catchall {:try_start_10d .. :try_end_125} :catchall_23d
3920 + .catchall {:try_start_10d .. :try_end_125} :catchall_23a
3922 if-eqz v8, :cond_33
3924 :try_start_127
3925 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
3926 :try_end_12a
3927 - .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_12c
3928 + .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_de
3930 goto/16 :goto_33
3932 - :catch_12c
3933 - move-exception v19
3935 - goto/16 :goto_33
3937 - :cond_12f
3938 - :try_start_12f
3939 + :cond_12c
3940 + :try_start_12c
3941 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3943 move-result v19
3944 @@ -3285,7 +3280,7 @@
3946 move/from16 v1, v20
3948 - if-ne v0, v1, :cond_150
3949 + if-ne v0, v1, :cond_14d
3951 new-instance v3, Landroid/net/LinkAddress;
3953 @@ -3307,7 +3302,7 @@
3955 invoke-direct {v3, v0, v1}, Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
3957 - :cond_150
3958 + :cond_14d
3959 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3961 move-result v19
3962 @@ -3330,7 +3325,7 @@
3964 goto :goto_fd
3966 - :cond_165
3967 + :cond_162
3968 const-string v19, "dns"
3970 move-object/from16 v0, v19
3971 @@ -3339,7 +3334,7 @@
3973 move-result v19
3975 - if-eqz v19, :cond_186
3976 + if-eqz v19, :cond_183
3978 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3980 @@ -3352,33 +3347,33 @@
3981 move-object/from16 v0, v19
3983 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addDns(Ljava/net/InetAddress;)V
3984 - :try_end_17c
3985 - .catchall {:try_start_12f .. :try_end_17c} :catchall_17e
3986 - .catch Ljava/lang/IllegalArgumentException; {:try_start_12f .. :try_end_17c} :catch_bb
3987 - .catch Ljava/io/EOFException; {:try_start_12f .. :try_end_17c} :catch_d5
3988 - .catch Ljava/io/IOException; {:try_start_12f .. :try_end_17c} :catch_10b
3989 + :try_end_179
3990 + .catchall {:try_start_12c .. :try_end_179} :catchall_17b
3991 + .catch Ljava/lang/IllegalArgumentException; {:try_start_12c .. :try_end_179} :catch_bb
3992 + .catch Ljava/io/EOFException; {:try_start_12c .. :try_end_179} :catch_d5
3993 + .catch Ljava/io/IOException; {:try_start_12c .. :try_end_179} :catch_10b
3995 goto/16 :goto_72
3997 - :catchall_17e
3998 + :catchall_17b
3999 move-exception v19
4001 move-object v8, v9
4003 - :goto_180
4004 - if-eqz v8, :cond_185
4005 + :goto_17d
4006 + if-eqz v8, :cond_182
4008 - :try_start_182
4009 + :try_start_17f
4010 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
4011 - :try_end_185
4012 - .catch Ljava/lang/Exception; {:try_start_182 .. :try_end_185} :catch_23a
4013 + :try_end_182
4014 + .catch Ljava/lang/Exception; {:try_start_17f .. :try_end_182} :catch_234
4016 - :cond_185
4017 - :goto_185
4018 + :cond_182
4019 + :goto_182
4020 throw v19
4022 - :cond_186
4023 - :try_start_186
4024 + :cond_183
4025 + :try_start_183
4026 const-string/jumbo v19, "proxySettings"
4028 move-object/from16 v0, v19
4029 @@ -3387,7 +3382,7 @@
4031 move-result v19
4033 - if-eqz v19, :cond_19b
4034 + if-eqz v19, :cond_198
4036 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4038 @@ -3399,7 +3394,7 @@
4040 goto/16 :goto_72
4042 - :cond_19b
4043 + :cond_198
4044 const-string/jumbo v19, "proxyHost"
4046 move-object/from16 v0, v19
4047 @@ -3408,7 +3403,7 @@
4049 move-result v19
4051 - if-eqz v19, :cond_1ac
4052 + if-eqz v19, :cond_1a9
4054 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4056 @@ -3416,7 +3411,7 @@
4058 goto/16 :goto_72
4060 - :cond_1ac
4061 + :cond_1a9
4062 const-string/jumbo v19, "proxyPort"
4064 move-object/from16 v0, v19
4065 @@ -3425,7 +3420,7 @@
4067 move-result v19
4069 - if-eqz v19, :cond_1bd
4070 + if-eqz v19, :cond_1ba
4072 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4074 @@ -3433,7 +3428,7 @@
4076 goto/16 :goto_72
4078 - :cond_1bd
4079 + :cond_1ba
4080 const-string v19, "exclusionList"
4082 move-object/from16 v0, v19
4083 @@ -3450,7 +3445,7 @@
4085 goto/16 :goto_72
4087 - :cond_1cd
4088 + :cond_1ca
4089 new-instance v19, Ljava/lang/StringBuilder;
4091 invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
4092 @@ -3478,16 +3473,16 @@
4093 move-result-object v19
4095 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4096 - :try_end_1ec
4097 - .catchall {:try_start_186 .. :try_end_1ec} :catchall_17e
4098 - .catch Ljava/lang/IllegalArgumentException; {:try_start_186 .. :try_end_1ec} :catch_bb
4099 - .catch Ljava/io/EOFException; {:try_start_186 .. :try_end_1ec} :catch_d5
4100 - .catch Ljava/io/IOException; {:try_start_186 .. :try_end_1ec} :catch_10b
4101 + :try_end_1e9
4102 + .catchall {:try_start_183 .. :try_end_1e9} :catchall_17b
4103 + .catch Ljava/lang/IllegalArgumentException; {:try_start_183 .. :try_end_1e9} :catch_bb
4104 + .catch Ljava/io/EOFException; {:try_start_183 .. :try_end_1e9} :catch_d5
4105 + .catch Ljava/io/IOException; {:try_start_183 .. :try_end_1e9} :catch_10b
4107 goto/16 :goto_72
4109 - :cond_1ee
4110 - :try_start_1ee
4111 + :cond_1eb
4112 + :try_start_1eb
4113 iput-object v13, v2, Landroid/net/wifi/WifiConfiguration;->linkProperties:Landroid/net/LinkProperties;
4115 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$IpAssignment:[I
4116 @@ -3498,14 +3493,14 @@
4118 aget v19, v19, v21
4120 - packed-switch v19, :pswitch_data_246
4121 + packed-switch v19, :pswitch_data_244
4123 const-string v19, "Ignore invalid ip assignment while reading"
4125 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4127 - :goto_200
4128 - :pswitch_200
4129 + :goto_1fd
4130 + :pswitch_1fd
4131 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$ProxySettings:[I
4133 invoke-virtual/range {v17 .. v17}, Landroid/net/wifi/WifiConfiguration$ProxySettings;->ordinal()I
4134 @@ -3514,7 +3509,7 @@
4136 aget v19, v19, v21
4138 - packed-switch v19, :pswitch_data_250
4139 + packed-switch v19, :pswitch_data_24e
4141 const-string v19, "Ignore invalid proxy settings while reading"
4143 @@ -3522,27 +3517,27 @@
4145 goto/16 :goto_64
4147 - :catchall_212
4148 + :catchall_20f
4149 move-exception v19
4151 monitor-exit v20
4152 - :try_end_214
4153 - .catchall {:try_start_1ee .. :try_end_214} :catchall_212
4154 + :try_end_211
4155 + .catchall {:try_start_1eb .. :try_end_211} :catchall_20f
4157 - :try_start_214
4158 + :try_start_211
4159 throw v19
4160 - :try_end_215
4161 - .catchall {:try_start_214 .. :try_end_215} :catchall_17e
4162 - .catch Ljava/io/EOFException; {:try_start_214 .. :try_end_215} :catch_d5
4163 - .catch Ljava/io/IOException; {:try_start_214 .. :try_end_215} :catch_10b
4164 + :try_end_212
4165 + .catchall {:try_start_211 .. :try_end_212} :catchall_17b
4166 + .catch Ljava/io/EOFException; {:try_start_211 .. :try_end_212} :catch_d5
4167 + .catch Ljava/io/IOException; {:try_start_211 .. :try_end_212} :catch_10b
4169 - :pswitch_215
4170 - :try_start_215
4171 + :pswitch_212
4172 + :try_start_212
4173 iput-object v10, v2, Landroid/net/wifi/WifiConfiguration;->ipAssignment:Landroid/net/wifi/WifiConfiguration$IpAssignment;
4175 - goto :goto_200
4176 + goto :goto_1fd
4178 - :pswitch_218
4179 + :pswitch_215
4180 move-object/from16 v0, v17
4182 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4183 @@ -3559,63 +3554,65 @@
4185 goto/16 :goto_64
4187 - :pswitch_22a
4188 + :pswitch_227
4189 move-object/from16 v0, v17
4191 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4192 - :try_end_22e
4193 - .catchall {:try_start_215 .. :try_end_22e} :catchall_212
4194 + :try_end_22b
4195 + .catchall {:try_start_212 .. :try_end_22b} :catchall_20f
4197 goto/16 :goto_64
4199 - :cond_230
4200 - :try_start_230
4201 + :cond_22d
4202 + :try_start_22d
4203 const-string v19, "Missing id while parsing configuration"
4205 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4206 - :try_end_235
4207 - .catchall {:try_start_230 .. :try_end_235} :catchall_17e
4208 - .catch Ljava/io/EOFException; {:try_start_230 .. :try_end_235} :catch_d5
4209 - .catch Ljava/io/IOException; {:try_start_230 .. :try_end_235} :catch_10b
4210 + :try_end_232
4211 + .catchall {:try_start_22d .. :try_end_232} :catchall_17b
4212 + .catch Ljava/io/EOFException; {:try_start_22d .. :try_end_232} :catch_d5
4213 + .catch Ljava/io/IOException; {:try_start_22d .. :try_end_232} :catch_10b
4215 goto/16 :goto_65
4217 + :catch_234
4218 + move-exception v20
4220 + goto/16 :goto_182
4222 :catch_237
4223 move-exception v19
4225 goto/16 :goto_32
4227 - :catch_23a
4228 - move-exception v20
4230 - goto/16 :goto_185
4232 - :catchall_23d
4233 + :catchall_23a
4234 move-exception v19
4236 - goto/16 :goto_180
4237 + goto/16 :goto_17d
4239 - :catch_240
4240 + :catch_23d
4241 move-exception v4
4243 goto/16 :goto_10d
4245 - :catch_243
4246 + :catch_240
4247 move-exception v19
4249 goto/16 :goto_d7
4251 - :pswitch_data_246
4252 + nop
4254 + :pswitch_data_244
4255 .packed-switch 0x1
4256 - :pswitch_215
4257 - :pswitch_215
4258 - :pswitch_200
4259 + :pswitch_212
4260 + :pswitch_212
4261 + :pswitch_1fd
4262 .end packed-switch
4264 - :pswitch_data_250
4265 + :pswitch_data_24e
4266 .packed-switch 0x1
4267 - :pswitch_218
4268 - :pswitch_22a
4269 + :pswitch_215
4270 + :pswitch_227
4271 :pswitch_64
4272 .end packed-switch
4273 .end method
4274 @@ -4756,8 +4753,8 @@
4276 invoke-direct {v11, v15}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
4277 :try_end_12
4278 - .catchall {:try_start_1 .. :try_end_12} :catchall_1c1
4279 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1d0
4280 + .catchall {:try_start_1 .. :try_end_12} :catchall_1bd
4281 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1ce
4283 const/4 v15, 0x2
4285 @@ -4768,7 +4765,7 @@
4287 monitor-enter v16
4288 :try_end_19
4289 - .catchall {:try_start_13 .. :try_end_19} :catchall_1cd
4290 + .catchall {:try_start_13 .. :try_end_19} :catchall_1cb
4291 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_19} :catch_71
4293 :try_start_19
4294 @@ -4814,7 +4811,7 @@
4296 aget v15, v15, v17
4298 - packed-switch v15, :pswitch_data_1d6
4299 + packed-switch v15, :pswitch_data_1d2
4301 const-string v15, "Ignore invalid ip assignment while writing"
4303 @@ -4834,7 +4831,7 @@
4305 aget v15, v15, v17
4307 - packed-switch v15, :pswitch_data_1e0
4308 + packed-switch v15, :pswitch_data_1dc
4310 const-string v15, "Ignore invalid proxy settings while writing"
4312 @@ -4876,7 +4873,7 @@
4313 :try_start_70
4314 throw v15
4315 :try_end_71
4316 - .catchall {:try_start_70 .. :try_end_71} :catchall_1cd
4317 + .catchall {:try_start_70 .. :try_end_71} :catchall_1cb
4318 .catch Ljava/io/IOException; {:try_start_70 .. :try_end_71} :catch_71
4320 :catch_71
4321 @@ -4890,14 +4887,14 @@
4323 invoke-static {v15}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4324 :try_end_78
4325 - .catchall {:try_start_73 .. :try_end_78} :catchall_1c1
4326 + .catchall {:try_start_73 .. :try_end_78} :catchall_1bd
4328 if-eqz v10, :cond_7d
4330 :try_start_7a
4331 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4332 :try_end_7d
4333 - .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c8
4334 + .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c6
4336 :cond_7d
4337 :goto_7d
4338 @@ -5226,74 +5223,71 @@
4339 :try_end_1b5
4340 .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_6e
4342 - if-eqz v11, :cond_1d3
4343 + if-eqz v11, :cond_1ba
4345 :try_start_1b7
4346 invoke-virtual {v11}, Ljava/io/DataOutputStream;->close()V
4347 :try_end_1ba
4348 - .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1bd
4350 - move-object v10, v11
4352 - goto/16 :goto_7d
4354 - :catch_1bd
4355 - move-exception v15
4356 + .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1c9
4358 + :cond_1ba
4359 + :goto_1ba
4360 move-object v10, v11
4362 goto/16 :goto_7d
4364 - :catchall_1c1
4365 + :catchall_1bd
4366 move-exception v15
4368 - :goto_1c2
4369 - if-eqz v10, :cond_1c7
4370 + :goto_1be
4371 + if-eqz v10, :cond_1c3
4373 - :try_start_1c4
4374 + :try_start_1c0
4375 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4376 - :try_end_1c7
4377 - .catch Ljava/lang/Exception; {:try_start_1c4 .. :try_end_1c7} :catch_1cb
4378 + :try_end_1c3
4379 + .catch Ljava/lang/Exception; {:try_start_1c0 .. :try_end_1c3} :catch_1c4
4381 - :cond_1c7
4382 - :goto_1c7
4383 + :cond_1c3
4384 + :goto_1c3
4385 throw v15
4387 - :catch_1c8
4388 + :catch_1c4
4389 + move-exception v16
4391 + goto :goto_1c3
4393 + :catch_1c6
4394 move-exception v15
4396 goto/16 :goto_7d
4398 - :catch_1cb
4399 - move-exception v16
4400 + :catch_1c9
4401 + move-exception v15
4403 - goto :goto_1c7
4404 + goto :goto_1ba
4406 - :catchall_1cd
4407 + :catchall_1cb
4408 move-exception v15
4410 move-object v10, v11
4412 - goto :goto_1c2
4413 + goto :goto_1be
4415 - :catch_1d0
4416 + :catch_1ce
4417 move-exception v3
4419 goto/16 :goto_73
4421 - :cond_1d3
4422 - move-object v10, v11
4424 - goto/16 :goto_7d
4425 + nop
4427 - :pswitch_data_1d6
4428 + :pswitch_data_1d2
4429 .packed-switch 0x1
4430 :pswitch_7e
4431 :pswitch_155
4432 :pswitch_46
4433 .end packed-switch
4435 - :pswitch_data_1e0
4436 + :pswitch_data_1dc
4437 .packed-switch 0x1
4438 :pswitch_166
4439 :pswitch_1a2
4440 diff -Npru stock_framework/smali/android/opengl/GLSurfaceView$GLThread.smali pdroid_framework/smali/android/opengl/GLSurfaceView$GLThread.smali
4441 --- stock_framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-07-02 10:16:18.196196398 -0700
4442 +++ pdroid_framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-07-02 10:16:50.432874581 -0700
4443 @@ -161,7 +161,7 @@
4445 monitor-enter v14
4446 :try_end_26
4447 - .catchall {:try_start_21 .. :try_end_26} :catchall_160
4448 + .catchall {:try_start_21 .. :try_end_26} :catchall_15d
4450 :goto_26
4451 :try_start_26
4452 @@ -169,11 +169,11 @@
4454 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldExit:Z
4456 - if-eqz v13, :cond_3d
4457 + if-eqz v13, :cond_3a
4459 monitor-exit v14
4460 :try_end_2d
4461 - .catchall {:try_start_26 .. :try_end_2d} :catchall_15d
4462 + .catchall {:try_start_26 .. :try_end_2d} :catchall_15a
4464 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4466 @@ -187,21 +187,14 @@
4467 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4469 monitor-exit v14
4470 + :try_end_39
4471 + .catchall {:try_start_32 .. :try_end_39} :catchall_212
4473 :goto_39
4474 return-void
4476 - :catchall_3a
4477 - move-exception v13
4479 - monitor-exit v14
4480 - :try_end_3c
4481 - .catchall {:try_start_32 .. :try_end_3c} :catchall_3a
4483 - throw v13
4485 - :cond_3d
4486 - :try_start_3d
4487 + :cond_3a
4488 + :try_start_3a
4489 move-object/from16 v0, p0
4491 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEventQueue:Ljava/util/ArrayList;
4492 @@ -210,7 +203,7 @@
4494 move-result v13
4496 - if-nez v13, :cond_5c
4497 + if-nez v13, :cond_59
4499 move-object/from16 v0, p0
4501 @@ -228,24 +221,24 @@
4503 move-object v5, v0
4505 - :goto_54
4506 + :goto_51
4507 monitor-exit v14
4508 - :try_end_55
4509 - .catchall {:try_start_3d .. :try_end_55} :catchall_15d
4510 + :try_end_52
4511 + .catchall {:try_start_3a .. :try_end_52} :catchall_15a
4513 - if-eqz v5, :cond_1a9
4514 + if-eqz v5, :cond_1a6
4516 - :try_start_57
4517 + :try_start_54
4518 invoke-interface {v5}, Ljava/lang/Runnable;->run()V
4519 - :try_end_5a
4520 - .catchall {:try_start_57 .. :try_end_5a} :catchall_160
4521 + :try_end_57
4522 + .catchall {:try_start_54 .. :try_end_57} :catchall_15d
4524 const/4 v5, 0x0
4526 goto :goto_21
4528 - :cond_5c
4529 - :try_start_5c
4530 + :cond_59
4531 + :try_start_59
4532 move-object/from16 v0, p0
4534 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4535 @@ -254,7 +247,7 @@
4537 iget-boolean v15, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestPaused:Z
4539 - if-eq v13, v15, :cond_75
4540 + if-eq v13, v15, :cond_72
4542 move-object/from16 v0, p0
4544 @@ -270,12 +263,12 @@
4546 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4548 - :cond_75
4549 + :cond_72
4550 move-object/from16 v0, p0
4552 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldReleaseEglContext:Z
4554 - if-eqz v13, :cond_87
4555 + if-eqz v13, :cond_84
4557 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4559 @@ -289,8 +282,8 @@
4561 const/4 v1, 0x1
4563 - :cond_87
4564 - if-eqz v8, :cond_90
4565 + :cond_84
4566 + if-eqz v8, :cond_8d
4568 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4570 @@ -298,18 +291,18 @@
4572 const/4 v8, 0x0
4574 - :cond_90
4575 + :cond_8d
4576 move-object/from16 v0, p0
4578 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4580 - if-eqz v13, :cond_c7
4581 + if-eqz v13, :cond_c4
4583 move-object/from16 v0, p0
4585 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4587 - if-eqz v13, :cond_c7
4588 + if-eqz v13, :cond_c4
4590 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4592 @@ -322,7 +315,7 @@
4594 move-result v13
4596 - if-eqz v13, :cond_b3
4597 + if-eqz v13, :cond_b0
4599 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4601 @@ -332,12 +325,12 @@
4603 move-result v13
4605 - if-eqz v13, :cond_b6
4606 + if-eqz v13, :cond_b3
4608 - :cond_b3
4609 + :cond_b0
4610 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4612 - :cond_b6
4613 + :cond_b3
4614 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4616 move-result-object v13
4617 @@ -346,7 +339,7 @@
4619 move-result v13
4621 - if-eqz v13, :cond_c7
4622 + if-eqz v13, :cond_c4
4624 move-object/from16 v0, p0
4626 @@ -354,28 +347,28 @@
4628 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->finish()V
4630 - :cond_c7
4631 + :cond_c4
4632 move-object/from16 v0, p0
4634 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4636 - if-nez v13, :cond_e8
4637 + if-nez v13, :cond_e5
4639 move-object/from16 v0, p0
4641 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4643 - if-nez v13, :cond_e8
4644 + if-nez v13, :cond_e5
4646 move-object/from16 v0, p0
4648 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4650 - if-eqz v13, :cond_dc
4651 + if-eqz v13, :cond_d9
4653 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4655 - :cond_dc
4656 + :cond_d9
4657 const/4 v13, 0x1
4659 move-object/from16 v0, p0
4660 @@ -388,18 +381,18 @@
4662 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4664 - :cond_e8
4665 + :cond_e5
4666 move-object/from16 v0, p0
4668 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4670 - if-eqz v13, :cond_100
4671 + if-eqz v13, :cond_fd
4673 move-object/from16 v0, p0
4675 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4677 - if-eqz v13, :cond_100
4678 + if-eqz v13, :cond_fd
4680 const/4 v13, 0x0
4682 @@ -413,8 +406,8 @@
4684 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4686 - :cond_100
4687 - if-eqz v4, :cond_110
4688 + :cond_fd
4689 + if-eqz v4, :cond_10d
4691 const/4 v12, 0x0
4693 @@ -432,36 +425,36 @@
4695 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4697 - :cond_110
4698 + :cond_10d
4699 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->readyToDraw()Z
4701 move-result v13
4703 - if-eqz v13, :cond_1a0
4704 + if-eqz v13, :cond_19d
4706 move-object/from16 v0, p0
4708 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4710 - if-nez v13, :cond_11f
4711 + if-nez v13, :cond_11c
4713 - if-eqz v1, :cond_16e
4714 + if-eqz v1, :cond_16b
4716 const/4 v1, 0x0
4718 - :cond_11f
4719 - :goto_11f
4720 + :cond_11c
4721 + :goto_11c
4722 move-object/from16 v0, p0
4724 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4726 - if-eqz v13, :cond_132
4727 + if-eqz v13, :cond_12f
4729 move-object/from16 v0, p0
4731 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4733 - if-nez v13, :cond_132
4734 + if-nez v13, :cond_12f
4736 const/4 v13, 0x1
4738 @@ -473,12 +466,12 @@
4740 const/4 v9, 0x1
4742 - :cond_132
4743 + :cond_12f
4744 move-object/from16 v0, p0
4746 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4748 - if-eqz v13, :cond_1a0
4749 + if-eqz v13, :cond_19d
4751 move-object/from16 v0, p0
4753 @@ -489,7 +482,7 @@
4755 move-result v13
4757 - if-eqz v13, :cond_19a
4758 + if-eqz v13, :cond_197
4760 const/4 v9, 0x1
4762 @@ -512,28 +505,28 @@
4763 #setter for: Landroid/opengl/GLSurfaceView;->mSizeChanged:Z
4764 invoke-static {v13, v15}, Landroid/opengl/GLSurfaceView;->access$1002(Landroid/opengl/GLSurfaceView;Z)Z
4766 - :goto_154
4767 + :goto_151
4768 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4770 move-result-object v13
4772 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4774 - goto/16 :goto_54
4775 + goto/16 :goto_51
4777 - :catchall_15d
4778 + :catchall_15a
4779 move-exception v13
4781 monitor-exit v14
4782 - :try_end_15f
4783 - .catchall {:try_start_5c .. :try_end_15f} :catchall_15d
4784 + :try_end_15c
4785 + .catchall {:try_start_59 .. :try_end_15c} :catchall_15a
4787 - :try_start_15f
4788 + :try_start_15c
4789 throw v13
4790 - :try_end_160
4791 - .catchall {:try_start_15f .. :try_end_160} :catchall_160
4792 + :try_end_15d
4793 + .catchall {:try_start_15c .. :try_end_15d} :catchall_15d
4795 - :catchall_160
4796 + :catchall_15d
4797 move-exception v13
4799 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4800 @@ -542,19 +535,19 @@
4802 monitor-enter v14
4804 - :try_start_166
4805 + :try_start_163
4806 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4808 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4810 monitor-exit v14
4811 - :try_end_16d
4812 - .catchall {:try_start_166 .. :try_end_16d} :catchall_212
4813 + :try_end_16a
4814 + .catchall {:try_start_163 .. :try_end_16a} :catchall_20f
4816 throw v13
4818 - :cond_16e
4819 - :try_start_16e
4820 + :cond_16b
4821 + :try_start_16b
4822 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4824 move-result-object v13
4825 @@ -562,26 +555,26 @@
4826 move-object/from16 v0, p0
4828 invoke-virtual {v13, v0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->tryAcquireEglContextLocked(Landroid/opengl/GLSurfaceView$GLThread;)Z
4829 - :try_end_177
4830 - .catchall {:try_start_16e .. :try_end_177} :catchall_15d
4831 + :try_end_174
4832 + .catchall {:try_start_16b .. :try_end_174} :catchall_15a
4834 move-result v13
4836 - if-eqz v13, :cond_11f
4837 + if-eqz v13, :cond_11c
4839 - :try_start_17a
4840 + :try_start_177
4841 move-object/from16 v0, p0
4843 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4845 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->start()V
4846 - :try_end_181
4847 - .catchall {:try_start_17a .. :try_end_181} :catchall_15d
4848 - .catch Ljava/lang/RuntimeException; {:try_start_17a .. :try_end_181} :catch_18f
4849 + :try_end_17e
4850 + .catchall {:try_start_177 .. :try_end_17e} :catchall_15a
4851 + .catch Ljava/lang/RuntimeException; {:try_start_177 .. :try_end_17e} :catch_18c
4853 const/4 v13, 0x1
4855 - :try_start_182
4856 + :try_start_17f
4857 move-object/from16 v0, p0
4859 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4860 @@ -594,9 +587,9 @@
4862 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4864 - goto :goto_11f
4865 + goto :goto_11c
4867 - :catch_18f
4868 + :catch_18c
4869 move-exception v10
4871 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4872 @@ -609,30 +602,30 @@
4874 throw v10
4876 - :cond_19a
4877 + :cond_197
4878 const/4 v13, 0x0
4880 move-object/from16 v0, p0
4882 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestRender:Z
4884 - goto :goto_154
4885 + goto :goto_151
4887 - :cond_1a0
4888 + :cond_19d
4889 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4891 move-result-object v13
4893 invoke-virtual {v13}, Ljava/lang/Object;->wait()V
4894 - :try_end_1a7
4895 - .catchall {:try_start_182 .. :try_end_1a7} :catchall_15d
4896 + :try_end_1a4
4897 + .catchall {:try_start_17f .. :try_end_1a4} :catchall_15a
4899 goto/16 :goto_26
4901 - :cond_1a9
4902 - if-eqz v3, :cond_1da
4903 + :cond_1a6
4904 + if-eqz v3, :cond_1d7
4906 - :try_start_1ab
4907 + :try_start_1a8
4908 move-object/from16 v0, p0
4910 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4911 @@ -654,10 +647,10 @@
4912 check-cast v0, Ljavax/microedition/khronos/opengles/GL10;
4914 move-object v6, v0
4915 - :try_end_1bf
4916 - .catchall {:try_start_1ab .. :try_end_1bf} :catchall_160
4917 + :try_end_1bc
4918 + .catchall {:try_start_1a8 .. :try_end_1bc} :catchall_15d
4920 - if-nez v6, :cond_1d2
4921 + if-nez v6, :cond_1cf
4923 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4925 @@ -665,7 +658,7 @@
4927 monitor-enter v14
4929 - :try_start_1c6
4930 + :try_start_1c3
4931 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4933 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4934 @@ -674,17 +667,17 @@
4936 goto/16 :goto_39
4938 - :catchall_1cf
4939 + :catchall_1cc
4940 move-exception v13
4942 monitor-exit v14
4943 - :try_end_1d1
4944 - .catchall {:try_start_1c6 .. :try_end_1d1} :catchall_1cf
4945 + :try_end_1ce
4946 + .catchall {:try_start_1c3 .. :try_end_1ce} :catchall_1cc
4948 throw v13
4950 - :cond_1d2
4951 - :try_start_1d2
4952 + :cond_1cf
4953 + :try_start_1cf
4954 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4956 move-result-object v13
4957 @@ -693,8 +686,8 @@
4959 const/4 v3, 0x0
4961 - :cond_1da
4962 - if-eqz v2, :cond_1ea
4963 + :cond_1d7
4964 + if-eqz v2, :cond_1e7
4966 move-object/from16 v0, p0
4968 @@ -710,8 +703,8 @@
4970 const/4 v2, 0x0
4972 - :cond_1ea
4973 - if-eqz v9, :cond_1fb
4974 + :cond_1e7
4975 + if-eqz v9, :cond_1f8
4977 move-object/from16 v0, p0
4979 @@ -727,7 +720,7 @@
4981 const/4 v9, 0x0
4983 - :cond_1fb
4984 + :cond_1f8
4985 move-object/from16 v0, p0
4987 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRenderer:Landroid/opengl/GLSurfaceView$Renderer;
4988 @@ -739,22 +732,32 @@
4989 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4991 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->swap()Z
4992 - :try_end_209
4993 - .catchall {:try_start_1d2 .. :try_end_209} :catchall_160
4994 + :try_end_206
4995 + .catchall {:try_start_1cf .. :try_end_206} :catchall_15d
4997 move-result v13
4999 - if-nez v13, :cond_20d
5000 + if-nez v13, :cond_20a
5002 const/4 v8, 0x1
5004 - :cond_20d
5005 + :cond_20a
5006 if-eqz v12, :cond_21
5008 const/4 v4, 0x1
5010 goto/16 :goto_21
5012 + :catchall_20f
5013 + move-exception v13
5015 + :try_start_210
5016 + monitor-exit v14
5017 + :try_end_211
5018 + .catchall {:try_start_210 .. :try_end_211} :catchall_20f
5020 + throw v13
5022 :catchall_212
5023 move-exception v13
5025 @@ -1371,39 +1374,37 @@
5026 :try_start_1a
5027 invoke-direct {p0}, Landroid/opengl/GLSurfaceView$GLThread;->guardedRun()V
5028 :try_end_1d
5029 - .catchall {:try_start_1a .. :try_end_1d} :catchall_2e
5030 - .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_25
5031 + .catchall {:try_start_1a .. :try_end_1d} :catchall_25
5032 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_2e
5034 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5036 move-result-object v0
5038 + :goto_21
5039 invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5041 - :goto_24
5042 return-void
5044 - :catch_25
5045 + :catchall_25
5046 move-exception v0
5048 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5050 - move-result-object v0
5051 + move-result-object v1
5053 - invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5054 + invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5056 - goto :goto_24
5057 + throw v0
5059 - :catchall_2e
5060 + :catch_2e
5061 move-exception v0
5063 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5065 - move-result-object v1
5067 - invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5068 + move-result-object v0
5070 - throw v0
5071 + goto :goto_21
5072 .end method
5074 .method public setRenderMode(I)V
5075 diff -Npru stock_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali pdroid_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali
5076 --- stock_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-07-02 10:16:18.452257384 -0700
5077 +++ pdroid_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-07-02 10:16:50.752950818 -0700
5078 @@ -582,14 +582,14 @@
5080 invoke-interface {v0, v1, v2, v3}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5081 :try_end_1fb
5082 - .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21d
5083 + .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21a
5084 .catch Landroid/os/RemoteException; {:try_start_1e5 .. :try_end_1fb} :catch_20d
5086 + :goto_1fb
5087 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5088 invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5090 :cond_1fe
5091 - :goto_1fe
5092 move-object/from16 v0, p1
5094 iget v0, v0, Landroid/os/StrictMode$ViolationInfo;->policy:I
5095 @@ -619,14 +619,11 @@
5097 invoke-static {v0, v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5098 :try_end_219
5099 - .catchall {:try_start_20e .. :try_end_219} :catchall_21d
5100 + .catchall {:try_start_20e .. :try_end_219} :catchall_21a
5102 - #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5103 - invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5105 - goto :goto_1fe
5106 + goto :goto_1fb
5108 - :catchall_21d
5109 + :catchall_21a
5110 move-exception v19
5112 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5113 diff -Npru stock_framework/smali/android/os/StrictMode.smali pdroid_framework/smali/android/os/StrictMode.smali
5114 --- stock_framework/smali/android/os/StrictMode.smali 2012-07-02 10:16:18.466260721 -0700
5115 +++ pdroid_framework/smali/android/os/StrictMode.smali 2012-07-02 10:16:50.774956059 -0700
5116 @@ -1686,13 +1686,13 @@
5118 invoke-interface {v0, v1, v2, v5}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5119 :try_end_d3
5120 - .catchall {:try_start_bf .. :try_end_d3} :catchall_fc
5121 + .catchall {:try_start_bf .. :try_end_d3} :catchall_f9
5122 .catch Landroid/os/RemoteException; {:try_start_bf .. :try_end_d3} :catch_ec
5124 + :goto_d3
5125 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5127 :cond_d6
5128 - :goto_d6
5129 if-eqz v10, :cond_a4
5131 sget-object v17, Ljava/lang/System;->err:Ljava/io/PrintStream;
5132 @@ -1727,13 +1727,11 @@
5134 invoke-static {v0, v1, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5135 :try_end_f8
5136 - .catchall {:try_start_ed .. :try_end_f8} :catchall_fc
5137 + .catchall {:try_start_ed .. :try_end_f8} :catchall_f9
5139 - invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5141 - goto :goto_d6
5142 + goto :goto_d3
5144 - :catchall_fc
5145 + :catchall_f9
5146 move-exception v17
5148 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5149 diff -Npru stock_framework/smali/android/privacy/IPrivacySettingsManager.smali pdroid_framework/smali/android/privacy/IPrivacySettingsManager.smali
5150 --- stock_framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 16:00:00.000000000 -0800
5151 +++ pdroid_framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-07-02 10:16:50.997008949 -0700
5152 @@ -0,0 +1,104 @@
5153 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
5154 +.super Ljava/lang/Object;
5155 +.source "IPrivacySettingsManager.java"
5157 +# interfaces
5158 +.implements Landroid/os/IInterface;
5161 +# annotations
5162 +.annotation system Ldalvik/annotation/MemberClasses;
5163 + value = {
5164 + Landroid/privacy/IPrivacySettingsManager$Stub;
5166 +.end annotation
5169 +# virtual methods
5170 +.method public abstract addObserver(Ljava/lang/String;)V
5171 + .annotation system Ldalvik/annotation/Throws;
5172 + value = {
5173 + Landroid/os/RemoteException;
5175 + .end annotation
5176 +.end method
5178 +.method public abstract deleteSettings(Ljava/lang/String;)Z
5179 + .annotation system Ldalvik/annotation/Throws;
5180 + value = {
5181 + Landroid/os/RemoteException;
5183 + .end annotation
5184 +.end method
5186 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5187 + .annotation system Ldalvik/annotation/Throws;
5188 + value = {
5189 + Landroid/os/RemoteException;
5191 + .end annotation
5192 +.end method
5194 +.method public abstract getVersion()D
5195 + .annotation system Ldalvik/annotation/Throws;
5196 + value = {
5197 + Landroid/os/RemoteException;
5199 + .end annotation
5200 +.end method
5202 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5203 + .annotation system Ldalvik/annotation/Throws;
5204 + value = {
5205 + Landroid/os/RemoteException;
5207 + .end annotation
5208 +.end method
5210 +.method public abstract purgeSettings()Z
5211 + .annotation system Ldalvik/annotation/Throws;
5212 + value = {
5213 + Landroid/os/RemoteException;
5215 + .end annotation
5216 +.end method
5218 +.method public abstract registerObservers()V
5219 + .annotation system Ldalvik/annotation/Throws;
5220 + value = {
5221 + Landroid/os/RemoteException;
5223 + .end annotation
5224 +.end method
5226 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
5227 + .annotation system Ldalvik/annotation/Throws;
5228 + value = {
5229 + Landroid/os/RemoteException;
5231 + .end annotation
5232 +.end method
5234 +.method public abstract setBootCompleted()V
5235 + .annotation system Ldalvik/annotation/Throws;
5236 + value = {
5237 + Landroid/os/RemoteException;
5239 + .end annotation
5240 +.end method
5242 +.method public abstract setEnabled(Z)Z
5243 + .annotation system Ldalvik/annotation/Throws;
5244 + value = {
5245 + Landroid/os/RemoteException;
5247 + .end annotation
5248 +.end method
5250 +.method public abstract setNotificationsEnabled(Z)Z
5251 + .annotation system Ldalvik/annotation/Throws;
5252 + value = {
5253 + Landroid/os/RemoteException;
5255 + .end annotation
5256 +.end method
5257 diff -Npru stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
5258 --- stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 16:00:00.000000000 -0800
5259 +++ pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-07-02 10:16:50.997008949 -0700
5260 @@ -0,0 +1,743 @@
5261 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5262 +.super Ljava/lang/Object;
5263 +.source "IPrivacySettingsManager.java"
5265 +# interfaces
5266 +.implements Landroid/privacy/IPrivacySettingsManager;
5269 +# annotations
5270 +.annotation system Ldalvik/annotation/EnclosingClass;
5271 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
5272 +.end annotation
5274 +.annotation system Ldalvik/annotation/InnerClass;
5275 + accessFlags = 0xa
5276 + name = "Proxy"
5277 +.end annotation
5280 +# instance fields
5281 +.field private mRemote:Landroid/os/IBinder;
5284 +# direct methods
5285 +.method constructor <init>(Landroid/os/IBinder;)V
5286 + .registers 2
5288 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5290 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5292 + return-void
5293 +.end method
5296 +# virtual methods
5297 +.method public addObserver(Ljava/lang/String;)V
5298 + .registers 7
5299 + .annotation system Ldalvik/annotation/Throws;
5300 + value = {
5301 + Landroid/os/RemoteException;
5303 + .end annotation
5305 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5307 + move-result-object v0
5309 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5311 + move-result-object v1
5313 + :try_start_8
5314 + const-string v2, "android.privacy.IPrivacySettingsManager"
5316 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5318 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5320 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5322 + const/4 v3, 0x6
5324 + const/4 v4, 0x0
5326 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5328 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5329 + :try_end_1a
5330 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
5332 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5334 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5336 + return-void
5338 + :catchall_21
5339 + move-exception v2
5341 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5343 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5345 + throw v2
5346 +.end method
5348 +.method public asBinder()Landroid/os/IBinder;
5349 + .registers 2
5351 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5353 + return-object v0
5354 +.end method
5356 +.method public deleteSettings(Ljava/lang/String;)Z
5357 + .registers 8
5358 + .annotation system Ldalvik/annotation/Throws;
5359 + value = {
5360 + Landroid/os/RemoteException;
5362 + .end annotation
5364 + const/4 v2, 0x0
5366 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5368 + move-result-object v0
5370 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5372 + move-result-object v1
5374 + :try_start_9
5375 + const-string v3, "android.privacy.IPrivacySettingsManager"
5377 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5379 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5381 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5383 + const/4 v4, 0x3
5385 + const/4 v5, 0x0
5387 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5389 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5391 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5392 + :try_end_1e
5393 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
5395 + move-result v3
5397 + if-eqz v3, :cond_22
5399 + const/4 v2, 0x1
5401 + :cond_22
5402 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5404 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5406 + return v2
5408 + :catchall_29
5409 + move-exception v3
5411 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5413 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5415 + throw v3
5416 +.end method
5418 +.method public getInterfaceDescriptor()Ljava/lang/String;
5419 + .registers 2
5421 + const-string v0, "android.privacy.IPrivacySettingsManager"
5423 + return-object v0
5424 +.end method
5426 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5427 + .registers 8
5428 + .annotation system Ldalvik/annotation/Throws;
5429 + value = {
5430 + Landroid/os/RemoteException;
5432 + .end annotation
5434 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5436 + move-result-object v0
5438 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5440 + move-result-object v1
5442 + :try_start_8
5443 + const-string v3, "android.privacy.IPrivacySettingsManager"
5445 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5447 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5449 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5451 + const/4 v4, 0x1
5453 + const/4 v5, 0x0
5455 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5457 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5459 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5461 + move-result v3
5463 + if-eqz v3, :cond_2f
5465 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
5467 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
5469 + move-result-object v2
5471 + check-cast v2, Landroid/privacy/PrivacySettings;
5472 + :try_end_28
5473 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
5475 + :goto_28
5476 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5478 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5480 + return-object v2
5482 + :cond_2f
5483 + const/4 v2, 0x0
5485 + goto :goto_28
5487 + :catchall_31
5488 + move-exception v3
5490 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5492 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5494 + throw v3
5495 +.end method
5497 +.method public getVersion()D
5498 + .registers 8
5499 + .annotation system Ldalvik/annotation/Throws;
5500 + value = {
5501 + Landroid/os/RemoteException;
5503 + .end annotation
5505 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5507 + move-result-object v0
5509 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5511 + move-result-object v1
5513 + :try_start_8
5514 + const-string v4, "android.privacy.IPrivacySettingsManager"
5516 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5518 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5520 + const/16 v5, 0x8
5522 + const/4 v6, 0x0
5524 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5526 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5528 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
5529 + :try_end_1b
5530 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
5532 + move-result-wide v2
5534 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5536 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5538 + return-wide v2
5540 + :catchall_23
5541 + move-exception v4
5543 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5545 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5547 + throw v4
5548 +.end method
5550 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5551 + .registers 10
5552 + .annotation system Ldalvik/annotation/Throws;
5553 + value = {
5554 + Landroid/os/RemoteException;
5556 + .end annotation
5558 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5560 + move-result-object v0
5562 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5564 + move-result-object v1
5566 + :try_start_8
5567 + const-string v2, "android.privacy.IPrivacySettingsManager"
5569 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5571 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5573 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
5575 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5577 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5579 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5581 + const/4 v3, 0x4
5583 + const/4 v4, 0x0
5585 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5587 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5588 + :try_end_23
5589 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
5591 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5593 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5595 + return-void
5597 + :catchall_2a
5598 + move-exception v2
5600 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5602 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5604 + throw v2
5605 +.end method
5607 +.method public purgeSettings()Z
5608 + .registers 7
5609 + .annotation system Ldalvik/annotation/Throws;
5610 + value = {
5611 + Landroid/os/RemoteException;
5613 + .end annotation
5615 + const/4 v2, 0x0
5617 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5619 + move-result-object v0
5621 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5623 + move-result-object v1
5625 + :try_start_9
5626 + const-string v3, "android.privacy.IPrivacySettingsManager"
5628 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5630 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5632 + const/4 v4, 0x7
5634 + const/4 v5, 0x0
5636 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5638 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5640 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5641 + :try_end_1b
5642 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
5644 + move-result v3
5646 + if-eqz v3, :cond_1f
5648 + const/4 v2, 0x1
5650 + :cond_1f
5651 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5653 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5655 + return v2
5657 + :catchall_26
5658 + move-exception v3
5660 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5662 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5664 + throw v3
5665 +.end method
5667 +.method public registerObservers()V
5668 + .registers 6
5669 + .annotation system Ldalvik/annotation/Throws;
5670 + value = {
5671 + Landroid/os/RemoteException;
5673 + .end annotation
5675 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5677 + move-result-object v0
5679 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5681 + move-result-object v1
5683 + :try_start_8
5684 + const-string v2, "android.privacy.IPrivacySettingsManager"
5686 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5688 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5690 + const/4 v3, 0x5
5692 + const/4 v4, 0x0
5694 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5696 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5697 + :try_end_17
5698 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
5700 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5702 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5704 + return-void
5706 + :catchall_1e
5707 + move-exception v2
5709 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5711 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5713 + throw v2
5714 +.end method
5716 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
5717 + .registers 9
5718 + .annotation system Ldalvik/annotation/Throws;
5719 + value = {
5720 + Landroid/os/RemoteException;
5722 + .end annotation
5724 + const/4 v2, 0x1
5726 + const/4 v3, 0x0
5728 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5730 + move-result-object v0
5732 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5734 + move-result-object v1
5736 + :try_start_a
5737 + const-string v4, "android.privacy.IPrivacySettingsManager"
5739 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5741 + if-eqz p1, :cond_30
5743 + const/4 v4, 0x1
5745 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5747 + const/4 v4, 0x0
5749 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
5751 + :goto_19
5752 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5754 + const/4 v5, 0x2
5756 + const/4 v6, 0x0
5758 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5760 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5762 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5763 + :try_end_26
5764 + .catchall {:try_start_a .. :try_end_26} :catchall_35
5766 + move-result v4
5768 + if-eqz v4, :cond_3d
5770 + :goto_29
5771 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5773 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5775 + return v2
5777 + :cond_30
5778 + const/4 v4, 0x0
5780 + :try_start_31
5781 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5782 + :try_end_34
5783 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
5785 + goto :goto_19
5787 + :catchall_35
5788 + move-exception v3
5790 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5792 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5794 + throw v3
5796 + :cond_3d
5797 + move v2, v3
5799 + goto :goto_29
5800 +.end method
5802 +.method public setBootCompleted()V
5803 + .registers 6
5804 + .annotation system Ldalvik/annotation/Throws;
5805 + value = {
5806 + Landroid/os/RemoteException;
5808 + .end annotation
5810 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5812 + move-result-object v0
5814 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5816 + move-result-object v1
5818 + :try_start_8
5819 + const-string v2, "android.privacy.IPrivacySettingsManager"
5821 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5823 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5825 + const/16 v3, 0xb
5827 + const/4 v4, 0x0
5829 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5831 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5832 + :try_end_18
5833 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
5835 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5837 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5839 + return-void
5841 + :catchall_1f
5842 + move-exception v2
5844 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5846 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5848 + throw v2
5849 +.end method
5851 +.method public setEnabled(Z)Z
5852 + .registers 9
5853 + .annotation system Ldalvik/annotation/Throws;
5854 + value = {
5855 + Landroid/os/RemoteException;
5857 + .end annotation
5859 + const/4 v2, 0x1
5861 + const/4 v3, 0x0
5863 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5865 + move-result-object v0
5867 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5869 + move-result-object v1
5871 + :try_start_a
5872 + const-string v4, "android.privacy.IPrivacySettingsManager"
5874 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5876 + if-eqz p1, :cond_2d
5878 + move v4, v2
5880 + :goto_12
5881 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5883 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5885 + const/16 v5, 0x9
5887 + const/4 v6, 0x0
5889 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5891 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5893 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5894 + :try_end_23
5895 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5897 + move-result v4
5899 + if-eqz v4, :cond_2f
5901 + :goto_26
5902 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5904 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5906 + return v2
5908 + :cond_2d
5909 + move v4, v3
5911 + goto :goto_12
5913 + :cond_2f
5914 + move v2, v3
5916 + goto :goto_26
5918 + :catchall_31
5919 + move-exception v3
5921 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5923 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5925 + throw v3
5926 +.end method
5928 +.method public setNotificationsEnabled(Z)Z
5929 + .registers 9
5930 + .annotation system Ldalvik/annotation/Throws;
5931 + value = {
5932 + Landroid/os/RemoteException;
5934 + .end annotation
5936 + const/4 v2, 0x1
5938 + const/4 v3, 0x0
5940 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5942 + move-result-object v0
5944 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5946 + move-result-object v1
5948 + :try_start_a
5949 + const-string v4, "android.privacy.IPrivacySettingsManager"
5951 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5953 + if-eqz p1, :cond_2d
5955 + move v4, v2
5957 + :goto_12
5958 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5960 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5962 + const/16 v5, 0xa
5964 + const/4 v6, 0x0
5966 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5968 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5970 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5971 + :try_end_23
5972 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5974 + move-result v4
5976 + if-eqz v4, :cond_2f
5978 + :goto_26
5979 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5981 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5983 + return v2
5985 + :cond_2d
5986 + move v4, v3
5988 + goto :goto_12
5990 + :cond_2f
5991 + move v2, v3
5993 + goto :goto_26
5995 + :catchall_31
5996 + move-exception v3
5998 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6000 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6002 + throw v3
6003 +.end method
6004 diff -Npru stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
6005 --- stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 16:00:00.000000000 -0800
6006 +++ pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-07-02 10:16:50.998009187 -0700
6007 @@ -0,0 +1,412 @@
6008 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
6009 +.super Landroid/os/Binder;
6010 +.source "IPrivacySettingsManager.java"
6012 +# interfaces
6013 +.implements Landroid/privacy/IPrivacySettingsManager;
6016 +# annotations
6017 +.annotation system Ldalvik/annotation/EnclosingClass;
6018 + value = Landroid/privacy/IPrivacySettingsManager;
6019 +.end annotation
6021 +.annotation system Ldalvik/annotation/InnerClass;
6022 + accessFlags = 0x409
6023 + name = "Stub"
6024 +.end annotation
6026 +.annotation system Ldalvik/annotation/MemberClasses;
6027 + value = {
6028 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6030 +.end annotation
6033 +# static fields
6034 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
6036 +.field static final TRANSACTION_addObserver:I = 0x6
6038 +.field static final TRANSACTION_deleteSettings:I = 0x3
6040 +.field static final TRANSACTION_getSettings:I = 0x1
6042 +.field static final TRANSACTION_getVersion:I = 0x8
6044 +.field static final TRANSACTION_notification:I = 0x4
6046 +.field static final TRANSACTION_purgeSettings:I = 0x7
6048 +.field static final TRANSACTION_registerObservers:I = 0x5
6050 +.field static final TRANSACTION_saveSettings:I = 0x2
6052 +.field static final TRANSACTION_setBootCompleted:I = 0xb
6054 +.field static final TRANSACTION_setEnabled:I = 0x9
6056 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
6059 +# direct methods
6060 +.method public constructor <init>()V
6061 + .registers 2
6063 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
6065 + const-string v0, "android.privacy.IPrivacySettingsManager"
6067 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
6069 + return-void
6070 +.end method
6072 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
6073 + .registers 3
6075 + if-nez p0, :cond_4
6077 + const/4 v0, 0x0
6079 + :goto_3
6080 + return-object v0
6082 + :cond_4
6083 + const-string v1, "android.privacy.IPrivacySettingsManager"
6085 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
6087 + move-result-object v0
6089 + if-eqz v0, :cond_13
6091 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
6093 + if-eqz v1, :cond_13
6095 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
6097 + goto :goto_3
6099 + :cond_13
6100 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6102 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
6104 + goto :goto_3
6105 +.end method
6108 +# virtual methods
6109 +.method public asBinder()Landroid/os/IBinder;
6110 + .registers 1
6112 + return-object p0
6113 +.end method
6115 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6116 + .registers 14
6117 + .annotation system Ldalvik/annotation/Throws;
6118 + value = {
6119 + Landroid/os/RemoteException;
6121 + .end annotation
6123 + const/4 v6, 0x0
6125 + const/4 v7, 0x1
6127 + sparse-switch p1, :sswitch_data_10e
6129 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6131 + move-result v7
6133 + :goto_9
6134 + return v7
6136 + :sswitch_a
6137 + const-string v6, "android.privacy.IPrivacySettingsManager"
6139 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
6141 + goto :goto_9
6143 + :sswitch_10
6144 + const-string v8, "android.privacy.IPrivacySettingsManager"
6146 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6148 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6150 + move-result-object v0
6152 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6154 + move-result-object v4
6156 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6158 + if-eqz v4, :cond_29
6160 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
6162 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6164 + goto :goto_9
6166 + :cond_29
6167 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6169 + goto :goto_9
6171 + :sswitch_2d
6172 + const-string v8, "android.privacy.IPrivacySettingsManager"
6174 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6176 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6178 + move-result v8
6180 + if-eqz v8, :cond_4e
6182 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
6184 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
6186 + move-result-object v0
6188 + check-cast v0, Landroid/privacy/PrivacySettings;
6190 + :goto_40
6191 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
6193 + move-result v4
6195 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6197 + if-eqz v4, :cond_4a
6199 + move v6, v7
6201 + :cond_4a
6202 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6204 + goto :goto_9
6206 + :cond_4e
6207 + const/4 v0, 0x0
6209 + goto :goto_40
6211 + :sswitch_50
6212 + const-string v8, "android.privacy.IPrivacySettingsManager"
6214 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6216 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6218 + move-result-object v0
6220 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
6222 + move-result v4
6224 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6226 + if-eqz v4, :cond_63
6228 + move v6, v7
6230 + :cond_63
6231 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6233 + goto :goto_9
6235 + :sswitch_67
6236 + const-string v6, "android.privacy.IPrivacySettingsManager"
6238 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6240 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6242 + move-result-object v0
6244 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
6246 + move-result v1
6248 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6250 + move-result-object v2
6252 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6254 + move-result-object v3
6256 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6258 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6260 + goto :goto_9
6262 + :sswitch_83
6263 + const-string v6, "android.privacy.IPrivacySettingsManager"
6265 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6267 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
6269 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6271 + goto/16 :goto_9
6273 + :sswitch_90
6274 + const-string v6, "android.privacy.IPrivacySettingsManager"
6276 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6278 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6280 + move-result-object v0
6282 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
6284 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6286 + goto/16 :goto_9
6288 + :sswitch_a1
6289 + const-string v8, "android.privacy.IPrivacySettingsManager"
6291 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6293 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
6295 + move-result v4
6297 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6299 + if-eqz v4, :cond_b0
6301 + move v6, v7
6303 + :cond_b0
6304 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6306 + goto/16 :goto_9
6308 + :sswitch_b5
6309 + const-string v6, "android.privacy.IPrivacySettingsManager"
6311 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6313 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
6315 + move-result-wide v4
6317 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6319 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
6321 + goto/16 :goto_9
6323 + :sswitch_c6
6324 + const-string v8, "android.privacy.IPrivacySettingsManager"
6326 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6328 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6330 + move-result v8
6332 + if-eqz v8, :cond_e1
6334 + move v0, v7
6336 + :goto_d2
6337 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
6339 + move-result v4
6341 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6343 + if-eqz v4, :cond_dc
6345 + move v6, v7
6347 + :cond_dc
6348 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6350 + goto/16 :goto_9
6352 + :cond_e1
6353 + move v0, v6
6355 + goto :goto_d2
6357 + :sswitch_e3
6358 + const-string v8, "android.privacy.IPrivacySettingsManager"
6360 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6362 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6364 + move-result v8
6366 + if-eqz v8, :cond_fe
6368 + move v0, v7
6370 + :goto_ef
6371 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
6373 + move-result v4
6375 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6377 + if-eqz v4, :cond_f9
6379 + move v6, v7
6381 + :cond_f9
6382 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6384 + goto/16 :goto_9
6386 + :cond_fe
6387 + move v0, v6
6389 + goto :goto_ef
6391 + :sswitch_100
6392 + const-string v6, "android.privacy.IPrivacySettingsManager"
6394 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6396 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
6398 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6400 + goto/16 :goto_9
6402 + nop
6404 + :sswitch_data_10e
6405 + .sparse-switch
6406 + 0x1 -> :sswitch_10
6407 + 0x2 -> :sswitch_2d
6408 + 0x3 -> :sswitch_50
6409 + 0x4 -> :sswitch_67
6410 + 0x5 -> :sswitch_83
6411 + 0x6 -> :sswitch_90
6412 + 0x7 -> :sswitch_a1
6413 + 0x8 -> :sswitch_b5
6414 + 0x9 -> :sswitch_c6
6415 + 0xa -> :sswitch_e3
6416 + 0xb -> :sswitch_100
6417 + 0x5f4e5446 -> :sswitch_a
6418 + .end sparse-switch
6419 +.end method
6420 diff -Npru stock_framework/smali/android/privacy/PrivacyFileObserver.smali pdroid_framework/smali/android/privacy/PrivacyFileObserver.smali
6421 --- stock_framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 16:00:00.000000000 -0800
6422 +++ pdroid_framework/smali/android/privacy/PrivacyFileObserver.smali 2012-07-02 10:16:50.998009187 -0700
6423 @@ -0,0 +1,217 @@
6424 +.class public Landroid/privacy/PrivacyFileObserver;
6425 +.super Landroid/os/FileObserver;
6426 +.source "PrivacyFileObserver.java"
6429 +# static fields
6430 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
6432 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
6435 +# instance fields
6436 +.field public absolutePath:Ljava/lang/String;
6438 +.field public children:Ljava/util/HashMap;
6439 + .annotation system Ldalvik/annotation/Signature;
6440 + value = {
6441 + "Ljava/util/HashMap",
6442 + "<",
6443 + "Ljava/lang/String;",
6444 + "Landroid/privacy/PrivacyFileObserver;",
6445 + ">;"
6447 + .end annotation
6448 +.end field
6450 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6453 +# direct methods
6454 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6455 + .registers 12
6457 + const/16 v8, 0xfff
6459 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
6461 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6463 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6465 + new-instance v8, Ljava/util/HashMap;
6467 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
6469 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6471 + new-instance v7, Ljava/io/File;
6473 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6475 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6477 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
6479 + move-result v8
6481 + if-eqz v8, :cond_42
6483 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
6485 + move-result-object v6
6487 + move-object v0, v6
6489 + array-length v4, v0
6491 + const/4 v3, 0x0
6493 + :goto_24
6494 + if-ge v3, v4, :cond_42
6496 + aget-object v2, v0, v3
6498 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6500 + move-result-object v5
6502 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
6504 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6506 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6508 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6510 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
6512 + move-result v8
6514 + if-eqz v8, :cond_3f
6516 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
6518 + :cond_3f
6519 + add-int/lit8 v3, v3, 0x1
6521 + goto :goto_24
6523 + :cond_42
6524 + return-void
6525 +.end method
6528 +# virtual methods
6529 +.method public addObserver(Ljava/lang/String;)V
6530 + .registers 6
6532 + new-instance v2, Ljava/lang/StringBuilder;
6534 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
6536 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6538 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6540 + move-result-object v2
6542 + const-string v3, "/"
6544 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6546 + move-result-object v2
6548 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6550 + move-result-object v2
6552 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6554 + move-result-object v1
6556 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6558 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
6560 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
6562 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6564 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6566 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6568 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6570 + return-void
6571 +.end method
6573 +.method public onEvent(ILjava/lang/String;)V
6574 + .registers 11
6576 + and-int/lit8 v4, p1, 0x1
6578 + if-eqz v4, :cond_34
6580 + new-instance v3, Ljava/util/StringTokenizer;
6582 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6584 + const-string v5, "/"
6586 + invoke-direct {v3, v4, v5}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
6588 + const/4 v0, 0x0
6590 + :goto_e
6591 + const/4 v4, 0x3
6593 + if-ge v0, v4, :cond_1d
6595 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->hasMoreElements()Z
6597 + move-result v4
6599 + if-eqz v4, :cond_1d
6601 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6603 + add-int/lit8 v0, v0, 0x1
6605 + goto :goto_e
6607 + :cond_1d
6608 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6610 + move-result-object v2
6612 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6614 + invoke-virtual {v4, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6616 + move-result-object v1
6618 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6620 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
6622 + move-result v5
6624 + const-string/jumbo v6, "systemLogs"
6626 + const/4 v7, 0x0
6628 + invoke-virtual {v4, v2, v5, v6, v7}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6630 + :cond_34
6631 + return-void
6632 +.end method
6634 +.method public startWatching()V
6635 + .registers 1
6637 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
6639 + return-void
6640 +.end method
6641 diff -Npru stock_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali pdroid_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
6642 --- stock_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 16:00:00.000000000 -0800
6643 +++ pdroid_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-07-02 10:16:51.024015381 -0700
6644 @@ -0,0 +1,4581 @@
6645 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
6646 +.super Ljava/lang/Object;
6647 +.source "PrivacyPersistenceAdapter.java"
6650 +# static fields
6651 +.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) );"
6653 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6655 +.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);"
6657 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
6659 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
6661 +.field private static final DATABASE_VERSION:I = 0x3
6663 +.field public static final DUMMY_UID:I = -0x1
6665 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6667 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6669 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6671 +.field private static final RETRY_QUERY_COUNT:I = 0x5
6673 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
6675 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
6677 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
6679 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
6681 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
6683 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
6685 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
6687 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
6689 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
6691 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
6693 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
6695 +.field public static readingThreads:Ljava/lang/Integer;
6698 +# instance fields
6699 +.field private context:Landroid/content/Context;
6701 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
6704 +# direct methods
6705 +.method static constructor <clinit>()V
6706 + .registers 3
6708 + const/4 v2, 0x0
6710 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
6712 + move-result-object v0
6714 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
6716 + const/16 v0, 0x23
6718 + new-array v0, v0, [Ljava/lang/String;
6720 + const-string v1, "_id"
6722 + aput-object v1, v0, v2
6724 + const/4 v1, 0x1
6726 + const-string/jumbo v2, "packageName"
6728 + aput-object v2, v0, v1
6730 + const/4 v1, 0x2
6732 + const-string/jumbo v2, "uid"
6734 + aput-object v2, v0, v1
6736 + const/4 v1, 0x3
6738 + const-string v2, "deviceIdSetting"
6740 + aput-object v2, v0, v1
6742 + const/4 v1, 0x4
6744 + const-string v2, "deviceId"
6746 + aput-object v2, v0, v1
6748 + const/4 v1, 0x5
6750 + const-string v2, "line1NumberSetting"
6752 + aput-object v2, v0, v1
6754 + const/4 v1, 0x6
6756 + const-string v2, "line1Number"
6758 + aput-object v2, v0, v1
6760 + const/4 v1, 0x7
6762 + const-string v2, "locationGpsSetting"
6764 + aput-object v2, v0, v1
6766 + const/16 v1, 0x8
6768 + const-string v2, "locationGpsLat"
6770 + aput-object v2, v0, v1
6772 + const/16 v1, 0x9
6774 + const-string v2, "locationGpsLon"
6776 + aput-object v2, v0, v1
6778 + const/16 v1, 0xa
6780 + const-string v2, "locationNetworkSetting"
6782 + aput-object v2, v0, v1
6784 + const/16 v1, 0xb
6786 + const-string v2, "locationNetworkLat"
6788 + aput-object v2, v0, v1
6790 + const/16 v1, 0xc
6792 + const-string v2, "locationNetworkLon"
6794 + aput-object v2, v0, v1
6796 + const/16 v1, 0xd
6798 + const-string/jumbo v2, "networkInfoSetting"
6800 + aput-object v2, v0, v1
6802 + const/16 v1, 0xe
6804 + const-string/jumbo v2, "simInfoSetting"
6806 + aput-object v2, v0, v1
6808 + const/16 v1, 0xf
6810 + const-string/jumbo v2, "simSerialNumberSetting"
6812 + aput-object v2, v0, v1
6814 + const/16 v1, 0x10
6816 + const-string/jumbo v2, "simSerialNumber"
6818 + aput-object v2, v0, v1
6820 + const/16 v1, 0x11
6822 + const-string/jumbo v2, "subscriberIdSetting"
6824 + aput-object v2, v0, v1
6826 + const/16 v1, 0x12
6828 + const-string/jumbo v2, "subscriberId"
6830 + aput-object v2, v0, v1
6832 + const/16 v1, 0x13
6834 + const-string v2, "accountsSetting"
6836 + aput-object v2, v0, v1
6838 + const/16 v1, 0x14
6840 + const-string v2, "accountsAuthTokensSetting"
6842 + aput-object v2, v0, v1
6844 + const/16 v1, 0x15
6846 + const-string/jumbo v2, "outgoingCallsSetting"
6848 + aput-object v2, v0, v1
6850 + const/16 v1, 0x16
6852 + const-string v2, "incomingCallsSetting"
6854 + aput-object v2, v0, v1
6856 + const/16 v1, 0x17
6858 + const-string v2, "contactsSetting"
6860 + aput-object v2, v0, v1
6862 + const/16 v1, 0x18
6864 + const-string v2, "calendarSetting"
6866 + aput-object v2, v0, v1
6868 + const/16 v1, 0x19
6870 + const-string/jumbo v2, "mmsSetting"
6872 + aput-object v2, v0, v1
6874 + const/16 v1, 0x1a
6876 + const-string/jumbo v2, "smsSetting"
6878 + aput-object v2, v0, v1
6880 + const/16 v1, 0x1b
6882 + const-string v2, "callLogSetting"
6884 + aput-object v2, v0, v1
6886 + const/16 v1, 0x1c
6888 + const-string v2, "bookmarksSetting"
6890 + aput-object v2, v0, v1
6892 + const/16 v1, 0x1d
6894 + const-string/jumbo v2, "systemLogsSetting"
6896 + aput-object v2, v0, v1
6898 + const/16 v1, 0x1e
6900 + const-string v2, "externalStorageSetting"
6902 + aput-object v2, v0, v1
6904 + const/16 v1, 0x1f
6906 + const-string v2, "cameraSetting"
6908 + aput-object v2, v0, v1
6910 + const/16 v1, 0x20
6912 + const-string/jumbo v2, "recordAudioSetting"
6914 + aput-object v2, v0, v1
6916 + const/16 v1, 0x21
6918 + const-string/jumbo v2, "notificationSetting"
6920 + aput-object v2, v0, v1
6922 + const/16 v1, 0x22
6924 + const-string v2, "intentBootCompletedSetting"
6926 + aput-object v2, v0, v1
6928 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
6930 + return-void
6931 +.end method
6933 +.method public constructor <init>(Landroid/content/Context;)V
6934 + .registers 6
6936 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
6938 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
6940 + new-instance v2, Ljava/io/File;
6942 + const-string v3, "/data/system/"
6944 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6946 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
6948 + move-result v0
6950 + if-eqz v0, :cond_3c
6952 + new-instance v2, Ljava/io/File;
6954 + const-string v3, "/data/system/privacy.db"
6956 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6958 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6960 + move-result v2
6962 + if-nez v2, :cond_22
6964 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
6966 + :cond_22
6967 + new-instance v2, Ljava/io/File;
6969 + const-string v3, "/data/system/privacy"
6971 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6973 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6975 + move-result v2
6977 + if-nez v2, :cond_32
6979 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
6981 + :cond_32
6982 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
6984 + move-result v1
6986 + const/4 v2, 0x3
6988 + if-ge v1, v2, :cond_3c
6990 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
6992 + :cond_3c
6993 + return-void
6994 +.end method
6996 +.method private declared-synchronized createDatabase()V
6997 + .registers 6
6999 + monitor-enter p0
7001 + :try_start_1
7002 + const-string v2, "PrivacyPersistenceAdapter"
7004 + const-string v3, "createDatabase - creating privacy database file"
7006 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7007 + :try_end_8
7008 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
7010 + :try_start_8
7011 + const-string v2, "/data/system/privacy.db"
7013 + const/4 v3, 0x0
7015 + const/high16 v4, 0x1000
7017 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7019 + move-result-object v0
7021 + const-string v2, "PrivacyPersistenceAdapter"
7023 + const-string v3, "createDatabase - creating privacy database"
7025 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7027 + 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);"
7029 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7031 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7033 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7035 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7037 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7039 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7041 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7043 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7045 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7047 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7049 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7051 + if-eqz v0, :cond_41
7053 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7055 + move-result v2
7057 + if-eqz v2, :cond_41
7059 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7060 + :try_end_41
7061 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
7062 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
7064 + :cond_41
7065 + :goto_41
7066 + monitor-exit p0
7068 + return-void
7070 + :catch_43
7071 + move-exception v1
7073 + :try_start_44
7074 + const-string v2, "PrivacyPersistenceAdapter"
7076 + const-string v3, "createDatabase - failed to create privacy database"
7078 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7079 + :try_end_4b
7080 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
7082 + goto :goto_41
7084 + :catchall_4c
7085 + move-exception v2
7087 + monitor-exit p0
7089 + throw v2
7090 +.end method
7092 +.method private declared-synchronized createSettingsDir()V
7093 + .registers 4
7095 + monitor-enter p0
7097 + :try_start_1
7098 + new-instance v0, Ljava/io/File;
7100 + const-string v1, "/data/system/privacy/"
7102 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7104 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
7106 + const/4 v1, 0x1
7108 + const/4 v2, 0x0
7110 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
7112 + const/4 v1, 0x1
7114 + const/4 v2, 0x0
7116 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
7117 + :try_end_15
7118 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
7120 + monitor-exit p0
7122 + return-void
7124 + :catchall_17
7125 + move-exception v1
7127 + monitor-exit p0
7129 + throw v1
7130 +.end method
7132 +.method private deleteRecursive(Ljava/io/File;)V
7133 + .registers 7
7135 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
7137 + move-result v4
7139 + if-eqz v4, :cond_16
7141 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
7143 + move-result-object v0
7145 + array-length v3, v0
7147 + const/4 v2, 0x0
7149 + :goto_c
7150 + if-ge v2, v3, :cond_16
7152 + aget-object v1, v0, v2
7154 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7156 + add-int/lit8 v2, v2, 0x1
7158 + goto :goto_c
7160 + :cond_16
7161 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
7163 + return-void
7164 +.end method
7166 +.method private getDbVersion()I
7167 + .registers 9
7169 + const/4 v4, 0x1
7171 + const/4 v3, -0x1
7173 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7175 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7177 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7179 + move-result v6
7181 + add-int/lit8 v6, v6, 0x1
7183 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7185 + move-result-object v6
7187 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7189 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7191 + move-result-object v1
7193 + :try_start_16
7194 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
7196 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7198 + move-result-object v0
7200 + if-eqz v0, :cond_5e
7202 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
7204 + move-result v6
7206 + if-nez v6, :cond_25
7208 + const/4 v3, 0x1
7210 + :cond_25
7211 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7213 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7215 + monitor-enter v7
7216 + :try_end_2b
7217 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
7219 + :try_start_2b
7220 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7222 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7224 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7226 + move-result v6
7228 + add-int/lit8 v6, v6, -0x1
7230 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7232 + move-result-object v6
7234 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7236 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7238 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7240 + move-result v6
7242 + if-nez v6, :cond_4e
7244 + if-eqz v1, :cond_4e
7246 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7248 + move-result v6
7250 + if-eqz v6, :cond_4e
7252 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7254 + :cond_4e
7255 + monitor-exit v7
7257 + :goto_4f
7258 + if-ne v3, v4, :cond_66
7260 + :goto_51
7261 + return v3
7263 + :catchall_52
7264 + move-exception v6
7266 + monitor-exit v7
7267 + :try_end_54
7268 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
7270 + :try_start_54
7271 + throw v6
7272 + :try_end_55
7273 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
7275 + :catch_55
7276 + move-exception v2
7278 + const-string v6, "PrivacyPersistenceAdapter"
7280 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
7282 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7284 + goto :goto_4f
7286 + :cond_5e
7287 + :try_start_5e
7288 + const-string v6, "PrivacyPersistenceAdapter"
7290 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
7292 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7293 + :try_end_65
7294 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
7296 + goto :goto_4f
7298 + :cond_66
7299 + const-string v6, "db_version"
7301 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
7303 + move-result-object v5
7305 + if-nez v5, :cond_70
7307 + move v3, v4
7309 + goto :goto_51
7311 + :cond_70
7312 + :try_start_70
7313 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7314 + :try_end_73
7315 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
7317 + move-result v4
7319 + move v3, v4
7321 + goto :goto_51
7323 + :catch_76
7324 + move-exception v2
7326 + const-string v6, "PrivacyPersistenceAdapter"
7328 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
7330 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7332 + move v3, v4
7334 + goto :goto_51
7335 +.end method
7337 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7338 + .registers 4
7340 + monitor-enter p0
7342 + :try_start_1
7343 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7345 + if-eqz v0, :cond_11
7347 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7349 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7351 + move-result v0
7353 + if-eqz v0, :cond_11
7355 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7356 + :try_end_f
7357 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
7359 + :goto_f
7360 + monitor-exit p0
7362 + return-object v0
7364 + :cond_11
7365 + :try_start_11
7366 + const-string v0, "/data/system/privacy.db"
7368 + const/4 v1, 0x0
7370 + const/4 v2, 0x1
7372 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7374 + move-result-object v0
7376 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7378 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7379 + :try_end_1d
7380 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
7382 + goto :goto_f
7384 + :catchall_1e
7385 + move-exception v0
7387 + monitor-exit p0
7389 + throw v0
7390 +.end method
7392 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7393 + .registers 4
7395 + monitor-enter p0
7397 + :try_start_1
7398 + new-instance v0, Ljava/io/File;
7400 + const-string v1, "/data/system/privacy.db"
7402 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7404 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
7406 + move-result v0
7408 + if-nez v0, :cond_11
7410 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7412 + :cond_11
7413 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7415 + if-eqz v0, :cond_29
7417 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7419 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7421 + move-result v0
7423 + if-eqz v0, :cond_29
7425 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7427 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
7429 + move-result v0
7431 + if-nez v0, :cond_29
7433 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7434 + :try_end_27
7435 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
7437 + :goto_27
7438 + monitor-exit p0
7440 + return-object v0
7442 + :cond_29
7443 + :try_start_29
7444 + const-string v0, "/data/system/privacy.db"
7446 + const/4 v1, 0x0
7448 + const/4 v2, 0x0
7450 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7452 + move-result-object v0
7454 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7456 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7457 + :try_end_35
7458 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
7460 + goto :goto_27
7462 + :catchall_36
7463 + move-exception v0
7465 + monitor-exit p0
7467 + throw v0
7468 +.end method
7470 +.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;
7471 + .registers 16
7472 + .annotation system Ldalvik/annotation/Throws;
7473 + value = {
7474 + Ljava/lang/Exception;
7476 + .end annotation
7478 + const/4 v0, 0x0
7480 + const/4 v3, 0x0
7482 + const/4 v2, 0x0
7484 + :goto_3
7485 + if-nez v3, :cond_27
7487 + const/4 v4, 0x5
7489 + if-ge v2, v4, :cond_27
7491 + if-eqz v0, :cond_d
7493 + :try_start_a
7494 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7496 + :cond_d
7497 + 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;
7498 + :try_end_10
7499 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
7501 + move-result-object v0
7503 + const/4 v3, 0x1
7505 + :goto_12
7506 + add-int/lit8 v2, v2, 0x1
7508 + goto :goto_3
7510 + :catch_15
7511 + move-exception v1
7513 + const/4 v3, 0x0
7515 + if-eqz p1, :cond_22
7517 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7519 + move-result v4
7521 + if-eqz v4, :cond_22
7523 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7525 + :cond_22
7526 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7528 + move-result-object p1
7530 + goto :goto_12
7532 + :cond_27
7533 + if-nez v3, :cond_32
7535 + new-instance v4, Ljava/lang/Exception;
7537 + const-string/jumbo v5, "query - failed to execute query on the DB"
7539 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7541 + throw v4
7543 + :cond_32
7544 + return-object v0
7545 +.end method
7547 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7548 + .registers 9
7549 + .annotation system Ldalvik/annotation/Throws;
7550 + value = {
7551 + Ljava/lang/Exception;
7553 + .end annotation
7555 + const/4 v0, 0x0
7557 + const/4 v3, 0x0
7559 + const/4 v2, 0x0
7561 + :goto_3
7562 + if-nez v3, :cond_28
7564 + const/4 v4, 0x5
7566 + if-ge v2, v4, :cond_28
7568 + if-eqz v0, :cond_d
7570 + :try_start_a
7571 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7573 + :cond_d
7574 + const/4 v4, 0x0
7576 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
7577 + :try_end_11
7578 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
7580 + move-result-object v0
7582 + const/4 v3, 0x1
7584 + :goto_13
7585 + add-int/lit8 v2, v2, 0x1
7587 + goto :goto_3
7589 + :catch_16
7590 + move-exception v1
7592 + const/4 v3, 0x0
7594 + if-eqz p1, :cond_23
7596 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7598 + move-result v4
7600 + if-eqz v4, :cond_23
7602 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7604 + :cond_23
7605 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7607 + move-result-object p1
7609 + goto :goto_13
7611 + :cond_28
7612 + if-nez v3, :cond_33
7614 + new-instance v4, Ljava/lang/Exception;
7616 + const-string/jumbo v5, "query - failed to execute query on the DB"
7618 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7620 + throw v4
7622 + :cond_33
7623 + return-object v0
7624 +.end method
7626 +.method private declared-synchronized upgradeDatabase(I)V
7627 + .registers 23
7629 + monitor-enter p0
7631 + :try_start_1
7632 + const-string v17, "PrivacyPersistenceAdapter"
7634 + new-instance v18, Ljava/lang/StringBuilder;
7636 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
7638 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
7640 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7642 + move-result-object v18
7644 + move-object/from16 v0, v18
7646 + move/from16 v1, p1
7648 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7650 + move-result-object v18
7652 + const-string v19, " to "
7654 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7656 + move-result-object v18
7658 + const/16 v19, 0x3
7660 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7662 + move-result-object v18
7664 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7666 + move-result-object v18
7668 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7670 + new-instance v6, Ljava/io/File;
7672 + const-string v17, "/data/system/privacy.db"
7674 + move-object/from16 v0, v17
7676 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7678 + new-instance v5, Ljava/io/File;
7680 + const-string v17, "/data/system/privacy.db.bak"
7682 + move-object/from16 v0, v17
7684 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7685 + :try_end_3c
7686 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
7688 + :try_start_3c
7689 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7690 + :try_end_3f
7691 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
7692 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
7694 + :goto_3f
7695 + :try_start_3f
7696 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7698 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
7700 + move-result-wide v17
7702 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
7704 + move-result-wide v19
7706 + sub-long v17, v17, v19
7708 + const-wide/16 v19, 0x7d0
7710 + cmp-long v17, v17, v19
7712 + if-lez v17, :cond_69
7714 + const-string v17, "PrivacyPersistenceAdapter"
7716 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
7718 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7719 + :try_end_5a
7720 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
7722 + :goto_5a
7723 + monitor-exit p0
7725 + return-void
7727 + :catch_5c
7728 + move-exception v7
7730 + :try_start_5d
7731 + const-string v17, "PrivacyPersistenceAdapter"
7733 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
7735 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7736 + :try_end_65
7737 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
7739 + goto :goto_3f
7741 + :catchall_66
7742 + move-exception v17
7744 + monitor-exit p0
7746 + throw v17
7748 + :cond_69
7749 + :try_start_69
7750 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7752 + move-result-object v4
7754 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
7756 + packed-switch p1, :pswitch_data_164
7758 + :cond_73
7759 + :goto_73
7760 + if-eqz v4, :cond_159
7762 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7764 + move-result v17
7766 + if-eqz v17, :cond_159
7768 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7770 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7772 + :goto_81
7773 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
7774 + :try_end_84
7775 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
7777 + goto :goto_5a
7779 + :pswitch_85
7780 + if-eqz v4, :cond_73
7782 + :try_start_87
7783 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7785 + move-result v17
7787 + if-eqz v17, :cond_73
7789 + const-string v17, "DROP TABLE IF EXISTS version;"
7791 + move-object/from16 v0, v17
7793 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7795 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7797 + move-object/from16 v0, v17
7799 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7801 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7803 + move-object/from16 v0, v17
7805 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7807 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7809 + move-object/from16 v0, v17
7811 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7813 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
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 (\"notifications_enabled\", \"1\");"
7821 + move-object/from16 v0, v17
7823 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7825 + new-instance v14, Ljava/io/File;
7827 + const-string v17, "/data/system/privacy"
7829 + move-object/from16 v0, v17
7831 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7833 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
7835 + move-result-object v2
7837 + array-length v10, v2
7839 + const/4 v8, 0x0
7841 + move v9, v8
7843 + :goto_c7
7844 + if-ge v9, v10, :cond_127
7846 + aget-object v13, v2, v9
7848 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
7850 + move-result-object v3
7852 + array-length v11, v3
7854 + const/4 v8, 0x0
7856 + :goto_d1
7857 + if-ge v8, v11, :cond_123
7859 + aget-object v16, v3, v8
7861 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
7863 + move-result v17
7865 + if-eqz v17, :cond_120
7867 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
7869 + move-result-object v15
7871 + const/16 v17, 0x0
7873 + aget-object v17, v15, v17
7875 + if-eqz v17, :cond_120
7877 + new-instance v12, Ljava/io/File;
7879 + new-instance v17, Ljava/lang/StringBuilder;
7881 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7883 + move-object/from16 v0, v17
7885 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7887 + move-result-object v17
7889 + const-string v18, "/"
7891 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7893 + move-result-object v17
7895 + const/16 v18, 0x0
7897 + aget-object v18, v15, v18
7899 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
7901 + move-result-object v18
7903 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7905 + move-result-object v17
7907 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7909 + move-result-object v17
7911 + move-object/from16 v0, v17
7913 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7915 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
7917 + const/16 v17, 0x0
7919 + aget-object v17, v15, v17
7921 + move-object/from16 v0, v17
7923 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
7925 + move-object/from16 v0, p0
7927 + move-object/from16 v1, v16
7929 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7931 + :cond_120
7932 + add-int/lit8 v8, v8, 0x1
7934 + goto :goto_d1
7936 + :cond_123
7937 + add-int/lit8 v8, v9, 0x1
7939 + move v9, v8
7941 + goto :goto_c7
7943 + :cond_127
7944 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
7945 + :try_end_12a
7946 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
7947 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
7949 + goto/16 :goto_73
7951 + :catch_12c
7952 + move-exception v7
7954 + if-eqz v4, :cond_13b
7956 + :try_start_12f
7957 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7959 + move-result v17
7961 + if-eqz v17, :cond_13b
7963 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7965 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7967 + :cond_13b
7968 + const-string v17, "PrivacyPersistenceAdapter"
7970 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
7972 + move-object/from16 v0, v17
7974 + move-object/from16 v1, v18
7976 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7978 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7980 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7982 + goto/16 :goto_73
7984 + :pswitch_14f
7985 + const-string v17, "PrivacyPersistenceAdapter"
7987 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
7989 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7991 + goto/16 :goto_73
7993 + :cond_159
7994 + const-string v17, "PrivacyPersistenceAdapter"
7996 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
7998 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7999 + :try_end_161
8000 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
8002 + goto/16 :goto_81
8004 + nop
8006 + :pswitch_data_164
8007 + .packed-switch 0x1
8008 + :pswitch_85
8009 + :pswitch_85
8010 + :pswitch_14f
8011 + .end packed-switch
8012 +.end method
8015 +# virtual methods
8016 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
8017 + .registers 16
8019 + monitor-enter p0
8021 + const/4 v11, 0x1
8023 + :try_start_2
8024 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8026 + move-result-object v0
8028 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
8029 + :try_end_9
8030 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
8032 + :try_start_9
8033 + const-string/jumbo v1, "settings"
8035 + const/4 v2, 0x1
8037 + new-array v2, v2, [Ljava/lang/String;
8039 + const/4 v3, 0x0
8041 + const-string v4, "_id"
8043 + aput-object v4, v2, v3
8045 + const-string/jumbo v3, "packageName=?"
8047 + const/4 v4, 0x1
8049 + new-array v4, v4, [Ljava/lang/String;
8051 + const/4 v5, 0x0
8053 + aput-object p1, v4, v5
8055 + const/4 v5, 0x0
8057 + const/4 v6, 0x0
8059 + const/4 v7, 0x0
8061 + 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;
8063 + move-result-object v8
8065 + if-eqz v8, :cond_4c
8067 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
8069 + move-result v1
8071 + if-lez v1, :cond_4c
8073 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
8075 + move-result v1
8077 + if-eqz v1, :cond_4c
8079 + const/4 v1, 0x0
8081 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
8083 + move-result v10
8085 + const-string v1, "allowed_contacts"
8087 + const-string/jumbo v2, "settings_id=?"
8089 + const/4 v3, 0x1
8091 + new-array v3, v3, [Ljava/lang/String;
8093 + const/4 v4, 0x0
8095 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8097 + move-result-object v5
8099 + aput-object v5, v3, v4
8101 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8103 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
8105 + :cond_4c
8106 + const-string/jumbo v1, "settings"
8108 + const-string/jumbo v2, "packageName=?"
8110 + const/4 v3, 0x1
8112 + new-array v3, v3, [Ljava/lang/String;
8114 + const/4 v4, 0x0
8116 + aput-object p1, v3, v4
8118 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8120 + move-result v1
8122 + if-nez v1, :cond_8d
8124 + const-string v1, "PrivacyPersistenceAdapter"
8126 + new-instance v2, Ljava/lang/StringBuilder;
8128 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
8130 + const-string v3, "deleteSettings - database entry for "
8132 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8134 + move-result-object v2
8136 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8138 + move-result-object v2
8140 + const-string v3, " not found"
8142 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8144 + move-result-object v2
8146 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8148 + move-result-object v2
8150 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8151 + :try_end_7c
8152 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
8153 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
8155 + const/4 v1, 0x0
8157 + :try_start_7d
8158 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8160 + if-eqz v0, :cond_8b
8162 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8164 + move-result v2
8166 + if-eqz v2, :cond_8b
8168 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8169 + :try_end_8b
8170 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
8172 + :cond_8b
8173 + :goto_8b
8174 + monitor-exit p0
8176 + return v1
8178 + :cond_8d
8179 + :try_start_8d
8180 + new-instance v12, Ljava/io/File;
8182 + new-instance v1, Ljava/lang/StringBuilder;
8184 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8186 + const-string v2, "/data/system/privacy/"
8188 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8190 + move-result-object v1
8192 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8194 + move-result-object v1
8196 + const-string v2, "/"
8198 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8200 + move-result-object v1
8202 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8204 + move-result-object v1
8206 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8208 + new-instance v13, Ljava/io/File;
8210 + new-instance v1, Ljava/lang/StringBuilder;
8212 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8214 + const-string v2, "/data/system/privacy/"
8216 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8218 + move-result-object v1
8220 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8222 + move-result-object v1
8224 + const-string v2, "/systemLogsSetting"
8226 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8228 + move-result-object v1
8230 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8232 + move-result-object v1
8234 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8236 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
8238 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8240 + move-result-object v1
8242 + if-eqz v1, :cond_d9
8244 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8246 + move-result-object v1
8248 + array-length v1, v1
8250 + if-nez v1, :cond_dc
8252 + :cond_d9
8253 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8255 + :cond_dc
8256 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8257 + :try_end_df
8258 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
8259 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
8261 + :try_start_df
8262 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8264 + if-eqz v0, :cond_ed
8266 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8268 + move-result v1
8270 + if-eqz v1, :cond_ed
8272 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8273 + :try_end_ed
8274 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
8276 + :cond_ed
8277 + :goto_ed
8278 + move v1, v11
8280 + goto :goto_8b
8282 + :catch_ef
8283 + move-exception v9
8285 + const/4 v11, 0x0
8287 + :try_start_f1
8288 + const-string v1, "PrivacyPersistenceAdapter"
8290 + const-string v2, "deleteSettings - could not delete settings"
8292 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8293 + :try_end_f8
8294 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
8296 + :try_start_f8
8297 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8299 + if-eqz v0, :cond_ed
8301 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8303 + move-result v1
8305 + if-eqz v1, :cond_ed
8307 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8308 + :try_end_106
8309 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
8311 + goto :goto_ed
8313 + :catchall_107
8314 + move-exception v1
8316 + monitor-exit p0
8318 + throw v1
8320 + :catchall_10a
8321 + move-exception v1
8323 + :try_start_10b
8324 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8326 + if-eqz v0, :cond_119
8328 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8330 + move-result v2
8332 + if-eqz v2, :cond_119
8334 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8336 + :cond_119
8337 + throw v1
8338 + :try_end_11a
8339 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
8340 +.end method
8342 +.method public getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
8343 + .registers 47
8345 + const/16 v43, 0x0
8347 + if-nez p1, :cond_e
8349 + const-string v1, "PrivacyPersistenceAdapter"
8351 + const-string v4, "getSettings - insufficient application identifier - package name is required"
8353 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8355 + move-object/from16 v3, v43
8357 + :goto_d
8358 + return-object v43
8360 + :cond_e
8361 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8363 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8365 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8367 + move-result v1
8369 + add-int/lit8 v1, v1, 0x1
8371 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8373 + move-result-object v1
8375 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8377 + :try_start_1e
8378 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8379 + :try_end_21
8380 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_1e .. :try_end_21} :catch_243
8382 + move-result-object v2
8384 + const/16 v41, 0x0
8386 + :try_start_24
8387 + const-string/jumbo v3, "settings"
8389 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
8391 + const-string/jumbo v5, "packageName=?"
8393 + const/4 v1, 0x1
8395 + new-array v6, v1, [Ljava/lang/String;
8397 + const/4 v1, 0x0
8399 + aput-object p1, v6, v1
8401 + const/4 v7, 0x0
8403 + const/4 v8, 0x0
8405 + const/4 v9, 0x0
8407 + const/4 v10, 0x0
8409 + move-object/from16 v1, p0
8411 + 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;
8413 + move-result-object v41
8415 + if-eqz v41, :cond_2d3
8417 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToFirst()Z
8419 + move-result v1
8421 + if-eqz v1, :cond_2d3
8423 + new-instance v3, Landroid/privacy/PrivacySettings;
8425 + const/4 v1, 0x0
8427 + move-object/from16 v0, v41
8429 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8431 + move-result v1
8433 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8435 + move-result-object v4
8437 + const/4 v1, 0x1
8439 + move-object/from16 v0, v41
8441 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8443 + move-result-object v5
8445 + const/4 v1, 0x2
8447 + move-object/from16 v0, v41
8449 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8451 + move-result v6
8453 + const/4 v1, 0x3
8455 + move-object/from16 v0, v41
8457 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8459 + move-result v1
8461 + int-to-byte v7, v1
8463 + const/4 v1, 0x4
8465 + move-object/from16 v0, v41
8467 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8469 + move-result-object v8
8471 + const/4 v1, 0x5
8473 + move-object/from16 v0, v41
8475 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8477 + move-result v1
8479 + int-to-byte v9, v1
8481 + const/4 v1, 0x6
8483 + move-object/from16 v0, v41
8485 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8487 + move-result-object v10
8489 + const/4 v1, 0x7
8491 + move-object/from16 v0, v41
8493 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8495 + move-result v1
8497 + int-to-byte v11, v1
8499 + const/16 v1, 0x8
8501 + move-object/from16 v0, v41
8503 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8505 + move-result-object v12
8507 + const/16 v1, 0x9
8509 + move-object/from16 v0, v41
8511 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8513 + move-result-object v13
8515 + const/16 v1, 0xa
8517 + move-object/from16 v0, v41
8519 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8521 + move-result v1
8523 + int-to-byte v14, v1
8525 + const/16 v1, 0xb
8527 + move-object/from16 v0, v41
8529 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8531 + move-result-object v15
8533 + const/16 v1, 0xc
8535 + move-object/from16 v0, v41
8537 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8539 + move-result-object v16
8541 + const/16 v1, 0xd
8543 + move-object/from16 v0, v41
8545 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8547 + move-result v1
8549 + int-to-byte v0, v1
8551 + move/from16 v17, v0
8553 + const/16 v1, 0xe
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 v18, v0
8565 + const/16 v1, 0xf
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 v19, v0
8577 + const/16 v1, 0x10
8579 + move-object/from16 v0, v41
8581 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8583 + move-result-object v20
8585 + const/16 v1, 0x11
8587 + move-object/from16 v0, v41
8589 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8591 + move-result v1
8593 + int-to-byte v0, v1
8595 + move/from16 v21, v0
8597 + const/16 v1, 0x12
8599 + move-object/from16 v0, v41
8601 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8603 + move-result-object v22
8605 + const/16 v1, 0x13
8607 + move-object/from16 v0, v41
8609 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8611 + move-result v1
8613 + int-to-byte v0, v1
8615 + move/from16 v23, v0
8617 + const/16 v1, 0x14
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 v24, v0
8629 + const/16 v1, 0x15
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 v25, v0
8641 + const/16 v1, 0x16
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 v26, v0
8653 + const/16 v1, 0x17
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 v27, v0
8665 + const/16 v1, 0x18
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 v28, v0
8677 + const/16 v1, 0x19
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 v29, v0
8689 + const/16 v1, 0x1a
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 v30, v0
8701 + const/16 v1, 0x1b
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 v31, v0
8713 + const/16 v1, 0x1c
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 v32, v0
8725 + const/16 v1, 0x1d
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 v33, v0
8737 + const/16 v1, 0x1e
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 v34, v0
8749 + const/16 v1, 0x1f
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 v35, v0
8761 + const/16 v1, 0x20
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 v36, v0
8773 + const/16 v1, 0x21
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 v37, v0
8785 + const/16 v1, 0x22
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 v38, v0
8797 + const/16 v39, 0x0
8799 + 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
8800 + :try_end_19f
8801 + .catchall {:try_start_24 .. :try_end_19f} :catchall_299
8802 + .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_19f} :catch_2ce
8804 + :try_start_19f
8805 + new-instance v1, Ljava/lang/StringBuilder;
8807 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8809 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
8811 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8813 + move-result-object v1
8815 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
8817 + move-result-object v4
8819 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
8821 + move-result v4
8823 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8825 + move-result-object v4
8827 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8829 + move-result-object v1
8831 + const-string v4, ";"
8833 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8835 + move-result-object v1
8837 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8839 + move-result-object v1
8841 + move-object/from16 v0, p0
8843 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
8845 + move-result-object v41
8847 + if-eqz v41, :cond_266
8849 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8851 + move-result v1
8853 + if-lez v1, :cond_266
8855 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8857 + move-result v1
8859 + new-array v0, v1, [I
8861 + move-object/from16 v40, v0
8863 + :goto_1da
8864 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToNext()Z
8866 + move-result v1
8868 + if-eqz v1, :cond_261
8870 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getPosition()I
8872 + move-result v1
8874 + const/4 v4, 0x1
8876 + move-object/from16 v0, v41
8878 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
8880 + move-result v4
8882 + aput v4, v40, v1
8883 + :try_end_1ed
8884 + .catchall {:try_start_19f .. :try_end_1ed} :catchall_2cc
8885 + .catch Ljava/lang/Exception; {:try_start_19f .. :try_end_1ed} :catch_1ee
8887 + goto :goto_1da
8889 + :catch_1ee
8890 + move-exception v42
8892 + :goto_1ef
8893 + :try_start_1ef
8894 + const-string v1, "PrivacyPersistenceAdapter"
8896 + new-instance v4, Ljava/lang/StringBuilder;
8898 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
8900 + const-string v5, "getSettings - failed to get settings for package: "
8902 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8904 + move-result-object v4
8906 + move-object/from16 v0, p1
8908 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8910 + move-result-object v4
8912 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8914 + move-result-object v4
8916 + move-object/from16 v0, v42
8918 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8920 + invoke-virtual/range {v42 .. v42}, Ljava/lang/Exception;->printStackTrace()V
8922 + if-eqz v41, :cond_213
8924 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8925 + :try_end_213
8926 + .catchall {:try_start_1ef .. :try_end_213} :catchall_2cc
8928 + :cond_213
8929 + if-eqz v41, :cond_218
8931 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8933 + :cond_218
8934 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8936 + monitor-enter v4
8938 + :try_start_21b
8939 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8941 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8943 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8945 + move-result v1
8947 + add-int/lit8 v1, v1, -0x1
8949 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8951 + move-result-object v1
8953 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8955 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8957 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8959 + move-result v1
8961 + if-nez v1, :cond_23e
8963 + if-eqz v2, :cond_23e
8965 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8967 + move-result v1
8969 + if-eqz v1, :cond_23e
8971 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8973 + :cond_23e
8974 + monitor-exit v4
8975 + :try_end_23f
8976 + .catchall {:try_start_21b .. :try_end_23f} :catchall_296
8978 + :goto_23f
8979 + move-object/from16 v43, v3
8981 + goto/16 :goto_d
8983 + :catch_243
8984 + move-exception v42
8986 + const-string v1, "PrivacyPersistenceAdapter"
8988 + const-string v4, "getSettings - database could not be opened"
8990 + move-object/from16 v0, v42
8992 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8994 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8996 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8998 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9000 + move-result v1
9002 + add-int/lit8 v1, v1, -0x1
9004 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9006 + move-result-object v1
9008 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9010 + move-object/from16 v3, v43
9012 + goto/16 :goto_d
9014 + :cond_261
9015 + :try_start_261
9016 + move-object/from16 v0, v40
9018 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
9019 + :try_end_266
9020 + .catchall {:try_start_261 .. :try_end_266} :catchall_2cc
9021 + .catch Ljava/lang/Exception; {:try_start_261 .. :try_end_266} :catch_1ee
9023 + :cond_266
9024 + :goto_266
9025 + if-eqz v41, :cond_26b
9027 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9029 + :cond_26b
9030 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9032 + monitor-enter v4
9034 + :try_start_26e
9035 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9037 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9039 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9041 + move-result v1
9043 + add-int/lit8 v1, v1, -0x1
9045 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9047 + move-result-object v1
9049 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9051 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9053 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9055 + move-result v1
9057 + if-nez v1, :cond_291
9059 + if-eqz v2, :cond_291
9061 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9063 + move-result v1
9065 + if-eqz v1, :cond_291
9067 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9069 + :cond_291
9070 + monitor-exit v4
9072 + goto :goto_23f
9074 + :catchall_293
9075 + move-exception v1
9077 + monitor-exit v4
9078 + :try_end_295
9079 + .catchall {:try_start_26e .. :try_end_295} :catchall_293
9081 + throw v1
9083 + :catchall_296
9084 + move-exception v1
9086 + :try_start_297
9087 + monitor-exit v4
9088 + :try_end_298
9089 + .catchall {:try_start_297 .. :try_end_298} :catchall_296
9091 + throw v1
9093 + :catchall_299
9094 + move-exception v1
9096 + move-object/from16 v3, v43
9098 + :goto_29c
9099 + if-eqz v41, :cond_2a1
9101 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9103 + :cond_2a1
9104 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9106 + monitor-enter v4
9108 + :try_start_2a4
9109 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9111 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9113 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9115 + move-result v5
9117 + add-int/lit8 v5, v5, -0x1
9119 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9121 + move-result-object v5
9123 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9125 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9127 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9129 + move-result v5
9131 + if-nez v5, :cond_2c7
9133 + if-eqz v2, :cond_2c7
9135 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9137 + move-result v5
9139 + if-eqz v5, :cond_2c7
9141 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9143 + :cond_2c7
9144 + monitor-exit v4
9145 + :try_end_2c8
9146 + .catchall {:try_start_2a4 .. :try_end_2c8} :catchall_2c9
9148 + throw v1
9150 + :catchall_2c9
9151 + move-exception v1
9153 + :try_start_2ca
9154 + monitor-exit v4
9155 + :try_end_2cb
9156 + .catchall {:try_start_2ca .. :try_end_2cb} :catchall_2c9
9158 + throw v1
9160 + :catchall_2cc
9161 + move-exception v1
9163 + goto :goto_29c
9165 + :catch_2ce
9166 + move-exception v42
9168 + move-object/from16 v3, v43
9170 + goto/16 :goto_1ef
9172 + :cond_2d3
9173 + move-object/from16 v3, v43
9175 + goto :goto_266
9176 +.end method
9178 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
9179 + .registers 15
9181 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9183 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9185 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9187 + move-result v0
9189 + add-int/lit8 v0, v0, 0x1
9191 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9193 + move-result-object v0
9195 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9197 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9199 + move-result-object v1
9201 + const/4 v12, 0x0
9203 + :try_start_15
9204 + const-string/jumbo v2, "map"
9206 + const/4 v0, 0x1
9208 + new-array v3, v0, [Ljava/lang/String;
9210 + const/4 v0, 0x0
9212 + const-string/jumbo v4, "value"
9214 + aput-object v4, v3, v0
9216 + const-string/jumbo v4, "name=?"
9218 + const/4 v0, 0x1
9220 + new-array v5, v0, [Ljava/lang/String;
9222 + const/4 v0, 0x0
9224 + aput-object p1, v5, v0
9226 + const/4 v6, 0x0
9228 + const/4 v7, 0x0
9230 + const/4 v8, 0x0
9232 + const/4 v9, 0x0
9234 + move-object v0, p0
9236 + 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;
9238 + move-result-object v10
9240 + if-eqz v10, :cond_77
9242 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
9244 + move-result v0
9246 + if-lez v0, :cond_77
9248 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
9250 + move-result v0
9252 + if-eqz v0, :cond_77
9254 + const-string/jumbo v0, "value"
9256 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
9258 + move-result v0
9260 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9262 + move-result-object v12
9264 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
9265 + :try_end_4f
9266 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
9268 + :goto_4f
9269 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9271 + monitor-enter v2
9273 + :try_start_52
9274 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9276 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9278 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9280 + move-result v0
9282 + add-int/lit8 v0, v0, -0x1
9284 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9286 + move-result-object v0
9288 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9290 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9292 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9294 + move-result v0
9296 + if-nez v0, :cond_75
9298 + if-eqz v1, :cond_75
9300 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9302 + move-result v0
9304 + if-eqz v0, :cond_75
9306 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9308 + :cond_75
9309 + monitor-exit v2
9310 + :try_end_76
9311 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
9313 + return-object v12
9315 + :cond_77
9316 + :try_start_77
9317 + const-string v0, "PrivacyPersistenceAdapter"
9319 + new-instance v2, Ljava/lang/StringBuilder;
9321 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9323 + const-string v3, "getValue - could not get value for name: "
9325 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9327 + move-result-object v2
9329 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9331 + move-result-object v2
9333 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9335 + move-result-object v2
9337 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
9338 + :try_end_8f
9339 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
9341 + goto :goto_4f
9343 + :catch_90
9344 + move-exception v11
9346 + const-string v0, "PrivacyPersistenceAdapter"
9348 + new-instance v2, Ljava/lang/StringBuilder;
9350 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9352 + const-string v3, "getValue - could not get value for name: "
9354 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9356 + move-result-object v2
9358 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9360 + move-result-object v2
9362 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9364 + move-result-object v2
9366 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9368 + goto :goto_4f
9370 + :catchall_aa
9371 + move-exception v0
9373 + :try_start_ab
9374 + monitor-exit v2
9375 + :try_end_ac
9376 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
9378 + throw v0
9379 +.end method
9381 +.method public purgeSettings()Z
9382 + .registers 28
9384 + const/16 v25, 0x1
9386 + new-instance v13, Ljava/util/ArrayList;
9388 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
9390 + move-object/from16 v0, p0
9392 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
9394 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
9396 + move-result-object v21
9398 + const/16 v2, 0x80
9400 + move-object/from16 v0, v21
9402 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
9404 + move-result-object v19
9406 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
9408 + move-result-object v18
9410 + :goto_1b
9411 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
9413 + move-result v2
9415 + if-eqz v2, :cond_2d
9417 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
9419 + move-result-object v12
9421 + check-cast v12, Landroid/content/pm/ApplicationInfo;
9423 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
9425 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9427 + goto :goto_1b
9429 + :cond_2d
9430 + new-instance v26, Ljava/io/File;
9432 + const-string v2, "/data/system/privacy"
9434 + move-object/from16 v0, v26
9436 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9438 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
9440 + move-result-object v15
9442 + array-length v0, v15
9444 + move/from16 v20, v0
9446 + const/16 v18, 0x0
9448 + :goto_3f
9449 + move/from16 v0, v18
9451 + move/from16 v1, v20
9453 + if-ge v0, v1, :cond_5d
9455 + aget-object v23, v15, v18
9457 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
9459 + move-result-object v24
9461 + move-object/from16 v0, v24
9463 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9465 + move-result v2
9467 + if-nez v2, :cond_5a
9469 + move-object/from16 v0, p0
9471 + move-object/from16 v1, v23
9473 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
9475 + :cond_5a
9476 + add-int/lit8 v18, v18, 0x1
9478 + goto :goto_3f
9480 + :cond_5d
9481 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9483 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9485 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9487 + move-result v2
9489 + add-int/lit8 v2, v2, 0x1
9491 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9493 + move-result-object v2
9495 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9497 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9499 + move-result-object v3
9501 + const/16 v16, 0x0
9503 + :try_start_73
9504 + const-string/jumbo v4, "settings"
9506 + const/4 v2, 0x1
9508 + new-array v5, v2, [Ljava/lang/String;
9510 + const/4 v2, 0x0
9512 + const-string/jumbo v6, "packageName"
9514 + aput-object v6, v5, v2
9516 + const/4 v6, 0x0
9518 + const/4 v7, 0x0
9520 + const/4 v8, 0x0
9522 + const/4 v9, 0x0
9524 + const/4 v10, 0x0
9526 + const/4 v11, 0x0
9528 + move-object/from16 v2, p0
9530 + 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;
9532 + move-result-object v16
9534 + new-instance v14, Ljava/util/ArrayList;
9536 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
9538 + :goto_90
9539 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
9541 + move-result v2
9543 + if-eqz v2, :cond_142
9545 + const/4 v2, 0x0
9547 + move-object/from16 v0, v16
9549 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9551 + move-result-object v24
9553 + move-object/from16 v0, v24
9555 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9557 + move-result v2
9559 + if-nez v2, :cond_e7
9561 + move-object/from16 v0, p0
9563 + move-object/from16 v1, v24
9565 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9566 + :try_end_ac
9567 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
9568 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
9570 + goto :goto_90
9572 + :catch_ad
9573 + move-exception v17
9575 + :try_start_ae
9576 + const-string v2, "PrivacyPersistenceAdapter"
9578 + const-string/jumbo v4, "purgeSettings - purging DB failed"
9580 + move-object/from16 v0, v17
9582 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9583 + :try_end_b8
9584 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
9586 + const/16 v25, 0x0
9588 + if-eqz v16, :cond_bf
9590 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9592 + :cond_bf
9593 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9595 + monitor-enter v4
9597 + :try_start_c2
9598 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9600 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9602 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9604 + move-result v2
9606 + add-int/lit8 v2, v2, -0x1
9608 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9610 + move-result-object v2
9612 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9614 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9616 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9618 + move-result v2
9620 + if-nez v2, :cond_e5
9622 + if-eqz v3, :cond_e5
9624 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9626 + move-result v2
9628 + if-eqz v2, :cond_e5
9630 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9632 + :cond_e5
9633 + monitor-exit v4
9634 + :try_end_e6
9635 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
9637 + :goto_e6
9638 + return v25
9640 + :cond_e7
9641 + :try_start_e7
9642 + move-object/from16 v0, v24
9644 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9646 + move-result v2
9648 + if-eqz v2, :cond_135
9650 + const/4 v2, 0x0
9652 + move-object/from16 v0, p0
9654 + move-object/from16 v1, v24
9656 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
9658 + move-result-object v22
9660 + move-object/from16 v0, p0
9662 + move-object/from16 v1, v24
9664 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9666 + move-object/from16 v0, p0
9668 + move-object/from16 v1, v22
9670 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9671 + :try_end_106
9672 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
9673 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
9675 + goto :goto_90
9677 + :catchall_107
9678 + move-exception v2
9680 + if-eqz v16, :cond_10d
9682 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9684 + :cond_10d
9685 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9687 + monitor-enter v4
9689 + :try_start_110
9690 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9692 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9694 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9696 + move-result v5
9698 + add-int/lit8 v5, v5, -0x1
9700 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9702 + move-result-object v5
9704 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9706 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9708 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9710 + move-result v5
9712 + if-nez v5, :cond_133
9714 + if-eqz v3, :cond_133
9716 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9718 + move-result v5
9720 + if-eqz v5, :cond_133
9722 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9724 + :cond_133
9725 + monitor-exit v4
9726 + :try_end_134
9727 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
9729 + throw v2
9731 + :cond_135
9732 + :try_start_135
9733 + move-object/from16 v0, v24
9735 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9736 + :try_end_13a
9737 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
9738 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
9740 + goto/16 :goto_90
9742 + :catchall_13c
9743 + move-exception v2
9745 + :try_start_13d
9746 + monitor-exit v4
9747 + :try_end_13e
9748 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
9750 + throw v2
9752 + :catchall_13f
9753 + move-exception v2
9755 + :try_start_140
9756 + monitor-exit v4
9757 + :try_end_141
9758 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
9760 + throw v2
9762 + :cond_142
9763 + if-eqz v16, :cond_147
9765 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9767 + :cond_147
9768 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9770 + monitor-enter v4
9772 + :try_start_14a
9773 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9775 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9777 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9779 + move-result v2
9781 + add-int/lit8 v2, v2, -0x1
9783 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9785 + move-result-object v2
9787 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9789 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9791 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9793 + move-result v2
9795 + if-nez v2, :cond_16d
9797 + if-eqz v3, :cond_16d
9799 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9801 + move-result v2
9803 + if-eqz v2, :cond_16d
9805 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9807 + :cond_16d
9808 + monitor-exit v4
9810 + goto/16 :goto_e6
9812 + :catchall_170
9813 + move-exception v2
9815 + monitor-exit v4
9816 + :try_end_172
9817 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
9819 + throw v2
9820 +.end method
9822 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
9823 + .registers 27
9825 + monitor-enter p0
9827 + const/16 v18, 0x1
9829 + :try_start_3
9830 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
9832 + move-result-object v17
9834 + if-eqz v17, :cond_f
9836 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->isEmpty()Z
9838 + move-result v3
9840 + if-eqz v3, :cond_1a
9842 + :cond_f
9843 + const-string v3, "PrivacyPersistenceAdapter"
9845 + const-string/jumbo v4, "saveSettings - either package name, UID or both is missing"
9847 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
9848 + :try_end_17
9849 + .catchall {:try_start_3 .. :try_end_17} :catchall_2c2
9851 + const/4 v3, 0x0
9853 + :goto_18
9854 + monitor-exit p0
9856 + return v3
9858 + :cond_1a
9859 + :try_start_1a
9860 + new-instance v23, Landroid/content/ContentValues;
9862 + invoke-direct/range {v23 .. v23}, Landroid/content/ContentValues;-><init>()V
9864 + const-string/jumbo v3, "packageName"
9866 + move-object/from16 v0, v23
9868 + move-object/from16 v1, v17
9870 + invoke-virtual {v0, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9872 + const-string/jumbo v3, "uid"
9874 + const/4 v4, -0x1
9876 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9878 + move-result-object v4
9880 + move-object/from16 v0, v23
9882 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
9884 + const-string v3, "deviceIdSetting"
9886 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
9888 + move-result v4
9890 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9892 + move-result-object v4
9894 + move-object/from16 v0, v23
9896 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9898 + const-string v3, "deviceId"
9900 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
9902 + move-result-object v4
9904 + move-object/from16 v0, v23
9906 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9908 + const-string v3, "line1NumberSetting"
9910 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
9912 + move-result v4
9914 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9916 + move-result-object v4
9918 + move-object/from16 v0, v23
9920 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9922 + const-string v3, "line1Number"
9924 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
9926 + move-result-object v4
9928 + move-object/from16 v0, v23
9930 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9932 + const-string v3, "locationGpsSetting"
9934 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
9936 + move-result v4
9938 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9940 + move-result-object v4
9942 + move-object/from16 v0, v23
9944 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9946 + const-string v3, "locationGpsLat"
9948 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
9950 + move-result-object v4
9952 + move-object/from16 v0, v23
9954 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9956 + const-string v3, "locationGpsLon"
9958 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
9960 + move-result-object v4
9962 + move-object/from16 v0, v23
9964 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9966 + const-string v3, "locationNetworkSetting"
9968 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
9970 + move-result v4
9972 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9974 + move-result-object v4
9976 + move-object/from16 v0, v23
9978 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9980 + const-string v3, "locationNetworkLat"
9982 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
9984 + move-result-object v4
9986 + move-object/from16 v0, v23
9988 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9990 + const-string v3, "locationNetworkLon"
9992 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
9994 + move-result-object v4
9996 + move-object/from16 v0, v23
9998 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10000 + const-string/jumbo v3, "networkInfoSetting"
10002 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
10004 + move-result v4
10006 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10008 + move-result-object v4
10010 + move-object/from16 v0, v23
10012 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10014 + const-string/jumbo v3, "simInfoSetting"
10016 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
10018 + move-result v4
10020 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10022 + move-result-object v4
10024 + move-object/from16 v0, v23
10026 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10028 + const-string/jumbo v3, "simSerialNumberSetting"
10030 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
10032 + move-result v4
10034 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10036 + move-result-object v4
10038 + move-object/from16 v0, v23
10040 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10042 + const-string/jumbo v3, "simSerialNumber"
10044 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
10046 + move-result-object v4
10048 + move-object/from16 v0, v23
10050 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10052 + const-string/jumbo v3, "subscriberIdSetting"
10054 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
10056 + move-result v4
10058 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10060 + move-result-object v4
10062 + move-object/from16 v0, v23
10064 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10066 + const-string/jumbo v3, "subscriberId"
10068 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
10070 + move-result-object v4
10072 + move-object/from16 v0, v23
10074 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10076 + const-string v3, "accountsSetting"
10078 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
10080 + move-result v4
10082 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10084 + move-result-object v4
10086 + move-object/from16 v0, v23
10088 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10090 + const-string v3, "accountsAuthTokensSetting"
10092 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
10094 + move-result v4
10096 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10098 + move-result-object v4
10100 + move-object/from16 v0, v23
10102 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10104 + const-string/jumbo v3, "outgoingCallsSetting"
10106 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
10108 + move-result v4
10110 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10112 + move-result-object v4
10114 + move-object/from16 v0, v23
10116 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10118 + const-string v3, "incomingCallsSetting"
10120 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
10122 + move-result v4
10124 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10126 + move-result-object v4
10128 + move-object/from16 v0, v23
10130 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10132 + const-string v3, "contactsSetting"
10134 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
10136 + move-result v4
10138 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10140 + move-result-object v4
10142 + move-object/from16 v0, v23
10144 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10146 + const-string v3, "calendarSetting"
10148 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
10150 + move-result v4
10152 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10154 + move-result-object v4
10156 + move-object/from16 v0, v23
10158 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10160 + const-string/jumbo v3, "mmsSetting"
10162 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
10164 + move-result v4
10166 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10168 + move-result-object v4
10170 + move-object/from16 v0, v23
10172 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10174 + const-string/jumbo v3, "smsSetting"
10176 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
10178 + move-result v4
10180 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10182 + move-result-object v4
10184 + move-object/from16 v0, v23
10186 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10188 + const-string v3, "callLogSetting"
10190 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
10192 + move-result v4
10194 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10196 + move-result-object v4
10198 + move-object/from16 v0, v23
10200 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10202 + const-string v3, "bookmarksSetting"
10204 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
10206 + move-result v4
10208 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10210 + move-result-object v4
10212 + move-object/from16 v0, v23
10214 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10216 + const-string/jumbo v3, "systemLogsSetting"
10218 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10220 + move-result v4
10222 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10224 + move-result-object v4
10226 + move-object/from16 v0, v23
10228 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10230 + const-string/jumbo v3, "notificationSetting"
10232 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
10234 + move-result v4
10236 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10238 + move-result-object v4
10240 + move-object/from16 v0, v23
10242 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10244 + const-string v3, "intentBootCompletedSetting"
10246 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
10248 + move-result v4
10250 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10252 + move-result-object v4
10254 + move-object/from16 v0, v23
10256 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10258 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10260 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10262 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10264 + move-result v3
10266 + add-int/lit8 v3, v3, 0x1
10268 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10270 + move-result-object v3
10272 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10274 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10276 + move-result-object v2
10278 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
10279 + :try_end_1eb
10280 + .catchall {:try_start_1a .. :try_end_1eb} :catchall_2c2
10282 + const/4 v11, 0x0
10284 + :try_start_1ec
10285 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
10287 + move-result-object v15
10289 + if-eqz v15, :cond_2c8
10291 + const-string/jumbo v3, "settings"
10293 + const-string v4, "_id=?"
10295 + const/4 v5, 0x1
10297 + new-array v5, v5, [Ljava/lang/String;
10299 + const/4 v6, 0x0
10301 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10303 + move-result-object v7
10305 + aput-object v7, v5, v6
10307 + move-object/from16 v0, v23
10309 + 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
10311 + move-result v3
10313 + const/4 v4, 0x1
10315 + if-ge v3, v4, :cond_249
10317 + new-instance v3, Ljava/lang/Exception;
10319 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10321 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10323 + throw v3
10324 + :try_end_213
10325 + .catchall {:try_start_1ec .. :try_end_213} :catchall_291
10326 + .catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_213} :catch_213
10328 + :catch_213
10329 + move-exception v13
10331 + const/16 v18, 0x0
10333 + :try_start_216
10334 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10336 + if-eqz v11, :cond_21e
10338 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10340 + :cond_21e
10341 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10343 + monitor-enter v4
10344 + :try_end_221
10345 + .catchall {:try_start_216 .. :try_end_221} :catchall_2c2
10347 + :try_start_221
10348 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10350 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10352 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10354 + move-result v3
10356 + add-int/lit8 v3, v3, -0x1
10358 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10360 + move-result-object v3
10362 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10364 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10366 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10368 + move-result v3
10370 + if-nez v3, :cond_244
10372 + if-eqz v2, :cond_244
10374 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10376 + move-result v3
10378 + if-eqz v3, :cond_244
10380 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10382 + :cond_244
10383 + monitor-exit v4
10384 + :try_end_245
10385 + .catchall {:try_start_221 .. :try_end_245} :catchall_4ca
10387 + :goto_245
10388 + move/from16 v3, v18
10390 + goto/16 :goto_18
10392 + :cond_249
10393 + :try_start_249
10394 + const-string v3, "allowed_contacts"
10396 + const-string/jumbo v4, "settings_id=?"
10398 + const/4 v5, 0x1
10400 + new-array v5, v5, [Ljava/lang/String;
10402 + const/4 v6, 0x0
10404 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10406 + move-result-object v7
10408 + aput-object v7, v5, v6
10410 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10412 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10414 + move-result-object v10
10416 + if-eqz v10, :cond_3f2
10418 + new-instance v12, Landroid/content/ContentValues;
10420 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10422 + const/4 v14, 0x0
10424 + :goto_267
10425 + array-length v3, v10
10427 + if-ge v14, v3, :cond_3f2
10429 + const-string/jumbo v3, "settings_id"
10431 + invoke-virtual {v12, v3, v15}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10433 + const-string v3, "contact_id"
10435 + aget v4, v10, v14
10437 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10439 + move-result-object v4
10441 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10443 + const-string v3, "allowed_contacts"
10445 + const/4 v4, 0x0
10447 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10449 + move-result-wide v3
10451 + const-wide/16 v5, -0x1
10453 + cmp-long v3, v3, v5
10455 + if-nez v3, :cond_2c5
10457 + new-instance v3, Ljava/lang/Exception;
10459 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10461 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10463 + throw v3
10464 + :try_end_291
10465 + .catchall {:try_start_249 .. :try_end_291} :catchall_291
10466 + .catch Ljava/lang/Exception; {:try_start_249 .. :try_end_291} :catch_213
10468 + :catchall_291
10469 + move-exception v3
10471 + :try_start_292
10472 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10474 + if-eqz v11, :cond_29a
10476 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10478 + :cond_29a
10479 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10481 + monitor-enter v4
10482 + :try_end_29d
10483 + .catchall {:try_start_292 .. :try_end_29d} :catchall_2c2
10485 + :try_start_29d
10486 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10488 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10490 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10492 + move-result v5
10494 + add-int/lit8 v5, v5, -0x1
10496 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10498 + move-result-object v5
10500 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10502 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10504 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10506 + move-result v5
10508 + if-nez v5, :cond_2c0
10510 + if-eqz v2, :cond_2c0
10512 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10514 + move-result v5
10516 + if-eqz v5, :cond_2c0
10518 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10520 + :cond_2c0
10521 + monitor-exit v4
10522 + :try_end_2c1
10523 + .catchall {:try_start_29d .. :try_end_2c1} :catchall_4cd
10525 + :try_start_2c1
10526 + throw v3
10527 + :try_end_2c2
10528 + .catchall {:try_start_2c1 .. :try_end_2c2} :catchall_2c2
10530 + :catchall_2c2
10531 + move-exception v3
10533 + monitor-exit p0
10535 + throw v3
10537 + :cond_2c5
10538 + add-int/lit8 v14, v14, 0x1
10540 + goto :goto_267
10542 + :cond_2c8
10543 + :try_start_2c8
10544 + const-string/jumbo v3, "settings"
10546 + const/4 v4, 0x1
10548 + new-array v4, v4, [Ljava/lang/String;
10550 + const/4 v5, 0x0
10552 + const-string v6, "_id"
10554 + aput-object v6, v4, v5
10556 + const-string/jumbo v5, "packageName=?"
10558 + const/4 v6, 0x1
10560 + new-array v6, v6, [Ljava/lang/String;
10562 + const/4 v7, 0x0
10564 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10566 + move-result-object v8
10568 + aput-object v8, v6, v7
10570 + const/4 v7, 0x0
10572 + const/4 v8, 0x0
10574 + const/4 v9, 0x0
10576 + 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;
10578 + move-result-object v11
10580 + if-eqz v11, :cond_3e7
10582 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10584 + move-result v3
10586 + const/4 v4, 0x1
10588 + if-ne v3, v4, :cond_36e
10590 + const-string/jumbo v3, "settings"
10592 + const-string/jumbo v4, "packageName=?"
10594 + const/4 v5, 0x1
10596 + new-array v5, v5, [Ljava/lang/String;
10598 + const/4 v6, 0x0
10600 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10602 + move-result-object v7
10604 + aput-object v7, v5, v6
10606 + move-object/from16 v0, v23
10608 + 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
10610 + move-result v3
10612 + const/4 v4, 0x1
10614 + if-ge v3, v4, :cond_312
10616 + new-instance v3, Ljava/lang/Exception;
10618 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10620 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10622 + throw v3
10624 + :cond_312
10625 + invoke-interface {v11}, Landroid/database/Cursor;->moveToFirst()Z
10627 + move-result v3
10629 + if-eqz v3, :cond_3f2
10631 + const/4 v3, 0x0
10633 + invoke-interface {v11, v3}, Landroid/database/Cursor;->getInt(I)I
10635 + move-result v3
10637 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10639 + move-result-object v16
10641 + const-string v3, "allowed_contacts"
10643 + const-string/jumbo v4, "settings_id=?"
10645 + const/4 v5, 0x1
10647 + new-array v5, v5, [Ljava/lang/String;
10649 + const/4 v6, 0x0
10651 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10653 + move-result-object v7
10655 + aput-object v7, v5, v6
10657 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10659 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10661 + move-result-object v10
10663 + if-eqz v10, :cond_3f2
10665 + new-instance v12, Landroid/content/ContentValues;
10667 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10669 + const/4 v14, 0x0
10671 + :goto_33f
10672 + array-length v3, v10
10674 + if-ge v14, v3, :cond_3f2
10676 + const-string/jumbo v3, "settings_id"
10678 + move-object/from16 v0, v16
10680 + invoke-virtual {v12, v3, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10682 + const-string v3, "contact_id"
10684 + aget v4, v10, v14
10686 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10688 + move-result-object v4
10690 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10692 + const-string v3, "allowed_contacts"
10694 + const/4 v4, 0x0
10696 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10698 + move-result-wide v3
10700 + const-wide/16 v5, -0x1
10702 + cmp-long v3, v3, v5
10704 + if-nez v3, :cond_36b
10706 + new-instance v3, Ljava/lang/Exception;
10708 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10710 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10712 + throw v3
10714 + :cond_36b
10715 + add-int/lit8 v14, v14, 0x1
10717 + goto :goto_33f
10719 + :cond_36e
10720 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10722 + move-result v3
10724 + if-nez v3, :cond_3dc
10726 + const-string/jumbo v3, "settings"
10728 + const/4 v4, 0x0
10730 + move-object/from16 v0, v23
10732 + invoke-virtual {v2, v3, v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10734 + move-result-wide v19
10736 + const-wide/16 v3, -0x1
10738 + cmp-long v3, v19, v3
10740 + if-nez v3, :cond_38d
10742 + new-instance v3, Ljava/lang/Exception;
10744 + const-string/jumbo v4, "saveSettings - failed to insert new record into DB"
10746 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10748 + throw v3
10750 + :cond_38d
10751 + const-string v3, "allowed_contacts"
10753 + const-string/jumbo v4, "settings_id=?"
10755 + const/4 v5, 0x1
10757 + new-array v5, v5, [Ljava/lang/String;
10759 + const/4 v6, 0x0
10761 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
10763 + move-result-object v7
10765 + aput-object v7, v5, v6
10767 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10769 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10771 + move-result-object v10
10773 + if-eqz v10, :cond_3f2
10775 + new-instance v12, Landroid/content/ContentValues;
10777 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10779 + const/4 v14, 0x0
10781 + :goto_3ab
10782 + array-length v3, v10
10784 + if-ge v14, v3, :cond_3f2
10786 + const-string/jumbo v3, "settings_id"
10788 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
10790 + move-result-object v4
10792 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
10794 + const-string v3, "contact_id"
10796 + aget v4, v10, v14
10798 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10800 + move-result-object v4
10802 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10804 + const-string v3, "allowed_contacts"
10806 + const/4 v4, 0x0
10808 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10810 + move-result-wide v3
10812 + const-wide/16 v5, -0x1
10814 + cmp-long v3, v3, v5
10816 + if-nez v3, :cond_3d9
10818 + new-instance v3, Ljava/lang/Exception;
10820 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10822 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10824 + throw v3
10826 + :cond_3d9
10827 + add-int/lit8 v14, v14, 0x1
10829 + goto :goto_3ab
10831 + :cond_3dc
10832 + const/16 v18, 0x0
10834 + new-instance v3, Ljava/lang/Exception;
10836 + const-string/jumbo v4, "saveSettings - duplicate entries in the privacy.db"
10838 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10840 + throw v3
10842 + :cond_3e7
10843 + const/16 v18, 0x0
10845 + new-instance v3, Ljava/lang/Exception;
10847 + const-string/jumbo v4, "saveSettings - cursor is null, database access failed"
10849 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10851 + throw v3
10853 + :cond_3f2
10854 + new-instance v21, Ljava/io/File;
10856 + new-instance v3, Ljava/lang/StringBuilder;
10858 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10860 + const-string v4, "/data/system/privacy/"
10862 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10864 + move-result-object v3
10866 + move-object/from16 v0, v17
10868 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10870 + move-result-object v3
10872 + const-string v4, "/"
10874 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10876 + move-result-object v3
10878 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10880 + move-result-object v3
10882 + move-object/from16 v0, v21
10884 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10886 + new-instance v22, Ljava/io/File;
10888 + new-instance v3, Ljava/lang/StringBuilder;
10890 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10892 + const-string v4, "/data/system/privacy/"
10894 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10896 + move-result-object v3
10898 + move-object/from16 v0, v17
10900 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10902 + move-result-object v3
10904 + const-string v4, "/"
10906 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10908 + move-result-object v3
10910 + const-string v4, "/systemLogsSetting"
10912 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10914 + move-result-object v3
10916 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10918 + move-result-object v3
10920 + move-object/from16 v0, v22
10922 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10923 + :try_end_43c
10924 + .catchall {:try_start_2c8 .. :try_end_43c} :catchall_291
10925 + .catch Ljava/lang/Exception; {:try_start_2c8 .. :try_end_43c} :catch_213
10927 + :try_start_43c
10928 + invoke-virtual/range {v21 .. v21}, Ljava/io/File;->mkdirs()Z
10930 + const/4 v3, 0x1
10932 + const/4 v4, 0x0
10934 + move-object/from16 v0, v21
10936 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10938 + const/4 v3, 0x1
10940 + const/4 v4, 0x0
10942 + move-object/from16 v0, v21
10944 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setExecutable(ZZ)Z
10946 + invoke-virtual/range {v22 .. v22}, Ljava/io/File;->createNewFile()Z
10948 + const/4 v3, 0x1
10950 + const/4 v4, 0x0
10952 + move-object/from16 v0, v22
10954 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10956 + new-instance v24, Ljava/io/OutputStreamWriter;
10958 + new-instance v3, Ljava/io/FileOutputStream;
10960 + move-object/from16 v0, v22
10962 + invoke-direct {v3, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
10964 + move-object/from16 v0, v24
10966 + invoke-direct {v0, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
10968 + new-instance v3, Ljava/lang/StringBuilder;
10970 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10972 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10974 + move-result v4
10976 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
10978 + move-result-object v3
10980 + const-string v4, ""
10982 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10984 + move-result-object v3
10986 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10988 + move-result-object v3
10990 + move-object/from16 v0, v24
10992 + invoke-virtual {v0, v3}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
10994 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->flush()V
10996 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->close()V
10997 + :try_end_487
10998 + .catchall {:try_start_43c .. :try_end_487} :catchall_291
10999 + .catch Ljava/io/IOException; {:try_start_43c .. :try_end_487} :catch_4be
11000 + .catch Ljava/lang/Exception; {:try_start_43c .. :try_end_487} :catch_213
11002 + :try_start_487
11003 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11004 + :try_end_48a
11005 + .catchall {:try_start_487 .. :try_end_48a} :catchall_291
11006 + .catch Ljava/lang/Exception; {:try_start_487 .. :try_end_48a} :catch_213
11008 + :try_start_48a
11009 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11011 + if-eqz v11, :cond_492
11013 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
11015 + :cond_492
11016 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11018 + monitor-enter v4
11019 + :try_end_495
11020 + .catchall {:try_start_48a .. :try_end_495} :catchall_2c2
11022 + :try_start_495
11023 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11025 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11027 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11029 + move-result v3
11031 + add-int/lit8 v3, v3, -0x1
11033 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11035 + move-result-object v3
11037 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11039 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11041 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11043 + move-result v3
11045 + if-nez v3, :cond_4b8
11047 + if-eqz v2, :cond_4b8
11049 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11051 + move-result v3
11053 + if-eqz v3, :cond_4b8
11055 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11057 + :cond_4b8
11058 + monitor-exit v4
11060 + goto/16 :goto_245
11062 + :catchall_4bb
11063 + move-exception v3
11065 + monitor-exit v4
11066 + :try_end_4bd
11067 + .catchall {:try_start_495 .. :try_end_4bd} :catchall_4bb
11069 + :try_start_4bd
11070 + throw v3
11071 + :try_end_4be
11072 + .catchall {:try_start_4bd .. :try_end_4be} :catchall_2c2
11074 + :catch_4be
11075 + move-exception v13
11077 + const/16 v18, 0x0
11079 + :try_start_4c1
11080 + new-instance v3, Ljava/lang/Exception;
11082 + const-string/jumbo v4, "saveSettings - could not write settings to file"
11084 + invoke-direct {v3, v4, v13}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
11086 + throw v3
11087 + :try_end_4ca
11088 + .catchall {:try_start_4c1 .. :try_end_4ca} :catchall_291
11089 + .catch Ljava/lang/Exception; {:try_start_4c1 .. :try_end_4ca} :catch_213
11091 + :catchall_4ca
11092 + move-exception v3
11094 + :try_start_4cb
11095 + monitor-exit v4
11096 + :try_end_4cc
11097 + .catchall {:try_start_4cb .. :try_end_4cc} :catchall_4ca
11099 + :try_start_4cc
11100 + throw v3
11101 + :try_end_4cd
11102 + .catchall {:try_start_4cc .. :try_end_4cd} :catchall_2c2
11104 + :catchall_4cd
11105 + move-exception v3
11107 + :try_start_4ce
11108 + monitor-exit v4
11109 + :try_end_4cf
11110 + .catchall {:try_start_4ce .. :try_end_4cf} :catchall_4cd
11112 + :try_start_4cf
11113 + throw v3
11114 + :try_end_4d0
11115 + .catchall {:try_start_4cf .. :try_end_4d0} :catchall_2c2
11116 +.end method
11118 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
11119 + .registers 10
11121 + monitor-enter p0
11123 + :try_start_1
11124 + const-string v3, "PrivacyPersistenceAdapter"
11126 + new-instance v4, Ljava/lang/StringBuilder;
11128 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11130 + const-string/jumbo v5, "setValue - name "
11132 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11134 + move-result-object v4
11136 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11138 + move-result-object v4
11140 + const-string v5, " value "
11142 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11144 + move-result-object v4
11146 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11148 + move-result-object v4
11150 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11152 + move-result-object v4
11154 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11156 + new-instance v2, Landroid/content/ContentValues;
11158 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
11160 + const-string/jumbo v3, "name"
11162 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11164 + const-string/jumbo v3, "value"
11166 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11168 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11170 + move-result-object v0
11172 + const-string/jumbo v3, "map"
11174 + const/4 v4, 0x0
11176 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11178 + move-result-wide v3
11180 + const-wide/16 v5, -0x1
11182 + cmp-long v3, v3, v5
11184 + if-eqz v3, :cond_5d
11186 + const/4 v1, 0x1
11188 + :goto_48
11189 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11191 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11193 + move-result v3
11195 + if-nez v3, :cond_5b
11197 + if-eqz v0, :cond_5b
11199 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11201 + move-result v3
11203 + if-eqz v3, :cond_5b
11205 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11206 + :try_end_5b
11207 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
11209 + :cond_5b
11210 + monitor-exit p0
11212 + return v1
11214 + :cond_5d
11215 + const/4 v1, 0x0
11217 + goto :goto_48
11219 + :catchall_5f
11220 + move-exception v3
11222 + monitor-exit p0
11224 + throw v3
11225 +.end method
11226 diff -Npru stock_framework/smali/android/privacy/PrivacySettings$1.smali pdroid_framework/smali/android/privacy/PrivacySettings$1.smali
11227 --- stock_framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 16:00:00.000000000 -0800
11228 +++ pdroid_framework/smali/android/privacy/PrivacySettings$1.smali 2012-07-02 10:16:51.024015381 -0700
11229 @@ -0,0 +1,77 @@
11230 +.class final Landroid/privacy/PrivacySettings$1;
11231 +.super Ljava/lang/Object;
11232 +.source "PrivacySettings.java"
11234 +# interfaces
11235 +.implements Landroid/os/Parcelable$Creator;
11238 +# annotations
11239 +.annotation system Ldalvik/annotation/EnclosingClass;
11240 + value = Landroid/privacy/PrivacySettings;
11241 +.end annotation
11243 +.annotation system Ldalvik/annotation/InnerClass;
11244 + accessFlags = 0x8
11245 + name = null
11246 +.end annotation
11248 +.annotation system Ldalvik/annotation/Signature;
11249 + value = {
11250 + "Ljava/lang/Object;",
11251 + "Landroid/os/Parcelable$Creator",
11252 + "<",
11253 + "Landroid/privacy/PrivacySettings;",
11254 + ">;"
11256 +.end annotation
11259 +# direct methods
11260 +.method constructor <init>()V
11261 + .registers 1
11263 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11265 + return-void
11266 +.end method
11269 +# virtual methods
11270 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11271 + .registers 3
11273 + new-instance v0, Landroid/privacy/PrivacySettings;
11275 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
11277 + return-object v0
11278 +.end method
11280 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
11281 + .registers 3
11283 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11285 + move-result-object v0
11287 + return-object v0
11288 +.end method
11290 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
11291 + .registers 3
11293 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
11295 + return-object v0
11296 +.end method
11298 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
11299 + .registers 3
11301 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
11303 + move-result-object v0
11305 + return-object v0
11306 +.end method
11307 diff -Npru stock_framework/smali/android/privacy/PrivacySettingsManagerService.smali pdroid_framework/smali/android/privacy/PrivacySettingsManagerService.smali
11308 --- stock_framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 16:00:00.000000000 -0800
11309 +++ pdroid_framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-07-02 10:16:51.040019193 -0700
11310 @@ -0,0 +1,535 @@
11311 +.class public Landroid/privacy/PrivacySettingsManagerService;
11312 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
11313 +.source "PrivacySettingsManagerService.java"
11316 +# static fields
11317 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
11319 +.field private static final VERSION:D = 1.32
11321 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
11323 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
11326 +# instance fields
11327 +.field private bootCompleted:Z
11329 +.field private context:Landroid/content/Context;
11331 +.field private enabled:Z
11333 +.field private notificationsEnabled:Z
11335 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11338 +# direct methods
11339 +.method public constructor <init>(Landroid/content/Context;)V
11340 + .registers 5
11342 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
11344 + const-string v0, "PrivacySettingsManagerService"
11346 + new-instance v1, Ljava/lang/StringBuilder;
11348 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11350 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
11352 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11354 + move-result-object v1
11356 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11358 + move-result-object v2
11360 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11362 + move-result-object v1
11364 + const-string v2, " UID: "
11366 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11368 + move-result-object v1
11370 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11372 + move-result v2
11374 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11376 + move-result-object v1
11378 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11380 + move-result-object v1
11382 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11384 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11386 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
11388 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
11390 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11392 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11394 + const-string v1, "/data/system/privacy"
11396 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11398 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11400 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11402 + const-string v1, "enabled"
11404 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11406 + move-result-object v0
11408 + const-string v1, "1"
11410 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11412 + move-result v0
11414 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11416 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11418 + const-string/jumbo v1, "notifications_enabled"
11420 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11422 + move-result-object v0
11424 + const-string v1, "1"
11426 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11428 + move-result v0
11430 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11432 + const/4 v0, 0x0
11434 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11436 + return-void
11437 +.end method
11440 +# virtual methods
11441 +.method public addObserver(Ljava/lang/String;)V
11442 + .registers 5
11444 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11446 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11448 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11450 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11452 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11454 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11456 + return-void
11457 +.end method
11459 +.method public deleteSettings(Ljava/lang/String;)Z
11460 + .registers 8
11462 + const/4 v5, 0x1
11464 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11466 + move-result v2
11468 + const/16 v3, 0x3e8
11470 + if-eq v2, v3, :cond_12
11472 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11474 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
11476 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
11478 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11480 + :cond_12
11481 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11483 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
11485 + move-result v1
11487 + new-instance v2, Ljava/lang/StringBuilder;
11489 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11491 + const-string v3, "/data/system/privacy/"
11493 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11495 + move-result-object v2
11497 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11499 + move-result-object v2
11501 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11503 + move-result-object v0
11505 + new-instance v2, Ljava/io/File;
11507 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11509 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
11511 + move-result v2
11513 + if-eqz v2, :cond_3e
11515 + if-ne v1, v5, :cond_3e
11517 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11519 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11521 + :cond_3d
11522 + :goto_3d
11523 + return v1
11525 + :cond_3e
11526 + if-ne v1, v5, :cond_3d
11528 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11530 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
11532 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
11534 + goto :goto_3d
11535 +.end method
11537 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11538 + .registers 4
11540 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11542 + if-nez v0, :cond_12
11544 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11546 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11548 + move-result-object v0
11550 + const-string v1, "com.privacy.pdroid"
11552 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11554 + move-result v0
11556 + if-eqz v0, :cond_1a
11558 + :cond_12
11559 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11561 + const/4 v1, 0x0
11563 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
11565 + move-result-object v0
11567 + :goto_19
11568 + return-object v0
11570 + :cond_1a
11571 + const/4 v0, 0x0
11573 + goto :goto_19
11574 +.end method
11576 +.method public getVersion()D
11577 + .registers 3
11579 + const-wide v0, 0x3ff51eb851eb851fL
11581 + return-wide v0
11582 +.end method
11584 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11585 + .registers 8
11587 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11589 + if-eqz v1, :cond_34
11591 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11593 + if-eqz v1, :cond_34
11595 + new-instance v0, Landroid/content/Intent;
11597 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
11599 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11601 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
11603 + const-string/jumbo v1, "packageName"
11605 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11607 + const-string/jumbo v1, "uid"
11609 + const/4 v2, -0x1
11611 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
11613 + const-string v1, "accessMode"
11615 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
11617 + const-string v1, "dataType"
11619 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11621 + const-string/jumbo v1, "output"
11623 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11625 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11627 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
11629 + :cond_34
11630 + return-void
11631 +.end method
11633 +.method public purgeSettings()Z
11634 + .registers 2
11636 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11638 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11640 + move-result v0
11642 + return v0
11643 +.end method
11645 +.method public registerObservers()V
11646 + .registers 4
11648 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11650 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11652 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11654 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11656 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11658 + const-string v1, "/data/system/privacy"
11660 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11662 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11664 + return-void
11665 +.end method
11667 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
11668 + .registers 6
11670 + const-string v1, "PrivacySettingsManagerService"
11672 + new-instance v2, Ljava/lang/StringBuilder;
11674 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11676 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
11678 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11680 + move-result-object v2
11682 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11684 + move-result v3
11686 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11688 + move-result-object v2
11690 + const-string v3, ") has sufficient permissions"
11692 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11694 + move-result-object v2
11696 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11698 + move-result-object v2
11700 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11702 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11704 + move-result v1
11706 + const/16 v2, 0x3e8
11708 + if-eq v1, v2, :cond_34
11710 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11712 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
11714 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
11716 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11718 + :cond_34
11719 + const-string v1, "PrivacySettingsManagerService"
11721 + new-instance v2, Ljava/lang/StringBuilder;
11723 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11725 + const-string/jumbo v3, "saveSettings - "
11727 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11729 + move-result-object v2
11731 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11733 + move-result-object v2
11735 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11737 + move-result-object v2
11739 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11741 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11743 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
11745 + move-result v0
11747 + const/4 v1, 0x1
11749 + if-ne v0, v1, :cond_5f
11751 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11753 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
11755 + move-result-object v2
11757 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11759 + :cond_5f
11760 + return v0
11761 +.end method
11763 +.method public setBootCompleted()V
11764 + .registers 2
11766 + const/4 v0, 0x1
11768 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11770 + return-void
11771 +.end method
11773 +.method public setEnabled(Z)Z
11774 + .registers 6
11776 + const/4 v1, 0x1
11778 + if-eqz p1, :cond_12
11780 + const-string v0, "1"
11782 + :goto_5
11783 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11785 + const-string v3, "enabled"
11787 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11789 + move-result v2
11791 + if-eqz v2, :cond_15
11793 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11795 + :goto_11
11796 + return v1
11798 + :cond_12
11799 + const-string v0, "0"
11801 + goto :goto_5
11803 + :cond_15
11804 + const/4 v1, 0x0
11806 + goto :goto_11
11807 +.end method
11809 +.method public setNotificationsEnabled(Z)Z
11810 + .registers 6
11812 + const/4 v1, 0x1
11814 + if-eqz p1, :cond_15
11816 + const-string v0, "1"
11818 + :goto_5
11819 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11821 + const-string/jumbo v3, "notifications_enabled"
11823 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11825 + move-result v2
11827 + if-eqz v2, :cond_18
11829 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11831 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11833 + :goto_14
11834 + return v1
11836 + :cond_15
11837 + const-string v0, "0"
11839 + goto :goto_5
11841 + :cond_18
11842 + const/4 v1, 0x0
11844 + goto :goto_14
11845 +.end method
11846 diff -Npru stock_framework/smali/android/privacy/PrivacySettingsManager.smali pdroid_framework/smali/android/privacy/PrivacySettingsManager.smali
11847 --- stock_framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 16:00:00.000000000 -0800
11848 +++ pdroid_framework/smali/android/privacy/PrivacySettingsManager.smali 2012-07-02 10:16:51.039018955 -0700
11849 @@ -0,0 +1,531 @@
11850 +.class public Landroid/privacy/PrivacySettingsManager;
11851 +.super Ljava/lang/Object;
11852 +.source "PrivacySettingsManager.java"
11855 +# static fields
11856 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11858 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
11861 +# instance fields
11862 +.field private service:Landroid/privacy/IPrivacySettingsManager;
11865 +# direct methods
11866 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
11867 + .registers 3
11869 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11871 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11873 + return-void
11874 +.end method
11877 +# virtual methods
11878 +.method public addObserver(Ljava/lang/String;)V
11879 + .registers 5
11881 + :try_start_0
11882 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11884 + if-eqz v1, :cond_a
11886 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11888 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
11890 + :goto_9
11891 + return-void
11893 + :cond_a
11894 + const-string v1, "PrivacySettingsManager"
11896 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
11898 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11899 + :try_end_11
11900 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
11902 + goto :goto_9
11904 + :catch_12
11905 + move-exception v0
11907 + const-string v1, "PrivacySettingsManager"
11909 + const-string v2, "RemoteException in addObserver: "
11911 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11913 + goto :goto_9
11914 +.end method
11916 +.method public deleteSettings(Ljava/lang/String;)Z
11917 + .registers 3
11919 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11921 + move-result v0
11923 + return v0
11924 +.end method
11926 +.method public deleteSettings(Ljava/lang/String;I)Z
11927 + .registers 7
11929 + const/4 v1, 0x0
11931 + :try_start_1
11932 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11934 + if-eqz v2, :cond_c
11936 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11938 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11940 + move-result v1
11942 + :goto_b
11943 + return v1
11945 + :cond_c
11946 + const-string v2, "PrivacySettingsManager"
11948 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
11950 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11951 + :try_end_13
11952 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11954 + goto :goto_b
11956 + :catch_14
11957 + move-exception v0
11959 + const-string v2, "PrivacySettingsManager"
11961 + const-string v3, "RemoteException in deleteSettings: "
11963 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11965 + goto :goto_b
11966 +.end method
11968 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11969 + .registers 6
11971 + const/4 v1, 0x0
11973 + :try_start_1
11974 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11976 + if-eqz v2, :cond_c
11978 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11980 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11982 + move-result-object v1
11984 + :goto_b
11985 + return-object v1
11987 + :cond_c
11988 + const-string v2, "PrivacySettingsManager"
11990 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
11992 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11993 + :try_end_13
11994 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11996 + goto :goto_b
11998 + :catch_14
11999 + move-exception v0
12001 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
12003 + goto :goto_b
12004 +.end method
12006 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
12007 + .registers 4
12009 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12011 + move-result-object v0
12013 + return-object v0
12014 +.end method
12016 +.method public getVersion()D
12017 + .registers 4
12019 + :try_start_0
12020 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12022 + if-eqz v1, :cond_b
12024 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12026 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
12028 + move-result-wide v1
12030 + :goto_a
12031 + return-wide v1
12033 + :cond_b
12034 + const-string v1, "PrivacySettingsManager"
12036 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
12038 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12039 + :try_end_12
12040 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
12042 + :goto_12
12043 + const-wide/16 v1, 0x0
12045 + goto :goto_a
12047 + :catch_15
12048 + move-exception v0
12050 + const-string v1, "PrivacySettingsManager"
12052 + const-string v2, "RemoteException in getVersion: "
12054 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12056 + goto :goto_12
12057 +.end method
12059 +.method public isServiceAvailable()Z
12060 + .registers 2
12062 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12064 + if-eqz v0, :cond_6
12066 + const/4 v0, 0x1
12068 + :goto_5
12069 + return v0
12071 + :cond_6
12072 + const/4 v0, 0x0
12074 + goto :goto_5
12075 +.end method
12077 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12078 + .registers 9
12080 + :try_start_0
12081 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12083 + if-eqz v1, :cond_a
12085 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12087 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
12089 + :goto_9
12090 + return-void
12092 + :cond_a
12093 + const-string v1, "PrivacySettingsManager"
12095 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12097 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12098 + :try_end_11
12099 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12101 + goto :goto_9
12103 + :catch_12
12104 + move-exception v0
12106 + const-string v1, "PrivacySettingsManager"
12108 + const-string v2, "RemoteException in notification: "
12110 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12112 + goto :goto_9
12113 +.end method
12115 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12116 + .registers 13
12118 + move-object v0, p0
12120 + move-object v1, p1
12122 + move v2, p3
12124 + move-object v3, p4
12126 + move-object v4, p5
12128 + move-object v5, p6
12130 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12132 + return-void
12133 +.end method
12135 +.method public purgeSettings()Z
12136 + .registers 4
12138 + :try_start_0
12139 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12141 + if-eqz v1, :cond_b
12143 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12145 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
12147 + move-result v1
12149 + :goto_a
12150 + return v1
12152 + :cond_b
12153 + const-string v1, "PrivacySettingsManager"
12155 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12157 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12158 + :try_end_12
12159 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
12161 + :goto_12
12162 + const/4 v1, 0x0
12164 + goto :goto_a
12166 + :catch_14
12167 + move-exception v0
12169 + const-string v1, "PrivacySettingsManager"
12171 + const-string v2, "RemoteException in purgeSettings: "
12173 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12175 + goto :goto_12
12176 +.end method
12178 +.method public registerObservers()V
12179 + .registers 4
12181 + :try_start_0
12182 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12184 + if-eqz v1, :cond_a
12186 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12188 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
12190 + :goto_9
12191 + return-void
12193 + :cond_a
12194 + const-string v1, "PrivacySettingsManager"
12196 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12198 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12199 + :try_end_11
12200 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12202 + goto :goto_9
12204 + :catch_12
12205 + move-exception v0
12207 + const-string v1, "PrivacySettingsManager"
12209 + const-string v2, "RemoteException in registerObservers: "
12211 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12213 + goto :goto_9
12214 +.end method
12216 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
12217 + .registers 6
12219 + const/4 v1, 0x0
12221 + :try_start_1
12222 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12224 + if-eqz v2, :cond_c
12226 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12228 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12230 + move-result v1
12232 + :goto_b
12233 + return v1
12235 + :cond_c
12236 + const-string v2, "PrivacySettingsManager"
12238 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
12240 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12241 + :try_end_14
12242 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
12244 + goto :goto_b
12246 + :catch_15
12247 + move-exception v0
12249 + const-string v2, "PrivacySettingsManager"
12251 + const-string v3, "RemoteException in saveSettings: "
12253 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12255 + goto :goto_b
12256 +.end method
12258 +.method public setBootCompleted()V
12259 + .registers 4
12261 + :try_start_0
12262 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12264 + if-eqz v1, :cond_a
12266 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12268 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
12270 + :goto_9
12271 + return-void
12273 + :cond_a
12274 + const-string v1, "PrivacySettingsManager"
12276 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
12278 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12279 + :try_end_12
12280 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
12282 + goto :goto_9
12284 + :catch_13
12285 + move-exception v0
12287 + const-string v1, "PrivacySettingsManager"
12289 + const-string v2, "RemoteException in setBootCompleted: "
12291 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12293 + goto :goto_9
12294 +.end method
12296 +.method public setEnabled(Z)Z
12297 + .registers 5
12299 + :try_start_0
12300 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12302 + if-eqz v1, :cond_b
12304 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12306 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
12308 + move-result v1
12310 + :goto_a
12311 + return v1
12313 + :cond_b
12314 + const-string v1, "PrivacySettingsManager"
12316 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
12318 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12319 + :try_end_13
12320 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12322 + :goto_13
12323 + const/4 v1, 0x0
12325 + goto :goto_a
12327 + :catch_15
12328 + move-exception v0
12330 + const-string v1, "PrivacySettingsManager"
12332 + const-string v2, "RemoteException in setEnabled: "
12334 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12336 + goto :goto_13
12337 +.end method
12339 +.method public setNotificationsEnabled(Z)Z
12340 + .registers 5
12342 + :try_start_0
12343 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12345 + if-eqz v1, :cond_b
12347 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12349 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
12351 + move-result v1
12353 + :goto_a
12354 + return v1
12356 + :cond_b
12357 + const-string v1, "PrivacySettingsManager"
12359 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
12361 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12362 + :try_end_13
12363 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12365 + :goto_13
12366 + const/4 v1, 0x0
12368 + goto :goto_a
12370 + :catch_15
12371 + move-exception v0
12373 + const-string v1, "PrivacySettingsManager"
12375 + const-string v2, "RemoteException in setNotificationsEnabled: "
12377 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12379 + goto :goto_13
12380 +.end method
12381 diff -Npru stock_framework/smali/android/privacy/PrivacySettings.smali pdroid_framework/smali/android/privacy/PrivacySettings.smali
12382 --- stock_framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 16:00:00.000000000 -0800
12383 +++ pdroid_framework/smali/android/privacy/PrivacySettings.smali 2012-07-02 10:16:51.025015619 -0700
12384 @@ -0,0 +1,2109 @@
12385 +.class public final Landroid/privacy/PrivacySettings;
12386 +.super Ljava/lang/Object;
12387 +.source "PrivacySettings.java"
12389 +# interfaces
12390 +.implements Landroid/os/Parcelable;
12393 +# static fields
12394 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
12395 + .annotation system Ldalvik/annotation/Signature;
12396 + value = {
12397 + "Landroid/os/Parcelable$Creator",
12398 + "<",
12399 + "Landroid/privacy/PrivacySettings;",
12400 + ">;"
12402 + .end annotation
12403 +.end field
12405 +.field public static final CUSTOM:B = 0x2t
12407 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
12409 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
12411 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
12413 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
12415 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
12417 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
12419 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
12421 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
12423 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
12425 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
12427 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
12429 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
12431 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
12433 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
12435 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
12437 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
12439 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
12441 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
12443 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
12445 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
12447 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
12449 +.field public static final EMPTY:B = 0x1t
12451 +.field public static final RANDOM:B = 0x3t
12453 +.field public static final REAL:B = 0x0t
12455 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
12457 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
12460 +# instance fields
12461 +.field private final _id:Ljava/lang/Integer;
12463 +.field private accountsAuthTokensSetting:B
12465 +.field private accountsSetting:B
12467 +.field private allowedContacts:[I
12469 +.field private bookmarksSetting:B
12471 +.field private calendarSetting:B
12473 +.field private callLogSetting:B
12475 +.field private contactsSetting:B
12477 +.field private deviceId:Ljava/lang/String;
12479 +.field private deviceIdSetting:B
12481 +.field private incomingCallsSetting:B
12483 +.field private intentBootCompletedSetting:B
12485 +.field private line1Number:Ljava/lang/String;
12487 +.field private line1NumberSetting:B
12489 +.field private locationGpsLat:Ljava/lang/String;
12491 +.field private locationGpsLon:Ljava/lang/String;
12493 +.field private locationGpsSetting:B
12495 +.field private locationNetworkLat:Ljava/lang/String;
12497 +.field private locationNetworkLon:Ljava/lang/String;
12499 +.field private locationNetworkSetting:B
12501 +.field private mmsSetting:B
12503 +.field private networkInfoSetting:B
12505 +.field private notificationSetting:B
12507 +.field private outgoingCallsSetting:B
12509 +.field private packageName:Ljava/lang/String;
12511 +.field private simInfoSetting:B
12513 +.field private simSerialNumber:Ljava/lang/String;
12515 +.field private simSerialNumberSetting:B
12517 +.field private smsSetting:B
12519 +.field private subscriberId:Ljava/lang/String;
12521 +.field private subscriberIdSetting:B
12523 +.field private systemLogsSetting:B
12525 +.field private uid:I
12528 +# direct methods
12529 +.method static constructor <clinit>()V
12530 + .registers 1
12532 + new-instance v0, Landroid/privacy/PrivacySettings$1;
12534 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
12536 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
12538 + return-void
12539 +.end method
12541 +.method public constructor <init>(Landroid/os/Parcel;)V
12542 + .registers 4
12544 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12546 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12548 + move-result v0
12550 + const/4 v1, -0x1
12552 + if-ne v0, v1, :cond_ce
12554 + const/4 v1, 0x0
12556 + :goto_b
12557 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12559 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12561 + move-result-object v1
12563 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12565 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12567 + move-result v1
12569 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
12571 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12573 + move-result v1
12575 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12577 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12579 + move-result-object v1
12581 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12583 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12585 + move-result v1
12587 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting: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;->line1Number:Ljava/lang/String;
12595 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12597 + move-result v1
12599 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting: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;->locationGpsLat:Ljava/lang/String;
12607 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12609 + move-result-object v1
12611 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12613 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12615 + move-result v1
12617 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12619 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12621 + move-result-object v1
12623 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12625 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12627 + move-result-object v1
12629 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12631 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12633 + move-result v1
12635 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12637 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12639 + move-result v1
12641 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12643 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12645 + move-result v1
12647 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12649 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12651 + move-result-object v1
12653 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12655 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12657 + move-result v1
12659 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting: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;->subscriberId:Ljava/lang/String;
12667 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12669 + move-result v1
12671 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12673 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12675 + move-result v1
12677 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12679 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12681 + move-result v1
12683 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12685 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12687 + move-result v1
12689 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12691 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12693 + move-result v1
12695 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12697 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12699 + move-result v1
12701 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12703 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12705 + move-result v1
12707 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12709 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12711 + move-result v1
12713 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12715 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12717 + move-result v1
12719 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12721 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12723 + move-result v1
12725 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12727 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12729 + move-result v1
12731 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12733 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12735 + move-result v1
12737 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12739 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12741 + move-result v1
12743 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12745 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
12747 + move-result-object v1
12749 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12751 + return-void
12753 + :cond_ce
12754 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12756 + move-result-object v1
12758 + goto/16 :goto_b
12759 +.end method
12761 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
12762 + .registers 6
12764 + const/4 v1, 0x0
12766 + const/4 v0, 0x0
12768 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12770 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12772 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12774 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12776 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12778 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12780 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12782 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12784 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12786 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12788 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12790 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12792 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12794 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12796 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12798 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12800 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12802 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12804 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12806 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12808 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12810 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12812 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12814 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12816 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12818 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12820 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12822 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12824 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12826 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12828 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12830 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12832 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12834 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12836 + return-void
12837 +.end method
12839 +.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
12840 + .registers 38
12842 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12844 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12846 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12848 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12850 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12852 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12854 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12856 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12858 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12860 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12862 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12864 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12866 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12868 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12870 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12872 + move/from16 v0, p15
12874 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12876 + move/from16 v0, p16
12878 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12880 + move-object/from16 v0, p17
12882 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12884 + move/from16 v0, p18
12886 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12888 + move-object/from16 v0, p19
12890 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12892 + move/from16 v0, p20
12894 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12896 + move/from16 v0, p21
12898 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12900 + move/from16 v0, p22
12902 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12904 + move/from16 v0, p23
12906 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12908 + move/from16 v0, p24
12910 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12912 + move/from16 v0, p25
12914 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12916 + move/from16 v0, p26
12918 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12920 + move/from16 v0, p27
12922 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12924 + move/from16 v0, p28
12926 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12928 + move/from16 v0, p29
12930 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12932 + move/from16 v0, p30
12934 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12936 + move/from16 v0, p34
12938 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12940 + move/from16 v0, p35
12942 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12944 + move-object/from16 v0, p36
12946 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12948 + return-void
12949 +.end method
12951 +.method private getRandomLat()Ljava/lang/String;
12952 + .registers 10
12954 + const-wide v7, 0x4056800000000000L
12956 + invoke-static {}, Ljava/lang/Math;->random()D
12958 + move-result-wide v3
12960 + const-wide v5, 0x4066800000000000L
12962 + mul-double v0, v3, v5
12964 + cmpl-double v3, v0, v7
12966 + if-lez v3, :cond_35
12968 + new-instance v2, Ljava/math/BigDecimal;
12970 + sub-double v3, v0, v7
12972 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12974 + :goto_1b
12975 + new-instance v3, Ljava/lang/StringBuilder;
12977 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
12979 + const/4 v4, 0x6
12981 + const/4 v5, 0x4
12983 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
12985 + move-result-object v4
12987 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12989 + move-result-object v3
12991 + const-string v4, ""
12993 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12995 + move-result-object v3
12997 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12999 + move-result-object v3
13001 + return-object v3
13003 + :cond_35
13004 + new-instance v2, Ljava/math/BigDecimal;
13006 + neg-double v3, v0
13008 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13010 + goto :goto_1b
13011 +.end method
13013 +.method private getRandomLon()Ljava/lang/String;
13014 + .registers 10
13016 + const-wide v7, 0x4066800000000000L
13018 + invoke-static {}, Ljava/lang/Math;->random()D
13020 + move-result-wide v3
13022 + const-wide v5, 0x4076800000000000L
13024 + mul-double v0, v3, v5
13026 + cmpl-double v3, v0, v7
13028 + if-lez v3, :cond_35
13030 + new-instance v2, Ljava/math/BigDecimal;
13032 + sub-double v3, v0, v7
13034 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13036 + :goto_1b
13037 + new-instance v3, Ljava/lang/StringBuilder;
13039 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
13041 + const/4 v4, 0x6
13043 + const/4 v5, 0x4
13045 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
13047 + move-result-object v4
13049 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13051 + move-result-object v3
13053 + const-string v4, ""
13055 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13057 + move-result-object v3
13059 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13061 + move-result-object v3
13063 + return-object v3
13065 + :cond_35
13066 + new-instance v2, Ljava/math/BigDecimal;
13068 + neg-double v3, v0
13070 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13072 + goto :goto_1b
13073 +.end method
13076 +# virtual methods
13077 +.method public describeContents()I
13078 + .registers 2
13080 + const/4 v0, 0x0
13082 + return v0
13083 +.end method
13085 +.method public getAccountsAuthTokensSetting()B
13086 + .registers 2
13088 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13090 + return v0
13091 +.end method
13093 +.method public getAccountsSetting()B
13094 + .registers 2
13096 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13098 + return v0
13099 +.end method
13101 +.method public getAllowedContacts()[I
13102 + .registers 2
13104 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13106 + return-object v0
13107 +.end method
13109 +.method public getBookmarksSetting()B
13110 + .registers 2
13112 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13114 + return v0
13115 +.end method
13117 +.method public getCalendarSetting()B
13118 + .registers 2
13120 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13122 + return v0
13123 +.end method
13125 +.method public getCallLogSetting()B
13126 + .registers 2
13128 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13130 + return v0
13131 +.end method
13133 +.method public getContactsSetting()B
13134 + .registers 2
13136 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13138 + return v0
13139 +.end method
13141 +.method public getDeviceId()Ljava/lang/String;
13142 + .registers 6
13144 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13146 + const/4 v3, 0x1
13148 + if-ne v2, v3, :cond_8
13150 + const-string v2, ""
13152 + :goto_7
13153 + return-object v2
13155 + :cond_8
13156 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13158 + const/4 v3, 0x3
13160 + if-ne v2, v3, :cond_35
13162 + new-instance v0, Ljava/util/Random;
13164 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13166 + new-instance v2, Ljava/lang/StringBuilder;
13168 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13170 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13172 + move-result-wide v3
13174 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13176 + move-result-wide v3
13178 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13180 + move-result-object v2
13182 + const-string v3, ""
13184 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13186 + move-result-object v2
13188 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13190 + move-result-object v1
13192 + const/4 v2, 0x0
13194 + const/16 v3, 0xf
13196 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13198 + move-result-object v2
13200 + goto :goto_7
13202 + :cond_35
13203 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13205 + goto :goto_7
13206 +.end method
13208 +.method public getDeviceIdSetting()B
13209 + .registers 2
13211 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13213 + return v0
13214 +.end method
13216 +.method public getIncomingCallsSetting()B
13217 + .registers 2
13219 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13221 + return v0
13222 +.end method
13224 +.method public getIntentBootCompletedSetting()B
13225 + .registers 2
13227 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13229 + return v0
13230 +.end method
13232 +.method public getLine1Number()Ljava/lang/String;
13233 + .registers 6
13235 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13237 + const/4 v3, 0x1
13239 + if-ne v2, v3, :cond_8
13241 + const-string v2, ""
13243 + :goto_7
13244 + return-object v2
13246 + :cond_8
13247 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13249 + const/4 v3, 0x3
13251 + if-ne v2, v3, :cond_3b
13253 + new-instance v0, Ljava/util/Random;
13255 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13257 + new-instance v2, Ljava/lang/StringBuilder;
13259 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13261 + const-string v3, "+"
13263 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13265 + move-result-object v2
13267 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13269 + move-result-wide v3
13271 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13273 + move-result-wide v3
13275 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13277 + move-result-object v2
13279 + const-string v3, ""
13281 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13283 + move-result-object v2
13285 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13287 + move-result-object v1
13289 + const/4 v2, 0x0
13291 + const/16 v3, 0xd
13293 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13295 + move-result-object v2
13297 + goto :goto_7
13299 + :cond_3b
13300 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13302 + goto :goto_7
13303 +.end method
13305 +.method public getLine1NumberSetting()B
13306 + .registers 2
13308 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13310 + return v0
13311 +.end method
13313 +.method public getLocationGpsLat()Ljava/lang/String;
13314 + .registers 3
13316 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13318 + const/4 v1, 0x1
13320 + if-ne v0, v1, :cond_8
13322 + const-string v0, ""
13324 + :goto_7
13325 + return-object v0
13327 + :cond_8
13328 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13330 + const/4 v1, 0x3
13332 + if-ne v0, v1, :cond_12
13334 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13336 + move-result-object v0
13338 + goto :goto_7
13340 + :cond_12
13341 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13343 + goto :goto_7
13344 +.end method
13346 +.method public getLocationGpsLon()Ljava/lang/String;
13347 + .registers 3
13349 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13351 + const/4 v1, 0x1
13353 + if-ne v0, v1, :cond_8
13355 + const-string v0, ""
13357 + :goto_7
13358 + return-object v0
13360 + :cond_8
13361 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13363 + const/4 v1, 0x3
13365 + if-ne v0, v1, :cond_12
13367 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13369 + move-result-object v0
13371 + goto :goto_7
13373 + :cond_12
13374 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13376 + goto :goto_7
13377 +.end method
13379 +.method public getLocationGpsSetting()B
13380 + .registers 2
13382 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13384 + return v0
13385 +.end method
13387 +.method public getLocationNetworkLat()Ljava/lang/String;
13388 + .registers 3
13390 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13392 + const/4 v1, 0x1
13394 + if-ne v0, v1, :cond_8
13396 + const-string v0, ""
13398 + :goto_7
13399 + return-object v0
13401 + :cond_8
13402 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13404 + const/4 v1, 0x3
13406 + if-ne v0, v1, :cond_12
13408 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13410 + move-result-object v0
13412 + goto :goto_7
13414 + :cond_12
13415 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13417 + goto :goto_7
13418 +.end method
13420 +.method public getLocationNetworkLon()Ljava/lang/String;
13421 + .registers 3
13423 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13425 + const/4 v1, 0x1
13427 + if-ne v0, v1, :cond_8
13429 + const-string v0, ""
13431 + :goto_7
13432 + return-object v0
13434 + :cond_8
13435 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13437 + const/4 v1, 0x3
13439 + if-ne v0, v1, :cond_12
13441 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13443 + move-result-object v0
13445 + goto :goto_7
13447 + :cond_12
13448 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13450 + goto :goto_7
13451 +.end method
13453 +.method public getLocationNetworkSetting()B
13454 + .registers 2
13456 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13458 + return v0
13459 +.end method
13461 +.method public getMmsSetting()B
13462 + .registers 2
13464 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13466 + return v0
13467 +.end method
13469 +.method public getNetworkInfoSetting()B
13470 + .registers 2
13472 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13474 + return v0
13475 +.end method
13477 +.method public getNotificationSetting()B
13478 + .registers 2
13480 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13482 + return v0
13483 +.end method
13485 +.method public getOutgoingCallsSetting()B
13486 + .registers 2
13488 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13490 + return v0
13491 +.end method
13493 +.method public getPackageName()Ljava/lang/String;
13494 + .registers 2
13496 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13498 + return-object v0
13499 +.end method
13501 +.method public getSimInfoSetting()B
13502 + .registers 2
13504 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13506 + return v0
13507 +.end method
13509 +.method public getSimSerialNumber()Ljava/lang/String;
13510 + .registers 5
13512 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13514 + const/4 v2, 0x1
13516 + if-ne v1, v2, :cond_8
13518 + const-string v1, ""
13520 + :goto_7
13521 + return-object v1
13523 + :cond_8
13524 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13526 + const/4 v2, 0x3
13528 + if-ne v1, v2, :cond_2e
13530 + new-instance v0, Ljava/util/Random;
13532 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13534 + new-instance v1, Ljava/lang/StringBuilder;
13536 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
13538 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13540 + move-result-wide v2
13542 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
13544 + move-result-wide v2
13546 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13548 + move-result-object v1
13550 + const-string v2, ""
13552 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13554 + move-result-object v1
13556 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13558 + move-result-object v1
13560 + goto :goto_7
13562 + :cond_2e
13563 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13565 + goto :goto_7
13566 +.end method
13568 +.method public getSimSerialNumberSetting()B
13569 + .registers 2
13571 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13573 + return v0
13574 +.end method
13576 +.method public getSmsSetting()B
13577 + .registers 2
13579 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13581 + return v0
13582 +.end method
13584 +.method public getSubscriberId()Ljava/lang/String;
13585 + .registers 6
13587 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13589 + const/4 v3, 0x1
13591 + if-ne v2, v3, :cond_8
13593 + const-string v2, ""
13595 + :goto_7
13596 + return-object v2
13598 + :cond_8
13599 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13601 + const/4 v3, 0x3
13603 + if-ne v2, v3, :cond_35
13605 + new-instance v0, Ljava/util/Random;
13607 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13609 + new-instance v2, Ljava/lang/StringBuilder;
13611 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13613 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13615 + move-result-wide v3
13617 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13619 + move-result-wide v3
13621 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13623 + move-result-object v2
13625 + const-string v3, ""
13627 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13629 + move-result-object v2
13631 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13633 + move-result-object v1
13635 + const/4 v2, 0x0
13637 + const/16 v3, 0xf
13639 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13641 + move-result-object v2
13643 + goto :goto_7
13645 + :cond_35
13646 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13648 + goto :goto_7
13649 +.end method
13651 +.method public getSubscriberIdSetting()B
13652 + .registers 2
13654 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13656 + return v0
13657 +.end method
13659 +.method public getSystemLogsSetting()B
13660 + .registers 2
13662 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13664 + return v0
13665 +.end method
13667 +.method public getUid()I
13668 + .registers 2
13670 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
13672 + return v0
13673 +.end method
13675 +.method public get_id()Ljava/lang/Integer;
13676 + .registers 2
13678 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13680 + return-object v0
13681 +.end method
13683 +.method public setAccountsAuthTokensSetting(B)V
13684 + .registers 2
13686 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13688 + return-void
13689 +.end method
13691 +.method public setAccountsSetting(B)V
13692 + .registers 2
13694 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13696 + return-void
13697 +.end method
13699 +.method public setAllowedContacts([I)V
13700 + .registers 2
13702 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13704 + return-void
13705 +.end method
13707 +.method public setBookmarksSetting(B)V
13708 + .registers 2
13710 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13712 + return-void
13713 +.end method
13715 +.method public setCalendarSetting(B)V
13716 + .registers 2
13718 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13720 + return-void
13721 +.end method
13723 +.method public setCallLogSetting(B)V
13724 + .registers 2
13726 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13728 + return-void
13729 +.end method
13731 +.method public setContactsSetting(B)V
13732 + .registers 2
13734 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13736 + return-void
13737 +.end method
13739 +.method public setDeviceId(Ljava/lang/String;)V
13740 + .registers 2
13742 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13744 + return-void
13745 +.end method
13747 +.method public setDeviceIdSetting(B)V
13748 + .registers 2
13750 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13752 + return-void
13753 +.end method
13755 +.method public setIncomingCallsSetting(B)V
13756 + .registers 2
13758 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13760 + return-void
13761 +.end method
13763 +.method public setIntentBootCompletedSetting(B)V
13764 + .registers 2
13766 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13768 + return-void
13769 +.end method
13771 +.method public setLine1Number(Ljava/lang/String;)V
13772 + .registers 2
13774 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13776 + return-void
13777 +.end method
13779 +.method public setLine1NumberSetting(B)V
13780 + .registers 2
13782 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13784 + return-void
13785 +.end method
13787 +.method public setLocationGpsLat(Ljava/lang/String;)V
13788 + .registers 2
13790 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13792 + return-void
13793 +.end method
13795 +.method public setLocationGpsLon(Ljava/lang/String;)V
13796 + .registers 2
13798 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13800 + return-void
13801 +.end method
13803 +.method public setLocationGpsSetting(B)V
13804 + .registers 2
13806 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13808 + return-void
13809 +.end method
13811 +.method public setLocationNetworkLat(Ljava/lang/String;)V
13812 + .registers 2
13814 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13816 + return-void
13817 +.end method
13819 +.method public setLocationNetworkLon(Ljava/lang/String;)V
13820 + .registers 2
13822 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13824 + return-void
13825 +.end method
13827 +.method public setLocationNetworkSetting(B)V
13828 + .registers 2
13830 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13832 + return-void
13833 +.end method
13835 +.method public setMmsSetting(B)V
13836 + .registers 2
13838 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13840 + return-void
13841 +.end method
13843 +.method public setNetworkInfoSetting(B)V
13844 + .registers 2
13846 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13848 + return-void
13849 +.end method
13851 +.method public setNotificationSetting(B)V
13852 + .registers 2
13854 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13856 + return-void
13857 +.end method
13859 +.method public setOutgoingCallsSetting(B)V
13860 + .registers 2
13862 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13864 + return-void
13865 +.end method
13867 +.method public setPackageName(Ljava/lang/String;)V
13868 + .registers 2
13870 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13872 + return-void
13873 +.end method
13875 +.method public setSimInfoSetting(B)V
13876 + .registers 2
13878 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13880 + return-void
13881 +.end method
13883 +.method public setSimSerialNumber(Ljava/lang/String;)V
13884 + .registers 2
13886 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13888 + return-void
13889 +.end method
13891 +.method public setSimSerialNumberSetting(B)V
13892 + .registers 2
13894 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13896 + return-void
13897 +.end method
13899 +.method public setSmsSetting(B)V
13900 + .registers 2
13902 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13904 + return-void
13905 +.end method
13907 +.method public setSubscriberId(Ljava/lang/String;)V
13908 + .registers 2
13910 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13912 + return-void
13913 +.end method
13915 +.method public setSubscriberIdSetting(B)V
13916 + .registers 2
13918 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13920 + return-void
13921 +.end method
13923 +.method public setSystemLogsSetting(B)V
13924 + .registers 2
13926 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13928 + return-void
13929 +.end method
13931 +.method public setUid(I)V
13932 + .registers 2
13934 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
13936 + return-void
13937 +.end method
13939 +.method public toString()Ljava/lang/String;
13940 + .registers 3
13942 + new-instance v0, Ljava/lang/StringBuilder;
13944 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
13946 + const-string v1, "PrivacySettings [_id="
13948 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13950 + move-result-object v0
13952 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13954 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13956 + move-result-object v0
13958 + const-string v1, ", accountsAuthTokensSetting="
13960 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13962 + move-result-object v0
13964 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13966 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13968 + move-result-object v0
13970 + const-string v1, ", accountsSetting="
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;->accountsSetting:B
13978 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13980 + move-result-object v0
13982 + const-string v1, ", bookmarksSetting="
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;->bookmarksSetting:B
13990 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13992 + move-result-object v0
13994 + const-string v1, ", calendarSetting="
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;->calendarSetting:B
14002 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14004 + move-result-object v0
14006 + const-string v1, ", callLogSetting="
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;->callLogSetting:B
14014 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14016 + move-result-object v0
14018 + const-string v1, ", contactsSetting="
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;->contactsSetting:B
14026 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14028 + move-result-object v0
14030 + const-string v1, ", deviceId="
14032 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14034 + move-result-object v0
14036 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14038 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14040 + move-result-object v0
14042 + const-string v1, ", deviceIdSetting="
14044 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14046 + move-result-object v0
14048 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14050 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14052 + move-result-object v0
14054 + const-string v1, ", incomingCallsSetting="
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;->incomingCallsSetting:B
14062 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14064 + move-result-object v0
14066 + const-string v1, ", intentBootCompletedSetting="
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;->intentBootCompletedSetting:B
14074 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14076 + move-result-object v0
14078 + const-string v1, ", line1Number="
14080 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14082 + move-result-object v0
14084 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14086 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14088 + move-result-object v0
14090 + const-string v1, ", line1NumberSetting="
14092 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14094 + move-result-object v0
14096 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14098 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14100 + move-result-object v0
14102 + const-string v1, ", locationGpsLat="
14104 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14106 + move-result-object v0
14108 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14110 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14112 + move-result-object v0
14114 + const-string v1, ", locationGpsLon="
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;->locationGpsLon: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, ", locationGpsSetting="
14128 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14130 + move-result-object v0
14132 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14134 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14136 + move-result-object v0
14138 + const-string v1, ", locationNetworkLat="
14140 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14142 + move-result-object v0
14144 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14146 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14148 + move-result-object v0
14150 + const-string v1, ", locationNetworkLon="
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;->locationNetworkLon: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, ", locationNetworkSetting="
14164 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14166 + move-result-object v0
14168 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14170 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14172 + move-result-object v0
14174 + const-string v1, ", mmsSetting="
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;->mmsSetting:B
14182 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14184 + move-result-object v0
14186 + const-string v1, ", networkInfoSetting="
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;->networkInfoSetting:B
14194 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14196 + move-result-object v0
14198 + const-string v1, ", notificationSetting="
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;->notificationSetting:B
14206 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14208 + move-result-object v0
14210 + const-string v1, ", outgoingCallsSetting="
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;->outgoingCallsSetting:B
14218 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14220 + move-result-object v0
14222 + const-string v1, ", packageName="
14224 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14226 + move-result-object v0
14228 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14230 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14232 + move-result-object v0
14234 + const-string v1, ", simInfoSetting="
14236 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14238 + move-result-object v0
14240 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14242 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14244 + move-result-object v0
14246 + const-string v1, ", simSerialNumber="
14248 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14250 + move-result-object v0
14252 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14254 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14256 + move-result-object v0
14258 + const-string v1, ", simSerialNumberSetting="
14260 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14262 + move-result-object v0
14264 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14266 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14268 + move-result-object v0
14270 + const-string v1, ", smsSetting="
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;->smsSetting:B
14278 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14280 + move-result-object v0
14282 + const-string v1, ", subscriberId="
14284 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14286 + move-result-object v0
14288 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14290 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14292 + move-result-object v0
14294 + const-string v1, ", subscriberIdSetting="
14296 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14298 + move-result-object v0
14300 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14302 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14304 + move-result-object v0
14306 + const-string v1, ", systemLogsSetting="
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;->systemLogsSetting:B
14314 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14316 + move-result-object v0
14318 + const-string v1, ", uid="
14320 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14322 + move-result-object v0
14324 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
14326 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14328 + move-result-object v0
14330 + const-string v1, "]"
14332 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14334 + move-result-object v0
14336 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
14338 + move-result-object v0
14340 + return-object v0
14341 +.end method
14343 +.method public writeToParcel(Landroid/os/Parcel;I)V
14344 + .registers 4
14346 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14348 + if-nez v0, :cond_a9
14350 + const/4 v0, -0x1
14352 + :goto_5
14353 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14355 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14357 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14359 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
14361 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14363 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14365 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14367 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14369 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14371 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14373 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14375 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14377 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14379 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14381 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14383 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14385 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14387 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14389 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14391 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14393 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14395 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14397 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14399 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14401 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14403 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14405 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14407 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14409 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14411 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14413 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14415 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14417 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14419 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14421 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14423 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14425 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14427 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14429 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14431 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14433 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14435 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14437 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14439 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14441 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14443 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14445 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14447 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14449 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14451 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14453 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14455 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14457 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14459 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14461 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14463 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14465 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14467 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14469 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14471 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14473 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14475 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14477 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14479 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14481 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
14483 + return-void
14485 + :cond_a9
14486 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14488 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
14490 + move-result v0
14492 + goto/16 :goto_5
14493 +.end method
14494 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
14495 --- stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 16:00:00.000000000 -0800
14496 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-07-02 10:16:51.041019431 -0700
14497 @@ -0,0 +1,129 @@
14498 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14499 +.super Ljava/lang/Object;
14500 +.source "PrivacyAccountManager.java"
14502 +# interfaces
14503 +.implements Landroid/accounts/AccountManagerFuture;
14506 +# annotations
14507 +.annotation system Ldalvik/annotation/EnclosingClass;
14508 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
14509 +.end annotation
14511 +.annotation system Ldalvik/annotation/InnerClass;
14512 + accessFlags = 0x2
14513 + name = "PrivacyAccountManagerFuture"
14514 +.end annotation
14516 +.annotation system Ldalvik/annotation/Signature;
14517 + value = {
14518 + "<V:",
14519 + "Ljava/lang/Object;",
14520 + ">",
14521 + "Ljava/lang/Object;",
14522 + "Landroid/accounts/AccountManagerFuture",
14523 + "<TV;>;"
14525 +.end annotation
14528 +# instance fields
14529 +.field private result:Ljava/lang/Object;
14530 + .annotation system Ldalvik/annotation/Signature;
14531 + value = {
14532 + "TV;"
14534 + .end annotation
14535 +.end field
14537 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14540 +# direct methods
14541 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14542 + .registers 3
14543 + .annotation system Ldalvik/annotation/Signature;
14544 + value = {
14545 + "(TV;)V"
14547 + .end annotation
14549 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14551 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
14553 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14555 + return-void
14556 +.end method
14559 +# virtual methods
14560 +.method public cancel(Z)Z
14561 + .registers 3
14563 + const/4 v0, 0x0
14565 + return v0
14566 +.end method
14568 +.method public getResult()Ljava/lang/Object;
14569 + .registers 2
14570 + .annotation system Ldalvik/annotation/Signature;
14571 + value = {
14572 + "()TV;"
14574 + .end annotation
14576 + .annotation system Ldalvik/annotation/Throws;
14577 + value = {
14578 + Landroid/accounts/OperationCanceledException;,
14579 + Ljava/io/IOException;,
14580 + Landroid/accounts/AuthenticatorException;
14582 + .end annotation
14584 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14586 + return-object v0
14587 +.end method
14589 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
14590 + .registers 5
14591 + .annotation system Ldalvik/annotation/Signature;
14592 + value = {
14593 + "(J",
14594 + "Ljava/util/concurrent/TimeUnit;",
14595 + ")TV;"
14597 + .end annotation
14599 + .annotation system Ldalvik/annotation/Throws;
14600 + value = {
14601 + Landroid/accounts/OperationCanceledException;,
14602 + Ljava/io/IOException;,
14603 + Landroid/accounts/AuthenticatorException;
14605 + .end annotation
14607 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14609 + return-object v0
14610 +.end method
14612 +.method public isCancelled()Z
14613 + .registers 2
14615 + const/4 v0, 0x0
14617 + return v0
14618 +.end method
14620 +.method public isDone()Z
14621 + .registers 2
14623 + const/4 v0, 0x1
14625 + return v0
14626 +.end method
14627 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
14628 --- stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 16:00:00.000000000 -0800
14629 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-07-02 10:16:51.041019431 -0700
14630 @@ -0,0 +1,701 @@
14631 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
14632 +.super Landroid/accounts/AccountManager;
14633 +.source "PrivacyAccountManager.java"
14636 +# annotations
14637 +.annotation system Ldalvik/annotation/MemberClasses;
14638 + value = {
14639 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14641 +.end annotation
14644 +# static fields
14645 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
14648 +# instance fields
14649 +.field private context:Landroid/content/Context;
14651 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
14654 +# direct methods
14655 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14656 + .registers 5
14658 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14660 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14662 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14664 + const-string/jumbo v1, "privacy"
14666 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14668 + move-result-object v1
14670 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14672 + move-result-object v1
14674 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14676 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14678 + return-void
14679 +.end method
14681 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14682 + .registers 6
14684 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14686 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14688 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14690 + const-string/jumbo v1, "privacy"
14692 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14694 + move-result-object v1
14696 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14698 + move-result-object v1
14700 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14702 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14704 + return-void
14705 +.end method
14708 +# virtual methods
14709 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14710 + .registers 12
14711 + .annotation system Ldalvik/annotation/Throws;
14712 + value = {
14713 + Landroid/accounts/OperationCanceledException;,
14714 + Ljava/io/IOException;,
14715 + Landroid/accounts/AuthenticatorException;
14717 + .end annotation
14719 + const/4 v5, 0x0
14721 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14723 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14725 + move-result-object v1
14727 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14729 + move-result v2
14731 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14733 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14735 + move-result-object v6
14737 + if-eqz v6, :cond_23
14739 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
14741 + move-result v0
14743 + if-eqz v0, :cond_23
14745 + const/4 v7, 0x0
14747 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14749 + const/4 v3, 0x1
14751 + const-string v4, "authTokens"
14753 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14755 + :goto_22
14756 + return-object v7
14758 + :cond_23
14759 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14761 + move-result-object v7
14763 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14765 + const/4 v3, 0x0
14767 + const-string v4, "authTokens"
14769 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14771 + goto :goto_22
14772 +.end method
14774 +.method public getAccounts()[Landroid/accounts/Account;
14775 + .registers 10
14777 + const/4 v5, 0x0
14779 + const/4 v3, 0x0
14781 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14783 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14785 + move-result-object v1
14787 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14789 + move-result v2
14791 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14793 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14795 + move-result-object v6
14797 + if-eqz v6, :cond_27
14799 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14801 + move-result v0
14803 + if-eqz v0, :cond_27
14805 + const-string v8, "[empty accounts list]"
14807 + new-array v7, v3, [Landroid/accounts/Account;
14809 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14811 + const/4 v3, 0x1
14813 + const-string v4, "accountsList"
14815 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14817 + :goto_26
14818 + return-object v7
14820 + :cond_27
14821 + const-string v8, "[real value]"
14823 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
14825 + move-result-object v7
14827 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14829 + const-string v4, "accountsList"
14831 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14833 + goto :goto_26
14834 +.end method
14836 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14837 + .registers 11
14839 + const/4 v5, 0x0
14841 + const/4 v3, 0x0
14843 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14845 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14847 + move-result-object v1
14849 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14851 + move-result v2
14853 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14855 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14857 + move-result-object v6
14859 + if-eqz v6, :cond_27
14861 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14863 + move-result v0
14865 + if-eqz v0, :cond_27
14867 + const-string v8, "[empty accounts list]"
14869 + new-array v7, v3, [Landroid/accounts/Account;
14871 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14873 + const/4 v3, 0x1
14875 + const-string v4, "accountsList"
14877 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14879 + :goto_26
14880 + return-object v7
14882 + :cond_27
14883 + const-string v8, "[real value]"
14885 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14887 + move-result-object v7
14889 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14891 + const-string v4, "accountsList"
14893 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14895 + goto :goto_26
14896 +.end method
14898 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14899 + .registers 14
14900 + .annotation system Ldalvik/annotation/Signature;
14901 + value = {
14902 + "(",
14903 + "Ljava/lang/String;",
14904 + "[",
14905 + "Ljava/lang/String;",
14906 + "Landroid/accounts/AccountManagerCallback",
14907 + "<[",
14908 + "Landroid/accounts/Account;",
14909 + ">;",
14910 + "Landroid/os/Handler;",
14911 + ")",
14912 + "Landroid/accounts/AccountManagerFuture",
14913 + "<[",
14914 + "Landroid/accounts/Account;",
14915 + ">;"
14917 + .end annotation
14919 + const/4 v5, 0x0
14921 + const/4 v3, 0x0
14923 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14925 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14927 + move-result-object v1
14929 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14931 + move-result v2
14933 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14935 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14937 + move-result-object v6
14939 + if-eqz v6, :cond_2c
14941 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14943 + move-result v0
14945 + if-eqz v0, :cond_2c
14947 + const-string v8, "[false]"
14949 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14951 + new-array v0, v3, [Landroid/accounts/Account;
14953 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14955 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14957 + const/4 v3, 0x1
14959 + const-string v4, "accountsList"
14961 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14963 + :goto_2b
14964 + return-object v7
14966 + :cond_2c
14967 + const-string v8, "[real value]"
14969 + 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;
14971 + move-result-object v7
14973 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14975 + const-string v4, "accountsList"
14977 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14979 + goto :goto_2b
14980 +.end method
14982 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14983 + .registers 16
14984 + .annotation system Ldalvik/annotation/Signature;
14985 + value = {
14986 + "(",
14987 + "Landroid/accounts/Account;",
14988 + "Ljava/lang/String;",
14989 + "Landroid/os/Bundle;",
14990 + "Landroid/app/Activity;",
14991 + "Landroid/accounts/AccountManagerCallback",
14992 + "<",
14993 + "Landroid/os/Bundle;",
14994 + ">;",
14995 + "Landroid/os/Handler;",
14996 + ")",
14997 + "Landroid/accounts/AccountManagerFuture",
14998 + "<",
14999 + "Landroid/os/Bundle;",
15000 + ">;"
15002 + .end annotation
15004 + const/4 v5, 0x0
15006 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15008 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15010 + move-result-object v1
15012 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15014 + move-result v2
15016 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15018 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15020 + move-result-object v6
15022 + if-eqz v6, :cond_2e
15024 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15026 + move-result v0
15028 + if-eqz v0, :cond_2e
15030 + const-string v8, "[empty]"
15032 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15034 + new-instance v0, Landroid/os/Bundle;
15036 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15038 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15040 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15042 + const/4 v3, 0x1
15044 + const-string v4, "authTokens"
15046 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15048 + :goto_2d
15049 + return-object v7
15051 + :cond_2e
15052 + const-string v8, "[real value]"
15054 + 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;
15056 + move-result-object v7
15058 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15060 + const/4 v3, 0x0
15062 + const-string v4, "authTokens"
15064 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15066 + goto :goto_2d
15067 +.end method
15069 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15070 + .registers 15
15071 + .annotation system Ldalvik/annotation/Signature;
15072 + value = {
15073 + "(",
15074 + "Landroid/accounts/Account;",
15075 + "Ljava/lang/String;",
15076 + "Z",
15077 + "Landroid/accounts/AccountManagerCallback",
15078 + "<",
15079 + "Landroid/os/Bundle;",
15080 + ">;",
15081 + "Landroid/os/Handler;",
15082 + ")",
15083 + "Landroid/accounts/AccountManagerFuture",
15084 + "<",
15085 + "Landroid/os/Bundle;",
15086 + ">;"
15088 + .end annotation
15090 + const/4 v5, 0x0
15092 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15094 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15096 + move-result-object v1
15098 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15100 + move-result v2
15102 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15104 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15106 + move-result-object v6
15108 + if-eqz v6, :cond_2e
15110 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15112 + move-result v0
15114 + if-eqz v0, :cond_2e
15116 + const-string v8, "[empty]"
15118 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15120 + new-instance v0, Landroid/os/Bundle;
15122 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15124 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15126 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15128 + const/4 v3, 0x1
15130 + const-string v4, "authTokens"
15132 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15134 + :goto_2d
15135 + return-object v7
15137 + :cond_2e
15138 + const-string v8, "[real value]"
15140 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15142 + move-result-object v7
15144 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15146 + const/4 v3, 0x0
15148 + const-string v4, "authTokens"
15150 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15152 + goto :goto_2d
15153 +.end method
15155 +.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;
15156 + .registers 18
15157 + .annotation system Ldalvik/annotation/Signature;
15158 + value = {
15159 + "(",
15160 + "Ljava/lang/String;",
15161 + "Ljava/lang/String;",
15162 + "[",
15163 + "Ljava/lang/String;",
15164 + "Landroid/app/Activity;",
15165 + "Landroid/os/Bundle;",
15166 + "Landroid/os/Bundle;",
15167 + "Landroid/accounts/AccountManagerCallback",
15168 + "<",
15169 + "Landroid/os/Bundle;",
15170 + ">;",
15171 + "Landroid/os/Handler;",
15172 + ")",
15173 + "Landroid/accounts/AccountManagerFuture",
15174 + "<",
15175 + "Landroid/os/Bundle;",
15176 + ">;"
15178 + .end annotation
15180 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15182 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15184 + move-result-object v1
15186 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15188 + move-result v2
15190 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15192 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15194 + move-result-object v6
15196 + if-eqz v6, :cond_2e
15198 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15200 + move-result v0
15202 + if-eqz v0, :cond_2e
15204 + const-string v8, "[empty]"
15206 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15208 + new-instance v0, Landroid/os/Bundle;
15210 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15212 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15214 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15216 + const/4 v3, 0x1
15218 + const-string v4, "authTokens"
15220 + const/4 v5, 0x0
15222 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15224 + :goto_2d
15225 + return-object v7
15227 + :cond_2e
15228 + const-string v8, "[real value]"
15230 + 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;
15232 + move-result-object v7
15234 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15236 + const/4 v3, 0x0
15238 + const-string v4, "authTokens"
15240 + const/4 v5, 0x0
15242 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15244 + goto :goto_2d
15245 +.end method
15247 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15248 + .registers 14
15249 + .annotation system Ldalvik/annotation/Signature;
15250 + value = {
15251 + "(",
15252 + "Landroid/accounts/Account;",
15253 + "[",
15254 + "Ljava/lang/String;",
15255 + "Landroid/accounts/AccountManagerCallback",
15256 + "<",
15257 + "Ljava/lang/Boolean;",
15258 + ">;",
15259 + "Landroid/os/Handler;",
15260 + ")",
15261 + "Landroid/accounts/AccountManagerFuture",
15262 + "<",
15263 + "Ljava/lang/Boolean;",
15264 + ">;"
15266 + .end annotation
15268 + const/4 v5, 0x0
15270 + const/4 v3, 0x0
15272 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15274 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15276 + move-result-object v1
15278 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15280 + move-result v2
15282 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15284 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15286 + move-result-object v6
15288 + if-eqz v6, :cond_2e
15290 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15292 + move-result v0
15294 + if-eqz v0, :cond_2e
15296 + const-string v8, "[false]"
15298 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15300 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
15302 + move-result-object v0
15304 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15306 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15308 + const/4 v3, 0x1
15310 + const-string v4, "accountsList"
15312 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15314 + :goto_2d
15315 + return-object v7
15317 + :cond_2e
15318 + const-string v8, "[real value]"
15320 + 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;
15322 + move-result-object v7
15324 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15326 + const-string v4, "accountsList"
15328 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15330 + goto :goto_2d
15331 +.end method
15332 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
15333 --- stock_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 16:00:00.000000000 -0800
15334 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-07-02 10:16:51.042019670 -0700
15335 @@ -0,0 +1,1087 @@
15336 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
15337 +.super Ljava/lang/Object;
15338 +.source "PrivacyActivityManagerService.java"
15341 +# static fields
15342 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
15344 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
15346 +.field private static tmpIn:Landroid/content/Intent;
15348 +.field private static tmpInHash:J
15350 +.field private static tmpInReceivers:I
15352 +.field private static tmpMms:Landroid/content/Intent;
15354 +.field private static tmpMmsHash:J
15356 +.field private static tmpMmsReceivers:I
15358 +.field private static tmpOut:Landroid/content/Intent;
15360 +.field private static tmpOutHash:J
15362 +.field private static tmpOutReceivers:I
15364 +.field private static tmpPackageAddedHash:J
15366 +.field private static tmpSms:Landroid/content/Intent;
15368 +.field private static tmpSmsHash:J
15370 +.field private static tmpSmsReceivers:I
15373 +# direct methods
15374 +.method static constructor <clinit>()V
15375 + .registers 3
15377 + const/4 v2, 0x0
15379 + const-wide/16 v0, 0x0
15381 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15383 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15385 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15387 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15389 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15391 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15393 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15395 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
15397 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
15399 + return-void
15400 +.end method
15402 +.method public constructor <init>()V
15403 + .registers 1
15405 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15407 + return-void
15408 +.end method
15410 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
15411 + .registers 22
15413 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15415 + if-nez v2, :cond_11
15417 + const-string/jumbo v2, "privacy"
15419 + move-object/from16 v0, p3
15421 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
15423 + move-result-object v2
15425 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
15427 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15429 + :cond_11
15430 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
15432 + move-result-object v9
15434 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
15436 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15438 + move-result v2
15440 + if-eqz v2, :cond_ad
15442 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15444 + move-object/from16 v0, p0
15446 + move/from16 v1, p1
15448 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15450 + move-result-object v8
15452 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15454 + move-object/from16 v0, p2
15456 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15458 + move-result-object v16
15460 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15462 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15464 + move-result-wide v4
15466 + cmp-long v2, v2, v4
15468 + if-eqz v2, :cond_49
15470 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15472 + move-result-object v2
15474 + check-cast v2, Landroid/content/Intent;
15476 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15478 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15480 + move-result-wide v2
15482 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15484 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15486 + :cond_49
15487 + if-eqz v8, :cond_76
15489 + :try_start_4b
15490 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
15492 + move-result v2
15494 + if-eqz v2, :cond_76
15496 + const-string v16, ""
15498 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15500 + move-object/from16 v0, p2
15502 + move-object/from16 v1, v16
15504 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15506 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15508 + const/4 v5, 0x1
15510 + const-string/jumbo v6, "outgoingCall"
15512 + const/4 v7, 0x0
15514 + move-object/from16 v3, p0
15516 + move/from16 v4, p1
15518 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15519 + :try_end_6a
15520 + .catch Ljava/lang/Exception; {:try_start_4b .. :try_end_6a} :catch_a0
15522 + :cond_6a
15523 + :goto_6a
15524 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15526 + const/4 v3, 0x1
15528 + if-le v2, v3, :cond_a9
15530 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15532 + add-int/lit8 v2, v2, -0x1
15534 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15536 + :cond_75
15537 + :goto_75
15538 + return-void
15540 + :cond_76
15541 + :try_start_76
15542 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15544 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15546 + move-result-wide v4
15548 + cmp-long v2, v2, v4
15550 + if-nez v2, :cond_6a
15552 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15554 + const-string v3, "android.intent.extra.PHONE_NUMBER"
15556 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15558 + move-result-object v16
15560 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15562 + move-object/from16 v0, p2
15564 + move-object/from16 v1, v16
15566 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15568 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15570 + const/4 v5, 0x0
15572 + const-string/jumbo v6, "outgoingCall"
15574 + const/4 v7, 0x0
15576 + move-object/from16 v3, p0
15578 + move/from16 v4, p1
15580 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15581 + :try_end_9f
15582 + .catch Ljava/lang/Exception; {:try_start_76 .. :try_end_9f} :catch_a0
15584 + goto :goto_6a
15586 + :catch_a0
15587 + move-exception v13
15589 + const-string v2, "PrivacyActivityManagerService"
15591 + const-string v3, "failed to enforce intent broadcast permission"
15593 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15595 + goto :goto_6a
15597 + :cond_a9
15598 + const/4 v2, 0x0
15600 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15602 + goto :goto_75
15604 + :cond_ad
15605 + const-string v2, "android.intent.action.PHONE_STATE"
15607 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15609 + move-result v2
15611 + if-eqz v2, :cond_14d
15613 + const-string v2, "incoming_number"
15615 + move-object/from16 v0, p2
15617 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15619 + move-result-object v16
15621 + if-eqz v16, :cond_75
15623 + invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->isEmpty()Z
15625 + move-result v2
15627 + if-nez v2, :cond_75
15629 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15631 + move-object/from16 v0, p0
15633 + move/from16 v1, p1
15635 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15637 + move-result-object v8
15639 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15641 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15643 + move-result-wide v4
15645 + cmp-long v2, v2, v4
15647 + if-eqz v2, :cond_e9
15649 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15651 + move-result-object v2
15653 + check-cast v2, Landroid/content/Intent;
15655 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15657 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15659 + move-result-wide v2
15661 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15663 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15665 + :cond_e9
15666 + if-eqz v8, :cond_116
15668 + :try_start_eb
15669 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
15671 + move-result v2
15673 + if-eqz v2, :cond_116
15675 + const-string v16, ""
15677 + const-string v2, "incoming_number"
15679 + move-object/from16 v0, p2
15681 + move-object/from16 v1, v16
15683 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15685 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15687 + const/4 v5, 0x1
15689 + const-string v6, "incomingCall"
15691 + const/4 v7, 0x0
15693 + move-object/from16 v3, p0
15695 + move/from16 v4, p1
15697 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15698 + :try_end_109
15699 + .catch Ljava/lang/Exception; {:try_start_eb .. :try_end_109} :catch_13f
15701 + :cond_109
15702 + :goto_109
15703 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15705 + const/4 v3, 0x1
15707 + if-le v2, v3, :cond_148
15709 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15711 + add-int/lit8 v2, v2, -0x1
15713 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15715 + goto/16 :goto_75
15717 + :cond_116
15718 + :try_start_116
15719 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15721 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15723 + move-result-wide v4
15725 + cmp-long v2, v2, v4
15727 + if-nez v2, :cond_109
15729 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15731 + const-string v3, "incoming_number"
15733 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15735 + move-result-object v16
15737 + const-string v2, "incoming_number"
15739 + move-object/from16 v0, p2
15741 + move-object/from16 v1, v16
15743 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15745 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15747 + const/4 v5, 0x0
15749 + const-string v6, "incomingCall"
15751 + const/4 v7, 0x0
15753 + move-object/from16 v3, p0
15755 + move/from16 v4, p1
15757 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15758 + :try_end_13e
15759 + .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_13e} :catch_13f
15761 + goto :goto_109
15763 + :catch_13f
15764 + move-exception v13
15766 + const-string v2, "PrivacyActivityManagerService"
15768 + const-string v3, "failed to enforce intent broadcast permission"
15770 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15772 + goto :goto_109
15774 + :cond_148
15775 + const/4 v2, 0x0
15777 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15779 + goto/16 :goto_75
15781 + :cond_14d
15782 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
15784 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15786 + move-result v2
15788 + if-eqz v2, :cond_222
15790 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15792 + move-object/from16 v0, p0
15794 + move/from16 v1, p1
15796 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15798 + move-result-object v8
15800 + const-string v16, "[real]"
15802 + const-string/jumbo v2, "pdus"
15804 + move-object/from16 v0, p2
15806 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15808 + move-result-object v2
15810 + check-cast v2, [Ljava/lang/Object;
15812 + move-object v15, v2
15814 + check-cast v15, [Ljava/lang/Object;
15816 + if-eqz v15, :cond_1cd
15818 + const/4 v2, 0x0
15820 + aget-object v2, v15, v2
15822 + check-cast v2, [B
15824 + check-cast v2, [B
15826 + move-object v12, v2
15828 + :goto_179
15829 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15831 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15833 + move-result-wide v4
15835 + cmp-long v2, v2, v4
15837 + if-eqz v2, :cond_193
15839 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15841 + move-result-object v2
15843 + check-cast v2, Landroid/content/Intent;
15845 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15847 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15849 + move-result-wide v2
15851 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15853 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15855 + :cond_193
15856 + if-eqz v8, :cond_1cf
15858 + :try_start_195
15859 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
15861 + move-result v2
15863 + if-eqz v2, :cond_1cf
15865 + const-string v16, "[empty]"
15867 + const/4 v2, 0x1
15869 + new-array v14, v2, [Ljava/lang/Object;
15871 + const/4 v2, 0x0
15873 + const/16 v3, 0x10
15875 + new-array v3, v3, [B
15877 + fill-array-data v3, :array_350
15879 + aput-object v3, v14, v2
15881 + const-string/jumbo v2, "pdus"
15883 + move-object/from16 v0, p2
15885 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15887 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15889 + const/4 v5, 0x1
15891 + const-string/jumbo v6, "sms"
15893 + const/4 v7, 0x0
15895 + move-object/from16 v3, p0
15897 + move/from16 v4, p1
15899 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15900 + :try_end_1c0
15901 + .catch Ljava/lang/Exception; {:try_start_195 .. :try_end_1c0} :catch_212
15903 + :cond_1c0
15904 + :goto_1c0
15905 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15907 + const/4 v3, 0x1
15909 + if-le v2, v3, :cond_21d
15911 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15913 + add-int/lit8 v2, v2, -0x1
15915 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15917 + goto/16 :goto_75
15919 + :cond_1cd
15920 + const/4 v12, 0x0
15922 + goto :goto_179
15924 + :cond_1cf
15925 + :try_start_1cf
15926 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15928 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15930 + move-result-wide v4
15932 + cmp-long v2, v2, v4
15934 + if-nez v2, :cond_1c0
15936 + const-string/jumbo v2, "pdus"
15938 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15940 + const-string/jumbo v4, "pdus"
15942 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15944 + move-result-object v3
15946 + move-object/from16 v0, p2
15948 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15950 + const-string/jumbo v2, "pdus"
15952 + move-object/from16 v0, p2
15954 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15956 + move-result-object v2
15958 + check-cast v2, [Ljava/lang/Object;
15960 + move-object v0, v2
15962 + check-cast v0, [Ljava/lang/Object;
15964 + move-object v15, v0
15966 + if-eqz v15, :cond_21b
15968 + const/4 v2, 0x0
15970 + aget-object v2, v15, v2
15972 + check-cast v2, [B
15974 + check-cast v2, [B
15976 + move-object v12, v2
15978 + :goto_203
15979 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15981 + const/4 v5, 0x0
15983 + const-string/jumbo v6, "sms"
15985 + const/4 v7, 0x0
15987 + move-object/from16 v3, p0
15989 + move/from16 v4, p1
15991 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15992 + :try_end_211
15993 + .catch Ljava/lang/Exception; {:try_start_1cf .. :try_end_211} :catch_212
15995 + goto :goto_1c0
15997 + :catch_212
15998 + move-exception v13
16000 + const-string v2, "PrivacyActivityManagerService"
16002 + const-string v3, "failed to enforce intent broadcast permission"
16004 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16006 + goto :goto_1c0
16008 + :cond_21b
16009 + const/4 v12, 0x0
16011 + goto :goto_203
16013 + :cond_21d
16014 + const/4 v2, 0x0
16016 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16018 + goto/16 :goto_75
16020 + :cond_222
16021 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
16023 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16025 + move-result v2
16027 + if-nez v2, :cond_232
16029 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
16031 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16033 + move-result v2
16035 + if-eqz v2, :cond_2ff
16037 + :cond_232
16038 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16040 + move-object/from16 v0, p0
16042 + move/from16 v1, p1
16044 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16046 + move-result-object v8
16048 + const-string v16, "[real]"
16050 + const-string/jumbo v2, "pdus"
16052 + move-object/from16 v0, p2
16054 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16056 + move-result-object v2
16058 + check-cast v2, [Ljava/lang/Object;
16060 + move-object v15, v2
16062 + check-cast v15, [Ljava/lang/Object;
16064 + if-eqz v15, :cond_2aa
16066 + const/4 v2, 0x0
16068 + aget-object v2, v15, v2
16070 + check-cast v2, [B
16072 + check-cast v2, [B
16074 + move-object v12, v2
16076 + :goto_256
16077 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16079 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16081 + move-result-wide v4
16083 + cmp-long v2, v2, v4
16085 + if-eqz v2, :cond_270
16087 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
16089 + move-result-object v2
16091 + check-cast v2, Landroid/content/Intent;
16093 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16095 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16097 + move-result-wide v2
16099 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16101 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16103 + :cond_270
16104 + if-eqz v8, :cond_2ac
16106 + :try_start_272
16107 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16109 + move-result v2
16111 + if-eqz v2, :cond_2ac
16113 + const-string v16, "[empty]"
16115 + const/4 v2, 0x1
16117 + new-array v14, v2, [Ljava/lang/Object;
16119 + const/4 v2, 0x0
16121 + const/16 v3, 0x10
16123 + new-array v3, v3, [B
16125 + fill-array-data v3, :array_35c
16127 + aput-object v3, v14, v2
16129 + const-string/jumbo v2, "pdus"
16131 + move-object/from16 v0, p2
16133 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16135 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16137 + const/4 v5, 0x1
16139 + const-string/jumbo v6, "mms"
16141 + const/4 v7, 0x0
16143 + move-object/from16 v3, p0
16145 + move/from16 v4, p1
16147 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16148 + :try_end_29d
16149 + .catch Ljava/lang/Exception; {:try_start_272 .. :try_end_29d} :catch_2ef
16151 + :cond_29d
16152 + :goto_29d
16153 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16155 + const/4 v3, 0x1
16157 + if-le v2, v3, :cond_2fa
16159 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16161 + add-int/lit8 v2, v2, -0x1
16163 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16165 + goto/16 :goto_75
16167 + :cond_2aa
16168 + const/4 v12, 0x0
16170 + goto :goto_256
16172 + :cond_2ac
16173 + :try_start_2ac
16174 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16176 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16178 + move-result-wide v4
16180 + cmp-long v2, v2, v4
16182 + if-nez v2, :cond_29d
16184 + const-string/jumbo v2, "pdus"
16186 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16188 + const-string/jumbo v4, "pdus"
16190 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16192 + move-result-object v3
16194 + move-object/from16 v0, p2
16196 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16198 + const-string/jumbo v2, "pdus"
16200 + move-object/from16 v0, p2
16202 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16204 + move-result-object v2
16206 + check-cast v2, [Ljava/lang/Object;
16208 + move-object v0, v2
16210 + check-cast v0, [Ljava/lang/Object;
16212 + move-object v15, v0
16214 + if-eqz v15, :cond_2f8
16216 + const/4 v2, 0x0
16218 + aget-object v2, v15, v2
16220 + check-cast v2, [B
16222 + check-cast v2, [B
16224 + move-object v12, v2
16226 + :goto_2e0
16227 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16229 + const/4 v5, 0x0
16231 + const-string/jumbo v6, "mms"
16233 + const/4 v7, 0x0
16235 + move-object/from16 v3, p0
16237 + move/from16 v4, p1
16239 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16240 + :try_end_2ee
16241 + .catch Ljava/lang/Exception; {:try_start_2ac .. :try_end_2ee} :catch_2ef
16243 + goto :goto_29d
16245 + :catch_2ef
16246 + move-exception v13
16248 + const-string v2, "PrivacyActivityManagerService"
16250 + const-string v3, "failed to enforce intent broadcast permission"
16252 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16254 + goto :goto_29d
16256 + :cond_2f8
16257 + const/4 v12, 0x0
16259 + goto :goto_2e0
16261 + :cond_2fa
16262 + const/4 v2, 0x0
16264 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16266 + goto/16 :goto_75
16268 + :cond_2ff
16269 + const-string v2, "android.intent.action.BOOT_COMPLETED"
16271 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16273 + move-result v2
16275 + if-eqz v2, :cond_30e
16277 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16279 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
16281 + goto/16 :goto_75
16283 + :cond_30e
16284 + const-string v2, "android.intent.action.PACKAGE_ADDED"
16286 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16288 + move-result v2
16290 + if-eqz v2, :cond_75
16292 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16294 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16296 + move-result-wide v4
16298 + cmp-long v2, v2, v4
16300 + if-eqz v2, :cond_75
16302 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16304 + move-result-wide v2
16306 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16308 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
16310 + move-result-object v2
16312 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
16314 + move-result-object v10
16316 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
16318 + move-result-object v2
16320 + const-string v3, "android.intent.extra.UID"
16322 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
16324 + move-result v11
16326 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16328 + invoke-virtual {v2, v10, v11}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16330 + move-result-object v8
16332 + if-eqz v8, :cond_75
16334 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
16336 + move-result v2
16338 + if-eq v2, v11, :cond_75
16340 + invoke-virtual {v8, v11}, Landroid/privacy/PrivacySettings;->setUid(I)V
16342 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16344 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16346 + goto/16 :goto_75
16348 + :array_350
16349 + .array-data 0x1
16350 + 0x0t
16351 + 0x20t
16352 + 0x1t
16353 + 0x81t
16354 + 0xf0t
16355 + 0x0t
16356 + 0x0t
16357 + 0x11t
16358 + 0x90t
16359 + 0x1t
16360 + 0x30t
16361 + 0x22t
16362 + 0x22t
16363 + 0x80t
16364 + 0x1t
16365 + 0x20t
16366 + .end array-data
16368 + :array_35c
16369 + .array-data 0x1
16370 + 0x0t
16371 + 0x20t
16372 + 0x1t
16373 + 0x81t
16374 + 0xf0t
16375 + 0x0t
16376 + 0x0t
16377 + 0x11t
16378 + 0x90t
16379 + 0x1t
16380 + 0x30t
16381 + 0x22t
16382 + 0x22t
16383 + 0x80t
16384 + 0x1t
16385 + 0x20t
16386 + .end array-data
16387 +.end method
16389 +.method private static hashCode(Landroid/content/Intent;)J
16390 + .registers 7
16392 + const-wide/16 v3, 0x0
16394 + const-string/jumbo v2, "privacy_hash"
16396 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
16398 + move-result-wide v0
16400 + cmp-long v2, v0, v3
16402 + if-nez v2, :cond_1e
16404 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
16406 + move-result v2
16408 + int-to-long v2, v2
16410 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
16412 + move-result-wide v4
16414 + add-long v0, v2, v4
16416 + const-string/jumbo v2, "privacy_hash"
16418 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
16420 + :cond_1e
16421 + return-wide v0
16422 +.end method
16423 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
16424 --- stock_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 16:00:00.000000000 -0800
16425 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-07-02 10:16:51.042019670 -0700
16426 @@ -0,0 +1,624 @@
16427 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
16428 +.super Ljava/lang/Object;
16429 +.source "PrivacyContentResolver.java"
16432 +# static fields
16433 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
16435 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
16438 +# direct methods
16439 +.method public constructor <init>()V
16440 + .registers 1
16442 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16444 + return-void
16445 +.end method
16447 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
16448 + .registers 8
16450 + new-instance v4, Ljava/lang/StringBuffer;
16452 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
16454 + if-eqz p0, :cond_2d
16456 + move-object v0, p0
16458 + array-length v3, v0
16460 + const/4 v2, 0x0
16462 + :goto_a
16463 + if-ge v2, v3, :cond_30
16465 + aget-object v1, v0, v2
16467 + new-instance v5, Ljava/lang/StringBuilder;
16469 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
16471 + const-string v6, "["
16473 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16475 + move-result-object v5
16477 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16479 + move-result-object v5
16481 + const-string v6, "]"
16483 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16485 + move-result-object v5
16487 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
16489 + move-result-object v5
16491 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
16493 + add-int/lit8 v2, v2, 0x1
16495 + goto :goto_a
16497 + :cond_2d
16498 + const-string v5, ""
16500 + :goto_2f
16501 + return-object v5
16503 + :cond_30
16504 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
16506 + move-result-object v5
16508 + goto :goto_2f
16509 +.end method
16511 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
16512 + .registers 21
16513 + .annotation system Ldalvik/annotation/Throws;
16514 + value = {
16515 + Landroid/os/RemoteException;
16517 + .end annotation
16519 + if-eqz p0, :cond_1e4
16521 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16523 + if-nez v1, :cond_13
16525 + const-string/jumbo v1, "privacy"
16527 + move-object/from16 v0, p2
16529 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
16531 + move-result-object v1
16533 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
16535 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16537 + :cond_13
16538 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
16540 + move-result-object v2
16542 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
16544 + move-result v3
16546 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16548 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16550 + move-result-object v7
16552 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16554 + move-result-object v9
16556 + const-string v15, "[real]"
16558 + move-object/from16 v13, p3
16560 + if-eqz v9, :cond_54
16562 + const-string v1, "contacts"
16564 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16566 + move-result v1
16568 + if-nez v1, :cond_3b
16570 + const-string v1, "com.android.contacts"
16572 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16574 + move-result v1
16576 + if-eqz v1, :cond_ab
16578 + :cond_3b
16579 + if-eqz v7, :cond_54
16581 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16583 + move-result v1
16585 + const/4 v4, 0x1
16587 + if-ne v1, v4, :cond_55
16589 + const-string v15, "[empty]"
16591 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16593 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16595 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16597 + const/4 v4, 0x1
16599 + const-string v5, "contacts"
16601 + const/4 v6, 0x0
16603 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16605 + :cond_54
16606 + :goto_54
16607 + return-object v13
16609 + :cond_55
16610 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16612 + move-result v1
16614 + const/4 v4, 0x2
16616 + if-ne v1, v4, :cond_a1
16618 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
16620 + move-result-object v1
16622 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
16624 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
16626 + move-result-object v4
16628 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
16630 + move-result v1
16632 + if-eqz v1, :cond_a1
16634 + const/4 v11, 0x0
16636 + if-eqz p1, :cond_82
16638 + move-object/from16 v8, p1
16640 + array-length v12, v8
16642 + const/4 v10, 0x0
16644 + :goto_73
16645 + if-ge v10, v12, :cond_82
16647 + aget-object v16, v8, v10
16649 + const-string v1, "_id"
16651 + move-object/from16 v0, v16
16653 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16655 + move-result v1
16657 + if-eqz v1, :cond_93
16659 + const/4 v11, 0x1
16661 + :cond_82
16662 + if-nez v11, :cond_96
16664 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16666 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16668 + :goto_89
16669 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16671 + const/4 v4, 0x2
16673 + const-string v5, "contacts"
16675 + const/4 v6, 0x0
16677 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16679 + goto :goto_54
16681 + :cond_93
16682 + add-int/lit8 v10, v10, 0x1
16684 + goto :goto_73
16686 + :cond_96
16687 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
16689 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
16691 + move-result-object v1
16693 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
16695 + move-object v13, v14
16697 + goto :goto_89
16699 + :cond_a1
16700 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16702 + const/4 v4, 0x0
16704 + const-string v5, "contacts"
16706 + const/4 v6, 0x0
16708 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16710 + goto :goto_54
16712 + :cond_ab
16713 + const-string v1, "com.android.calendar"
16715 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16717 + move-result v1
16719 + if-eqz v1, :cond_d8
16721 + if-eqz v7, :cond_cd
16723 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
16725 + move-result v1
16727 + const/4 v4, 0x1
16729 + if-ne v1, v4, :cond_cd
16731 + const-string v15, "[empty]"
16733 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16735 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16737 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16739 + const/4 v4, 0x1
16741 + const-string v5, "calendar"
16743 + const/4 v6, 0x0
16745 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16747 + goto :goto_54
16749 + :cond_cd
16750 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16752 + const/4 v4, 0x0
16754 + const-string v5, "calendar"
16756 + const/4 v6, 0x0
16758 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16760 + goto/16 :goto_54
16762 + :cond_d8
16763 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
16765 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16767 + move-result-object v1
16769 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16771 + move-result v1
16773 + if-eqz v1, :cond_10c
16775 + if-eqz v7, :cond_100
16777 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16779 + move-result v1
16781 + const/4 v4, 0x1
16783 + if-ne v1, v4, :cond_100
16785 + const-string v15, "[empty]"
16787 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16789 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16791 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16793 + const/4 v4, 0x1
16795 + const-string/jumbo v5, "mms"
16797 + const/4 v6, 0x0
16799 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16801 + goto/16 :goto_54
16803 + :cond_100
16804 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16806 + const/4 v4, 0x0
16808 + const-string/jumbo v5, "mms"
16810 + const/4 v6, 0x0
16812 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16814 + goto/16 :goto_54
16816 + :cond_10c
16817 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
16819 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16821 + move-result-object v1
16823 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16825 + move-result v1
16827 + if-eqz v1, :cond_140
16829 + if-eqz v7, :cond_134
16831 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16833 + move-result v1
16835 + const/4 v4, 0x1
16837 + if-ne v1, v4, :cond_134
16839 + const-string v15, "[empty]"
16841 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16843 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16845 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16847 + const/4 v4, 0x1
16849 + const-string/jumbo v5, "sms"
16851 + const/4 v6, 0x0
16853 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16855 + goto/16 :goto_54
16857 + :cond_134
16858 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16860 + const/4 v4, 0x0
16862 + const-string/jumbo v5, "sms"
16864 + const/4 v6, 0x0
16866 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16868 + goto/16 :goto_54
16870 + :cond_140
16871 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
16873 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16875 + move-result-object v1
16877 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16879 + move-result v1
16881 + if-nez v1, :cond_155
16883 + const-string/jumbo v1, "mms-sms-v2"
16885 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16887 + move-result v1
16889 + if-eqz v1, :cond_184
16891 + :cond_155
16892 + if-eqz v7, :cond_178
16894 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16896 + move-result v1
16898 + const/4 v4, 0x1
16900 + if-eq v1, v4, :cond_165
16902 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16904 + move-result v1
16906 + const/4 v4, 0x1
16908 + if-ne v1, v4, :cond_178
16910 + :cond_165
16911 + const-string v15, "[empty]"
16913 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16915 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16917 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16919 + const/4 v4, 0x1
16921 + const-string/jumbo v5, "mmsSms"
16923 + const/4 v6, 0x0
16925 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16927 + goto/16 :goto_54
16929 + :cond_178
16930 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16932 + const/4 v4, 0x0
16934 + const-string/jumbo v5, "mmsSms"
16936 + const/4 v6, 0x0
16938 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16940 + goto/16 :goto_54
16942 + :cond_184
16943 + const-string v1, "call_log"
16945 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16947 + move-result v1
16949 + if-eqz v1, :cond_1b2
16951 + if-eqz v7, :cond_1a7
16953 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
16955 + move-result v1
16957 + const/4 v4, 0x1
16959 + if-ne v1, v4, :cond_1a7
16961 + const-string v15, "[empty]"
16963 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16965 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16967 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16969 + const/4 v4, 0x1
16971 + const-string v5, "callLog"
16973 + const/4 v6, 0x0
16975 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16977 + goto/16 :goto_54
16979 + :cond_1a7
16980 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16982 + const/4 v4, 0x0
16984 + const-string v5, "callLog"
16986 + const/4 v6, 0x0
16988 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16990 + goto/16 :goto_54
16992 + :cond_1b2
16993 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
16995 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16997 + move-result-object v1
16999 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17001 + move-result v1
17003 + if-eqz v1, :cond_54
17005 + if-eqz v7, :cond_1d9
17007 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
17009 + move-result v1
17011 + const/4 v4, 0x1
17013 + if-ne v1, v4, :cond_1d9
17015 + const-string v15, "[empty]"
17017 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17019 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17021 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17023 + const/4 v4, 0x1
17025 + const-string v5, "bookmarks"
17027 + const/4 v6, 0x0
17029 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17031 + goto/16 :goto_54
17033 + :cond_1d9
17034 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17036 + const/4 v4, 0x0
17038 + const-string v5, "bookmarks"
17040 + const/4 v6, 0x0
17042 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17044 + goto/16 :goto_54
17046 + :cond_1e4
17047 + move-object/from16 v13, p3
17049 + goto/16 :goto_54
17050 +.end method
17051 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyCursor.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyCursor.smali
17052 --- stock_framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 16:00:00.000000000 -0800
17053 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-07-02 10:16:51.043019908 -0700
17054 @@ -0,0 +1,1225 @@
17055 +.class public Landroid/privacy/surrogate/PrivacyCursor;
17056 +.super Ljava/lang/Object;
17057 +.source "PrivacyCursor.java"
17059 +# interfaces
17060 +.implements Landroid/database/Cursor;
17063 +# static fields
17064 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
17067 +# instance fields
17068 +.field private allowedIdMapping:[I
17070 +.field private allowedIds:[I
17072 +.field private realCursor:Landroid/database/Cursor;
17075 +# direct methods
17076 +.method public constructor <init>()V
17077 + .registers 1
17079 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17081 + return-void
17082 +.end method
17084 +.method public constructor <init>(Landroid/database/Cursor;[I)V
17085 + .registers 7
17087 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17089 + if-eqz p2, :cond_8
17091 + array-length v2, p2
17093 + if-nez v2, :cond_9
17095 + :cond_8
17096 + const/4 p1, 0x0
17098 + :cond_9
17099 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17101 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17103 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17105 + if-eqz v2, :cond_3f
17107 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17109 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
17111 + move-result v0
17113 + array-length v2, p2
17115 + new-array v2, v2, [I
17117 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17119 + const/4 v1, 0x0
17121 + :cond_1d
17122 + :goto_1d
17123 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17125 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
17127 + move-result v2
17129 + if-eqz v2, :cond_3a
17131 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17133 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17135 + move-result v2
17137 + if-eqz v2, :cond_1d
17139 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17141 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17143 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17145 + move-result v3
17147 + aput v3, v2, v1
17149 + add-int/lit8 v1, v1, 0x1
17151 + goto :goto_1d
17153 + :cond_3a
17154 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17156 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
17158 + :cond_3f
17159 + return-void
17160 +.end method
17162 +.method private getContactId(Landroid/database/Cursor;)I
17163 + .registers 5
17165 + const-string v2, "_id"
17167 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17169 + move-result v0
17171 + const/4 v1, -0x1
17173 + const/4 v2, -0x1
17175 + if-eq v0, v2, :cond_e
17177 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
17179 + move-result v1
17181 + :cond_e
17182 + return v1
17183 +.end method
17185 +.method private getMappedPos(I)I
17186 + .registers 4
17188 + const/4 v0, 0x0
17190 + :goto_1
17191 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17193 + array-length v1, v1
17195 + if-ge v0, v1, :cond_10
17197 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17199 + aget v1, v1, v0
17201 + if-ne v1, p1, :cond_d
17203 + :goto_c
17204 + return v0
17206 + :cond_d
17207 + add-int/lit8 v0, v0, 0x1
17209 + goto :goto_1
17211 + :cond_10
17212 + const/4 v0, -0x1
17214 + goto :goto_c
17215 +.end method
17217 +.method private isAllowed(I)Z
17218 + .registers 7
17220 + const/4 v4, 0x0
17222 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17224 + array-length v3, v0
17226 + const/4 v2, 0x0
17228 + :goto_5
17229 + if-ge v2, v3, :cond_c
17231 + aget v1, v0, v2
17233 + if-ne p1, v1, :cond_d
17235 + const/4 v4, 0x1
17237 + :cond_c
17238 + return v4
17240 + :cond_d
17241 + add-int/lit8 v2, v2, 0x1
17243 + goto :goto_5
17244 +.end method
17246 +.method private isAllowed(Landroid/database/Cursor;)Z
17247 + .registers 3
17249 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
17251 + move-result v0
17253 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
17255 + move-result v0
17257 + return v0
17258 +.end method
17261 +# virtual methods
17262 +.method public close()V
17263 + .registers 2
17265 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17267 + if-eqz v0, :cond_9
17269 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17271 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
17273 + :cond_9
17274 + return-void
17275 +.end method
17277 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17278 + .registers 4
17280 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17282 + if-eqz v0, :cond_9
17284 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17286 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17288 + :cond_9
17289 + return-void
17290 +.end method
17292 +.method public deactivate()V
17293 + .registers 2
17295 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17297 + if-eqz v0, :cond_9
17299 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17301 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
17303 + :cond_9
17304 + return-void
17305 +.end method
17307 +.method public getBlob(I)[B
17308 + .registers 3
17310 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17312 + if-eqz v0, :cond_b
17314 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17316 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
17318 + move-result-object v0
17320 + :goto_a
17321 + return-object v0
17323 + :cond_b
17324 + const/4 v0, 0x0
17326 + new-array v0, v0, [B
17328 + goto :goto_a
17329 +.end method
17331 +.method public getColumnCount()I
17332 + .registers 2
17334 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17336 + if-eqz v0, :cond_b
17338 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17340 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
17342 + move-result v0
17344 + :goto_a
17345 + return v0
17347 + :cond_b
17348 + const/4 v0, 0x0
17350 + goto :goto_a
17351 +.end method
17353 +.method public getColumnIndex(Ljava/lang/String;)I
17354 + .registers 3
17356 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17358 + if-eqz v0, :cond_b
17360 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17362 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17364 + move-result v0
17366 + :goto_a
17367 + return v0
17369 + :cond_b
17370 + const/4 v0, -0x1
17372 + goto :goto_a
17373 +.end method
17375 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
17376 + .registers 3
17377 + .annotation system Ldalvik/annotation/Throws;
17378 + value = {
17379 + Ljava/lang/IllegalArgumentException;
17381 + .end annotation
17383 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17385 + if-eqz v0, :cond_b
17387 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17389 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
17391 + move-result v0
17393 + :goto_a
17394 + return v0
17396 + :cond_b
17397 + const/4 v0, -0x1
17399 + goto :goto_a
17400 +.end method
17402 +.method public getColumnName(I)Ljava/lang/String;
17403 + .registers 3
17405 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17407 + if-eqz v0, :cond_b
17409 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17411 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
17413 + move-result-object v0
17415 + :goto_a
17416 + return-object v0
17418 + :cond_b
17419 + const-string v0, ""
17421 + goto :goto_a
17422 +.end method
17424 +.method public getColumnNames()[Ljava/lang/String;
17425 + .registers 4
17427 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17429 + if-eqz v0, :cond_b
17431 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17433 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnNames()[Ljava/lang/String;
17435 + move-result-object v0
17437 + :goto_a
17438 + return-object v0
17440 + :cond_b
17441 + const/4 v0, 0x1
17443 + new-array v0, v0, [Ljava/lang/String;
17445 + const/4 v1, 0x0
17447 + const-string v2, ""
17449 + aput-object v2, v0, v1
17451 + goto :goto_a
17452 +.end method
17454 +.method public getCount()I
17455 + .registers 4
17457 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17459 + if-eqz v0, :cond_23
17461 + const-string v0, "PrivacyCursor"
17463 + new-instance v1, Ljava/lang/StringBuilder;
17465 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17467 + const-string v2, "getCount: "
17469 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17471 + move-result-object v1
17473 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17475 + array-length v2, v2
17477 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17479 + move-result-object v1
17481 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17483 + move-result-object v1
17485 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17487 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17489 + array-length v0, v0
17491 + :goto_22
17492 + return v0
17494 + :cond_23
17495 + const/4 v0, 0x0
17497 + goto :goto_22
17498 +.end method
17500 +.method public getDouble(I)D
17501 + .registers 4
17503 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17505 + if-eqz v0, :cond_b
17507 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17509 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
17511 + move-result-wide v0
17513 + :goto_a
17514 + return-wide v0
17516 + :cond_b
17517 + const-wide/16 v0, 0x0
17519 + goto :goto_a
17520 +.end method
17522 +.method public getExtras()Landroid/os/Bundle;
17523 + .registers 2
17525 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17527 + if-eqz v0, :cond_b
17529 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17531 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
17533 + move-result-object v0
17535 + :goto_a
17536 + return-object v0
17538 + :cond_b
17539 + new-instance v0, Landroid/os/Bundle;
17541 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
17543 + goto :goto_a
17544 +.end method
17546 +.method public getFloat(I)F
17547 + .registers 3
17549 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17551 + if-eqz v0, :cond_b
17553 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17555 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
17557 + move-result v0
17559 + :goto_a
17560 + return v0
17562 + :cond_b
17563 + const/4 v0, 0x0
17565 + goto :goto_a
17566 +.end method
17568 +.method public getInt(I)I
17569 + .registers 4
17571 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17573 + if-eqz v1, :cond_b
17575 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17577 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
17579 + move-result v0
17581 + :goto_a
17582 + return v0
17584 + :cond_b
17585 + const/4 v0, 0x0
17587 + goto :goto_a
17588 +.end method
17590 +.method public getLong(I)J
17591 + .registers 4
17593 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17595 + if-eqz v0, :cond_b
17597 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17599 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
17601 + move-result-wide v0
17603 + :goto_a
17604 + return-wide v0
17606 + :cond_b
17607 + const-wide/16 v0, 0x0
17609 + goto :goto_a
17610 +.end method
17612 +.method public getPosition()I
17613 + .registers 5
17615 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17617 + if-eqz v1, :cond_37
17619 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17621 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17623 + move-result v1
17625 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17627 + move-result v0
17629 + const-string v1, "PrivacyCursor"
17631 + new-instance v2, Ljava/lang/StringBuilder;
17633 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
17635 + const-string v3, "getPosition - mapped position: "
17637 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17639 + move-result-object v2
17641 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17643 + move-result-object v2
17645 + const-string v3, " real position: "
17647 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17649 + move-result-object v2
17651 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17653 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17655 + move-result v3
17657 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17659 + move-result-object v2
17661 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17663 + move-result-object v2
17665 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17667 + :goto_36
17668 + return v0
17670 + :cond_37
17671 + const/4 v0, -0x1
17673 + goto :goto_36
17674 +.end method
17676 +.method public getShort(I)S
17677 + .registers 3
17679 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17681 + if-eqz v0, :cond_b
17683 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17685 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
17687 + move-result v0
17689 + :goto_a
17690 + return v0
17692 + :cond_b
17693 + const/4 v0, 0x0
17695 + goto :goto_a
17696 +.end method
17698 +.method public getString(I)Ljava/lang/String;
17699 + .registers 3
17701 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17703 + if-eqz v0, :cond_b
17705 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17707 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
17709 + move-result-object v0
17711 + :goto_a
17712 + return-object v0
17714 + :cond_b
17715 + const-string v0, ""
17717 + goto :goto_a
17718 +.end method
17720 +.method public getType(I)I
17721 + .registers 3
17723 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17725 + if-eqz v0, :cond_b
17727 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17729 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
17731 + move-result v0
17733 + :goto_a
17734 + return v0
17736 + :cond_b
17737 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17739 + const/4 v0, 0x0
17741 + goto :goto_a
17742 +.end method
17744 +.method public getWantsAllOnMoveCalls()Z
17745 + .registers 2
17747 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17749 + if-eqz v0, :cond_b
17751 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17753 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
17755 + move-result v0
17757 + :goto_a
17758 + return v0
17760 + :cond_b
17761 + const/4 v0, 0x0
17763 + goto :goto_a
17764 +.end method
17766 +.method public isAfterLast()Z
17767 + .registers 2
17769 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17771 + if-eqz v0, :cond_b
17773 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17775 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
17777 + move-result v0
17779 + :goto_a
17780 + return v0
17782 + :cond_b
17783 + const/4 v0, 0x0
17785 + goto :goto_a
17786 +.end method
17788 +.method public isBeforeFirst()Z
17789 + .registers 2
17791 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17793 + if-eqz v0, :cond_b
17795 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17797 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
17799 + move-result v0
17801 + :goto_a
17802 + return v0
17804 + :cond_b
17805 + const/4 v0, 0x0
17807 + goto :goto_a
17808 +.end method
17810 +.method public isClosed()Z
17811 + .registers 2
17813 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17815 + if-eqz v0, :cond_b
17817 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17819 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
17821 + move-result v0
17823 + :goto_a
17824 + return v0
17826 + :cond_b
17827 + const/4 v0, 0x0
17829 + goto :goto_a
17830 +.end method
17832 +.method public isFirst()Z
17833 + .registers 4
17835 + const/4 v0, 0x0
17837 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17839 + if-eqz v1, :cond_12
17841 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17843 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17845 + move-result v1
17847 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17849 + aget v2, v2, v0
17851 + if-ne v1, v2, :cond_12
17853 + const/4 v0, 0x1
17855 + :cond_12
17856 + return v0
17857 +.end method
17859 +.method public isLast()Z
17860 + .registers 4
17862 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17864 + if-eqz v0, :cond_17
17866 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17868 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
17870 + move-result v0
17872 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17874 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17876 + array-length v2, v2
17878 + add-int/lit8 v2, v2, -0x1
17880 + aget v1, v1, v2
17882 + if-ne v0, v1, :cond_17
17884 + const/4 v0, 0x1
17886 + :goto_16
17887 + return v0
17889 + :cond_17
17890 + const/4 v0, 0x0
17892 + goto :goto_16
17893 +.end method
17895 +.method public isNull(I)Z
17896 + .registers 3
17898 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17900 + if-eqz v0, :cond_b
17902 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17904 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
17906 + move-result v0
17908 + :goto_a
17909 + return v0
17911 + :cond_b
17912 + const/4 v0, 0x0
17914 + goto :goto_a
17915 +.end method
17917 +.method public move(I)Z
17918 + .registers 8
17920 + const/4 v2, 0x0
17922 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17924 + if-eqz v3, :cond_33
17926 + const-string v3, "PrivacyCursor"
17928 + new-instance v4, Ljava/lang/StringBuilder;
17930 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
17932 + const-string/jumbo v5, "move - offset: "
17934 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17936 + move-result-object v4
17938 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17940 + move-result-object v4
17942 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17944 + move-result-object v4
17946 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17948 + :try_start_1e
17949 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17951 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17953 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
17955 + move-result v4
17957 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17959 + move-result v4
17961 + add-int/2addr v4, p1
17963 + aget v1, v3, v4
17965 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17967 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
17968 + :try_end_32
17969 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_1e .. :try_end_32} :catch_34
17971 + move-result v2
17973 + :cond_33
17974 + :goto_33
17975 + return v2
17977 + :catch_34
17978 + move-exception v0
17980 + goto :goto_33
17981 +.end method
17983 +.method public moveToFirst()Z
17984 + .registers 4
17986 + const/4 v0, 0x0
17988 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17990 + if-eqz v1, :cond_f
17992 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17994 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17996 + aget v2, v2, v0
17998 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18000 + move-result v0
18002 + :cond_f
18003 + return v0
18004 +.end method
18006 +.method public moveToLast()Z
18007 + .registers 5
18009 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18011 + if-eqz v1, :cond_14
18013 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18015 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18017 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18019 + array-length v3, v3
18021 + add-int/lit8 v3, v3, -0x1
18023 + aget v2, v2, v3
18025 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18027 + move-result v0
18029 + :goto_13
18030 + return v0
18032 + :cond_14
18033 + const/4 v0, 0x0
18035 + goto :goto_13
18036 +.end method
18038 +.method public moveToNext()Z
18039 + .registers 3
18041 + const/4 v0, 0x0
18043 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18045 + if-eqz v1, :cond_d
18047 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18049 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18051 + move-result v1
18053 + if-nez v1, :cond_e
18055 + :cond_d
18056 + return v0
18058 + :cond_e
18059 + const/4 v0, 0x1
18061 + :goto_f
18062 + const/4 v1, 0x1
18064 + if-ne v0, v1, :cond_d
18066 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18068 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18070 + move-result v1
18072 + if-nez v1, :cond_d
18074 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18076 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18078 + move-result v0
18080 + goto :goto_f
18081 +.end method
18083 +.method public moveToPosition(I)Z
18084 + .registers 6
18086 + const/4 v1, 0x0
18088 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18090 + if-eqz v2, :cond_f
18092 + :try_start_5
18093 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18095 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18097 + aget v3, v3, p1
18099 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
18100 + :try_end_e
18101 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_5 .. :try_end_e} :catch_10
18103 + move-result v1
18105 + :cond_f
18106 + :goto_f
18107 + return v1
18109 + :catch_10
18110 + move-exception v0
18112 + goto :goto_f
18113 +.end method
18115 +.method public moveToPrevious()Z
18116 + .registers 3
18118 + const/4 v0, 0x0
18120 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18122 + if-eqz v1, :cond_d
18124 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18126 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18128 + move-result v1
18130 + if-nez v1, :cond_e
18132 + :cond_d
18133 + return v0
18135 + :cond_e
18136 + const/4 v0, 0x1
18138 + :goto_f
18139 + const/4 v1, 0x1
18141 + if-ne v0, v1, :cond_d
18143 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18145 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18147 + move-result v1
18149 + if-nez v1, :cond_d
18151 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18153 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18155 + move-result v0
18157 + goto :goto_f
18158 +.end method
18160 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
18161 + .registers 3
18163 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18165 + if-eqz v0, :cond_9
18167 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18169 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
18171 + :cond_9
18172 + return-void
18173 +.end method
18175 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
18176 + .registers 3
18178 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18180 + if-eqz v0, :cond_9
18182 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18184 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
18186 + :cond_9
18187 + return-void
18188 +.end method
18190 +.method public requery()Z
18191 + .registers 2
18193 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18195 + if-eqz v0, :cond_b
18197 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18199 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
18201 + move-result v0
18203 + :goto_a
18204 + return v0
18206 + :cond_b
18207 + const/4 v0, 0x0
18209 + goto :goto_a
18210 +.end method
18212 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18213 + .registers 3
18215 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18217 + if-eqz v0, :cond_b
18219 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18221 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18223 + move-result-object v0
18225 + :goto_a
18226 + return-object v0
18228 + :cond_b
18229 + new-instance v0, Landroid/os/Bundle;
18231 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
18233 + goto :goto_a
18234 +.end method
18236 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18237 + .registers 4
18239 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18241 + if-eqz v0, :cond_9
18243 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18245 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18247 + :cond_9
18248 + return-void
18249 +.end method
18251 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
18252 + .registers 3
18254 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18256 + if-eqz v0, :cond_9
18258 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18260 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
18262 + :cond_9
18263 + return-void
18264 +.end method
18266 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18267 + .registers 3
18269 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18271 + if-eqz v0, :cond_9
18273 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18275 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18277 + :cond_9
18278 + return-void
18279 +.end method
18280 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
18281 --- stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 16:00:00.000000000 -0800
18282 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-07-02 10:16:51.043019908 -0700
18283 @@ -0,0 +1,134 @@
18284 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18285 +.super Ljava/lang/Thread;
18286 +.source "PrivacyLocationManager.java"
18289 +# annotations
18290 +.annotation system Ldalvik/annotation/EnclosingClass;
18291 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
18292 +.end annotation
18294 +.annotation system Ldalvik/annotation/InnerClass;
18295 + accessFlags = 0x2
18296 + name = "PrivacyLocationUpdater"
18297 +.end annotation
18300 +# instance fields
18301 +.field private intent:Landroid/app/PendingIntent;
18303 +.field private latitude:D
18305 +.field private listener:Landroid/location/LocationListener;
18307 +.field private longitude:D
18309 +.field private provider:Ljava/lang/String;
18311 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18314 +# direct methods
18315 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18316 + .registers 9
18318 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18320 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
18322 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18324 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18326 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18328 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18330 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18332 + return-void
18333 +.end method
18336 +# virtual methods
18337 +.method public run()V
18338 + .registers 8
18340 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18342 + if-eqz v3, :cond_43
18344 + new-instance v2, Landroid/location/Location;
18346 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18348 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
18350 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18352 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
18354 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18356 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
18358 + const/4 v1, 0x0
18360 + :goto_16
18361 + const/4 v3, 0x5
18363 + if-ge v1, v3, :cond_43
18365 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18367 + if-eqz v3, :cond_34
18369 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18371 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
18373 + :cond_22
18374 + :goto_22
18375 + :try_start_22
18376 + invoke-static {}, Ljava/lang/Math;->random()D
18378 + move-result-wide v3
18380 + const-wide v5, 0x408f400000000000L
18382 + mul-double/2addr v3, v5
18384 + double-to-int v3, v3
18386 + int-to-long v3, v3
18388 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
18389 + :try_end_31
18390 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
18392 + :goto_31
18393 + add-int/lit8 v1, v1, 0x1
18395 + goto :goto_16
18397 + :cond_34
18398 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18400 + if-eqz v3, :cond_22
18402 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18404 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
18406 + goto :goto_22
18408 + :catch_3e
18409 + move-exception v0
18411 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
18413 + goto :goto_31
18415 + :cond_43
18416 + return-void
18417 +.end method
18418 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
18419 --- stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 16:00:00.000000000 -0800
18420 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-07-02 10:16:51.061024196 -0700
18421 @@ -0,0 +1,2091 @@
18422 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
18423 +.super Landroid/location/LocationManager;
18424 +.source "PrivacyLocationManager.java"
18427 +# annotations
18428 +.annotation system Ldalvik/annotation/MemberClasses;
18429 + value = {
18430 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18432 +.end annotation
18435 +# static fields
18436 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
18438 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
18441 +# instance fields
18442 +.field private context:Landroid/content/Context;
18444 +.field private lock:Ljava/lang/Object;
18446 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
18449 +# direct methods
18450 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
18451 + .registers 5
18453 + invoke-direct {p0, p1}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
18455 + new-instance v0, Ljava/lang/Object;
18457 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
18459 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18461 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18463 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
18465 + const-string/jumbo v1, "privacy"
18467 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
18469 + move-result-object v1
18471 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
18473 + move-result-object v1
18475 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
18477 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18479 + return-void
18480 +.end method
18482 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18483 + .registers 7
18485 + const/4 v2, 0x3
18487 + if-nez p1, :cond_5
18489 + const/4 v0, 0x0
18491 + :goto_4
18492 + return v0
18494 + :cond_5
18495 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
18497 + move-result v0
18499 + const/4 v1, 0x1
18501 + if-eq v0, v1, :cond_24
18503 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
18505 + move-result v0
18507 + if-eq v0, v2, :cond_24
18509 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
18511 + move-result v0
18513 + if-eq v0, v2, :cond_24
18515 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
18517 + move-result v0
18519 + if-eq v0, v2, :cond_24
18521 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
18523 + move-result v0
18525 + if-ne v0, v2, :cond_2b
18527 + :cond_24
18528 + const-string v0, "gps"
18530 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18532 + move-result v0
18534 + goto :goto_4
18536 + :cond_2b
18537 + const-string/jumbo v0, "network"
18539 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18541 + move-result v0
18543 + goto :goto_4
18544 +.end method
18546 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18547 + .registers 24
18549 + move-object/from16 v0, p0
18551 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18553 + move-object/from16 v19, v0
18555 + monitor-enter v19
18557 + :try_start_7
18558 + move-object/from16 v0, p0
18560 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18562 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
18564 + move-result-object v2
18566 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
18568 + move-result v3
18570 + move-object/from16 v0, p0
18572 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18574 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
18576 + move-result-object v7
18578 + const/16 v18, 0x0
18580 + if-eqz v7, :cond_239
18582 + const-string v1, "gps"
18584 + move-object/from16 v0, p1
18586 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18588 + move-result v1
18590 + if-eqz v1, :cond_111
18592 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
18594 + move-result v1
18596 + packed-switch v1, :pswitch_data_25e
18598 + :cond_30
18599 + :goto_30
18600 + monitor-exit v19
18602 + return v18
18604 + :pswitch_32
18605 + move-object/from16 v0, p0
18607 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18609 + const/4 v4, 0x0
18611 + const-string v5, "locationGPS"
18613 + const/4 v6, 0x0
18615 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18617 + goto :goto_30
18619 + :catchall_3e
18620 + move-exception v1
18622 + monitor-exit v19
18623 + :try_end_40
18624 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
18626 + throw v1
18628 + :pswitch_41
18629 + if-eqz p3, :cond_46
18631 + :try_start_43
18632 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18634 + :cond_46
18635 + const/16 v18, 0x1
18637 + move-object/from16 v0, p0
18639 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18641 + const/4 v4, 0x1
18643 + const-string v5, "locationGPS"
18645 + const/4 v6, 0x0
18647 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18648 + :try_end_53
18649 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
18651 + goto :goto_30
18653 + :pswitch_54
18654 + :try_start_54
18655 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18657 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18659 + move-result-object v1
18661 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18663 + move-result-wide v13
18665 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18667 + move-result-object v1
18669 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18671 + move-result-wide v15
18673 + move-object/from16 v9, p0
18675 + move-object/from16 v10, p1
18677 + move-object/from16 v11, p2
18679 + move-object/from16 v12, p3
18681 + 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
18683 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18684 + :try_end_74
18685 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
18686 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
18688 + const/16 v18, 0x1
18690 + :goto_76
18691 + :try_start_76
18692 + move-object/from16 v0, p0
18694 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18696 + const/4 v4, 0x2
18698 + const-string v5, "locationGPS"
18700 + new-instance v6, Ljava/lang/StringBuilder;
18702 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18704 + const-string v8, "Lat: "
18706 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18708 + move-result-object v6
18710 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18712 + move-result-object v8
18714 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18716 + move-result-object v6
18718 + const-string v8, " Lon: "
18720 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18722 + move-result-object v6
18724 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18726 + move-result-object v8
18728 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18730 + move-result-object v6
18732 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18734 + move-result-object v6
18736 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18738 + goto :goto_30
18740 + :catch_a6
18741 + move-exception v17
18743 + const-string v1, "PrivacyLocationManager"
18745 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18747 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18748 + :try_end_af
18749 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
18751 + const/16 v18, 0x1
18753 + goto :goto_76
18755 + :pswitch_b2
18756 + :try_start_b2
18757 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18759 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18761 + move-result-object v1
18763 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18765 + move-result-wide v13
18767 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18769 + move-result-object v1
18771 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18773 + move-result-wide v15
18775 + move-object/from16 v9, p0
18777 + move-object/from16 v10, p1
18779 + move-object/from16 v11, p2
18781 + move-object/from16 v12, p3
18783 + 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
18785 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18786 + :try_end_d2
18787 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
18788 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
18790 + const/16 v18, 0x1
18792 + :goto_d4
18793 + :try_start_d4
18794 + move-object/from16 v0, p0
18796 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18798 + const/4 v4, 0x3
18800 + const-string v5, "locationGPS"
18802 + new-instance v6, Ljava/lang/StringBuilder;
18804 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18806 + const-string v8, "Lat: "
18808 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18810 + move-result-object v6
18812 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18814 + move-result-object v8
18816 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18818 + move-result-object v6
18820 + const-string v8, " Lon: "
18822 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18824 + move-result-object v6
18826 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18828 + move-result-object v8
18830 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18832 + move-result-object v6
18834 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18836 + move-result-object v6
18838 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18840 + goto/16 :goto_30
18842 + :catch_105
18843 + move-exception v17
18845 + const-string v1, "PrivacyLocationManager"
18847 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18849 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18851 + const/16 v18, 0x1
18853 + goto :goto_d4
18855 + :cond_111
18856 + const-string/jumbo v1, "network"
18858 + move-object/from16 v0, p1
18860 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18862 + move-result v1
18864 + if-eqz v1, :cond_204
18866 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
18868 + move-result v1
18870 + packed-switch v1, :pswitch_data_26a
18872 + goto/16 :goto_30
18874 + :pswitch_125
18875 + move-object/from16 v0, p0
18877 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18879 + const/4 v4, 0x0
18881 + const-string v5, "locationNetwork"
18883 + const/4 v6, 0x0
18885 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18887 + goto/16 :goto_30
18889 + :pswitch_132
18890 + if-eqz p3, :cond_137
18892 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18894 + :cond_137
18895 + const/16 v18, 0x1
18897 + move-object/from16 v0, p0
18899 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18901 + const/4 v4, 0x1
18903 + const-string v5, "locationNetwork"
18905 + const/4 v6, 0x0
18907 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18908 + :try_end_144
18909 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
18911 + goto/16 :goto_30
18913 + :pswitch_146
18914 + :try_start_146
18915 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18917 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18919 + move-result-object v1
18921 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18923 + move-result-wide v13
18925 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18927 + move-result-object v1
18929 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18931 + move-result-wide v15
18933 + move-object/from16 v9, p0
18935 + move-object/from16 v10, p1
18937 + move-object/from16 v11, p2
18939 + move-object/from16 v12, p3
18941 + 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
18943 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18944 + :try_end_166
18945 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
18946 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
18948 + const/16 v18, 0x1
18950 + :goto_168
18951 + :try_start_168
18952 + move-object/from16 v0, p0
18954 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18956 + const/4 v4, 0x2
18958 + const-string v5, "locationNetwork"
18960 + new-instance v6, Ljava/lang/StringBuilder;
18962 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18964 + const-string v8, "Lat: "
18966 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18968 + move-result-object v6
18970 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18972 + move-result-object v8
18974 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18976 + move-result-object v6
18978 + const-string v8, " Lon: "
18980 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18982 + move-result-object v6
18984 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18986 + move-result-object v8
18988 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18990 + move-result-object v6
18992 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18994 + move-result-object v6
18996 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18998 + goto/16 :goto_30
19000 + :catch_199
19001 + move-exception v17
19003 + const-string v1, "PrivacyLocationManager"
19005 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19007 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19008 + :try_end_1a2
19009 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
19011 + const/16 v18, 0x1
19013 + goto :goto_168
19015 + :pswitch_1a5
19016 + :try_start_1a5
19017 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19019 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19021 + move-result-object v1
19023 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19025 + move-result-wide v13
19027 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19029 + move-result-object v1
19031 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19033 + move-result-wide v15
19035 + move-object/from16 v9, p0
19037 + move-object/from16 v10, p1
19039 + move-object/from16 v11, p2
19041 + move-object/from16 v12, p3
19043 + 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
19045 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19046 + :try_end_1c5
19047 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
19048 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
19050 + const/16 v18, 0x1
19052 + :goto_1c7
19053 + :try_start_1c7
19054 + move-object/from16 v0, p0
19056 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19058 + const/4 v4, 0x3
19060 + const-string v5, "locationNetwork"
19062 + new-instance v6, Ljava/lang/StringBuilder;
19064 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19066 + const-string v8, "Lat: "
19068 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19070 + move-result-object v6
19072 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19074 + move-result-object v8
19076 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19078 + move-result-object v6
19080 + const-string v8, " Lon: "
19082 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19084 + move-result-object v6
19086 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19088 + move-result-object v8
19090 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19092 + move-result-object v6
19094 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19096 + move-result-object v6
19098 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19100 + goto/16 :goto_30
19102 + :catch_1f8
19103 + move-exception v17
19105 + const-string v1, "PrivacyLocationManager"
19107 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19109 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19111 + const/16 v18, 0x1
19113 + goto :goto_1c7
19115 + :cond_204
19116 + const-string/jumbo v1, "passive"
19118 + move-object/from16 v0, p1
19120 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19122 + move-result v1
19124 + if-eqz v1, :cond_30
19126 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19128 + move-result v1
19130 + if-nez v1, :cond_22a
19132 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19134 + move-result v1
19136 + if-nez v1, :cond_22a
19138 + const/16 v18, 0x0
19140 + move-object/from16 v0, p0
19142 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19144 + const/4 v4, 0x0
19146 + const-string v5, "locationGPS"
19148 + const/4 v6, 0x0
19150 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19152 + goto/16 :goto_30
19154 + :cond_22a
19155 + const/16 v18, 0x1
19157 + move-object/from16 v0, p0
19159 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19161 + const/4 v4, 0x1
19163 + const-string v5, "locationGPS"
19165 + const/4 v6, 0x0
19167 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19169 + goto/16 :goto_30
19171 + :cond_239
19172 + const-string/jumbo v1, "network"
19174 + move-object/from16 v0, p1
19176 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19178 + move-result v1
19180 + if-eqz v1, :cond_251
19182 + move-object/from16 v0, p0
19184 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19186 + const/4 v4, 0x0
19188 + const-string v5, "locationNetwork"
19190 + const/4 v6, 0x0
19192 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19194 + goto/16 :goto_30
19196 + :cond_251
19197 + move-object/from16 v0, p0
19199 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19201 + const/4 v4, 0x0
19203 + const-string v5, "locationGPS"
19205 + const/4 v6, 0x0
19207 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19208 + :try_end_25c
19209 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
19211 + goto/16 :goto_30
19213 + :pswitch_data_25e
19214 + .packed-switch 0x0
19215 + :pswitch_32
19216 + :pswitch_41
19217 + :pswitch_54
19218 + :pswitch_b2
19219 + .end packed-switch
19221 + :pswitch_data_26a
19222 + .packed-switch 0x0
19223 + :pswitch_125
19224 + :pswitch_132
19225 + :pswitch_146
19226 + :pswitch_1a5
19227 + .end packed-switch
19228 +.end method
19231 +# virtual methods
19232 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19233 + .registers 10
19235 + const/4 v5, 0x0
19237 + const/4 v7, 0x0
19239 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19241 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19243 + move-result-object v1
19245 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19247 + move-result v2
19249 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19251 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19253 + move-result-object v6
19255 + if-eqz v6, :cond_24
19257 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19259 + move-result v0
19261 + if-eqz v0, :cond_24
19263 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19265 + const/4 v3, 0x1
19267 + const-string v4, "locationGPS"
19269 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19271 + move v0, v7
19273 + :goto_23
19274 + return v0
19276 + :cond_24
19277 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19279 + const-string v4, "locationGPS"
19281 + move v3, v7
19283 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19285 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19287 + move-result v0
19289 + goto :goto_23
19290 +.end method
19292 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19293 + .registers 14
19295 + const/4 v11, 0x3
19297 + const/4 v10, 0x2
19299 + const/4 v8, 0x1
19301 + const/4 v3, 0x0
19303 + const/4 v5, 0x0
19305 + if-nez p1, :cond_c
19307 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19309 + move-result-object v7
19311 + :cond_b
19312 + :goto_b
19313 + return-object v7
19315 + :cond_c
19316 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19318 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19320 + move-result-object v1
19322 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19324 + move-result v2
19326 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19328 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19330 + move-result-object v6
19332 + const/4 v7, 0x0
19334 + if-eqz v6, :cond_22c
19336 + const-string v0, "gps"
19338 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19340 + move-result v0
19342 + if-eqz v0, :cond_ff
19344 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19346 + move-result v0
19348 + packed-switch v0, :pswitch_data_29a
19350 + goto :goto_b
19352 + :pswitch_2f
19353 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19355 + move-result-object v7
19357 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19359 + const-string v4, "locationGPS"
19361 + if-eqz v7, :cond_5e
19363 + new-instance v5, Ljava/lang/StringBuilder;
19365 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19367 + const-string v8, "Lat: "
19369 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19371 + move-result-object v5
19373 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19375 + move-result-wide v8
19377 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19379 + move-result-object v5
19381 + const-string v8, " Lon: "
19383 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19385 + move-result-object v5
19387 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19389 + move-result-wide v8
19391 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19393 + move-result-object v5
19395 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19397 + move-result-object v5
19399 + :cond_5e
19400 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19402 + goto :goto_b
19404 + :pswitch_62
19405 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19407 + const-string v4, "locationGPS"
19409 + move v3, v8
19411 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19413 + goto :goto_b
19415 + :pswitch_6b
19416 + new-instance v7, Landroid/location/Location;
19418 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19420 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19422 + move-result-object v0
19424 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19426 + move-result-wide v3
19428 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19430 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19432 + move-result-object v0
19434 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19436 + move-result-wide v3
19438 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19440 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19442 + const-string v4, "locationGPS"
19444 + new-instance v3, Ljava/lang/StringBuilder;
19446 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19448 + const-string v5, "Lat: "
19450 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19452 + move-result-object v3
19454 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19456 + move-result-wide v8
19458 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19460 + move-result-object v3
19462 + const-string v5, " Lon: "
19464 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19466 + move-result-object v3
19468 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19470 + move-result-wide v8
19472 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19474 + move-result-object v3
19476 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19478 + move-result-object v5
19480 + move v3, v10
19482 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19484 + goto/16 :goto_b
19486 + :pswitch_b5
19487 + new-instance v7, Landroid/location/Location;
19489 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19491 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19493 + move-result-object v0
19495 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19497 + move-result-wide v3
19499 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19501 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19503 + move-result-object v0
19505 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19507 + move-result-wide v3
19509 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19511 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19513 + const-string v4, "locationGPS"
19515 + new-instance v3, Ljava/lang/StringBuilder;
19517 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19519 + const-string v5, "Lat: "
19521 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19523 + move-result-object v3
19525 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19527 + move-result-wide v8
19529 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19531 + move-result-object v3
19533 + const-string v5, " Lon: "
19535 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19537 + move-result-object v3
19539 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19541 + move-result-wide v8
19543 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19545 + move-result-object v3
19547 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19549 + move-result-object v5
19551 + move v3, v11
19553 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19555 + goto/16 :goto_b
19557 + :cond_ff
19558 + const-string/jumbo v0, "network"
19560 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19562 + move-result v0
19564 + if-eqz v0, :cond_1e3
19566 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19568 + move-result v0
19570 + packed-switch v0, :pswitch_data_2a6
19572 + goto/16 :goto_b
19574 + :pswitch_111
19575 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19577 + move-result-object v7
19579 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19581 + const-string v4, "locationNetwork"
19583 + if-eqz v7, :cond_140
19585 + new-instance v5, Ljava/lang/StringBuilder;
19587 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19589 + const-string v8, "Lat: "
19591 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19593 + move-result-object v5
19595 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19597 + move-result-wide v8
19599 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19601 + move-result-object v5
19603 + const-string v8, " Lon: "
19605 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19607 + move-result-object v5
19609 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19611 + move-result-wide v8
19613 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19615 + move-result-object v5
19617 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19619 + move-result-object v5
19621 + :cond_140
19622 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19624 + goto/16 :goto_b
19626 + :pswitch_145
19627 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19629 + const-string v4, "locationNetwork"
19631 + move v3, v8
19633 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19635 + goto/16 :goto_b
19637 + :pswitch_14f
19638 + new-instance v7, Landroid/location/Location;
19640 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19642 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19644 + move-result-object v0
19646 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19648 + move-result-wide v3
19650 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19652 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19654 + move-result-object v0
19656 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19658 + move-result-wide v3
19660 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19662 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19664 + const-string v4, "locationNetwork"
19666 + new-instance v3, Ljava/lang/StringBuilder;
19668 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19670 + const-string v5, "Lat: "
19672 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19674 + move-result-object v3
19676 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19678 + move-result-wide v8
19680 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19682 + move-result-object v3
19684 + const-string v5, " Lon: "
19686 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19688 + move-result-object v3
19690 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19692 + move-result-wide v8
19694 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19696 + move-result-object v3
19698 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19700 + move-result-object v5
19702 + move v3, v10
19704 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19706 + goto/16 :goto_b
19708 + :pswitch_199
19709 + new-instance v7, Landroid/location/Location;
19711 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19713 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19715 + move-result-object v0
19717 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19719 + move-result-wide v3
19721 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19723 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19725 + move-result-object v0
19727 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19729 + move-result-wide v3
19731 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19733 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19735 + const-string v4, "locationNetwork"
19737 + new-instance v3, Ljava/lang/StringBuilder;
19739 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19741 + const-string v5, "Lat: "
19743 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19745 + move-result-object v3
19747 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19749 + move-result-wide v8
19751 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19753 + move-result-object v3
19755 + const-string v5, " Lon: "
19757 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19759 + move-result-object v3
19761 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19763 + move-result-wide v8
19765 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19767 + move-result-object v3
19769 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19771 + move-result-object v5
19773 + move v3, v11
19775 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19777 + goto/16 :goto_b
19779 + :cond_1e3
19780 + const-string/jumbo v0, "passive"
19782 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19784 + move-result v0
19786 + if-eqz v0, :cond_b
19788 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19790 + move-result v0
19792 + if-nez v0, :cond_b
19794 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19796 + move-result v0
19798 + if-nez v0, :cond_b
19800 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19802 + move-result-object v7
19804 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19806 + const-string v4, "locationGPS"
19808 + if-eqz v7, :cond_227
19810 + new-instance v5, Ljava/lang/StringBuilder;
19812 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19814 + const-string v8, "Lat: "
19816 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19818 + move-result-object v5
19820 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19822 + move-result-wide v8
19824 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19826 + move-result-object v5
19828 + const-string v8, " Lon: "
19830 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19832 + move-result-object v5
19834 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19836 + move-result-wide v8
19838 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19840 + move-result-object v5
19842 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19844 + move-result-object v5
19846 + :cond_227
19847 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19849 + goto/16 :goto_b
19851 + :cond_22c
19852 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19854 + move-result-object v7
19856 + const-string/jumbo v0, "network"
19858 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19860 + move-result v0
19862 + if-eqz v0, :cond_269
19864 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19866 + const-string v4, "locationNetwork"
19868 + if-eqz v7, :cond_264
19870 + new-instance v5, Ljava/lang/StringBuilder;
19872 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19874 + const-string v8, "Lat: "
19876 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19878 + move-result-object v5
19880 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19882 + move-result-wide v8
19884 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19886 + move-result-object v5
19888 + const-string v8, " Lon: "
19890 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19892 + move-result-object v5
19894 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19896 + move-result-wide v8
19898 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19900 + move-result-object v5
19902 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19904 + move-result-object v5
19906 + :cond_264
19907 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19909 + goto/16 :goto_b
19911 + :cond_269
19912 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19914 + const-string v4, "locationGPS"
19916 + if-eqz v7, :cond_294
19918 + new-instance v5, Ljava/lang/StringBuilder;
19920 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19922 + const-string v8, "Lat: "
19924 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19926 + move-result-object v5
19928 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19930 + move-result-wide v8
19932 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19934 + move-result-object v5
19936 + const-string v8, " Lon: "
19938 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19940 + move-result-object v5
19942 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19944 + move-result-wide v8
19946 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19948 + move-result-object v5
19950 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19952 + move-result-object v5
19954 + :cond_294
19955 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19957 + goto/16 :goto_b
19959 + nop
19961 + :pswitch_data_29a
19962 + .packed-switch 0x0
19963 + :pswitch_2f
19964 + :pswitch_62
19965 + :pswitch_6b
19966 + :pswitch_b5
19967 + .end packed-switch
19969 + :pswitch_data_2a6
19970 + .packed-switch 0x0
19971 + :pswitch_111
19972 + :pswitch_145
19973 + :pswitch_14f
19974 + :pswitch_199
19975 + .end packed-switch
19976 +.end method
19978 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19979 + .registers 7
19981 + if-nez p1, :cond_7
19983 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19985 + move-result-object v0
19987 + :cond_6
19988 + :goto_6
19989 + return-object v0
19991 + :cond_7
19992 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19994 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19996 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19998 + move-result-object v3
20000 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20002 + move-result v4
20004 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20006 + move-result-object v1
20008 + const/4 v0, 0x0
20010 + if-eqz v1, :cond_5f
20012 + const-string v2, "gps"
20014 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20016 + move-result v2
20018 + if-eqz v2, :cond_2f
20020 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20022 + move-result v2
20024 + packed-switch v2, :pswitch_data_64
20026 + :pswitch_29
20027 + goto :goto_6
20029 + :pswitch_2a
20030 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20032 + move-result-object v0
20034 + goto :goto_6
20036 + :cond_2f
20037 + const-string/jumbo v2, "network"
20039 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20041 + move-result v2
20043 + if-eqz v2, :cond_45
20045 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20047 + move-result v2
20049 + packed-switch v2, :pswitch_data_70
20051 + :pswitch_3f
20052 + goto :goto_6
20054 + :pswitch_40
20055 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20057 + move-result-object v0
20059 + goto :goto_6
20061 + :cond_45
20062 + const-string/jumbo v2, "passive"
20064 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20066 + move-result v2
20068 + if-eqz v2, :cond_6
20070 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20072 + move-result v2
20074 + if-eqz v2, :cond_5a
20076 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20078 + move-result v2
20080 + if-nez v2, :cond_6
20082 + :cond_5a
20083 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20085 + move-result-object v0
20087 + goto :goto_6
20089 + :cond_5f
20090 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20092 + move-result-object v0
20094 + goto :goto_6
20096 + :pswitch_data_64
20097 + .packed-switch 0x0
20098 + :pswitch_2a
20099 + :pswitch_29
20100 + :pswitch_2a
20101 + :pswitch_2a
20102 + .end packed-switch
20104 + :pswitch_data_70
20105 + .packed-switch 0x0
20106 + :pswitch_40
20107 + :pswitch_3f
20108 + :pswitch_40
20109 + :pswitch_40
20110 + .end packed-switch
20111 +.end method
20113 +.method public isProviderEnabled(Ljava/lang/String;)Z
20114 + .registers 7
20116 + if-nez p1, :cond_7
20118 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20120 + move-result v0
20122 + :cond_6
20123 + :goto_6
20124 + :pswitch_6
20125 + return v0
20127 + :cond_7
20128 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20130 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20132 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20134 + move-result-object v3
20136 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20138 + move-result v4
20140 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20142 + move-result-object v1
20144 + const/4 v0, 0x0
20146 + if-eqz v1, :cond_65
20148 + const-string v2, "gps"
20150 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20152 + move-result v2
20154 + if-eqz v2, :cond_31
20156 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20158 + move-result v2
20160 + packed-switch v2, :pswitch_data_6a
20162 + goto :goto_6
20164 + :pswitch_2a
20165 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20167 + move-result v0
20169 + goto :goto_6
20171 + :pswitch_2f
20172 + const/4 v0, 0x1
20174 + goto :goto_6
20176 + :cond_31
20177 + const-string/jumbo v2, "network"
20179 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20181 + move-result v2
20183 + if-eqz v2, :cond_49
20185 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20187 + move-result v2
20189 + packed-switch v2, :pswitch_data_76
20191 + goto :goto_6
20193 + :pswitch_42
20194 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20196 + move-result v0
20198 + goto :goto_6
20200 + :pswitch_47
20201 + const/4 v0, 0x1
20203 + goto :goto_6
20205 + :cond_49
20206 + const-string/jumbo v2, "passive"
20208 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20210 + move-result v2
20212 + if-eqz v2, :cond_6
20214 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20216 + move-result v2
20218 + if-eqz v2, :cond_5e
20220 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20222 + move-result v2
20224 + if-nez v2, :cond_63
20226 + :cond_5e
20227 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20229 + move-result v0
20231 + goto :goto_6
20233 + :cond_63
20234 + const/4 v0, 0x0
20236 + goto :goto_6
20238 + :cond_65
20239 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20241 + move-result v0
20243 + goto :goto_6
20245 + :pswitch_data_6a
20246 + .packed-switch 0x0
20247 + :pswitch_2a
20248 + :pswitch_6
20249 + :pswitch_2f
20250 + :pswitch_2f
20251 + .end packed-switch
20253 + :pswitch_data_76
20254 + .packed-switch 0x0
20255 + :pswitch_42
20256 + :pswitch_6
20257 + :pswitch_47
20258 + :pswitch_47
20259 + .end packed-switch
20260 +.end method
20262 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20263 + .registers 7
20265 + if-eqz p4, :cond_4
20267 + if-nez p5, :cond_8
20269 + :cond_4
20270 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20272 + :cond_7
20273 + :goto_7
20274 + return-void
20276 + :cond_8
20277 + const/4 v0, 0x0
20279 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20281 + move-result v0
20283 + if-nez v0, :cond_7
20285 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20287 + goto :goto_7
20288 +.end method
20290 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20291 + .registers 8
20293 + if-eqz p4, :cond_4
20295 + if-nez p5, :cond_8
20297 + :cond_4
20298 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20300 + :cond_7
20301 + :goto_7
20302 + return-void
20304 + :cond_8
20305 + const/4 v0, 0x0
20307 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20309 + move-result v0
20311 + if-nez v0, :cond_7
20313 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20315 + goto :goto_7
20316 +.end method
20318 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20319 + .registers 7
20321 + if-eqz p1, :cond_4
20323 + if-nez p5, :cond_8
20325 + :cond_4
20326 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20328 + :cond_7
20329 + :goto_7
20330 + return-void
20332 + :cond_8
20333 + const/4 v0, 0x0
20335 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20337 + move-result v0
20339 + if-nez v0, :cond_7
20341 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20343 + goto :goto_7
20344 +.end method
20346 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20347 + .registers 7
20349 + if-eqz p1, :cond_4
20351 + if-nez p5, :cond_8
20353 + :cond_4
20354 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20356 + :cond_7
20357 + :goto_7
20358 + return-void
20360 + :cond_8
20361 + const/4 v0, 0x0
20363 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20365 + move-result v0
20367 + if-nez v0, :cond_7
20369 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20371 + goto :goto_7
20372 +.end method
20374 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20375 + .registers 8
20377 + if-eqz p1, :cond_4
20379 + if-nez p5, :cond_8
20381 + :cond_4
20382 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20384 + :cond_7
20385 + :goto_7
20386 + return-void
20388 + :cond_8
20389 + const/4 v0, 0x0
20391 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20393 + move-result v0
20395 + if-nez v0, :cond_7
20397 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20399 + goto :goto_7
20400 +.end method
20402 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20403 + .registers 4
20405 + if-eqz p1, :cond_4
20407 + if-nez p2, :cond_8
20409 + :cond_4
20410 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20412 + :cond_7
20413 + :goto_7
20414 + return-void
20416 + :cond_8
20417 + const/4 v0, 0x0
20419 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20421 + move-result v0
20423 + if-nez v0, :cond_7
20425 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20427 + goto :goto_7
20428 +.end method
20430 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20431 + .registers 5
20433 + if-eqz p1, :cond_4
20435 + if-nez p2, :cond_8
20437 + :cond_4
20438 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20440 + :cond_7
20441 + :goto_7
20442 + return-void
20444 + :cond_8
20445 + const/4 v0, 0x0
20447 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20449 + move-result v0
20451 + if-nez v0, :cond_7
20453 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20455 + goto :goto_7
20456 +.end method
20458 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20459 + .registers 4
20461 + if-eqz p1, :cond_4
20463 + if-nez p2, :cond_8
20465 + :cond_4
20466 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20468 + :cond_7
20469 + :goto_7
20470 + return-void
20472 + :cond_8
20473 + const/4 v0, 0x0
20475 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20477 + move-result v0
20479 + if-nez v0, :cond_7
20481 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20483 + goto :goto_7
20484 +.end method
20486 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20487 + .registers 5
20489 + if-eqz p1, :cond_4
20491 + if-nez p2, :cond_8
20493 + :cond_4
20494 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20496 + :cond_7
20497 + :goto_7
20498 + return-void
20500 + :cond_8
20501 + const/4 v0, 0x0
20503 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20505 + move-result v0
20507 + if-nez v0, :cond_7
20509 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20511 + goto :goto_7
20512 +.end method
20513 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
20514 --- stock_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 16:00:00.000000000 -0800
20515 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-07-02 10:16:51.063024673 -0700
20516 @@ -0,0 +1,731 @@
20517 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
20518 +.super Landroid/telephony/TelephonyManager;
20519 +.source "PrivacyTelephonyManager.java"
20522 +# static fields
20523 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
20526 +# instance fields
20527 +.field private context:Landroid/content/Context;
20529 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
20532 +# direct methods
20533 +.method public constructor <init>(Landroid/content/Context;)V
20534 + .registers 4
20536 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
20538 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20540 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
20542 + const-string/jumbo v1, "privacy"
20544 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20546 + move-result-object v1
20548 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20550 + move-result-object v1
20552 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20554 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20556 + return-void
20557 +.end method
20559 +.method private getNetworkInfo()Ljava/lang/String;
20560 + .registers 8
20562 + const/4 v5, 0x0
20564 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20566 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20568 + move-result-object v1
20570 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20572 + move-result v2
20574 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20576 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20578 + move-result-object v6
20580 + if-eqz v6, :cond_25
20582 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
20584 + move-result v0
20586 + if-eqz v0, :cond_25
20588 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20590 + const/4 v3, 0x1
20592 + const-string/jumbo v4, "networkInfoCurrent"
20594 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20596 + const-string v5, ""
20598 + :goto_24
20599 + return-object v5
20601 + :cond_25
20602 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20604 + const/4 v3, 0x0
20606 + const-string/jumbo v4, "networkInfoCurrent"
20608 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20610 + goto :goto_24
20611 +.end method
20613 +.method private getSimInfo()Ljava/lang/String;
20614 + .registers 8
20616 + const/4 v5, 0x0
20618 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20620 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20622 + move-result-object v1
20624 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20626 + move-result v2
20628 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20630 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20632 + move-result-object v6
20634 + if-eqz v6, :cond_25
20636 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
20638 + move-result v0
20640 + if-eqz v0, :cond_25
20642 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20644 + const/4 v3, 0x1
20646 + const-string/jumbo v4, "networkInfoSIM"
20648 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20650 + const-string v5, ""
20652 + :goto_24
20653 + return-object v5
20655 + :cond_25
20656 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20658 + const/4 v3, 0x0
20660 + const-string/jumbo v4, "networkInfoSIM"
20662 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20664 + goto :goto_24
20665 +.end method
20668 +# virtual methods
20669 +.method public getDeviceId()Ljava/lang/String;
20670 + .registers 8
20672 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20674 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20676 + move-result-object v1
20678 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20680 + move-result v2
20682 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20684 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20686 + move-result-object v6
20688 + if-eqz v6, :cond_28
20690 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20692 + move-result v0
20694 + if-eqz v0, :cond_28
20696 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
20698 + move-result-object v5
20700 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20702 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20704 + move-result v3
20706 + const-string v4, "deviceID"
20708 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20710 + :goto_27
20711 + return-object v5
20713 + :cond_28
20714 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
20716 + move-result-object v5
20718 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20720 + const/4 v3, 0x0
20722 + const-string v4, "deviceID"
20724 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20726 + goto :goto_27
20727 +.end method
20729 +.method public getLine1Number()Ljava/lang/String;
20730 + .registers 8
20732 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20734 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20736 + move-result-object v1
20738 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20740 + move-result v2
20742 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20744 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20746 + move-result-object v6
20748 + if-eqz v6, :cond_28
20750 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20752 + move-result v0
20754 + if-eqz v0, :cond_28
20756 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
20758 + move-result-object v5
20760 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20762 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20764 + move-result v3
20766 + const-string v4, "line1Number"
20768 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20770 + :goto_27
20771 + return-object v5
20773 + :cond_28
20774 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
20776 + move-result-object v5
20778 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20780 + const/4 v3, 0x0
20782 + const-string v4, "line1Number"
20784 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20786 + goto :goto_27
20787 +.end method
20789 +.method public getNeighboringCellInfo()Ljava/util/List;
20790 + .registers 10
20791 + .annotation system Ldalvik/annotation/Signature;
20792 + value = {
20793 + "()",
20794 + "Ljava/util/List",
20795 + "<",
20796 + "Landroid/telephony/NeighboringCellInfo;",
20797 + ">;"
20799 + .end annotation
20801 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20803 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20805 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20807 + move-result-object v7
20809 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20811 + move-result v8
20813 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20815 + move-result-object v5
20817 + const/4 v3, 0x0
20819 + const-string v4, "[null]"
20821 + if-eqz v5, :cond_1c
20823 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20825 + move-result v6
20827 + const/4 v7, 0x1
20829 + if-ne v6, v7, :cond_1d
20831 + :cond_1c
20832 + :goto_1c
20833 + return-object v3
20835 + :cond_1d
20836 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20838 + move-result v6
20840 + if-eqz v6, :cond_2b
20842 + new-instance v3, Ljava/util/ArrayList;
20844 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
20846 + const-string v4, "[empty list of cells]"
20848 + goto :goto_1c
20850 + :cond_2b
20851 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
20853 + move-result-object v3
20855 + const-string v0, ""
20857 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
20859 + move-result-object v2
20861 + :goto_35
20862 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
20864 + move-result v6
20866 + if-eqz v6, :cond_5f
20868 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
20870 + move-result-object v1
20872 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
20874 + new-instance v6, Ljava/lang/StringBuilder;
20876 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20878 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20880 + move-result-object v6
20882 + const-string v7, "\t"
20884 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20886 + move-result-object v6
20888 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
20890 + move-result-object v6
20892 + const-string v7, "\n"
20894 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20896 + move-result-object v6
20898 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20900 + move-result-object v0
20902 + goto :goto_35
20904 + :cond_5f
20905 + new-instance v6, Ljava/lang/StringBuilder;
20907 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20909 + const-string v7, "[real value]:\n"
20911 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20913 + move-result-object v6
20915 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20917 + move-result-object v6
20919 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20921 + move-result-object v4
20923 + goto :goto_1c
20924 +.end method
20926 +.method public getNetworkCountryIso()Ljava/lang/String;
20927 + .registers 2
20929 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20931 + move-result-object v0
20933 + if-nez v0, :cond_a
20935 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
20937 + move-result-object v0
20939 + :cond_a
20940 + return-object v0
20941 +.end method
20943 +.method public getNetworkOperator()Ljava/lang/String;
20944 + .registers 2
20946 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20948 + move-result-object v0
20950 + if-nez v0, :cond_a
20952 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
20954 + move-result-object v0
20956 + :cond_a
20957 + return-object v0
20958 +.end method
20960 +.method public getNetworkOperatorName()Ljava/lang/String;
20961 + .registers 2
20963 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20965 + move-result-object v0
20967 + if-nez v0, :cond_a
20969 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
20971 + move-result-object v0
20973 + :cond_a
20974 + return-object v0
20975 +.end method
20977 +.method public getSimCountryIso()Ljava/lang/String;
20978 + .registers 2
20980 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20982 + move-result-object v0
20984 + if-nez v0, :cond_a
20986 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
20988 + move-result-object v0
20990 + :cond_a
20991 + return-object v0
20992 +.end method
20994 +.method public getSimOperator()Ljava/lang/String;
20995 + .registers 2
20997 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20999 + move-result-object v0
21001 + if-nez v0, :cond_a
21003 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
21005 + move-result-object v0
21007 + :cond_a
21008 + return-object v0
21009 +.end method
21011 +.method public getSimOperatorName()Ljava/lang/String;
21012 + .registers 2
21014 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21016 + move-result-object v0
21018 + if-nez v0, :cond_a
21020 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
21022 + move-result-object v0
21024 + :cond_a
21025 + return-object v0
21026 +.end method
21028 +.method public getSimSerialNumber()Ljava/lang/String;
21029 + .registers 8
21031 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21033 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21035 + move-result-object v1
21037 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21039 + move-result v2
21041 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21043 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21045 + move-result-object v6
21047 + if-eqz v6, :cond_29
21049 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21051 + move-result v0
21053 + if-eqz v0, :cond_29
21055 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
21057 + move-result-object v5
21059 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21061 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21063 + move-result v3
21065 + const-string/jumbo v4, "simSerial"
21067 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21069 + :goto_28
21070 + return-object v5
21072 + :cond_29
21073 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
21075 + move-result-object v5
21077 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21079 + const/4 v3, 0x0
21081 + const-string/jumbo v4, "simSerial"
21083 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21085 + goto :goto_28
21086 +.end method
21088 +.method public getSubscriberId()Ljava/lang/String;
21089 + .registers 8
21091 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21093 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21095 + move-result-object v1
21097 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21099 + move-result v2
21101 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21103 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21105 + move-result-object v6
21107 + if-eqz v6, :cond_29
21109 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21111 + move-result v0
21113 + if-eqz v0, :cond_29
21115 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
21117 + move-result-object v5
21119 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21121 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21123 + move-result v3
21125 + const-string/jumbo v4, "subscriberID"
21127 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21129 + :goto_28
21130 + return-object v5
21132 + :cond_29
21133 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
21135 + move-result-object v5
21137 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21139 + const/4 v3, 0x0
21141 + const-string/jumbo v4, "subscriberID"
21143 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21145 + goto :goto_28
21146 +.end method
21148 +.method public getVoiceMailNumber()Ljava/lang/String;
21149 + .registers 8
21151 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21153 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21155 + move-result-object v1
21157 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21159 + move-result v2
21161 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21163 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21165 + move-result-object v6
21167 + if-eqz v6, :cond_28
21169 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21171 + move-result v0
21173 + if-eqz v0, :cond_28
21175 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21177 + move-result-object v5
21179 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21181 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21183 + move-result v3
21185 + const-string v4, "line1Number"
21187 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21189 + :goto_27
21190 + return-object v5
21192 + :cond_28
21193 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
21195 + move-result-object v5
21197 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21199 + const/4 v3, 0x0
21201 + const-string v4, "line1Number"
21203 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21205 + goto :goto_27
21206 +.end method
21208 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
21209 + .registers 4
21211 + and-int/lit8 v0, p2, 0x10
21213 + if-nez v0, :cond_8
21215 + and-int/lit8 v0, p2, 0x20
21217 + if-eqz v0, :cond_21
21219 + :cond_8
21220 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21222 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
21224 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21226 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21228 + move-result-object v0
21230 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
21232 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21234 + move-result v0
21236 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setUid(I)V
21238 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21240 + :goto_20
21241 + return-void
21243 + :cond_21
21244 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21246 + goto :goto_20
21247 +.end method
21248 diff -Npru stock_framework/smali/android/server/BluetoothService.smali pdroid_framework/smali/android/server/BluetoothService.smali
21249 --- stock_framework/smali/android/server/BluetoothService.smali 2012-07-02 10:16:19.135420101 -0700
21250 +++ pdroid_framework/smali/android/server/BluetoothService.smali 2012-07-02 10:16:51.447116157 -0700
21251 @@ -2367,9 +2367,9 @@
21253 invoke-direct {v4, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
21254 :try_end_19
21255 - .catchall {:try_start_d .. :try_end_19} :catchall_83
21256 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_63
21257 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_73
21258 + .catchall {:try_start_d .. :try_end_19} :catchall_7e
21259 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_60
21260 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_70
21262 const/16 v7, 0x11
21264 @@ -2396,9 +2396,9 @@
21266 sget-object v5, Landroid/server/BluetoothService;->mDockAddress:Ljava/lang/String;
21267 :try_end_33
21268 - .catchall {:try_start_1b .. :try_end_33} :catchall_8c
21269 - .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_92
21270 - .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8f
21271 + .catchall {:try_start_1b .. :try_end_33} :catchall_89
21272 + .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_8f
21273 + .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8c
21275 if-eqz v4, :cond_a
21277 @@ -2439,18 +2439,20 @@
21279 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21280 :try_end_53
21281 - .catchall {:try_start_3b .. :try_end_53} :catchall_8c
21282 - .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_92
21283 - .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8f
21284 + .catchall {:try_start_3b .. :try_end_53} :catchall_89
21285 + .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_8f
21286 + .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8c
21288 - if-eqz v4, :cond_95
21289 + if-eqz v4, :cond_58
21291 :try_start_55
21292 invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
21293 :try_end_58
21294 .catchall {:try_start_55 .. :try_end_58} :catchall_5d
21295 - .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_60
21296 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_87
21298 + :cond_58
21299 + :goto_58
21300 move-object v3, v4
21302 :cond_59
21303 @@ -2472,117 +2474,105 @@
21304 throw v5
21306 :catch_60
21307 - move-exception v7
21309 - move-object v3, v4
21311 - goto :goto_59
21313 - :catch_63
21314 move-exception v2
21316 - :goto_64
21317 - :try_start_64
21318 + :goto_61
21319 + :try_start_61
21320 const-string v7, "BluetoothService"
21322 const-string v8, "FileNotFoundException while trying to read dock address"
21324 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21325 - :try_end_6b
21326 - .catchall {:try_start_64 .. :try_end_6b} :catchall_83
21327 + :try_end_68
21328 + .catchall {:try_start_61 .. :try_end_68} :catchall_7e
21330 if-eqz v3, :cond_59
21332 - :try_start_6d
21333 + :try_start_6a
21334 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21335 - :try_end_70
21336 - .catchall {:try_start_6d .. :try_end_70} :catchall_5d
21337 - .catch Ljava/io/IOException; {:try_start_6d .. :try_end_70} :catch_71
21338 + :try_end_6d
21339 + .catchall {:try_start_6a .. :try_end_6d} :catchall_5d
21340 + .catch Ljava/io/IOException; {:try_start_6a .. :try_end_6d} :catch_6e
21342 goto :goto_59
21344 - :catch_71
21345 + :catch_6e
21346 move-exception v7
21348 goto :goto_59
21350 - :catch_73
21351 + :catch_70
21352 move-exception v2
21354 - :goto_74
21355 - :try_start_74
21356 + :goto_71
21357 + :try_start_71
21358 const-string v7, "BluetoothService"
21360 const-string v8, "IOException while trying to read dock address"
21362 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21363 - :try_end_7b
21364 - .catchall {:try_start_74 .. :try_end_7b} :catchall_83
21365 + :try_end_78
21366 + .catchall {:try_start_71 .. :try_end_78} :catchall_7e
21368 if-eqz v3, :cond_59
21370 - :try_start_7d
21371 + :try_start_7a
21372 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21373 - :try_end_80
21374 - .catchall {:try_start_7d .. :try_end_80} :catchall_5d
21375 - .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81
21377 - goto :goto_59
21379 - :catch_81
21380 - move-exception v7
21381 + :try_end_7d
21382 + .catchall {:try_start_7a .. :try_end_7d} :catchall_5d
21383 + .catch Ljava/io/IOException; {:try_start_7a .. :try_end_7d} :catch_6e
21385 goto :goto_59
21387 - :catchall_83
21388 + :catchall_7e
21389 move-exception v5
21391 - :goto_84
21392 - if-eqz v3, :cond_89
21393 + :goto_7f
21394 + if-eqz v3, :cond_84
21396 - :try_start_86
21397 + :try_start_81
21398 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21399 - :try_end_89
21400 - .catchall {:try_start_86 .. :try_end_89} :catchall_5d
21401 - .catch Ljava/io/IOException; {:try_start_86 .. :try_end_89} :catch_8a
21403 - :cond_89
21404 - :goto_89
21405 - :try_start_89
21406 + :try_end_84
21407 + .catchall {:try_start_81 .. :try_end_84} :catchall_5d
21408 + .catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
21410 + :cond_84
21411 + :goto_84
21412 + :try_start_84
21413 throw v5
21414 - :try_end_8a
21415 - .catchall {:try_start_89 .. :try_end_8a} :catchall_5d
21416 + :try_end_85
21417 + .catchall {:try_start_84 .. :try_end_85} :catchall_5d
21419 - :catch_8a
21420 + :catch_85
21421 move-exception v7
21423 - goto :goto_89
21424 + goto :goto_84
21426 + :catch_87
21427 + move-exception v7
21429 - :catchall_8c
21430 + goto :goto_58
21432 + :catchall_89
21433 move-exception v5
21435 move-object v3, v4
21437 - goto :goto_84
21438 + goto :goto_7f
21440 - :catch_8f
21441 + :catch_8c
21442 move-exception v2
21444 move-object v3, v4
21446 - goto :goto_74
21447 + goto :goto_71
21449 - :catch_92
21450 + :catch_8f
21451 move-exception v2
21453 move-object v3, v4
21455 - goto :goto_64
21457 - :cond_95
21458 - move-object v3, v4
21460 - goto :goto_59
21461 + goto :goto_61
21462 .end method
21464 .method private readIncomingConnectionState()V
21465 @@ -2601,9 +2591,9 @@
21467 invoke-direct {v3, v9}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
21468 :try_end_b
21469 - .catchall {:try_start_4 .. :try_end_b} :catchall_a2
21470 - .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b9
21471 - .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7f
21472 + .catchall {:try_start_4 .. :try_end_b} :catchall_9f
21473 + .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b6
21474 + .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7c
21476 :try_start_b
21477 new-instance v4, Ljava/io/DataInputStream;
21478 @@ -2678,9 +2668,9 @@
21480 invoke-virtual {v9, v11, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
21481 :try_end_51
21482 - .catchall {:try_start_b .. :try_end_51} :catchall_b3
21483 + .catchall {:try_start_b .. :try_end_51} :catchall_b0
21484 .catch Ljava/io/FileNotFoundException; {:try_start_b .. :try_end_51} :catch_52
21485 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b6
21486 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b3
21488 goto :goto_1a
21490 @@ -2715,50 +2705,45 @@
21492 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21493 :try_end_6e
21494 - .catchall {:try_start_54 .. :try_end_6e} :catchall_a2
21495 + .catchall {:try_start_54 .. :try_end_6e} :catchall_9f
21497 if-eqz v2, :cond_73
21499 :try_start_70
21500 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21501 :try_end_73
21502 - .catchall {:try_start_70 .. :try_end_73} :catchall_a9
21503 - .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_ac
21504 + .catchall {:try_start_70 .. :try_end_73} :catchall_a6
21505 + .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_9d
21507 :cond_73
21508 :goto_73
21509 :try_start_73
21510 monitor-exit v10
21511 :try_end_74
21512 - .catchall {:try_start_73 .. :try_end_74} :catchall_a9
21513 + .catchall {:try_start_73 .. :try_end_74} :catchall_a6
21515 return-void
21517 :cond_75
21518 - if-eqz v3, :cond_bb
21519 + if-eqz v3, :cond_7a
21521 :try_start_77
21522 invoke-virtual {v3}, Ljava/io/FileInputStream;->close()V
21523 :try_end_7a
21524 - .catchall {:try_start_77 .. :try_end_7a} :catchall_b0
21525 - .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_7c
21526 + .catchall {:try_start_77 .. :try_end_7a} :catchall_ad
21527 + .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_ab
21529 + :cond_7a
21530 + :goto_7a
21531 move-object v2, v3
21533 goto :goto_73
21535 :catch_7c
21536 - move-exception v9
21538 - move-object v2, v3
21540 - goto :goto_73
21542 - :catch_7f
21543 move-exception v0
21545 - :goto_80
21546 - :try_start_80
21547 + :goto_7d
21548 + :try_start_7d
21549 new-instance v9, Ljava/lang/StringBuilder;
21551 invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
21552 @@ -2782,91 +2767,86 @@
21553 move-result-object v9
21555 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21556 - :try_end_9a
21557 - .catchall {:try_start_80 .. :try_end_9a} :catchall_a2
21558 + :try_end_97
21559 + .catchall {:try_start_7d .. :try_end_97} :catchall_9f
21561 if-eqz v2, :cond_73
21563 - :try_start_9c
21564 + :try_start_99
21565 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21566 - :try_end_9f
21567 - .catchall {:try_start_9c .. :try_end_9f} :catchall_a9
21568 - .catch Ljava/io/IOException; {:try_start_9c .. :try_end_9f} :catch_a0
21569 + :try_end_9c
21570 + .catchall {:try_start_99 .. :try_end_9c} :catchall_a6
21571 + .catch Ljava/io/IOException; {:try_start_99 .. :try_end_9c} :catch_9d
21573 goto :goto_73
21575 - :catch_a0
21576 + :catch_9d
21577 move-exception v9
21579 goto :goto_73
21581 - :catchall_a2
21582 + :catchall_9f
21583 move-exception v9
21585 - :goto_a3
21586 - if-eqz v2, :cond_a8
21587 + :goto_a0
21588 + if-eqz v2, :cond_a5
21590 - :try_start_a5
21591 + :try_start_a2
21592 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21593 - :try_end_a8
21594 - .catchall {:try_start_a5 .. :try_end_a8} :catchall_a9
21595 - .catch Ljava/io/IOException; {:try_start_a5 .. :try_end_a8} :catch_ae
21596 + :try_end_a5
21597 + .catchall {:try_start_a2 .. :try_end_a5} :catchall_a6
21598 + .catch Ljava/io/IOException; {:try_start_a2 .. :try_end_a5} :catch_a9
21600 - :cond_a8
21601 - :goto_a8
21602 - :try_start_a8
21603 + :cond_a5
21604 + :goto_a5
21605 + :try_start_a5
21606 throw v9
21608 - :catchall_a9
21609 + :catchall_a6
21610 move-exception v9
21612 - :goto_aa
21613 + :goto_a7
21614 monitor-exit v10
21615 - :try_end_ab
21616 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_a9
21617 + :try_end_a8
21618 + .catchall {:try_start_a5 .. :try_end_a8} :catchall_a6
21620 throw v9
21622 - :catch_ac
21623 - move-exception v9
21624 + :catch_a9
21625 + move-exception v11
21627 - goto :goto_73
21628 + goto :goto_a5
21630 - :catch_ae
21631 - move-exception v11
21632 + :catch_ab
21633 + move-exception v9
21635 - goto :goto_a8
21636 + goto :goto_7a
21638 - :catchall_b0
21639 + :catchall_ad
21640 move-exception v9
21642 move-object v2, v3
21644 - goto :goto_aa
21645 + goto :goto_a7
21647 - :catchall_b3
21648 + :catchall_b0
21649 move-exception v9
21651 move-object v2, v3
21653 - goto :goto_a3
21654 + goto :goto_a0
21656 - :catch_b6
21657 + :catch_b3
21658 move-exception v0
21660 move-object v2, v3
21662 - goto :goto_80
21663 + goto :goto_7d
21665 - :catch_b9
21666 + :catch_b6
21667 move-exception v0
21669 goto :goto_54
21671 - :cond_bb
21672 - move-object v2, v3
21674 - goto :goto_73
21675 .end method
21677 .method private registerForAirplaneMode(Landroid/content/IntentFilter;)V
21678 @@ -3164,26 +3144,28 @@
21680 invoke-direct {v2, v3, v4}, Ljava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V
21681 :try_end_b
21682 - .catchall {:try_start_1 .. :try_end_b} :catchall_60
21683 - .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_1a
21684 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3d
21685 + .catchall {:try_start_1 .. :try_end_b} :catchall_5b
21686 + .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_17
21687 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3a
21689 const-wide/16 v3, 0x0
21691 :try_start_d
21692 invoke-virtual {v2, v3, v4}, Ljava/io/RandomAccessFile;->setLength(J)V
21693 :try_end_10
21694 - .catchall {:try_start_d .. :try_end_10} :catchall_69
21695 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6f
21696 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_6c
21697 + .catchall {:try_start_d .. :try_end_10} :catchall_66
21698 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6c
21699 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_69
21701 - if-eqz v2, :cond_72
21702 + if-eqz v2, :cond_15
21704 :try_start_12
21705 invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V
21706 :try_end_15
21707 - .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_17
21708 + .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_64
21710 + :cond_15
21711 + :goto_15
21712 move-object v1, v2
21714 :cond_16
21715 @@ -3191,17 +3173,10 @@
21716 return-void
21718 :catch_17
21719 - move-exception v3
21721 - move-object v1, v2
21723 - goto :goto_16
21725 - :catch_1a
21726 move-exception v0
21728 - :goto_1b
21729 - :try_start_1b
21730 + :goto_18
21731 + :try_start_18
21732 new-instance v3, Ljava/lang/StringBuilder;
21734 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21735 @@ -3225,28 +3200,28 @@
21736 move-result-object v3
21738 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21739 - :try_end_35
21740 - .catchall {:try_start_1b .. :try_end_35} :catchall_60
21741 + :try_end_32
21742 + .catchall {:try_start_18 .. :try_end_32} :catchall_5b
21744 if-eqz v1, :cond_16
21746 - :try_start_37
21747 + :try_start_34
21748 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21749 - :try_end_3a
21750 - .catch Ljava/io/IOException; {:try_start_37 .. :try_end_3a} :catch_3b
21751 + :try_end_37
21752 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_37} :catch_38
21754 goto :goto_16
21756 - :catch_3b
21757 + :catch_38
21758 move-exception v3
21760 goto :goto_16
21762 - :catch_3d
21763 + :catch_3a
21764 move-exception v0
21766 - :goto_3e
21767 - :try_start_3e
21768 + :goto_3b
21769 + :try_start_3b
21770 new-instance v3, Ljava/lang/StringBuilder;
21772 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21773 @@ -3270,68 +3245,63 @@
21774 move-result-object v3
21776 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21777 - :try_end_58
21778 - .catchall {:try_start_3e .. :try_end_58} :catchall_60
21779 + :try_end_55
21780 + .catchall {:try_start_3b .. :try_end_55} :catchall_5b
21782 if-eqz v1, :cond_16
21784 - :try_start_5a
21785 + :try_start_57
21786 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21787 - :try_end_5d
21788 - .catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
21790 - goto :goto_16
21792 - :catch_5e
21793 - move-exception v3
21794 + :try_end_5a
21795 + .catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_38
21797 goto :goto_16
21799 - :catchall_60
21800 + :catchall_5b
21801 move-exception v3
21803 - :goto_61
21804 - if-eqz v1, :cond_66
21805 + :goto_5c
21806 + if-eqz v1, :cond_61
21808 - :try_start_63
21809 + :try_start_5e
21810 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21811 - :try_end_66
21812 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67
21813 + :try_end_61
21814 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
21816 - :cond_66
21817 - :goto_66
21818 + :cond_61
21819 + :goto_61
21820 throw v3
21822 - :catch_67
21823 + :catch_62
21824 move-exception v4
21826 - goto :goto_66
21827 + goto :goto_61
21829 - :catchall_69
21830 + :catch_64
21831 move-exception v3
21833 - move-object v1, v2
21835 - goto :goto_61
21836 + goto :goto_15
21838 - :catch_6c
21839 - move-exception v0
21840 + :catchall_66
21841 + move-exception v3
21843 move-object v1, v2
21845 - goto :goto_3e
21846 + goto :goto_5c
21848 - :catch_6f
21849 + :catch_69
21850 move-exception v0
21852 move-object v1, v2
21854 - goto :goto_1b
21855 + goto :goto_3b
21857 + :catch_6c
21858 + move-exception v0
21860 - :cond_72
21861 move-object v1, v2
21863 - goto :goto_16
21864 + goto :goto_18
21865 .end method
21867 .method private updateCountersAndCheckForConnectionStateChange(II)Z
21868 @@ -3784,17 +3754,17 @@
21870 invoke-virtual {v2, v6}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
21871 :try_end_36
21872 - .catchall {:try_start_10 .. :try_end_36} :catchall_70
21873 - .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_76
21874 - .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_73
21875 + .catchall {:try_start_10 .. :try_end_36} :catchall_6e
21876 + .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_74
21877 + .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_71
21879 if-eqz v2, :cond_3b
21881 :try_start_38
21882 invoke-virtual {v2}, Ljava/io/BufferedWriter;->close()V
21883 :try_end_3b
21884 - .catchall {:try_start_38 .. :try_end_3b} :catchall_79
21885 - .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6a
21886 + .catchall {:try_start_38 .. :try_end_3b} :catchall_77
21887 + .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6c
21889 :cond_3b
21890 :goto_3b
21891 @@ -3824,7 +3794,7 @@
21892 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21893 :try_end_4b
21894 .catchall {:try_start_48 .. :try_end_4b} :catchall_67
21895 - .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_6c
21896 + .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_5e
21898 :cond_4b
21899 :goto_4b
21900 @@ -3877,7 +3847,7 @@
21901 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21902 :try_end_66
21903 .catchall {:try_start_63 .. :try_end_66} :catchall_67
21904 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6e
21905 + .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6a
21907 :cond_66
21908 :goto_66
21909 @@ -3897,40 +3867,35 @@
21910 :catch_6a
21911 move-exception v5
21913 - goto :goto_3b
21914 + goto :goto_66
21916 :catch_6c
21917 - move-exception v4
21919 - goto :goto_4b
21921 - :catch_6e
21922 move-exception v5
21924 - goto :goto_66
21925 + goto :goto_3b
21927 - :catchall_70
21928 + :catchall_6e
21929 move-exception v4
21931 move-object v1, v2
21933 goto :goto_61
21935 - :catch_73
21936 + :catch_71
21937 move-exception v0
21939 move-object v1, v2
21941 goto :goto_51
21943 - :catch_76
21944 + :catch_74
21945 move-exception v0
21947 move-object v1, v2
21949 goto :goto_3f
21951 - :catchall_79
21952 + :catchall_77
21953 move-exception v4
21955 move-object v1, v2
21956 @@ -4865,8 +4830,8 @@
21958 invoke-interface {v4}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOff()V
21959 :try_end_47
21960 - .catchall {:try_start_42 .. :try_end_47} :catchall_51
21961 - .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_4c
21962 + .catchall {:try_start_42 .. :try_end_47} :catchall_4c
21963 + .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_51
21965 :try_start_47
21966 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21967 @@ -4878,22 +4843,22 @@
21969 return-void
21971 - :catch_4c
21972 + :catchall_4c
21973 move-exception v4
21975 :try_start_4d
21976 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21978 - goto :goto_4a
21979 + throw v4
21981 - :catchall_51
21982 + :catch_51
21983 move-exception v4
21985 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21986 + :try_end_55
21987 + .catchall {:try_start_4d .. :try_end_55} :catchall_24
21989 - throw v4
21990 - :try_end_56
21991 - .catchall {:try_start_4d .. :try_end_56} :catchall_24
21992 + goto :goto_4a
21993 .end method
21995 .method clearApplicationStateChangeTracker()V
21996 @@ -9245,12 +9210,12 @@
21998 invoke-interface {v3}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOn()V
21999 :try_end_c
22000 - .catchall {:try_start_7 .. :try_end_c} :catchall_1c
22001 + .catchall {:try_start_7 .. :try_end_c} :catchall_19
22002 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_c} :catch_10
22004 + :goto_c
22005 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22007 - :goto_f
22008 return-void
22010 :catch_10
22011 @@ -9263,13 +9228,11 @@
22013 invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22014 :try_end_18
22015 - .catchall {:try_start_11 .. :try_end_18} :catchall_1c
22017 - invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22018 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
22020 - goto :goto_f
22021 + goto :goto_c
22023 - :catchall_1c
22024 + :catchall_19
22025 move-exception v3
22027 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22028 @@ -11420,7 +11383,7 @@
22030 invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
22031 :try_end_11
22032 - .catchall {:try_start_3 .. :try_end_11} :catchall_bf
22033 + .catchall {:try_start_3 .. :try_end_11} :catchall_bc
22035 :try_start_11
22036 new-instance v4, Ljava/io/BufferedWriter;
22037 @@ -11435,9 +11398,9 @@
22039 invoke-direct {v4, v7}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
22040 :try_end_1e
22041 - .catchall {:try_start_11 .. :try_end_1e} :catchall_b8
22042 - .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_cc
22043 - .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_95
22044 + .catchall {:try_start_11 .. :try_end_1e} :catchall_b5
22045 + .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_c9
22046 + .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_92
22048 :try_start_1e
22049 iget-object v7, p0, Landroid/server/BluetoothService;->mIncomingConnections:Ljava/util/HashMap;
22050 @@ -11501,9 +11464,9 @@
22052 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22053 :try_end_60
22054 - .catchall {:try_start_1e .. :try_end_60} :catchall_c6
22055 + .catchall {:try_start_1e .. :try_end_60} :catchall_c3
22056 .catch Ljava/io/FileNotFoundException; {:try_start_1e .. :try_end_60} :catch_61
22057 - .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c9
22058 + .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c6
22060 goto :goto_28
22062 @@ -11538,22 +11501,22 @@
22064 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22065 :try_end_7d
22066 - .catchall {:try_start_63 .. :try_end_7d} :catchall_b8
22067 + .catchall {:try_start_63 .. :try_end_7d} :catchall_b5
22069 if-eqz v3, :cond_82
22071 :try_start_7f
22072 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22073 :try_end_82
22074 - .catchall {:try_start_7f .. :try_end_82} :catchall_bf
22075 - .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_c2
22076 + .catchall {:try_start_7f .. :try_end_82} :catchall_bc
22077 + .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_b3
22079 :cond_82
22080 :goto_82
22081 :try_start_82
22082 monitor-exit v8
22083 :try_end_83
22084 - .catchall {:try_start_82 .. :try_end_83} :catchall_bf
22085 + .catchall {:try_start_82 .. :try_end_83} :catchall_bc
22087 return-void
22089 @@ -11565,34 +11528,29 @@
22091 invoke-virtual {v4, v7}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22092 :try_end_8b
22093 - .catchall {:try_start_84 .. :try_end_8b} :catchall_c6
22094 + .catchall {:try_start_84 .. :try_end_8b} :catchall_c3
22095 .catch Ljava/io/FileNotFoundException; {:try_start_84 .. :try_end_8b} :catch_61
22096 - .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c9
22097 + .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c6
22099 - if-eqz v4, :cond_ce
22100 + if-eqz v4, :cond_90
22102 :try_start_8d
22103 invoke-virtual {v4}, Ljava/io/BufferedWriter;->close()V
22104 :try_end_90
22105 - .catchall {:try_start_8d .. :try_end_90} :catchall_bf
22106 - .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_92
22107 + .catchall {:try_start_8d .. :try_end_90} :catchall_bc
22108 + .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_c1
22110 + :cond_90
22111 + :goto_90
22112 move-object v3, v4
22114 goto :goto_82
22116 :catch_92
22117 - move-exception v7
22119 - move-object v3, v4
22121 - goto :goto_82
22123 - :catch_95
22124 move-exception v1
22126 - :goto_96
22127 - :try_start_96
22128 + :goto_93
22129 + :try_start_93
22130 new-instance v7, Ljava/lang/StringBuilder;
22132 invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
22133 @@ -11616,81 +11574,76 @@
22134 move-result-object v7
22136 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22137 - :try_end_b0
22138 - .catchall {:try_start_96 .. :try_end_b0} :catchall_b8
22139 + :try_end_ad
22140 + .catchall {:try_start_93 .. :try_end_ad} :catchall_b5
22142 if-eqz v3, :cond_82
22144 - :try_start_b2
22145 + :try_start_af
22146 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22147 - :try_end_b5
22148 - .catchall {:try_start_b2 .. :try_end_b5} :catchall_bf
22149 - .catch Ljava/io/IOException; {:try_start_b2 .. :try_end_b5} :catch_b6
22150 + :try_end_b2
22151 + .catchall {:try_start_af .. :try_end_b2} :catchall_bc
22152 + .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_b3
22154 goto :goto_82
22156 - :catch_b6
22157 + :catch_b3
22158 move-exception v7
22160 goto :goto_82
22162 - :catchall_b8
22163 + :catchall_b5
22164 move-exception v7
22166 - :goto_b9
22167 - if-eqz v3, :cond_be
22168 + :goto_b6
22169 + if-eqz v3, :cond_bb
22171 - :try_start_bb
22172 + :try_start_b8
22173 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22174 - :try_end_be
22175 - .catchall {:try_start_bb .. :try_end_be} :catchall_bf
22176 - .catch Ljava/io/IOException; {:try_start_bb .. :try_end_be} :catch_c4
22177 + :try_end_bb
22178 + .catchall {:try_start_b8 .. :try_end_bb} :catchall_bc
22179 + .catch Ljava/io/IOException; {:try_start_b8 .. :try_end_bb} :catch_bf
22181 - :cond_be
22182 - :goto_be
22183 - :try_start_be
22184 + :cond_bb
22185 + :goto_bb
22186 + :try_start_bb
22187 throw v7
22189 - :catchall_bf
22190 + :catchall_bc
22191 move-exception v7
22193 monitor-exit v8
22194 - :try_end_c1
22195 - .catchall {:try_start_be .. :try_end_c1} :catchall_bf
22196 + :try_end_be
22197 + .catchall {:try_start_bb .. :try_end_be} :catchall_bc
22199 throw v7
22201 - :catch_c2
22202 - move-exception v7
22203 + :catch_bf
22204 + move-exception v9
22206 - goto :goto_82
22207 + goto :goto_bb
22209 - :catch_c4
22210 - move-exception v9
22211 + :catch_c1
22212 + move-exception v7
22214 - goto :goto_be
22215 + goto :goto_90
22217 - :catchall_c6
22218 + :catchall_c3
22219 move-exception v7
22221 move-object v3, v4
22223 - goto :goto_b9
22224 + goto :goto_b6
22226 - :catch_c9
22227 + :catch_c6
22228 move-exception v1
22230 move-object v3, v4
22232 - goto :goto_96
22233 + goto :goto_93
22235 - :catch_cc
22236 + :catch_c9
22237 move-exception v1
22239 goto :goto_63
22241 - :cond_ce
22242 - move-object v3, v4
22244 - goto :goto_82
22245 .end method
22246 diff -Npru stock_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali pdroid_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali
22247 --- stock_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-07-02 10:16:19.159425818 -0700
22248 +++ pdroid_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-07-02 10:16:51.468121160 -0700
22249 @@ -161,25 +161,23 @@
22251 invoke-interface {v1, v2}, Lcom/android/internal/textservice/ISpellCheckerSessionListener;->onGetSuggestions([Landroid/view/textservice/SuggestionsInfo;)V
22252 :try_end_18
22253 - .catchall {:try_start_a .. :try_end_18} :catchall_21
22254 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_1c
22255 + .catchall {:try_start_a .. :try_end_18} :catchall_1c
22256 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_21
22258 + :goto_18
22259 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22261 - :goto_1b
22262 return-void
22264 - :catch_1c
22265 + :catchall_1c
22266 move-exception v1
22268 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22270 - goto :goto_1b
22271 + throw v1
22273 - :catchall_21
22274 + :catch_21
22275 move-exception v1
22277 - invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22279 - throw v1
22280 + goto :goto_18
22281 .end method
22282 diff -Npru stock_framework/smali/android/telephony/PhoneStateListener$1.smali pdroid_framework/smali/android/telephony/PhoneStateListener$1.smali
22283 --- stock_framework/smali/android/telephony/PhoneStateListener$1.smali 2012-07-02 10:16:19.331466795 -0700
22284 +++ pdroid_framework/smali/android/telephony/PhoneStateListener$1.smali 2012-07-02 10:16:51.590150228 -0700
22285 @@ -64,47 +64,317 @@
22286 .end method
22288 .method public onCallStateChanged(ILjava/lang/String;)V
22289 - .registers 6
22290 + .registers 19
22292 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22293 + move-object/from16 v0, p0
22295 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22296 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22298 - const/16 v1, 0x20
22299 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22300 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22302 - const/4 v2, 0x0
22303 + move-result-object v3
22305 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22306 + if-eqz v3, :cond_99
22308 - move-result-object v0
22309 + if-eqz p2, :cond_99
22311 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
22312 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
22314 + move-result v3
22316 + if-nez v3, :cond_99
22318 + move-object/from16 v0, p0
22320 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22322 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22323 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22325 + move-result-object v3
22327 + const-string/jumbo v4, "privacy"
22329 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22331 + move-result-object v2
22333 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
22335 + move-object/from16 v0, p0
22337 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22339 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22340 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22342 + move-result-object v3
22344 + move-object/from16 v0, p0
22346 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22348 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22349 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22351 + move-result v4
22353 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22355 + move-result-object v8
22357 + if-eqz v8, :cond_6a
22359 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
22361 + move-result v3
22363 + if-eqz v3, :cond_6a
22365 + const-string v7, ""
22367 + move-object/from16 v0, p0
22369 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22371 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22373 + const/16 v4, 0x20
22375 + const/4 v5, 0x0
22377 + move/from16 v0, p1
22379 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22381 + move-result-object v3
22383 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22385 + move-object/from16 v0, p0
22387 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22389 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22390 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22392 + move-result-object v3
22394 + move-object/from16 v0, p0
22396 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22398 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22399 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22401 + move-result v4
22403 + const/4 v5, 0x1
22405 + const-string v6, "incomingCall"
22407 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22409 + :goto_69
22410 return-void
22412 + :cond_6a
22413 + move-object/from16 v0, p0
22415 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22417 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22419 + const/16 v4, 0x20
22421 + const/4 v5, 0x0
22423 + move/from16 v0, p1
22425 + move-object/from16 v1, p2
22427 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22429 + move-result-object v3
22431 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22433 + move-object/from16 v0, p0
22435 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22437 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22438 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22440 + move-result-object v10
22442 + move-object/from16 v0, p0
22444 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22446 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22447 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22449 + move-result v11
22451 + const/4 v12, 0x0
22453 + const-string v13, "incomingCall"
22455 + move-object v9, v2
22457 + move-object/from16 v14, p2
22459 + move-object v15, v8
22461 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22463 + goto :goto_69
22465 + :cond_99
22466 + move-object/from16 v0, p0
22468 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22470 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22472 + const/16 v4, 0x20
22474 + const/4 v5, 0x0
22476 + move/from16 v0, p1
22478 + move-object/from16 v1, p2
22480 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22482 + move-result-object v3
22484 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22486 + goto :goto_69
22487 .end method
22489 .method public onCellLocationChanged(Landroid/os/Bundle;)V
22490 - .registers 6
22491 + .registers 10
22493 + const/4 v5, 0x0
22495 const/4 v3, 0x0
22497 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
22499 + move-result-object v7
22501 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22503 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22504 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22506 + move-result-object v1
22508 + if-eqz v1, :cond_4a
22510 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22512 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22513 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22515 + move-result-object v1
22517 + const-string/jumbo v2, "privacy"
22519 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22521 move-result-object v0
22523 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
22525 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22527 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22528 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22530 + move-result-object v1
22532 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22534 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22535 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22537 + move-result v2
22539 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22541 + move-result-object v6
22543 + if-eqz v6, :cond_4b
22545 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22547 + move-result v1
22549 + if-eqz v1, :cond_4b
22551 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22553 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22554 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22556 + move-result-object v1
22558 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22560 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22561 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22563 + move-result v2
22565 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22567 + move-result v3
22569 + const-string v4, "locationNetwork"
22571 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22573 + :cond_4a
22574 + :goto_4a
22575 + return-void
22577 + :cond_4b
22578 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22580 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22582 const/16 v2, 0x10
22584 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22585 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22587 move-result-object v1
22589 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
22591 - return-void
22592 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22594 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22595 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22597 + move-result-object v1
22599 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22601 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22602 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22604 + move-result v2
22606 + const-string v4, "locationNetwork"
22608 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22610 + goto :goto_4a
22611 .end method
22613 .method public onDataActivity(I)V
22614 diff -Npru stock_framework/smali/android/telephony/PhoneStateListener.smali pdroid_framework/smali/android/telephony/PhoneStateListener.smali
22615 --- stock_framework/smali/android/telephony/PhoneStateListener.smali 2012-07-02 10:16:17.075929573 -0700
22616 +++ pdroid_framework/smali/android/telephony/PhoneStateListener.smali 2012-07-02 10:16:49.424634434 -0700
22617 @@ -29,12 +29,20 @@
22619 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
22621 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
22624 # instance fields
22625 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
22627 +.field private context:Landroid/content/Context;
22629 .field mHandler:Landroid/os/Handler;
22631 +.field private packageName:Ljava/lang/String;
22633 +.field private uid:I
22636 # direct methods
22637 .method public constructor <init>()V
22638 @@ -57,6 +65,30 @@
22639 return-void
22640 .end method
22642 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22643 + .registers 2
22645 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22647 + return-object v0
22648 +.end method
22650 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22651 + .registers 2
22653 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22655 + return-object v0
22656 +.end method
22658 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
22659 + .registers 2
22661 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
22663 + return v0
22664 +.end method
22667 # virtual methods
22668 .method public onCallForwardingIndicatorChanged(Z)V
22669 @@ -126,3 +158,27 @@
22671 return-void
22672 .end method
22674 +.method public setContext(Landroid/content/Context;)V
22675 + .registers 2
22677 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22679 + return-void
22680 +.end method
22682 +.method public setPackageName(Ljava/lang/String;)V
22683 + .registers 2
22685 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22687 + return-void
22688 +.end method
22690 +.method public setUid(I)V
22691 + .registers 2
22693 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
22695 + return-void
22696 +.end method
22697 diff -Npru stock_framework/smali/android/view/accessibility/AccessibilityManager.smali pdroid_framework/smali/android/view/accessibility/AccessibilityManager.smali
22698 --- stock_framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-07-02 10:16:20.080645234 -0700
22699 +++ pdroid_framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-07-02 10:16:52.248306988 -0700
22700 @@ -637,15 +637,15 @@
22702 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22703 :try_end_21
22704 - .catchall {:try_start_d .. :try_end_21} :catchall_4c
22705 + .catchall {:try_start_d .. :try_end_21} :catchall_49
22706 .catch Landroid/os/RemoteException; {:try_start_d .. :try_end_21} :catch_27
22708 if-eqz v0, :cond_26
22710 + :goto_23
22711 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22713 :cond_26
22714 - :goto_26
22715 return-void
22717 :catch_27
22718 @@ -680,21 +680,19 @@
22720 invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22721 :try_end_46
22722 - .catchall {:try_start_28 .. :try_end_46} :catchall_4c
22723 + .catchall {:try_start_28 .. :try_end_46} :catchall_49
22725 if-eqz v0, :cond_26
22727 - invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22729 - goto :goto_26
22730 + goto :goto_23
22732 - :catchall_4c
22733 + :catchall_49
22734 move-exception v4
22736 - if-eqz v0, :cond_52
22737 + if-eqz v0, :cond_4f
22739 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22741 - :cond_52
22742 + :cond_4f
22743 throw v4
22744 .end method
22745 diff -Npru stock_framework/smali/android/view/SurfaceView.smali pdroid_framework/smali/android/view/SurfaceView.smali
22746 --- stock_framework/smali/android/view/SurfaceView.smali 2012-07-02 10:16:18.198196877 -0700
22747 +++ pdroid_framework/smali/android/view/SurfaceView.smali 2012-07-02 10:16:50.454879822 -0700
22748 @@ -1342,7 +1342,7 @@
22750 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback;->surfaceDestroyed(Landroid/view/SurfaceHolder;)V
22751 :try_end_29b
22752 - .catchall {:try_start_262 .. :try_end_29b} :catchall_3c6
22753 + .catchall {:try_start_262 .. :try_end_29b} :catchall_3a7
22755 add-int/lit8 v22, v22, 0x1
22757 @@ -1486,7 +1486,7 @@
22759 invoke-virtual {v3, v4}, Landroid/view/Surface;->transferFrom(Landroid/view/Surface;)V
22761 - if-eqz v34, :cond_3a7
22762 + if-eqz v34, :cond_3c6
22764 move-object/from16 v0, p0
22766 @@ -1608,7 +1608,7 @@
22767 goto :goto_35e
22769 :cond_37a
22770 - if-eqz p2, :cond_3a7
22771 + if-eqz p2, :cond_3c6
22773 if-nez v19, :cond_382
22775 @@ -1632,7 +1632,7 @@
22777 move/from16 v1, v23
22779 - if-ge v0, v1, :cond_3a7
22780 + if-ge v0, v1, :cond_3c6
22782 aget-object v18, v17, v22
22784 @@ -1652,81 +1652,81 @@
22786 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback2;->surfaceRedrawNeeded(Landroid/view/SurfaceHolder;)V
22787 :try_end_3a4
22788 - .catchall {:try_start_301 .. :try_end_3a4} :catchall_3c6
22789 + .catchall {:try_start_301 .. :try_end_3a4} :catchall_3a7
22791 :cond_3a4
22792 add-int/lit8 v22, v22, 0x1
22794 goto :goto_38b
22796 - :cond_3a7
22797 - const/4 v3, 0x0
22798 + :catchall_3a7
22799 + move-exception v3
22801 - :try_start_3a8
22802 + const/4 v4, 0x0
22804 + :try_start_3a9
22805 move-object/from16 v0, p0
22807 - iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22808 + iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22810 - if-eqz p2, :cond_3b9
22811 + if-eqz p2, :cond_3ba
22813 move-object/from16 v0, p0
22815 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22816 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22818 move-object/from16 v0, p0
22820 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22821 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22823 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22824 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22826 - :cond_3b9
22827 + :cond_3ba
22828 move-object/from16 v0, p0
22830 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22831 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22833 move-object/from16 v0, p0
22835 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22837 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22838 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22840 - goto/16 :goto_6
22841 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22843 - :catchall_3c6
22844 - move-exception v3
22845 + throw v3
22847 - const/4 v4, 0x0
22848 + :cond_3c6
22849 + const/4 v3, 0x0
22851 move-object/from16 v0, p0
22853 - iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22854 + iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22856 - if-eqz p2, :cond_3d9
22857 + if-eqz p2, :cond_3d8
22859 move-object/from16 v0, p0
22861 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22862 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22864 move-object/from16 v0, p0
22866 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22867 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22869 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22870 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22872 - :cond_3d9
22873 + :cond_3d8
22874 move-object/from16 v0, p0
22876 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22877 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22879 move-object/from16 v0, p0
22881 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22882 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22884 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22885 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22886 + :try_end_3e3
22887 + .catch Landroid/os/RemoteException; {:try_start_3a9 .. :try_end_3e3} :catch_2f6
22889 - throw v3
22890 - :try_end_3e5
22891 - .catch Landroid/os/RemoteException; {:try_start_3a8 .. :try_end_3e5} :catch_2f6
22892 + goto/16 :goto_6
22893 .end method
22896 diff -Npru stock_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali pdroid_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali
22897 --- stock_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-07-02 10:16:19.978620934 -0700
22898 +++ pdroid_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-07-02 10:16:52.144282211 -0700
22899 @@ -364,7 +364,7 @@
22900 :try_start_13
22901 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22902 :try_end_16
22903 - .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1c
22904 + .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1e
22906 :goto_16
22907 return-void
22908 @@ -375,20 +375,20 @@
22909 :try_start_18
22910 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22911 :try_end_1b
22912 - .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1e
22913 + .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1c
22915 :goto_1b
22916 throw v5
22918 :catch_1c
22919 - move-exception v5
22920 + move-exception v6
22922 - goto :goto_16
22923 + goto :goto_1b
22925 :catch_1e
22926 - move-exception v6
22927 + move-exception v5
22929 - goto :goto_1b
22930 + goto :goto_16
22931 .end method
22933 .method public findAccessibilityNodeInfoByViewIdClientThread(IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22934 @@ -491,7 +491,7 @@
22935 :try_start_1d
22936 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22937 :try_end_20
22938 - .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_26
22939 + .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_28
22941 :goto_20
22942 return-void
22943 @@ -502,20 +502,20 @@
22944 :try_start_22
22945 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22946 :try_end_25
22947 - .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_28
22948 + .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_26
22950 :goto_25
22951 throw v6
22953 :catch_26
22954 - move-exception v6
22955 + move-exception v7
22957 - goto :goto_20
22958 + goto :goto_25
22960 :catch_28
22961 - move-exception v7
22962 + move-exception v6
22964 - goto :goto_25
22965 + goto :goto_20
22966 .end method
22968 .method public findAccessibilityNodeInfosByViewTextClientThread(Ljava/lang/String;IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22969 @@ -639,7 +639,7 @@
22971 invoke-virtual {v8}, Landroid/view/View;->getVisibility()I
22972 :try_end_2c
22973 - .catchall {:try_start_16 .. :try_end_2c} :catchall_70
22974 + .catchall {:try_start_16 .. :try_end_2c} :catchall_6a
22976 move-result v11
22978 @@ -649,7 +649,7 @@
22979 :try_start_2f
22980 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22981 :try_end_32
22982 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_75
22983 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_46
22985 :goto_32
22986 return-void
22987 @@ -669,7 +669,7 @@
22989 invoke-virtual {v4}, Ljava/util/ArrayList;->isEmpty()Z
22990 :try_end_3f
22991 - .catchall {:try_start_33 .. :try_end_3f} :catchall_70
22992 + .catchall {:try_start_33 .. :try_end_3f} :catchall_6a
22994 move-result v11
22996 @@ -700,7 +700,7 @@
22997 const/4 v5, 0x0
22999 :goto_52
23000 - if-ge v5, v10, :cond_6a
23001 + if-ge v5, v10, :cond_71
23003 invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
23005 @@ -720,46 +720,36 @@
23007 invoke-interface {v6, v11}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23008 :try_end_67
23009 - .catchall {:try_start_48 .. :try_end_67} :catchall_70
23010 + .catchall {:try_start_48 .. :try_end_67} :catchall_6a
23012 :cond_67
23013 add-int/lit8 v5, v5, 0x1
23015 goto :goto_52
23017 - :cond_6a
23018 - :try_start_6a
23019 - invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23020 - :try_end_6d
23021 - .catch Landroid/os/RemoteException; {:try_start_6a .. :try_end_6d} :catch_6e
23022 + :catchall_6a
23023 + move-exception v11
23025 - goto :goto_32
23026 + :try_start_6b
23027 + invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23028 + :try_end_6e
23029 + .catch Landroid/os/RemoteException; {:try_start_6b .. :try_end_6e} :catch_6f
23031 - :catch_6e
23032 - move-exception v11
23033 + :goto_6e
23034 + throw v11
23036 - goto :goto_32
23037 + :catch_6f
23038 + move-exception v12
23040 - :catchall_70
23041 - move-exception v11
23042 + goto :goto_6e
23044 + :cond_71
23045 :try_start_71
23046 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23047 :try_end_74
23048 - .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_77
23050 - :goto_74
23051 - throw v11
23053 - :catch_75
23054 - move-exception v11
23055 + .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_46
23057 goto :goto_32
23059 - :catch_77
23060 - move-exception v12
23062 - goto :goto_74
23063 .end method
23065 .method public performAccessibilityActionClientThread(IIILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23066 @@ -864,7 +854,7 @@
23067 :try_start_17
23068 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23069 :try_end_1a
23070 - .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_34
23071 + .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_36
23073 :goto_1a
23074 return-void
23075 @@ -906,20 +896,20 @@
23076 :try_start_30
23077 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23078 :try_end_33
23079 - .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_36
23080 + .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_34
23082 :goto_33
23083 throw v6
23085 :catch_34
23086 - move-exception v6
23087 + move-exception v7
23089 - goto :goto_1a
23090 + goto :goto_33
23092 :catch_36
23093 - move-exception v7
23094 + move-exception v6
23096 - goto :goto_33
23097 + goto :goto_1a
23099 :pswitch_data_38
23100 .packed-switch 0x1
23101 diff -Npru stock_framework/smali/android/view/ViewRootImpl$W.smali pdroid_framework/smali/android/view/ViewRootImpl$W.smali
23102 --- stock_framework/smali/android/view/ViewRootImpl$W.smali 2012-07-02 10:16:19.994624746 -0700
23103 +++ pdroid_framework/smali/android/view/ViewRootImpl$W.smali 2012-07-02 10:16:52.161286261 -0700
23104 @@ -301,21 +301,21 @@
23106 invoke-direct {v1, p3}, Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V
23107 :try_end_47
23108 - .catchall {:try_start_42 .. :try_end_47} :catchall_64
23109 - .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_55
23110 + .catchall {:try_start_42 .. :try_end_47} :catchall_5f
23111 + .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_50
23113 :try_start_47
23114 invoke-static {v3, p1, p2, v1}, Landroid/view/ViewDebug;->dispatchCommand(Landroid/view/View;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;)V
23115 :try_end_4a
23116 - .catchall {:try_start_47 .. :try_end_4a} :catchall_70
23117 - .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_73
23118 + .catchall {:try_start_47 .. :try_end_4a} :catchall_6d
23119 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_70
23121 if-eqz v1, :cond_4f
23123 :try_start_4c
23124 invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
23125 :try_end_4f
23126 - .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50
23127 + .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_6b
23129 :cond_4f
23130 :goto_4f
23131 @@ -324,70 +324,69 @@
23132 :catch_50
23133 move-exception v2
23135 + :goto_51
23136 + :try_start_51
23137 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23139 - goto :goto_4f
23141 - :catch_55
23142 - move-exception v2
23144 - :goto_56
23145 - :try_start_56
23146 - invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23147 - :try_end_59
23148 - .catchall {:try_start_56 .. :try_end_59} :catchall_64
23149 + :try_end_54
23150 + .catchall {:try_start_51 .. :try_end_54} :catchall_5f
23152 if-eqz v0, :cond_4f
23154 - :try_start_5b
23155 + :try_start_56
23156 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23157 - :try_end_5e
23158 - .catch Ljava/io/IOException; {:try_start_5b .. :try_end_5e} :catch_5f
23159 + :try_end_59
23160 + .catch Ljava/io/IOException; {:try_start_56 .. :try_end_59} :catch_5a
23162 goto :goto_4f
23164 - :catch_5f
23165 + :catch_5a
23166 move-exception v2
23168 + :goto_5b
23169 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23171 goto :goto_4f
23173 - :catchall_64
23174 + :catchall_5f
23175 move-exception v5
23177 - :goto_65
23178 - if-eqz v0, :cond_6a
23179 + :goto_60
23180 + if-eqz v0, :cond_65
23182 - :try_start_67
23183 + :try_start_62
23184 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23185 - :try_end_6a
23186 - .catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_6b
23187 + :try_end_65
23188 + .catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
23190 - :cond_6a
23191 - :goto_6a
23192 + :cond_65
23193 + :goto_65
23194 throw v5
23196 - :catch_6b
23197 + :catch_66
23198 move-exception v2
23200 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23202 - goto :goto_6a
23203 + goto :goto_65
23205 - :catchall_70
23206 + :catch_6b
23207 + move-exception v2
23209 + goto :goto_5b
23211 + :catchall_6d
23212 move-exception v5
23214 move-object v0, v1
23216 - goto :goto_65
23217 + goto :goto_60
23219 - :catch_73
23220 + :catch_70
23221 move-exception v2
23223 move-object v0, v1
23225 - goto :goto_56
23226 + goto :goto_51
23227 .end method
23229 .method public resized(IILandroid/graphics/Rect;Landroid/graphics/Rect;ZLandroid/content/res/Configuration;)V
23230 diff -Npru stock_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali pdroid_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali
23231 --- stock_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-07-02 10:16:20.319702172 -0700
23232 +++ pdroid_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-07-02 10:16:52.505368216 -0700
23233 @@ -123,28 +123,26 @@
23235 invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
23236 :try_end_a
23237 - .catchall {:try_start_5 .. :try_end_a} :catchall_11
23238 - .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_d
23239 + .catchall {:try_start_5 .. :try_end_a} :catchall_d
23240 + .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_11
23242 + :goto_a
23243 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23245 :cond_c
23246 - :goto_c
23247 return-void
23249 - :catch_d
23250 + :catchall_d
23251 move-exception v0
23253 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23255 - goto :goto_c
23256 + throw v0
23258 - :catchall_11
23259 + :catch_11
23260 move-exception v0
23262 - iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23264 - throw v0
23265 + goto :goto_a
23266 .end method
23268 .method private releaseQueue()V
23269 diff -Npru stock_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali pdroid_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali
23270 --- stock_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-07-02 10:16:20.398720993 -0700
23271 +++ pdroid_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-07-02 10:16:52.568383225 -0700
23272 @@ -189,7 +189,7 @@
23274 invoke-interface {v6}, Landroid/database/Cursor;->moveToNext()Z
23275 :try_end_40
23276 - .catchall {:try_start_1e .. :try_end_40} :catchall_57
23277 + .catchall {:try_start_1e .. :try_end_40} :catchall_54
23278 .catch Ljava/lang/IllegalStateException; {:try_start_1e .. :try_end_40} :catch_49
23280 move-result v1
23281 @@ -199,10 +199,10 @@
23282 :cond_43
23283 if-eqz v6, :cond_48
23285 + :goto_45
23286 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23288 :cond_48
23289 - :goto_48
23290 return-void
23292 :catch_49
23293 @@ -215,22 +215,20 @@
23295 invoke-static {v1, v2, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23296 :try_end_51
23297 - .catchall {:try_start_4a .. :try_end_51} :catchall_57
23298 + .catchall {:try_start_4a .. :try_end_51} :catchall_54
23300 if-eqz v6, :cond_48
23302 - invoke-interface {v6}, Landroid/database/Cursor;->close()V
23304 - goto :goto_48
23305 + goto :goto_45
23307 - :catchall_57
23308 + :catchall_54
23309 move-exception v1
23311 - if-eqz v6, :cond_5d
23312 + if-eqz v6, :cond_5a
23314 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23316 - :cond_5d
23317 + :cond_5a
23318 throw v1
23319 .end method
23321 diff -Npru stock_framework/smali/android/webkit/WebView$6.smali pdroid_framework/smali/android/webkit/WebView$6.smali
23322 --- stock_framework/smali/android/webkit/WebView$6.smali 2012-07-02 10:16:20.442731475 -0700
23323 +++ pdroid_framework/smali/android/webkit/WebView$6.smali 2012-07-02 10:16:52.626397043 -0700
23324 @@ -58,8 +58,8 @@
23326 invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
23327 :try_end_8
23328 - .catchall {:try_start_1 .. :try_end_8} :catchall_2c
23329 - .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_20
23330 + .catchall {:try_start_1 .. :try_end_8} :catchall_20
23331 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_2c
23333 :try_start_8
23334 iget-object v2, p0, Landroid/webkit/WebView$6;->val$p:Landroid/graphics/Picture;
23335 @@ -80,7 +80,7 @@
23336 :try_start_16
23337 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23338 :try_end_19
23339 - .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_38
23340 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_3c
23342 :cond_19
23343 :goto_19
23344 @@ -93,7 +93,7 @@
23345 :goto_1f
23346 return-void
23348 - :catch_20
23349 + :catchall_20
23350 move-exception v2
23352 :goto_21
23353 @@ -106,13 +106,13 @@
23355 :cond_26
23356 :goto_26
23357 - iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23358 + iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23360 - invoke-virtual {v2}, Ljava/io/File;->delete()Z
23361 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
23363 - goto :goto_1f
23364 + throw v2
23366 - :catchall_2c
23367 + :catch_2c
23368 move-exception v2
23370 :goto_2d
23371 @@ -121,42 +121,42 @@
23372 :try_start_2f
23373 invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
23374 :try_end_32
23375 - .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_3c
23376 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_38
23378 :cond_32
23379 :goto_32
23380 - iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23381 + iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23383 - invoke-virtual {v3}, Ljava/io/File;->delete()Z
23384 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
23386 - throw v2
23387 + goto :goto_1f
23389 :catch_38
23390 move-exception v2
23392 - goto :goto_19
23393 + goto :goto_32
23395 :catch_3a
23396 - move-exception v2
23397 + move-exception v3
23399 goto :goto_26
23401 :catch_3c
23402 - move-exception v3
23403 + move-exception v2
23405 - goto :goto_32
23406 + goto :goto_19
23408 :catchall_3e
23409 move-exception v2
23411 move-object v0, v1
23413 - goto :goto_2d
23414 + goto :goto_21
23416 :catch_41
23417 move-exception v2
23419 move-object v0, v1
23421 - goto :goto_21
23422 + goto :goto_2d
23423 .end method
23424 diff -Npru stock_framework/smali/android/webkit/WebView$7.smali pdroid_framework/smali/android/webkit/WebView$7.smali
23425 --- stock_framework/smali/android/webkit/WebView$7.smali 2012-07-02 10:16:20.442731475 -0700
23426 +++ pdroid_framework/smali/android/webkit/WebView$7.smali 2012-07-02 10:16:52.626397043 -0700
23427 @@ -72,7 +72,7 @@
23429 invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
23430 :try_end_19
23431 - .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_23
23432 + .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_21
23434 :goto_19
23435 return-void
23436 @@ -85,18 +85,18 @@
23438 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
23439 :try_end_20
23440 - .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_21
23441 + .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_23
23443 :goto_20
23444 throw v1
23446 :catch_21
23447 - move-exception v2
23448 + move-exception v1
23450 - goto :goto_20
23451 + goto :goto_19
23453 :catch_23
23454 - move-exception v1
23455 + move-exception v2
23457 - goto :goto_19
23458 + goto :goto_20
23459 .end method
23460 diff -Npru stock_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali
23461 --- stock_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-07-02 10:16:20.700792940 -0700
23462 +++ pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-07-02 10:16:52.888459462 -0700
23463 @@ -140,7 +140,7 @@
23465 throw v21
23466 :try_end_51
23467 - .catchall {:try_start_19 .. :try_end_51} :catchall_15b
23468 + .catchall {:try_start_19 .. :try_end_51} :catchall_158
23469 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_19 .. :try_end_51} :catch_51
23470 .catch Ljava/io/IOException; {:try_start_19 .. :try_end_51} :catch_ed
23472 @@ -189,7 +189,7 @@
23474 invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23475 :try_end_7c
23476 - .catchall {:try_start_52 .. :try_end_7c} :catchall_15b
23477 + .catchall {:try_start_52 .. :try_end_7c} :catchall_158
23479 if-eqz v4, :cond_3c
23481 @@ -238,7 +238,7 @@
23483 monitor-enter v22
23484 :try_end_a0
23485 - .catchall {:try_start_84 .. :try_end_a0} :catchall_15b
23486 + .catchall {:try_start_84 .. :try_end_a0} :catchall_158
23487 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_84 .. :try_end_a0} :catch_51
23488 .catch Ljava/io/IOException; {:try_start_84 .. :try_end_a0} :catch_ed
23490 @@ -267,7 +267,7 @@
23491 add-int/lit8 v9, v8, -0x1
23493 :goto_b7
23494 - if-ltz v9, :cond_162
23495 + if-ltz v9, :cond_15f
23497 invoke-interface {v7, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
23499 @@ -279,7 +279,7 @@
23501 invoke-interface {v0, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
23502 :try_end_c4
23503 - .catchall {:try_start_a0 .. :try_end_c4} :catchall_1b3
23504 + .catchall {:try_start_a0 .. :try_end_c4} :catchall_1aa
23506 add-int/lit8 v9, v9, -0x1
23508 @@ -315,7 +315,7 @@
23510 move-result v21
23512 - if-nez v21, :cond_120
23513 + if-nez v21, :cond_11d
23515 new-instance v21, Lorg/xmlpull/v1/XmlPullParserException;
23517 @@ -325,7 +325,7 @@
23519 throw v21
23520 :try_end_ed
23521 - .catchall {:try_start_d7 .. :try_end_ed} :catchall_15b
23522 + .catchall {:try_start_d7 .. :try_end_ed} :catchall_158
23523 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_d7 .. :try_end_ed} :catch_51
23524 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_ed} :catch_ed
23526 @@ -372,26 +372,21 @@
23528 invoke-static {v0, v1, v10}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23529 :try_end_116
23530 - .catchall {:try_start_ee .. :try_end_116} :catchall_15b
23531 + .catchall {:try_start_ee .. :try_end_116} :catchall_158
23533 if-eqz v4, :cond_3c
23535 :try_start_118
23536 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23537 :try_end_11b
23538 - .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_11d
23539 + .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_82
23541 goto/16 :goto_3c
23543 - :catch_11d
23544 - move-exception v21
23546 - goto/16 :goto_3c
23548 - :cond_120
23549 + :cond_11d
23550 const/16 v21, 0x0
23552 - :try_start_122
23553 + :try_start_11f
23554 const-string v22, "activity"
23556 move-object/from16 v0, v21
23557 @@ -443,29 +438,29 @@
23558 invoke-direct {v13, v3, v0, v1, v2}, Landroid/widget/ActivityChooserModel$HistoricalRecord;-><init>(Ljava/lang/String;JF)V
23560 invoke-interface {v14, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23561 - :try_end_159
23562 - .catchall {:try_start_122 .. :try_end_159} :catchall_15b
23563 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_122 .. :try_end_159} :catch_51
23564 - .catch Ljava/io/IOException; {:try_start_122 .. :try_end_159} :catch_ed
23565 + :try_end_156
23566 + .catchall {:try_start_11f .. :try_end_156} :catchall_158
23567 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_11f .. :try_end_156} :catch_51
23568 + .catch Ljava/io/IOException; {:try_start_11f .. :try_end_156} :catch_ed
23570 goto/16 :goto_89
23572 - :catchall_15b
23573 + :catchall_158
23574 move-exception v21
23576 - if-eqz v4, :cond_161
23577 + if-eqz v4, :cond_15e
23579 - :try_start_15e
23580 + :try_start_15b
23581 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23582 - :try_end_161
23583 - .catch Ljava/io/IOException; {:try_start_15e .. :try_end_161} :catch_1b6
23584 + :try_end_15e
23585 + .catch Ljava/io/IOException; {:try_start_15b .. :try_end_15e} :catch_1ad
23587 - :cond_161
23588 - :goto_161
23589 + :cond_15e
23590 + :goto_15e
23591 throw v21
23593 - :cond_162
23594 - :try_start_162
23595 + :cond_15f
23596 + :try_start_15f
23597 invoke-interface {v7}, Ljava/util/List;->size()I
23599 move-result v21
23600 @@ -478,28 +473,23 @@
23602 move/from16 v1, v23
23604 - if-ne v0, v1, :cond_17b
23605 + if-ne v0, v1, :cond_175
23607 monitor-exit v22
23608 - :try_end_171
23609 - .catchall {:try_start_162 .. :try_end_171} :catchall_1b3
23610 + :try_end_16e
23611 + .catchall {:try_start_15f .. :try_end_16e} :catchall_1aa
23613 if-eqz v4, :cond_3c
23615 - :try_start_173
23616 + :try_start_170
23617 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23618 - :try_end_176
23619 - .catch Ljava/io/IOException; {:try_start_173 .. :try_end_176} :catch_178
23621 - goto/16 :goto_3c
23623 - :catch_178
23624 - move-exception v21
23625 + :try_end_173
23626 + .catch Ljava/io/IOException; {:try_start_170 .. :try_end_173} :catch_82
23628 goto/16 :goto_3c
23630 - :cond_17b
23631 - :try_start_17b
23632 + :cond_175
23633 + :try_start_175
23634 invoke-interface {v7}, Ljava/util/List;->clear()V
23636 move-object/from16 v0, v18
23637 @@ -543,40 +533,35 @@
23638 invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
23640 monitor-exit v22
23641 - :try_end_1a9
23642 - .catchall {:try_start_17b .. :try_end_1a9} :catchall_1b3
23643 + :try_end_1a3
23644 + .catchall {:try_start_175 .. :try_end_1a3} :catchall_1aa
23646 if-eqz v4, :cond_3c
23648 - :try_start_1ab
23649 + :try_start_1a5
23650 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23651 - :try_end_1ae
23652 - .catch Ljava/io/IOException; {:try_start_1ab .. :try_end_1ae} :catch_1b0
23653 + :try_end_1a8
23654 + .catch Ljava/io/IOException; {:try_start_1a5 .. :try_end_1a8} :catch_82
23656 goto/16 :goto_3c
23658 - :catch_1b0
23659 + :catchall_1aa
23660 move-exception v21
23662 - goto/16 :goto_3c
23664 - :catchall_1b3
23665 - move-exception v21
23667 - :try_start_1b4
23668 + :try_start_1ab
23669 monitor-exit v22
23670 - :try_end_1b5
23671 - .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_1b3
23672 + :try_end_1ac
23673 + .catchall {:try_start_1ab .. :try_end_1ac} :catchall_1aa
23675 - :try_start_1b5
23676 + :try_start_1ac
23677 throw v21
23678 - :try_end_1b6
23679 - .catchall {:try_start_1b5 .. :try_end_1b6} :catchall_15b
23680 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1b5 .. :try_end_1b6} :catch_51
23681 - .catch Ljava/io/IOException; {:try_start_1b5 .. :try_end_1b6} :catch_ed
23682 + :try_end_1ad
23683 + .catchall {:try_start_1ac .. :try_end_1ad} :catchall_158
23684 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1ac .. :try_end_1ad} :catch_51
23685 + .catch Ljava/io/IOException; {:try_start_1ac .. :try_end_1ad} :catch_ed
23687 - :catch_1b6
23688 + :catch_1ad
23689 move-exception v22
23691 - goto :goto_161
23692 + goto :goto_15e
23693 .end method
23694 diff -Npru stock_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali
23695 --- stock_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-07-02 10:16:20.700792940 -0700
23696 +++ pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-07-02 10:16:52.888459462 -0700
23697 @@ -75,7 +75,7 @@
23698 :try_start_14
23699 monitor-exit v12
23700 :try_end_15
23701 - .catchall {:try_start_14 .. :try_end_15} :catchall_13d
23702 + .catchall {:try_start_14 .. :try_end_15} :catchall_136
23704 :try_start_15
23705 iget-object v11, p0, Landroid/widget/ActivityChooserModel$HistoryPersister;->this$0:Landroid/widget/ActivityChooserModel;
23706 @@ -190,10 +190,10 @@
23708 invoke-interface {v10, v11, v12}, Lorg/xmlpull/v1/XmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
23709 :try_end_7e
23710 - .catchall {:try_start_2b .. :try_end_7e} :catchall_134
23711 + .catchall {:try_start_2b .. :try_end_7e} :catchall_12d
23712 .catch Ljava/lang/IllegalArgumentException; {:try_start_2b .. :try_end_7e} :catch_b7
23713 - .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_e0
23714 - .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_109
23715 + .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_de
23716 + .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_105
23718 add-int/lit8 v2, v2, 0x1
23720 @@ -258,10 +258,10 @@
23722 invoke-interface {v10}, Lorg/xmlpull/v1/XmlSerializer;->endDocument()V
23723 :try_end_af
23724 - .catchall {:try_start_a7 .. :try_end_af} :catchall_134
23725 + .catchall {:try_start_a7 .. :try_end_af} :catchall_12d
23726 .catch Ljava/lang/IllegalArgumentException; {:try_start_a7 .. :try_end_af} :catch_b7
23727 - .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_e0
23728 - .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_109
23729 + .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_de
23730 + .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_105
23732 if-eqz v1, :cond_a5
23734 @@ -312,26 +312,21 @@
23736 invoke-static {v11, v12, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23737 :try_end_d8
23738 - .catchall {:try_start_b8 .. :try_end_d8} :catchall_134
23739 + .catchall {:try_start_b8 .. :try_end_d8} :catchall_12d
23741 if-eqz v1, :cond_a5
23743 :try_start_da
23744 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23745 :try_end_dd
23746 - .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_de
23747 + .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_b5
23749 goto :goto_a5
23751 :catch_de
23752 - move-exception v11
23754 - goto :goto_a5
23756 - :catch_e0
23757 move-exception v5
23759 - :try_start_e1
23760 + :try_start_df
23761 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23763 move-result-object v11
23764 @@ -362,27 +357,22 @@
23765 move-result-object v12
23767 invoke-static {v11, v12, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23768 - :try_end_101
23769 - .catchall {:try_start_e1 .. :try_end_101} :catchall_134
23770 + :try_end_ff
23771 + .catchall {:try_start_df .. :try_end_ff} :catchall_12d
23773 if-eqz v1, :cond_a5
23775 - :try_start_103
23776 + :try_start_101
23777 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23778 - :try_end_106
23779 - .catch Ljava/io/IOException; {:try_start_103 .. :try_end_106} :catch_107
23781 - goto :goto_a5
23783 - :catch_107
23784 - move-exception v11
23785 + :try_end_104
23786 + .catch Ljava/io/IOException; {:try_start_101 .. :try_end_104} :catch_b5
23788 goto :goto_a5
23790 - :catch_109
23791 + :catch_105
23792 move-exception v4
23794 - :try_start_10a
23795 + :try_start_106
23796 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23798 move-result-object v11
23799 @@ -413,43 +403,38 @@
23800 move-result-object v12
23802 invoke-static {v11, v12, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23803 - :try_end_12a
23804 - .catchall {:try_start_10a .. :try_end_12a} :catchall_134
23805 + :try_end_126
23806 + .catchall {:try_start_106 .. :try_end_126} :catchall_12d
23808 if-eqz v1, :cond_a5
23810 - :try_start_12c
23811 + :try_start_128
23812 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23813 - :try_end_12f
23814 - .catch Ljava/io/IOException; {:try_start_12c .. :try_end_12f} :catch_131
23816 - goto/16 :goto_a5
23818 - :catch_131
23819 - move-exception v11
23820 + :try_end_12b
23821 + .catch Ljava/io/IOException; {:try_start_128 .. :try_end_12b} :catch_b5
23823 goto/16 :goto_a5
23825 - :catchall_134
23826 + :catchall_12d
23827 move-exception v11
23829 - if-eqz v1, :cond_13a
23830 + if-eqz v1, :cond_133
23832 - :try_start_137
23833 + :try_start_130
23834 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23835 - :try_end_13a
23836 - .catch Ljava/io/IOException; {:try_start_137 .. :try_end_13a} :catch_13b
23837 + :try_end_133
23838 + .catch Ljava/io/IOException; {:try_start_130 .. :try_end_133} :catch_134
23840 - :cond_13a
23841 - :goto_13a
23842 + :cond_133
23843 + :goto_133
23844 throw v11
23846 - :catch_13b
23847 + :catch_134
23848 move-exception v12
23850 - goto :goto_13a
23851 + goto :goto_133
23853 - :catchall_13d
23854 + :catchall_136
23855 move-exception v11
23857 move-object v8, v9
23858 diff -Npru stock_framework/smali/android/widget/Filter$RequestHandler.smali pdroid_framework/smali/android/widget/Filter$RequestHandler.smali
23859 --- stock_framework/smali/android/widget/Filter$RequestHandler.smali 2012-07-02 10:16:20.876834870 -0700
23860 +++ pdroid_framework/smali/android/widget/Filter$RequestHandler.smali 2012-07-02 10:16:53.067502108 -0700
23861 @@ -36,7 +36,7 @@
23863 iget v4, p1, Landroid/os/Message;->what:I
23865 - sparse-switch v4, :sswitch_data_a8
23866 + sparse-switch v4, :sswitch_data_a4
23868 :goto_5
23869 return-void
23870 @@ -57,7 +57,7 @@
23872 iput-object v5, v0, Landroid/widget/Filter$RequestArguments;->results:Landroid/widget/Filter$FilterResults;
23873 :try_end_14
23874 - .catchall {:try_start_a .. :try_end_14} :catchall_6e
23875 + .catchall {:try_start_a .. :try_end_14} :catchall_6b
23876 .catch Ljava/lang/Exception; {:try_start_a .. :try_end_14} :catch_4f
23878 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23879 @@ -73,9 +73,9 @@
23881 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23883 + :goto_20
23884 invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23886 - :goto_23
23887 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23889 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23890 @@ -149,7 +149,7 @@
23892 invoke-static {v5, v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23893 :try_end_5e
23894 - .catchall {:try_start_50 .. :try_end_5e} :catchall_6e
23895 + .catchall {:try_start_50 .. :try_end_5e} :catchall_6b
23897 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23899 @@ -164,11 +164,9 @@
23901 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23903 - invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23905 - goto :goto_23
23906 + goto :goto_20
23908 - :catchall_6e
23909 + :catchall_6b
23910 move-exception v5
23912 iget-object v6, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23913 @@ -188,7 +186,7 @@
23915 throw v5
23917 - :sswitch_7f
23918 + :sswitch_7c
23919 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23921 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23922 @@ -198,7 +196,7 @@
23924 monitor-enter v6
23926 - :try_start_86
23927 + :try_start_83
23928 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23930 #getter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23931 @@ -206,7 +204,7 @@
23933 move-result-object v5
23935 - if-eqz v5, :cond_a1
23936 + if-eqz v5, :cond_9e
23938 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23940 @@ -228,25 +226,23 @@
23941 #setter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23942 invoke-static {v5, v7}, Landroid/widget/Filter;->access$402(Landroid/widget/Filter;Landroid/os/Handler;)Landroid/os/Handler;
23944 - :cond_a1
23945 + :cond_9e
23946 monitor-exit v6
23948 goto/16 :goto_5
23950 - :catchall_a4
23951 + :catchall_a1
23952 move-exception v5
23954 monitor-exit v6
23955 - :try_end_a6
23956 - .catchall {:try_start_86 .. :try_end_a6} :catchall_a4
23957 + :try_end_a3
23958 + .catchall {:try_start_83 .. :try_end_a3} :catchall_a1
23960 throw v5
23962 - nop
23964 - :sswitch_data_a8
23965 + :sswitch_data_a4
23966 .sparse-switch
23967 -0x2f2f0ff3 -> :sswitch_6
23968 - -0x21524111 -> :sswitch_7f
23969 + -0x21524111 -> :sswitch_7c
23970 .end sparse-switch
23971 .end method
23972 diff -Npru stock_framework/smali/android/widget/GridView.smali pdroid_framework/smali/android/widget/GridView.smali
23973 --- stock_framework/smali/android/widget/GridView.smali 2012-07-02 10:16:20.917844638 -0700
23974 +++ pdroid_framework/smali/android/widget/GridView.smali 2012-07-02 10:16:53.109512114 -0700
23975 @@ -4243,10 +4243,11 @@
23977 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
23978 :try_end_22
23979 - .catchall {:try_start_e .. :try_end_22} :catchall_1c6
23980 + .catchall {:try_start_e .. :try_end_22} :catchall_1b5
23982 if-nez v3, :cond_2c
23984 + :goto_24
23985 const/16 v19, 0x0
23987 move/from16 v0, v19
23988 @@ -4256,7 +4257,6 @@
23989 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
23991 :cond_2c
23992 - :goto_2c
23993 return-void
23995 :cond_2d
23996 @@ -4317,7 +4317,7 @@
23998 move/from16 v19, v0
24000 - packed-switch v19, :pswitch_data_304
24001 + packed-switch v19, :pswitch_data_2f2
24003 move-object/from16 v0, p0
24005 @@ -4372,28 +4372,17 @@
24007 move/from16 v19, v0
24009 - if-nez v19, :cond_d9
24010 + if-nez v19, :cond_d1
24012 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->resetList()V
24014 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24015 - :try_end_9e
24016 - .catchall {:try_start_2d .. :try_end_9e} :catchall_1c6
24018 if-nez v3, :cond_2c
24020 - const/16 v19, 0x0
24022 - move/from16 v0, v19
24024 - move-object/from16 v1, p0
24026 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24027 + goto :goto_24
24029 - goto :goto_2c
24031 - :pswitch_a9
24032 - :try_start_a9
24033 + :pswitch_a1
24034 move-object/from16 v0, p0
24036 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24037 @@ -4420,7 +4409,7 @@
24039 goto :goto_87
24041 - :pswitch_c2
24042 + :pswitch_ba
24043 move-object/from16 v0, p0
24045 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24046 @@ -4445,7 +4434,7 @@
24048 goto :goto_87
24050 - :cond_d9
24051 + :cond_d1
24052 move-object/from16 v0, p0
24054 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24055 @@ -4468,12 +4457,12 @@
24057 move-object/from16 v17, v0
24059 - if-eqz v8, :cond_109
24060 + if-eqz v8, :cond_101
24062 const/4 v11, 0x0
24064 - :goto_f3
24065 - if-ge v11, v5, :cond_10e
24066 + :goto_eb
24067 + if-ge v11, v5, :cond_106
24069 move-object/from16 v0, p0
24071 @@ -4493,14 +4482,14 @@
24073 add-int/lit8 v11, v11, 0x1
24075 - goto :goto_f3
24076 + goto :goto_eb
24078 - :cond_109
24079 + :cond_101
24080 move-object/from16 v0, v17
24082 invoke-virtual {v0, v5, v10}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24084 - :cond_10e
24085 + :cond_106
24086 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->detachAllViewsFromParent()V
24088 move-object/from16 v0, p0
24089 @@ -4509,9 +4498,9 @@
24091 move/from16 v19, v0
24093 - packed-switch v19, :pswitch_data_314
24094 + packed-switch v19, :pswitch_data_302
24096 - if-nez v5, :cond_24d
24097 + if-nez v5, :cond_23c
24099 move-object/from16 v0, p0
24101 @@ -4519,7 +4508,7 @@
24103 move/from16 v19, v0
24105 - if-nez v19, :cond_223
24106 + if-nez v19, :cond_212
24108 move-object/from16 v0, p0
24110 @@ -4527,18 +4516,18 @@
24112 move-object/from16 v19, v0
24114 - if-eqz v19, :cond_132
24115 + if-eqz v19, :cond_12a
24117 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24119 move-result v19
24121 - if-eqz v19, :cond_21f
24122 + if-eqz v19, :cond_20e
24124 - :cond_132
24125 + :cond_12a
24126 const/16 v19, -0x1
24128 - :goto_134
24129 + :goto_12c
24130 move-object/from16 v0, p0
24132 move/from16 v1, v19
24133 @@ -4551,10 +4540,10 @@
24135 move-result-object v18
24137 - :goto_141
24138 + :goto_139
24139 invoke-virtual/range {v17 .. v17}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24141 - if-eqz v18, :cond_2b3
24142 + if-eqz v18, :cond_2a2
24144 const/16 v19, -0x1
24146 @@ -4576,8 +4565,8 @@
24148 iput v0, v1, Landroid/widget/GridView;->mSelectedTop:I
24150 - :cond_15b
24151 - :goto_15b
24152 + :cond_153
24153 + :goto_153
24154 const/16 v19, 0x0
24156 move/from16 v0, v19
24157 @@ -4622,31 +4611,20 @@
24159 move/from16 v19, v0
24161 - if-lez v19, :cond_18e
24162 + if-lez v19, :cond_186
24164 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->checkSelectionChanged()V
24166 - :cond_18e
24167 + :cond_186
24168 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24169 - :try_end_191
24170 - .catchall {:try_start_a9 .. :try_end_191} :catchall_1c6
24172 if-nez v3, :cond_2c
24174 - const/16 v19, 0x0
24175 + goto/16 :goto_24
24177 - move/from16 v0, v19
24178 + :pswitch_18d
24179 + if-eqz v14, :cond_19c
24181 - move-object/from16 v1, p0
24183 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24185 - goto/16 :goto_2c
24187 - :pswitch_19d
24188 - if-eqz v14, :cond_1ac
24190 - :try_start_19f
24191 invoke-virtual {v14}, Landroid/view/View;->getTop()I
24193 move-result v19
24194 @@ -4659,18 +4637,18 @@
24196 move-result-object v18
24198 - goto :goto_141
24199 + goto :goto_139
24201 - :cond_1ac
24202 + :cond_19c
24203 move-object/from16 v0, p0
24205 invoke-direct {v0, v7, v6}, Landroid/widget/GridView;->fillSelection(II)Landroid/view/View;
24207 move-result-object v18
24209 - goto :goto_141
24210 + goto :goto_139
24212 - :pswitch_1b3
24213 + :pswitch_1a3
24214 const/16 v19, 0x0
24216 move/from16 v0, v19
24217 @@ -4686,15 +4664,15 @@
24218 move-result-object v18
24220 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24221 - :try_end_1c4
24222 - .catchall {:try_start_19f .. :try_end_1c4} :catchall_1c6
24223 + :try_end_1b4
24224 + .catchall {:try_start_2d .. :try_end_1b4} :catchall_1b5
24226 - goto/16 :goto_141
24227 + goto :goto_139
24229 - :catchall_1c6
24230 + :catchall_1b5
24231 move-exception v19
24233 - if-nez v3, :cond_1d1
24234 + if-nez v3, :cond_1c0
24236 const/16 v20, 0x0
24238 @@ -4704,11 +4682,11 @@
24240 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24242 - :cond_1d1
24243 + :cond_1c0
24244 throw v19
24246 - :pswitch_1d2
24247 - :try_start_1d2
24248 + :pswitch_1c1
24249 + :try_start_1c1
24250 move-object/from16 v0, p0
24252 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24253 @@ -4727,9 +4705,9 @@
24255 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24257 - goto/16 :goto_141
24258 + goto/16 :goto_139
24260 - :pswitch_1e7
24261 + :pswitch_1d6
24262 move-object/from16 v0, p0
24264 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24265 @@ -4752,9 +4730,9 @@
24267 move-result-object v18
24269 - goto/16 :goto_141
24270 + goto/16 :goto_139
24272 - :pswitch_1ff
24273 + :pswitch_1ee
24274 move-object/from16 v0, p0
24276 iget v0, v0, Landroid/widget/GridView;->mSyncPosition:I
24277 @@ -4777,23 +4755,23 @@
24279 move-result-object v18
24281 - goto/16 :goto_141
24282 + goto/16 :goto_139
24284 - :pswitch_217
24285 + :pswitch_206
24286 move-object/from16 v0, p0
24288 invoke-direct {v0, v9, v7, v6}, Landroid/widget/GridView;->moveSelection(III)Landroid/view/View;
24290 move-result-object v18
24292 - goto/16 :goto_141
24293 + goto/16 :goto_139
24295 - :cond_21f
24296 + :cond_20e
24297 const/16 v19, 0x0
24299 - goto/16 :goto_134
24300 + goto/16 :goto_12c
24302 - :cond_223
24303 + :cond_212
24304 move-object/from16 v0, p0
24306 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24307 @@ -4808,18 +4786,18 @@
24309 move-object/from16 v19, v0
24311 - if-eqz v19, :cond_239
24312 + if-eqz v19, :cond_228
24314 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24316 move-result v19
24318 - if-eqz v19, :cond_24a
24319 + if-eqz v19, :cond_239
24321 - :cond_239
24322 + :cond_228
24323 const/16 v19, -0x1
24325 - :goto_23b
24326 + :goto_22a
24327 move-object/from16 v0, p0
24329 move/from16 v1, v19
24330 @@ -4832,21 +4810,21 @@
24332 move-result-object v18
24334 - goto/16 :goto_141
24335 + goto/16 :goto_139
24337 - :cond_24a
24338 + :cond_239
24339 move/from16 v19, v13
24341 - goto :goto_23b
24342 + goto :goto_22a
24344 - :cond_24d
24345 + :cond_23c
24346 move-object/from16 v0, p0
24348 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24350 move/from16 v19, v0
24352 - if-ltz v19, :cond_27e
24353 + if-ltz v19, :cond_26d
24355 move-object/from16 v0, p0
24357 @@ -4864,7 +4842,7 @@
24359 move/from16 v1, v20
24361 - if-ge v0, v1, :cond_27e
24362 + if-ge v0, v1, :cond_26d
24364 move-object/from16 v0, p0
24366 @@ -4872,9 +4850,9 @@
24368 move/from16 v19, v0
24370 - if-nez v16, :cond_279
24371 + if-nez v16, :cond_268
24373 - :goto_26f
24374 + :goto_25e
24375 move-object/from16 v0, p0
24377 move/from16 v1, v19
24378 @@ -4883,16 +4861,16 @@
24380 move-result-object v18
24382 - goto/16 :goto_141
24383 + goto/16 :goto_139
24385 - :cond_279
24386 + :cond_268
24387 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->getTop()I
24389 move-result v7
24391 - goto :goto_26f
24392 + goto :goto_25e
24394 - :cond_27e
24395 + :cond_26d
24396 move-object/from16 v0, p0
24398 iget v0, v0, Landroid/widget/GridView;->mFirstPosition:I
24399 @@ -4909,7 +4887,7 @@
24401 move/from16 v1, v20
24403 - if-ge v0, v1, :cond_2a7
24404 + if-ge v0, v1, :cond_296
24406 move-object/from16 v0, p0
24408 @@ -4917,9 +4895,9 @@
24410 move/from16 v19, v0
24412 - if-nez v15, :cond_2a2
24413 + if-nez v15, :cond_291
24415 - :goto_298
24416 + :goto_287
24417 move-object/from16 v0, p0
24419 move/from16 v1, v19
24420 @@ -4928,16 +4906,16 @@
24422 move-result-object v18
24424 - goto/16 :goto_141
24425 + goto/16 :goto_139
24427 - :cond_2a2
24428 + :cond_291
24429 invoke-virtual {v15}, Landroid/view/View;->getTop()I
24431 move-result v7
24433 - goto :goto_298
24434 + goto :goto_287
24436 - :cond_2a7
24437 + :cond_296
24438 const/16 v19, 0x0
24440 move-object/from16 v0, p0
24441 @@ -4948,16 +4926,16 @@
24443 move-result-object v18
24445 - goto/16 :goto_141
24446 + goto/16 :goto_139
24448 - :cond_2b3
24449 + :cond_2a2
24450 move-object/from16 v0, p0
24452 iget v0, v0, Landroid/widget/GridView;->mTouchMode:I
24454 move/from16 v19, v0
24456 - if-lez v19, :cond_2f0
24457 + if-lez v19, :cond_2df
24459 move-object/from16 v0, p0
24461 @@ -4971,7 +4949,7 @@
24463 move/from16 v1, v20
24465 - if-ge v0, v1, :cond_2f0
24466 + if-ge v0, v1, :cond_2df
24468 move-object/from16 v0, p0
24470 @@ -4995,7 +4973,7 @@
24472 move-result-object v4
24474 - if-eqz v4, :cond_15b
24475 + if-eqz v4, :cond_153
24477 move-object/from16 v0, p0
24479 @@ -5009,9 +4987,9 @@
24481 invoke-virtual {v0, v1, v4}, Landroid/widget/GridView;->positionSelector(ILandroid/view/View;)V
24483 - goto/16 :goto_15b
24484 + goto/16 :goto_153
24486 - :cond_2f0
24487 + :cond_2df
24488 const/16 v19, 0x0
24490 move/from16 v0, v19
24491 @@ -5027,31 +5005,29 @@
24492 move-object/from16 v19, v0
24494 invoke-virtual/range {v19 .. v19}, Landroid/graphics/Rect;->setEmpty()V
24495 - :try_end_301
24496 - .catchall {:try_start_1d2 .. :try_end_301} :catchall_1c6
24498 - goto/16 :goto_15b
24499 + :try_end_2f0
24500 + .catchall {:try_start_1c1 .. :try_end_2f0} :catchall_1b5
24502 - nop
24503 + goto/16 :goto_153
24505 - :pswitch_data_304
24506 + :pswitch_data_2f2
24507 .packed-switch 0x1
24508 :pswitch_87
24509 - :pswitch_a9
24510 + :pswitch_a1
24511 :pswitch_87
24512 :pswitch_87
24513 :pswitch_87
24514 - :pswitch_c2
24515 + :pswitch_ba
24516 .end packed-switch
24518 - :pswitch_data_314
24519 + :pswitch_data_302
24520 .packed-switch 0x1
24521 - :pswitch_1b3
24522 - :pswitch_19d
24523 - :pswitch_1d2
24524 - :pswitch_1e7
24525 - :pswitch_1ff
24526 - :pswitch_217
24527 + :pswitch_1a3
24528 + :pswitch_18d
24529 + :pswitch_1c1
24530 + :pswitch_1d6
24531 + :pswitch_1ee
24532 + :pswitch_206
24533 .end packed-switch
24534 .end method
24536 diff -Npru stock_framework/smali/android/widget/ListView.smali pdroid_framework/smali/android/widget/ListView.smali
24537 --- stock_framework/smali/android/widget/ListView.smali 2012-07-02 10:16:20.858830582 -0700
24538 +++ pdroid_framework/smali/android/widget/ListView.smali 2012-07-02 10:16:53.045496866 -0700
24539 @@ -6868,10 +6868,11 @@
24541 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24542 :try_end_1d
24543 - .catchall {:try_start_b .. :try_end_1d} :catchall_125
24544 + .catchall {:try_start_b .. :try_end_1d} :catchall_120
24546 if-nez v8, :cond_24
24548 + :goto_1f
24549 const/4 v2, 0x0
24551 move-object/from16 v0, p0
24552 @@ -6879,7 +6880,6 @@
24553 iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24555 :cond_24
24556 - :goto_24
24557 return-void
24559 :cond_25
24560 @@ -6936,7 +6936,7 @@
24562 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24564 - packed-switch v2, :pswitch_data_36e
24565 + packed-switch v2, :pswitch_data_364
24567 move-object/from16 v0, p0
24569 @@ -7016,26 +7016,17 @@
24571 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24573 - if-nez v2, :cond_cc
24574 + if-nez v2, :cond_c7
24576 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->resetList()V
24578 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24579 - :try_end_a8
24580 - .catchall {:try_start_25 .. :try_end_a8} :catchall_125
24582 if-nez v8, :cond_24
24584 - const/4 v2, 0x0
24586 - move-object/from16 v0, p0
24588 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24590 - goto/16 :goto_24
24591 + goto/16 :goto_1f
24593 - :pswitch_b1
24594 - :try_start_b1
24595 + :pswitch_ac
24596 move-object/from16 v0, p0
24598 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24599 @@ -7064,7 +7055,7 @@
24601 goto :goto_93
24603 - :cond_cc
24604 + :cond_c7
24605 move-object/from16 v0, p0
24607 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24608 @@ -7081,7 +7072,7 @@
24610 move/from16 v0, v24
24612 - if-eq v2, v0, :cond_131
24613 + if-eq v2, v0, :cond_12c
24615 new-instance v2, Ljava/lang/IllegalStateException;
24617 @@ -7152,13 +7143,13 @@
24618 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
24620 throw v2
24621 - :try_end_125
24622 - .catchall {:try_start_b1 .. :try_end_125} :catchall_125
24623 + :try_end_120
24624 + .catchall {:try_start_25 .. :try_end_120} :catchall_120
24626 - :catchall_125
24627 + :catchall_120
24628 move-exception v2
24630 - if-nez v8, :cond_130
24631 + if-nez v8, :cond_12b
24633 const/16 v24, 0x0
24635 @@ -7168,11 +7159,11 @@
24637 iput-boolean v0, v1, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24639 - :cond_130
24640 + :cond_12b
24641 throw v2
24643 - :cond_131
24644 - :try_start_131
24645 + :cond_12c
24646 + :try_start_12c
24647 move-object/from16 v0, p0
24649 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24650 @@ -7193,14 +7184,14 @@
24652 const/4 v13, 0x0
24654 - if-eqz v11, :cond_161
24655 + if-eqz v11, :cond_15c
24657 const/16 v18, 0x0
24659 - :goto_149
24660 + :goto_144
24661 move/from16 v0, v18
24663 - if-ge v0, v10, :cond_166
24664 + if-ge v0, v10, :cond_161
24666 move-object/from16 v0, p0
24668 @@ -7220,21 +7211,21 @@
24670 add-int/lit8 v18, v18, 0x1
24672 - goto :goto_149
24673 + goto :goto_144
24675 - :cond_161
24676 + :cond_15c
24677 move-object/from16 v0, v22
24679 invoke-virtual {v0, v10, v12}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24681 - :cond_166
24682 + :cond_161
24683 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24685 move-result-object v17
24687 - if-eqz v17, :cond_186
24688 + if-eqz v17, :cond_181
24690 - if-eqz v11, :cond_178
24691 + if-eqz v11, :cond_173
24693 move-object/from16 v0, p0
24695 @@ -7244,38 +7235,38 @@
24697 move-result v2
24699 - if-eqz v2, :cond_183
24700 + if-eqz v2, :cond_17e
24702 - :cond_178
24703 + :cond_173
24704 move-object/from16 v13, v17
24706 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->findFocus()Landroid/view/View;
24708 move-result-object v14
24710 - if-eqz v14, :cond_183
24711 + if-eqz v14, :cond_17e
24713 invoke-virtual {v14}, Landroid/view/View;->onStartTemporaryDetach()V
24715 - :cond_183
24716 + :cond_17e
24717 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->requestFocus()Z
24719 - :cond_186
24720 + :cond_181
24721 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->detachAllViewsFromParent()V
24723 move-object/from16 v0, p0
24725 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24727 - packed-switch v2, :pswitch_data_37c
24728 + packed-switch v2, :pswitch_data_372
24730 - if-nez v10, :cond_2ba
24731 + if-nez v10, :cond_2b0
24733 move-object/from16 v0, p0
24735 iget-boolean v2, v0, Landroid/widget/ListView;->mStackFromBottom:Z
24737 - if-nez v2, :cond_295
24738 + if-nez v2, :cond_28b
24740 const/4 v2, 0x0
24742 @@ -7301,61 +7292,61 @@
24744 move-result-object v23
24746 - :goto_1b0
24747 + :goto_1ab
24748 invoke-virtual/range {v22 .. v22}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24750 - if-eqz v23, :cond_327
24751 + if-eqz v23, :cond_31d
24753 move-object/from16 v0, p0
24755 iget-boolean v2, v0, Landroid/widget/ListView;->mItemsCanFocus:Z
24757 - if-eqz v2, :cond_31d
24758 + if-eqz v2, :cond_313
24760 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
24762 move-result v2
24764 - if-eqz v2, :cond_31d
24765 + if-eqz v2, :cond_313
24767 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->hasFocus()Z
24769 move-result v2
24771 - if-nez v2, :cond_31d
24772 + if-nez v2, :cond_313
24774 move-object/from16 v0, v23
24776 - if-ne v0, v13, :cond_1d1
24777 + if-ne v0, v13, :cond_1cc
24779 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
24781 move-result v2
24783 - if-nez v2, :cond_1d7
24784 + if-nez v2, :cond_1d2
24786 - :cond_1d1
24787 + :cond_1cc
24788 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->requestFocus()Z
24790 move-result v2
24792 - if-eqz v2, :cond_30b
24793 + if-eqz v2, :cond_301
24795 - :cond_1d7
24796 + :cond_1d2
24797 const/4 v15, 0x1
24799 - :goto_1d8
24800 - if-nez v15, :cond_30e
24801 + :goto_1d3
24802 + if-nez v15, :cond_304
24804 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24806 move-result-object v16
24808 - if-eqz v16, :cond_1e3
24809 + if-eqz v16, :cond_1de
24811 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->clearFocus()V
24813 - :cond_1e3
24814 + :cond_1de
24815 const/4 v2, -0x1
24817 move-object/from16 v0, p0
24818 @@ -7364,7 +7355,7 @@
24820 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
24822 - :goto_1eb
24823 + :goto_1e6
24824 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->getTop()I
24826 move-result v2
24827 @@ -7373,19 +7364,19 @@
24829 iput v2, v0, Landroid/widget/ListView;->mSelectedTop:I
24831 - :cond_1f3
24832 - :goto_1f3
24833 - if-eqz v14, :cond_1fe
24834 + :cond_1ee
24835 + :goto_1ee
24836 + if-eqz v14, :cond_1f9
24838 invoke-virtual {v14}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
24840 move-result-object v2
24842 - if-eqz v2, :cond_1fe
24843 + if-eqz v2, :cond_1f9
24845 invoke-virtual {v14}, Landroid/view/View;->onFinishTemporaryDetach()V
24847 - :cond_1fe
24848 + :cond_1f9
24849 const/4 v2, 0x0
24851 move-object/from16 v0, p0
24852 @@ -7418,29 +7409,20 @@
24854 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24856 - if-lez v2, :cond_222
24857 + if-lez v2, :cond_21d
24859 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->checkSelectionChanged()V
24861 - :cond_222
24862 + :cond_21d
24863 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24864 - :try_end_225
24865 - .catchall {:try_start_131 .. :try_end_225} :catchall_125
24867 if-nez v8, :cond_24
24869 - const/4 v2, 0x0
24871 - move-object/from16 v0, p0
24873 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24875 - goto/16 :goto_24
24876 + goto/16 :goto_1f
24878 - :pswitch_22e
24879 - if-eqz v4, :cond_23c
24880 + :pswitch_224
24881 + if-eqz v4, :cond_232
24883 - :try_start_230
24884 invoke-virtual {v4}, Landroid/view/View;->getTop()I
24886 move-result v2
24887 @@ -7451,18 +7433,18 @@
24889 move-result-object v23
24891 - goto/16 :goto_1b0
24892 + goto/16 :goto_1ab
24894 - :cond_23c
24895 + :cond_232
24896 move-object/from16 v0, p0
24898 invoke-direct {v0, v6, v7}, Landroid/widget/ListView;->fillFromMiddle(II)Landroid/view/View;
24900 move-result-object v23
24902 - goto/16 :goto_1b0
24903 + goto/16 :goto_1ab
24905 - :pswitch_244
24906 + :pswitch_23a
24907 move-object/from16 v0, p0
24909 iget v2, v0, Landroid/widget/ListView;->mSyncPosition:I
24910 @@ -7481,9 +7463,9 @@
24912 move-result-object v23
24914 - goto/16 :goto_1b0
24915 + goto/16 :goto_1ab
24917 - :pswitch_258
24918 + :pswitch_24e
24919 move-object/from16 v0, p0
24921 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24922 @@ -7498,9 +7480,9 @@
24924 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24926 - goto/16 :goto_1b0
24927 + goto/16 :goto_1ab
24929 - :pswitch_269
24930 + :pswitch_25f
24931 const/4 v2, 0x0
24933 move-object/from16 v0, p0
24934 @@ -7515,9 +7497,9 @@
24936 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24938 - goto/16 :goto_1b0
24939 + goto/16 :goto_1ab
24941 - :pswitch_279
24942 + :pswitch_26f
24943 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->reconcileSelectedPosition()I
24945 move-result v2
24946 @@ -7536,18 +7518,18 @@
24948 move-result-object v23
24950 - goto/16 :goto_1b0
24951 + goto/16 :goto_1ab
24953 - :pswitch_28d
24954 + :pswitch_283
24955 move-object/from16 v2, p0
24957 invoke-direct/range {v2 .. v7}, Landroid/widget/ListView;->moveSelection(Landroid/view/View;Landroid/view/View;III)Landroid/view/View;
24959 move-result-object v23
24961 - goto/16 :goto_1b0
24962 + goto/16 :goto_1ab
24964 - :cond_295
24965 + :cond_28b
24966 move-object/from16 v0, p0
24968 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24969 @@ -7582,14 +7564,14 @@
24971 move-result-object v23
24973 - goto/16 :goto_1b0
24974 + goto/16 :goto_1ab
24976 - :cond_2ba
24977 + :cond_2b0
24978 move-object/from16 v0, p0
24980 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24982 - if-ltz v2, :cond_2e1
24983 + if-ltz v2, :cond_2d7
24985 move-object/from16 v0, p0
24987 @@ -7603,31 +7585,31 @@
24989 move/from16 v0, v24
24991 - if-ge v2, v0, :cond_2e1
24992 + if-ge v2, v0, :cond_2d7
24994 move-object/from16 v0, p0
24996 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24998 - if-nez v3, :cond_2dc
24999 + if-nez v3, :cond_2d2
25001 - :goto_2d4
25002 + :goto_2ca
25003 move-object/from16 v0, p0
25005 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25007 move-result-object v23
25009 - goto/16 :goto_1b0
25010 + goto/16 :goto_1ab
25012 - :cond_2dc
25013 + :cond_2d2
25014 invoke-virtual {v3}, Landroid/view/View;->getTop()I
25016 move-result v6
25018 - goto :goto_2d4
25019 + goto :goto_2ca
25021 - :cond_2e1
25022 + :cond_2d7
25023 move-object/from16 v0, p0
25025 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25026 @@ -7640,31 +7622,31 @@
25028 move/from16 v0, v24
25030 - if-ge v2, v0, :cond_302
25031 + if-ge v2, v0, :cond_2f8
25033 move-object/from16 v0, p0
25035 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25037 - if-nez v20, :cond_2fd
25038 + if-nez v20, :cond_2f3
25040 - :goto_2f5
25041 + :goto_2eb
25042 move-object/from16 v0, p0
25044 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25046 move-result-object v23
25048 - goto/16 :goto_1b0
25049 + goto/16 :goto_1ab
25051 - :cond_2fd
25052 + :cond_2f3
25053 invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getTop()I
25055 move-result v6
25057 - goto :goto_2f5
25058 + goto :goto_2eb
25060 - :cond_302
25061 + :cond_2f8
25062 const/4 v2, 0x0
25064 move-object/from16 v0, p0
25065 @@ -7673,14 +7655,14 @@
25067 move-result-object v23
25069 - goto/16 :goto_1b0
25070 + goto/16 :goto_1ab
25072 - :cond_30b
25073 + :cond_301
25074 const/4 v15, 0x0
25076 - goto/16 :goto_1d8
25077 + goto/16 :goto_1d3
25079 - :cond_30e
25080 + :cond_304
25081 const/4 v2, 0x0
25083 move-object/from16 v0, v23
25084 @@ -7693,9 +7675,9 @@
25086 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25088 - goto/16 :goto_1eb
25089 + goto/16 :goto_1e6
25091 - :cond_31d
25092 + :cond_313
25093 const/4 v2, -0x1
25095 move-object/from16 v0, p0
25096 @@ -7704,14 +7686,14 @@
25098 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25100 - goto/16 :goto_1eb
25101 + goto/16 :goto_1e6
25103 - :cond_327
25104 + :cond_31d
25105 move-object/from16 v0, p0
25107 iget v2, v0, Landroid/widget/ListView;->mTouchMode:I
25109 - if-lez v2, :cond_361
25110 + if-lez v2, :cond_357
25112 move-object/from16 v0, p0
25114 @@ -7721,7 +7703,7 @@
25116 move/from16 v0, v24
25118 - if-ge v2, v0, :cond_361
25119 + if-ge v2, v0, :cond_357
25121 move-object/from16 v0, p0
25123 @@ -7741,7 +7723,7 @@
25125 move-result-object v9
25127 - if-eqz v9, :cond_354
25128 + if-eqz v9, :cond_34a
25130 move-object/from16 v0, p0
25132 @@ -7751,21 +7733,21 @@
25134 invoke-virtual {v0, v2, v9}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25136 - :cond_354
25137 - :goto_354
25138 + :cond_34a
25139 + :goto_34a
25140 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25142 move-result v2
25144 - if-eqz v2, :cond_1f3
25145 + if-eqz v2, :cond_1ee
25147 - if-eqz v14, :cond_1f3
25148 + if-eqz v14, :cond_1ee
25150 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25152 - goto/16 :goto_1f3
25153 + goto/16 :goto_1ee
25155 - :cond_361
25156 + :cond_357
25157 const/4 v2, 0x0
25159 move-object/from16 v0, p0
25160 @@ -7777,28 +7759,28 @@
25161 iget-object v2, v0, Landroid/widget/ListView;->mSelectorRect:Landroid/graphics/Rect;
25163 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25164 - :try_end_36d
25165 - .catchall {:try_start_230 .. :try_end_36d} :catchall_125
25166 + :try_end_363
25167 + .catchall {:try_start_12c .. :try_end_363} :catchall_120
25169 - goto :goto_354
25170 + goto :goto_34a
25172 - :pswitch_data_36e
25173 + :pswitch_data_364
25174 .packed-switch 0x1
25175 :pswitch_93
25176 - :pswitch_b1
25177 + :pswitch_ac
25178 :pswitch_93
25179 :pswitch_93
25180 :pswitch_93
25181 .end packed-switch
25183 - :pswitch_data_37c
25184 + :pswitch_data_372
25185 .packed-switch 0x1
25186 - :pswitch_269
25187 - :pswitch_22e
25188 - :pswitch_258
25189 - :pswitch_279
25190 - :pswitch_244
25191 - :pswitch_28d
25192 + :pswitch_25f
25193 + :pswitch_224
25194 + :pswitch_24e
25195 + :pswitch_26f
25196 + :pswitch_23a
25197 + :pswitch_283
25198 .end packed-switch
25199 .end method
25201 diff -Npru stock_framework/smali/android/widget/TextView.smali pdroid_framework/smali/android/widget/TextView.smali
25202 --- stock_framework/smali/android/widget/TextView.smali 2012-07-02 10:16:16.861878590 -0700
25203 +++ pdroid_framework/smali/android/widget/TextView.smali 2012-07-02 10:16:49.214584404 -0700
25204 @@ -5274,18 +5274,18 @@
25205 return v2
25207 :cond_b
25208 - sparse-switch p1, :sswitch_data_ec
25209 + sparse-switch p1, :sswitch_data_e8
25211 :cond_e
25212 iget-object v2, p0, Landroid/widget/TextView;->mInput:Landroid/text/method/KeyListener;
25214 - if-eqz v2, :cond_bb
25215 + if-eqz v2, :cond_b7
25217 invoke-virtual {p0}, Landroid/widget/TextView;->resetErrorChangedFlag()V
25219 const/4 v0, 0x1
25221 - if-eqz p3, :cond_97
25222 + if-eqz p3, :cond_9d
25224 :try_start_18
25225 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25226 @@ -5302,12 +5302,12 @@
25228 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25229 :try_end_28
25230 - .catchall {:try_start_18 .. :try_end_28} :catchall_b6
25231 - .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_b1
25232 + .catchall {:try_start_18 .. :try_end_28} :catchall_94
25233 + .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_99
25235 const/4 v0, 0x0
25237 - if-eqz v1, :cond_94
25238 + if-eqz v1, :cond_9a
25240 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25242 @@ -5433,12 +5433,21 @@
25244 goto/16 :goto_a
25246 - :cond_94
25247 + :catchall_94
25248 + move-exception v2
25250 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25252 - :cond_97
25253 - :goto_97
25254 - if-eqz v0, :cond_bb
25255 + throw v2
25257 + :catch_99
25258 + move-exception v2
25260 + :cond_9a
25261 + invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25263 + :cond_9d
25264 + if-eqz v0, :cond_b7
25266 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25268 @@ -5456,40 +5465,26 @@
25270 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25272 - if-eqz v1, :cond_bb
25273 + if-eqz v1, :cond_b7
25275 move v2, v5
25277 goto/16 :goto_a
25279 - :catch_b1
25280 - move-exception v2
25282 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25284 - goto :goto_97
25286 - :catchall_b6
25287 - move-exception v2
25289 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25291 - throw v2
25293 - :cond_bb
25294 + :cond_b7
25295 iget-object v2, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25297 - if-eqz v2, :cond_e8
25298 + if-eqz v2, :cond_e4
25300 iget-object v2, p0, Landroid/widget/TextView;->mLayout:Landroid/text/Layout;
25302 - if-eqz v2, :cond_e8
25303 + if-eqz v2, :cond_e4
25305 const/4 v0, 0x1
25307 - if-eqz p3, :cond_d7
25308 + if-eqz p3, :cond_d3
25310 - :try_start_c6
25311 + :try_start_c2
25312 iget-object v5, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25314 iget-object v2, p0, Landroid/widget/TextView;->mText:Ljava/lang/CharSequence;
25315 @@ -5497,24 +5492,24 @@
25316 check-cast v2, Landroid/text/Spannable;
25318 invoke-interface {v5, p0, v2, p3}, Landroid/text/method/MovementMethod;->onKeyOther(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
25319 - :try_end_cf
25320 - .catch Ljava/lang/AbstractMethodError; {:try_start_c6 .. :try_end_cf} :catch_d6
25321 + :try_end_cb
25322 + .catch Ljava/lang/AbstractMethodError; {:try_start_c2 .. :try_end_cb} :catch_d2
25324 move-result v1
25326 const/4 v0, 0x0
25328 - if-eqz v1, :cond_d7
25329 + if-eqz v1, :cond_d3
25331 move v2, v4
25333 goto/16 :goto_a
25335 - :catch_d6
25336 + :catch_d2
25337 move-exception v2
25339 - :cond_d7
25340 - if-eqz v0, :cond_e8
25341 + :cond_d3
25342 + if-eqz v0, :cond_e4
25344 iget-object v4, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25346 @@ -5526,20 +5521,20 @@
25348 move-result v2
25350 - if-eqz v2, :cond_e8
25351 + if-eqz v2, :cond_e4
25353 const/4 v2, 0x2
25355 goto/16 :goto_a
25357 - :cond_e8
25358 + :cond_e4
25359 move v2, v3
25361 goto/16 :goto_a
25365 - :sswitch_data_ec
25366 + :sswitch_data_e8
25367 .sparse-switch
25368 0x4 -> :sswitch_8a
25369 0x17 -> :sswitch_68
25370 diff -Npru stock_framework/smali/com/android/internal/os/BatteryStatsImpl.smali pdroid_framework/smali/com/android/internal/os/BatteryStatsImpl.smali
25371 --- stock_framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-07-02 10:16:21.548994965 -0700
25372 +++ pdroid_framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-07-02 10:16:53.741662682 -0700
25373 @@ -4343,13 +4343,14 @@
25375 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->commit()V
25376 :try_end_30
25377 - .catchall {:try_start_10 .. :try_end_30} :catchall_52
25378 + .catchall {:try_start_10 .. :try_end_30} :catchall_4f
25379 .catch Ljava/io/IOException; {:try_start_10 .. :try_end_30} :catch_3c
25381 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25383 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25385 + :goto_35
25386 invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25388 goto :goto_9
25389 @@ -4378,17 +4379,15 @@
25391 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->rollback()V
25392 :try_end_49
25393 - .catchall {:try_start_3d .. :try_end_49} :catchall_52
25394 + .catchall {:try_start_3d .. :try_end_49} :catchall_4f
25396 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25398 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25400 - invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25402 - goto :goto_9
25403 + goto :goto_35
25405 - :catchall_52
25406 + :catchall_4f
25407 move-exception v3
25409 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25410 diff -Npru stock_framework/smali/com/android/internal/telephony/BaseCommands.smali pdroid_framework/smali/com/android/internal/telephony/BaseCommands.smali
25411 --- stock_framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-07-02 10:16:21.642017121 -0700
25412 +++ pdroid_framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-07-02 10:16:53.846687697 -0700
25413 @@ -555,8 +555,8 @@
25415 invoke-direct {v6, v7}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
25416 :try_end_a
25417 - .catchall {:try_start_3 .. :try_end_a} :catchall_5e
25418 - .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3d
25419 + .catchall {:try_start_3 .. :try_end_a} :catchall_5b
25420 + .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3a
25422 const/16 v7, 0x800
25424 @@ -575,19 +575,21 @@
25426 invoke-direct {v2, v0, v7, v3}, Ljava/lang/String;-><init>([BII)V
25427 :try_end_1a
25428 - .catchall {:try_start_c .. :try_end_1a} :catchall_67
25429 - .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_6a
25430 + .catchall {:try_start_c .. :try_end_1a} :catchall_66
25431 + .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_69
25433 move-object v1, v2
25435 :cond_1b
25436 - if-eqz v6, :cond_6d
25437 + if-eqz v6, :cond_20
25439 :try_start_1d
25440 invoke-virtual {v6}, Ljava/io/FileInputStream;->close()V
25441 :try_end_20
25442 - .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_3a
25443 + .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_64
25445 + :cond_20
25446 + :goto_20
25447 move-object v5, v6
25449 :cond_21
25450 @@ -617,17 +619,10 @@
25451 return-object v1
25453 :catch_3a
25454 - move-exception v7
25456 - move-object v5, v6
25458 - goto :goto_21
25460 - :catch_3d
25461 move-exception v4
25463 - :goto_3e
25464 - :try_start_3e
25465 + :goto_3b
25466 + :try_start_3b
25467 const-string v7, "RILB"
25469 new-instance v8, Ljava/lang/StringBuilder;
25470 @@ -649,61 +644,61 @@
25471 move-result-object v8
25473 invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25474 - :try_end_56
25475 - .catchall {:try_start_3e .. :try_end_56} :catchall_5e
25476 + :try_end_53
25477 + .catchall {:try_start_3b .. :try_end_53} :catchall_5b
25479 if-eqz v5, :cond_21
25481 - :try_start_58
25482 + :try_start_55
25483 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25484 - :try_end_5b
25485 - .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c
25486 + :try_end_58
25487 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_59
25489 goto :goto_21
25491 - :catch_5c
25492 + :catch_59
25493 move-exception v7
25495 goto :goto_21
25497 - :catchall_5e
25498 + :catchall_5b
25499 move-exception v7
25501 - :goto_5f
25502 - if-eqz v5, :cond_64
25503 + :goto_5c
25504 + if-eqz v5, :cond_61
25506 - :try_start_61
25507 + :try_start_5e
25508 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25509 - :try_end_64
25510 - .catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
25511 + :try_end_61
25512 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
25514 - :cond_64
25515 - :goto_64
25516 + :cond_61
25517 + :goto_61
25518 throw v7
25520 - :catch_65
25521 + :catch_62
25522 move-exception v8
25524 - goto :goto_64
25525 + goto :goto_61
25527 - :catchall_67
25528 + :catch_64
25529 move-exception v7
25531 - move-object v5, v6
25533 - goto :goto_5f
25534 + goto :goto_20
25536 - :catch_6a
25537 - move-exception v4
25538 + :catchall_66
25539 + move-exception v7
25541 move-object v5, v6
25543 - goto :goto_3e
25544 + goto :goto_5c
25546 + :catch_69
25547 + move-exception v4
25549 - :cond_6d
25550 move-object v5, v6
25552 - goto :goto_21
25553 + goto :goto_3b
25554 .end method
25557 diff -Npru stock_framework/smali/com/android/internal/telephony/cdma/EriManager.smali pdroid_framework/smali/com/android/internal/telephony/cdma/EriManager.smali
25558 --- stock_framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-07-02 10:16:22.330181025 -0700
25559 +++ pdroid_framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-07-02 10:16:54.523848987 -0700
25560 @@ -666,8 +666,8 @@
25562 invoke-static {v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25563 :try_end_34
25564 - .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_20c
25565 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_207
25566 + .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_209
25567 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_204
25569 move-object/from16 v15, v16
25571 @@ -872,7 +872,7 @@
25572 :try_start_f8
25573 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25574 :try_end_fb
25575 - .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_202
25576 + .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_15c
25578 :cond_fb
25579 :goto_fb
25580 @@ -1058,7 +1058,7 @@
25581 :try_start_190
25582 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25583 :try_end_193
25584 - .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_205
25585 + .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_202
25587 :cond_193
25588 :goto_193
25589 @@ -1184,23 +1184,18 @@
25590 goto/16 :goto_96
25592 :catch_202
25593 - move-exception v2
25595 - goto/16 :goto_fb
25597 - :catch_205
25598 move-exception v18
25600 goto :goto_193
25602 - :catch_207
25603 + :catch_204
25604 move-exception v9
25606 move-object/from16 v15, v16
25608 goto/16 :goto_10a
25610 - :catch_20c
25611 + :catch_209
25612 move-exception v9
25614 move-object/from16 v15, v16
25615 diff -Npru stock_framework/smali/com/android/internal/telephony/IccRecords.smali pdroid_framework/smali/com/android/internal/telephony/IccRecords.smali
25616 --- stock_framework/smali/com/android/internal/telephony/IccRecords.smali 2012-07-02 10:16:21.880073821 -0700
25617 +++ pdroid_framework/smali/com/android/internal/telephony/IccRecords.smali 2012-07-02 10:16:54.065739872 -0700
25618 @@ -260,7 +260,7 @@
25620 iget v3, p1, Landroid/os/Message;->what:I
25622 - packed-switch v3, :pswitch_data_70
25623 + packed-switch v3, :pswitch_data_6c
25625 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V
25627 @@ -327,7 +327,7 @@
25629 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25630 :try_end_47
25631 - .catchall {:try_start_9 .. :try_end_47} :catchall_6a
25632 + .catchall {:try_start_9 .. :try_end_47} :catchall_67
25633 .catch Ljava/lang/RuntimeException; {:try_start_9 .. :try_end_47} :catch_4f
25635 :goto_47
25636 @@ -339,7 +339,7 @@
25637 :try_start_4b
25638 invoke-interface {v2, v0}, Lcom/android/internal/telephony/IccRecords$IccRecordLoaded;->onRecordLoaded(Landroid/os/AsyncResult;)V
25639 :try_end_4e
25640 - .catchall {:try_start_4b .. :try_end_4e} :catchall_6a
25641 + .catchall {:try_start_4b .. :try_end_4e} :catchall_67
25642 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_4e} :catch_4f
25644 goto :goto_47
25645 @@ -368,22 +368,18 @@
25647 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25648 :try_end_66
25649 - .catchall {:try_start_50 .. :try_end_66} :catchall_6a
25650 + .catchall {:try_start_50 .. :try_end_66} :catchall_67
25652 - invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25654 - goto :goto_8
25655 + goto :goto_47
25657 - :catchall_6a
25658 + :catchall_67
25659 move-exception v3
25661 invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25663 throw v3
25665 - nop
25667 - :pswitch_data_70
25668 + :pswitch_data_6c
25669 .packed-switch 0x64
25670 :pswitch_9
25671 .end packed-switch
25672 diff -Npru stock_framework/smali/com/android/internal/telephony/RIL$RILSender.smali pdroid_framework/smali/com/android/internal/telephony/RIL$RILSender.smali
25673 --- stock_framework/smali/com/android/internal/telephony/RIL$RILSender.smali 2012-07-02 10:16:21.990100027 -0700
25674 +++ pdroid_framework/smali/com/android/internal/telephony/RIL$RILSender.smali 2012-07-02 10:16:54.144758693 -0700
25675 @@ -61,7 +61,7 @@
25677 iget v10, v0, Landroid/os/Message;->what:I
25679 - packed-switch v10, :pswitch_data_200
25680 + packed-switch v10, :pswitch_data_1fa
25682 :cond_11
25683 :goto_11
25684 @@ -99,7 +99,7 @@
25686 iput v11, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesPending:I
25687 :try_end_2f
25688 - .catchall {:try_start_13 .. :try_end_2f} :catchall_114
25689 + .catchall {:try_start_13 .. :try_end_2f} :catchall_10e
25690 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_2f} :catch_87
25691 .catch Ljava/lang/RuntimeException; {:try_start_13 .. :try_end_2f} :catch_bd
25693 @@ -121,7 +121,7 @@
25695 monitor-enter v11
25696 :try_end_3b
25697 - .catchall {:try_start_36 .. :try_end_3b} :catchall_114
25698 + .catchall {:try_start_36 .. :try_end_3b} :catchall_10e
25699 .catch Ljava/io/IOException; {:try_start_36 .. :try_end_3b} :catch_87
25700 .catch Ljava/lang/RuntimeException; {:try_start_36 .. :try_end_3b} :catch_bd
25702 @@ -180,7 +180,7 @@
25704 const/16 v11, 0x2000
25706 - if-le v10, v11, :cond_df
25707 + if-le v10, v11, :cond_dc
25709 new-instance v10, Ljava/lang/RuntimeException;
25711 @@ -208,7 +208,7 @@
25713 throw v10
25714 :try_end_87
25715 - .catchall {:try_start_4b .. :try_end_87} :catchall_114
25716 + .catchall {:try_start_4b .. :try_end_87} :catchall_10e
25717 .catch Ljava/io/IOException; {:try_start_4b .. :try_end_87} :catch_87
25718 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_87} :catch_bd
25720 @@ -243,15 +243,15 @@
25722 invoke-virtual {v8}, Lcom/android/internal/telephony/RILRequest;->release()V
25723 :try_end_a3
25724 - .catchall {:try_start_88 .. :try_end_a3} :catchall_114
25725 + .catchall {:try_start_88 .. :try_end_a3} :catchall_10e
25727 :cond_a3
25728 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25730 + :goto_a5
25731 #calls: Lcom/android/internal/telephony/RIL;->releaseWakeLockIfDone()V
25732 invoke-static {v10}, Lcom/android/internal/telephony/RIL;->access$000(Lcom/android/internal/telephony/RIL;)V
25734 - :goto_a8
25735 if-nez v1, :cond_11
25737 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25738 @@ -281,7 +281,7 @@
25739 :try_start_bc
25740 throw v10
25741 :try_end_bd
25742 - .catchall {:try_start_bc .. :try_end_bd} :catchall_114
25743 + .catchall {:try_start_bc .. :try_end_bd} :catchall_10e
25744 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_bd} :catch_87
25745 .catch Ljava/lang/RuntimeException; {:try_start_bc .. :try_end_bd} :catch_bd
25747 @@ -316,18 +316,15 @@
25749 invoke-virtual {v8}, Lcom/android/internal/telephony/RILRequest;->release()V
25750 :try_end_d9
25751 - .catchall {:try_start_be .. :try_end_d9} :catchall_114
25752 + .catchall {:try_start_be .. :try_end_d9} :catchall_10e
25754 :cond_d9
25755 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25757 - #calls: Lcom/android/internal/telephony/RIL;->releaseWakeLockIfDone()V
25758 - invoke-static {v10}, Lcom/android/internal/telephony/RIL;->access$000(Lcom/android/internal/telephony/RIL;)V
25760 - goto :goto_a8
25761 + goto :goto_a5
25763 - :cond_df
25764 - :try_start_df
25765 + :cond_dc
25766 + :try_start_dc
25767 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->dataLength:[B
25769 const/4 v11, 0x0
25770 @@ -381,19 +378,16 @@
25771 move-result-object v10
25773 invoke-virtual {v10, v3}, Ljava/io/OutputStream;->write([B)V
25774 - :try_end_10e
25775 - .catchall {:try_start_df .. :try_end_10e} :catchall_114
25776 - .catch Ljava/io/IOException; {:try_start_df .. :try_end_10e} :catch_87
25777 - .catch Ljava/lang/RuntimeException; {:try_start_df .. :try_end_10e} :catch_bd
25778 + :try_end_10b
25779 + .catchall {:try_start_dc .. :try_end_10b} :catchall_10e
25780 + .catch Ljava/io/IOException; {:try_start_dc .. :try_end_10b} :catch_87
25781 + .catch Ljava/lang/RuntimeException; {:try_start_dc .. :try_end_10b} :catch_bd
25783 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25785 - #calls: Lcom/android/internal/telephony/RIL;->releaseWakeLockIfDone()V
25786 - invoke-static {v10}, Lcom/android/internal/telephony/RIL;->access$000(Lcom/android/internal/telephony/RIL;)V
25788 - goto :goto_a8
25789 + goto :goto_a5
25791 - :catchall_114
25792 + :catchall_10e
25793 move-exception v10
25795 iget-object v11, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25796 @@ -403,14 +397,14 @@
25798 throw v10
25800 - :pswitch_11b
25801 + :pswitch_115
25802 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25804 iget-object v11, v10, Lcom/android/internal/telephony/RIL;->mWakeLock:Landroid/os/PowerManager$WakeLock;
25806 monitor-enter v11
25808 - :try_start_120
25809 + :try_start_11a
25810 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25812 iget-object v10, v10, Lcom/android/internal/telephony/RIL;->mWakeLock:Landroid/os/PowerManager$WakeLock;
25813 @@ -419,13 +413,13 @@
25815 move-result v10
25817 - if-eqz v10, :cond_1f7
25818 + if-eqz v10, :cond_1f1
25820 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25822 iget v10, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesWaiting:I
25824 - if-eqz v10, :cond_1c3
25825 + if-eqz v10, :cond_1bd
25827 const-string v10, "RILJ"
25829 @@ -476,10 +470,10 @@
25830 iget-object v12, v10, Lcom/android/internal/telephony/RIL;->mRequestsList:Ljava/util/ArrayList;
25832 monitor-enter v12
25833 - :try_end_162
25834 - .catchall {:try_start_120 .. :try_end_162} :catchall_1fa
25835 + :try_end_15c
25836 + .catchall {:try_start_11a .. :try_end_15c} :catchall_1f4
25838 - :try_start_162
25839 + :try_start_15c
25840 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25842 iget-object v10, v10, Lcom/android/internal/telephony/RIL;->mRequestsList:Ljava/util/ArrayList;
25843 @@ -512,8 +506,8 @@
25845 const/4 v6, 0x0
25847 - :goto_183
25848 - if-ge v6, v2, :cond_1c2
25849 + :goto_17d
25850 + if-ge v6, v2, :cond_1bc
25852 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25854 @@ -575,20 +569,20 @@
25856 add-int/lit8 v6, v6, 0x1
25858 - goto :goto_183
25859 + goto :goto_17d
25861 - :cond_1c2
25862 + :cond_1bc
25863 monitor-exit v12
25864 - :try_end_1c3
25865 - .catchall {:try_start_162 .. :try_end_1c3} :catchall_1fd
25866 + :try_end_1bd
25867 + .catchall {:try_start_15c .. :try_end_1bd} :catchall_1f7
25869 - :cond_1c3
25870 - :try_start_1c3
25871 + :cond_1bd
25872 + :try_start_1bd
25873 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25875 iget v10, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesPending:I
25877 - if-eqz v10, :cond_1f0
25878 + if-eqz v10, :cond_1ea
25880 const-string v10, "RILJ"
25882 @@ -628,44 +622,44 @@
25884 iput v12, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesPending:I
25886 - :cond_1f0
25887 + :cond_1ea
25888 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25890 iget-object v10, v10, Lcom/android/internal/telephony/RIL;->mWakeLock:Landroid/os/PowerManager$WakeLock;
25892 invoke-virtual {v10}, Landroid/os/PowerManager$WakeLock;->release()V
25894 - :cond_1f7
25895 + :cond_1f1
25896 monitor-exit v11
25898 goto/16 :goto_11
25900 - :catchall_1fa
25901 + :catchall_1f4
25902 move-exception v10
25904 monitor-exit v11
25905 - :try_end_1fc
25906 - .catchall {:try_start_1c3 .. :try_end_1fc} :catchall_1fa
25907 + :try_end_1f6
25908 + .catchall {:try_start_1bd .. :try_end_1f6} :catchall_1f4
25910 throw v10
25912 - :catchall_1fd
25913 + :catchall_1f7
25914 move-exception v10
25916 - :try_start_1fe
25917 + :try_start_1f8
25918 monitor-exit v12
25919 - :try_end_1ff
25920 - .catchall {:try_start_1fe .. :try_end_1ff} :catchall_1fd
25921 + :try_end_1f9
25922 + .catchall {:try_start_1f8 .. :try_end_1f9} :catchall_1f7
25924 - :try_start_1ff
25925 + :try_start_1f9
25926 throw v10
25927 - :try_end_200
25928 - .catchall {:try_start_1ff .. :try_end_200} :catchall_1fa
25929 + :try_end_1fa
25930 + .catchall {:try_start_1f9 .. :try_end_1fa} :catchall_1f4
25932 - :pswitch_data_200
25933 + :pswitch_data_1fa
25934 .packed-switch 0x1
25935 :pswitch_12
25936 - :pswitch_11b
25937 + :pswitch_115
25938 .end packed-switch
25939 .end method
25941 diff -Npru stock_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali pdroid_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali
25942 --- stock_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali 2012-07-02 10:16:22.587242253 -0700
25943 +++ pdroid_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali 2012-07-02 10:16:54.806916409 -0700
25944 @@ -437,8 +437,8 @@
25946 invoke-virtual {v1}, Landroid/net/sip/SipAudioCall;->endCall()V
25947 :try_end_54
25948 - .catchall {:try_start_49 .. :try_end_54} :catchall_89
25949 - .catch Landroid/net/sip/SipException; {:try_start_49 .. :try_end_54} :catch_6f
25950 + .catchall {:try_start_49 .. :try_end_54} :catchall_86
25951 + .catch Landroid/net/sip/SipException; {:try_start_49 .. :try_end_54} :catch_6c
25953 :cond_54
25954 :try_start_54
25955 @@ -454,7 +454,7 @@
25957 sget-object v5, Lcom/android/internal/telephony/Call$State;->WAITING:Lcom/android/internal/telephony/Call$State;
25959 - if-ne v2, v5, :cond_6c
25960 + if-ne v2, v5, :cond_9e
25962 :cond_62
25963 sget-object v2, Lcom/android/internal/telephony/Connection$DisconnectCause;->INCOMING_REJECTED:Lcom/android/internal/telephony/Connection$DisconnectCause;
25964 @@ -475,18 +475,10 @@
25966 throw v2
25968 - :cond_6c
25969 - :try_start_6c
25970 - sget-object v2, Lcom/android/internal/telephony/Connection$DisconnectCause;->LOCAL:Lcom/android/internal/telephony/Connection$DisconnectCause;
25971 - :try_end_6e
25972 - .catchall {:try_start_6c .. :try_end_6e} :catchall_69
25974 - goto :goto_64
25976 - :catch_6f
25977 + :catch_6c
25978 move-exception v0
25980 - :try_start_70
25981 + :try_start_6d
25982 new-instance v2, Lcom/android/internal/telephony/CallStateException;
25984 new-instance v3, Ljava/lang/StringBuilder;
25985 @@ -510,41 +502,46 @@
25986 invoke-direct {v2, v3}, Lcom/android/internal/telephony/CallStateException;-><init>(Ljava/lang/String;)V
25988 throw v2
25989 - :try_end_89
25990 - .catchall {:try_start_70 .. :try_end_89} :catchall_89
25991 + :try_end_86
25992 + .catchall {:try_start_6d .. :try_end_86} :catchall_86
25994 - :catchall_89
25995 + :catchall_86
25996 move-exception v2
25998 - :try_start_8a
25999 + :try_start_87
26000 iget-object v5, p0, Lcom/android/internal/telephony/sip/SipPhone$SipConnection;->mAdapter:Lcom/android/internal/telephony/sip/SipPhone$SipAudioCallAdapter;
26002 iget-object v3, p0, Lcom/android/internal/telephony/sip/SipPhone$SipConnection;->mState:Lcom/android/internal/telephony/Call$State;
26004 sget-object v6, Lcom/android/internal/telephony/Call$State;->INCOMING:Lcom/android/internal/telephony/Call$State;
26006 - if-eq v3, v6, :cond_98
26007 + if-eq v3, v6, :cond_95
26009 iget-object v3, p0, Lcom/android/internal/telephony/sip/SipPhone$SipConnection;->mState:Lcom/android/internal/telephony/Call$State;
26011 sget-object v6, Lcom/android/internal/telephony/Call$State;->WAITING:Lcom/android/internal/telephony/Call$State;
26013 - if-ne v3, v6, :cond_9e
26014 + if-ne v3, v6, :cond_9b
26016 - :cond_98
26017 + :cond_95
26018 sget-object v3, Lcom/android/internal/telephony/Connection$DisconnectCause;->INCOMING_REJECTED:Lcom/android/internal/telephony/Connection$DisconnectCause;
26020 - :goto_9a
26021 + :goto_97
26022 invoke-virtual {v5, v3}, Lcom/android/internal/telephony/sip/SipPhone$SipAudioCallAdapter;->onCallEnded(Lcom/android/internal/telephony/Connection$DisconnectCause;)V
26024 throw v2
26026 - :cond_9e
26027 + :cond_9b
26028 sget-object v3, Lcom/android/internal/telephony/Connection$DisconnectCause;->LOCAL:Lcom/android/internal/telephony/Connection$DisconnectCause;
26030 + goto :goto_97
26032 + :cond_9e
26033 + sget-object v2, Lcom/android/internal/telephony/Connection$DisconnectCause;->LOCAL:Lcom/android/internal/telephony/Connection$DisconnectCause;
26034 :try_end_a0
26035 - .catchall {:try_start_8a .. :try_end_a0} :catchall_69
26036 + .catchall {:try_start_87 .. :try_end_a0} :catchall_69
26038 - goto :goto_9a
26039 + goto :goto_64
26040 .end method
26042 .method hold()V
26043 diff -Npru stock_framework/smali/com/android/internal/telephony/SMSDispatcher.smali pdroid_framework/smali/com/android/internal/telephony/SMSDispatcher.smali
26044 --- stock_framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-07-02 10:16:22.010104792 -0700
26045 +++ pdroid_framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-07-02 10:16:54.148759646 -0700
26046 @@ -1777,14 +1777,15 @@
26048 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
26049 :try_end_9b
26050 - .catchall {:try_start_5 .. :try_end_9b} :catchall_1a2
26051 - .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_192
26052 + .catchall {:try_start_5 .. :try_end_9b} :catchall_19c
26053 + .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_18f
26055 :cond_9b
26056 const/4 v3, 0x1
26058 if-eqz v9, :cond_a1
26060 + :goto_9e
26061 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26063 :cond_a1
26064 @@ -1829,7 +1830,7 @@
26066 add-int/lit8 v3, p5, -0x1
26068 - if-eq v10, v3, :cond_130
26069 + if-eq v10, v3, :cond_12d
26071 new-instance v23, Landroid/content/ContentValues;
26073 @@ -1919,20 +1920,14 @@
26074 move-object/from16 v0, v23
26076 invoke-virtual {v3, v4, v0}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
26077 - :try_end_128
26078 - .catchall {:try_start_a2 .. :try_end_128} :catchall_1a2
26079 - .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_128} :catch_192
26081 const/4 v3, 0x1
26083 if-eqz v9, :cond_a1
26085 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26087 - goto/16 :goto_a1
26088 + goto/16 :goto_9e
26090 - :cond_130
26091 - :try_start_130
26092 + :cond_12d
26093 move/from16 v0, p5
26095 new-array v0, v0, [[B
26096 @@ -1941,8 +1936,8 @@
26098 const/4 v15, 0x0
26100 - :goto_137
26101 - if-ge v15, v10, :cond_161
26102 + :goto_134
26103 + if-ge v15, v10, :cond_15e
26105 invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
26107 @@ -1952,11 +1947,11 @@
26109 move-result v11
26111 - if-nez p9, :cond_145
26112 + if-nez p9, :cond_142
26114 add-int/lit8 v11, v11, -0x1
26116 - :cond_145
26117 + :cond_142
26118 const/4 v3, 0x0
26120 invoke-interface {v9, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
26121 @@ -1969,7 +1964,7 @@
26123 aput-object v3, v20, v11
26125 - if-nez v11, :cond_15e
26126 + if-nez v11, :cond_15b
26128 const/4 v3, 0x2
26130 @@ -1977,7 +1972,7 @@
26132 move-result v3
26134 - if-nez v3, :cond_15e
26135 + if-nez v3, :cond_15b
26137 const/4 v3, 0x2
26139 @@ -1985,17 +1980,17 @@
26141 move-result p8
26143 - :cond_15e
26144 + :cond_15b
26145 add-int/lit8 v15, v15, 0x1
26147 - goto :goto_137
26148 + goto :goto_134
26150 - :cond_161
26151 - if-eqz p9, :cond_18d
26152 + :cond_15e
26153 + if-eqz p9, :cond_18a
26155 aput-object p1, v20, p4
26157 - :goto_165
26158 + :goto_162
26159 move-object/from16 v0, p0
26161 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mResolver:Landroid/content/ContentResolver;
26162 @@ -2003,16 +1998,16 @@
26163 sget-object v4, Lcom/android/internal/telephony/SMSDispatcher;->mRawUri:Landroid/net/Uri;
26165 invoke-virtual {v3, v4, v6, v7}, Landroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
26166 - :try_end_16e
26167 - .catchall {:try_start_130 .. :try_end_16e} :catchall_1a2
26168 - .catch Landroid/database/SQLException; {:try_start_130 .. :try_end_16e} :catch_192
26169 + :try_end_16b
26170 + .catchall {:try_start_a2 .. :try_end_16b} :catchall_19c
26171 + .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_16b} :catch_18f
26173 - if-eqz v9, :cond_173
26174 + if-eqz v9, :cond_170
26176 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26178 - :cond_173
26179 - if-eqz p9, :cond_1d1
26180 + :cond_170
26181 + if-eqz p9, :cond_1cb
26183 new-instance v19, Ljava/io/ByteArrayOutputStream;
26185 @@ -2020,10 +2015,10 @@
26187 const/4 v15, 0x0
26189 - :goto_17b
26190 + :goto_178
26191 move/from16 v0, p5
26193 - if-ge v15, v0, :cond_1a9
26194 + if-ge v15, v0, :cond_1a3
26196 aget-object v3, v20, v15
26198 @@ -2039,50 +2034,48 @@
26200 add-int/lit8 v15, v15, 0x1
26202 - goto :goto_17b
26203 + goto :goto_178
26205 - :cond_18d
26206 + :cond_18a
26207 add-int/lit8 v3, p4, -0x1
26209 - :try_start_18f
26210 + :try_start_18c
26211 aput-object p1, v20, v3
26212 - :try_end_191
26213 - .catchall {:try_start_18f .. :try_end_191} :catchall_1a2
26214 - .catch Landroid/database/SQLException; {:try_start_18f .. :try_end_191} :catch_192
26215 + :try_end_18e
26216 + .catchall {:try_start_18c .. :try_end_18e} :catchall_19c
26217 + .catch Landroid/database/SQLException; {:try_start_18c .. :try_end_18e} :catch_18f
26219 - goto :goto_165
26220 + goto :goto_162
26222 - :catch_192
26223 + :catch_18f
26224 move-exception v14
26226 - :try_start_193
26227 + :try_start_190
26228 const-string v3, "SMS"
26230 const-string v4, "Can\'t access multipart SMS database"
26232 invoke-static {v3, v4, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
26233 - :try_end_19a
26234 - .catchall {:try_start_193 .. :try_end_19a} :catchall_1a2
26235 + :try_end_197
26236 + .catchall {:try_start_190 .. :try_end_197} :catchall_19c
26238 const/4 v3, 0x2
26240 if-eqz v9, :cond_a1
26242 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26244 - goto/16 :goto_a1
26245 + goto/16 :goto_9e
26247 - :catchall_1a2
26248 + :catchall_19c
26249 move-exception v3
26251 - if-eqz v9, :cond_1a8
26252 + if-eqz v9, :cond_1a2
26254 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26256 - :cond_1a8
26257 + :cond_1a2
26258 throw v3
26260 - :cond_1a9
26261 + :cond_1a3
26262 invoke-virtual/range {v19 .. v19}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
26264 move-result-object v13
26265 @@ -2091,7 +2084,7 @@
26267 move/from16 v0, p8
26269 - if-ne v0, v3, :cond_1bd
26270 + if-ne v0, v3, :cond_1b7
26272 move-object/from16 v0, p0
26274 @@ -2103,7 +2096,7 @@
26276 goto/16 :goto_a1
26278 - :cond_1bd
26279 + :cond_1b7
26280 const/4 v3, 0x1
26282 new-array v0, v3, [[B
26283 @@ -2126,18 +2119,18 @@
26285 goto/16 :goto_a1
26287 - :cond_1d1
26288 + :cond_1cb
26289 const/4 v3, -0x1
26291 move/from16 v0, p8
26293 - if-eq v0, v3, :cond_218
26294 + if-eq v0, v3, :cond_212
26296 const/16 v3, 0xb84
26298 move/from16 v0, p8
26300 - if-ne v0, v3, :cond_20c
26301 + if-ne v0, v3, :cond_206
26303 new-instance v19, Ljava/io/ByteArrayOutputStream;
26305 @@ -2145,10 +2138,10 @@
26307 const/4 v15, 0x0
26309 - :goto_1e2
26310 + :goto_1dc
26311 move/from16 v0, p5
26313 - if-ge v15, v0, :cond_1fe
26314 + if-ge v15, v0, :cond_1f8
26316 aget-object v3, v20, v15
26318 @@ -2174,9 +2167,9 @@
26320 add-int/lit8 v15, v15, 0x1
26322 - goto :goto_1e2
26323 + goto :goto_1dc
26325 - :cond_1fe
26326 + :cond_1f8
26327 move-object/from16 v0, p0
26329 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
26330 @@ -2191,7 +2184,7 @@
26332 goto/16 :goto_a1
26334 - :cond_20c
26335 + :cond_206
26336 move-object/from16 v0, p0
26338 move-object/from16 v1, v20
26339 @@ -2200,19 +2193,19 @@
26341 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPortAddressedPdus([[BI)V
26343 - :goto_215
26344 + :goto_20f
26345 const/4 v3, -0x1
26347 goto/16 :goto_a1
26349 - :cond_218
26350 + :cond_212
26351 move-object/from16 v0, p0
26353 move-object/from16 v1, v20
26355 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPdus([[B)V
26357 - goto :goto_215
26358 + goto :goto_20f
26359 .end method
26361 .method protected abstract sendData(Ljava/lang/String;Ljava/lang/String;I[BLandroid/app/PendingIntent;Landroid/app/PendingIntent;)V