Revert "Fixed pdroid security hole (ported from OpenPDroid)"
[auto-patcher.git] / patches / pdroid / 4.0 / aosp / 20120506 / framework.patch
blob81e9e53a892e43c699380560745f547e4af20614
1 diff -Npru stock-framework/smali/android/accounts/AccountAuthenticatorCache.smali pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali
2 --- stock-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-05-06 11:56:48.122681360 -0500
3 +++ pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-05-06 12:13:36.275680515 -0500
4 @@ -136,7 +136,7 @@
6 invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
7 :try_end_2c
8 - .catchall {:try_start_7 .. :try_end_2c} :catchall_3e
9 + .catchall {:try_start_7 .. :try_end_2c} :catchall_3b
11 move-result v0
13 @@ -144,9 +144,9 @@
15 const/4 v0, 0x0
17 + :goto_30
18 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
20 - :goto_33
21 return-object v0
23 :cond_34
24 @@ -157,13 +157,11 @@
26 invoke-direct/range {v0 .. v7}, Landroid/accounts/AuthenticatorDescription;-><init>(Ljava/lang/String;Ljava/lang/String;IIIIZ)V
27 :try_end_3a
28 - .catchall {:try_start_34 .. :try_end_3a} :catchall_3e
29 + .catchall {:try_start_34 .. :try_end_3a} :catchall_3b
31 - invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
33 - goto :goto_33
34 + goto :goto_30
36 - :catchall_3e
37 + :catchall_3b
38 move-exception v0
40 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
41 diff -Npru stock-framework/smali/android/accounts/AccountManager$AmsTask.smali pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali
42 --- stock-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-05-06 11:56:48.166681572 -0500
43 +++ pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-05-06 12:13:36.295680623 -0500
44 @@ -133,102 +133,102 @@
46 :try_start_e
47 invoke-virtual {p0}, Landroid/accounts/AccountManager$AmsTask;->get()Ljava/lang/Object;
48 + :try_end_11
49 + .catchall {:try_start_e .. :try_end_11} :catchall_2a
50 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_23
51 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_72
52 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_60
53 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_2f
55 move-result-object v2
57 + :try_start_12
58 check-cast v2, Landroid/os/Bundle;
59 :try_end_14
60 - .catchall {:try_start_e .. :try_end_14} :catchall_2d
61 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_14} :catch_26
62 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_14} :catch_32
63 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_14} :catch_3c
64 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_14} :catch_41
65 + .catchall {:try_start_12 .. :try_end_14} :catchall_2a
66 + .catch Ljava/util/concurrent/CancellationException; {:try_start_12 .. :try_end_14} :catch_23
67 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_12 .. :try_end_14} :catch_72
68 + .catch Ljava/lang/InterruptedException; {:try_start_12 .. :try_end_14} :catch_6a
69 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_12 .. :try_end_14} :catch_2f
71 + :goto_14
72 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
74 - :goto_17
75 return-object v2
77 :cond_18
78 :try_start_18
79 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
80 + :try_end_1b
81 + .catchall {:try_start_18 .. :try_end_1b} :catchall_2a
82 + .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_1b} :catch_23
83 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_1b} :catch_72
84 + .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_1b} :catch_6c
85 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_1b} :catch_2f
87 move-result-wide v2
89 + :try_start_1c
90 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$AmsTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
91 + :try_end_1f
92 + .catchall {:try_start_1c .. :try_end_1f} :catchall_2a
93 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1c .. :try_end_1f} :catch_23
94 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1c .. :try_end_1f} :catch_72
95 + .catch Ljava/lang/InterruptedException; {:try_start_1c .. :try_end_1f} :catch_6e
96 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1c .. :try_end_1f} :catch_2f
98 move-result-object v2
100 + :try_start_20
101 check-cast v2, Landroid/os/Bundle;
102 :try_end_22
103 - .catchall {:try_start_18 .. :try_end_22} :catchall_2d
104 - .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_22} :catch_26
105 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_22} :catch_32
106 - .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_22} :catch_3c
107 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_22} :catch_41
108 + .catchall {:try_start_20 .. :try_end_22} :catchall_2a
109 + .catch Ljava/util/concurrent/CancellationException; {:try_start_20 .. :try_end_22} :catch_23
110 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_20 .. :try_end_22} :catch_72
111 + .catch Ljava/lang/InterruptedException; {:try_start_20 .. :try_end_22} :catch_70
112 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_20 .. :try_end_22} :catch_2f
114 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
116 - goto :goto_17
117 + goto :goto_14
119 - :catch_26
120 + :catch_23
121 move-exception v1
123 - :try_start_27
124 + :try_start_24
125 new-instance v2, Landroid/accounts/OperationCanceledException;
127 invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
129 throw v2
130 - :try_end_2d
131 - .catchall {:try_start_27 .. :try_end_2d} :catchall_2d
132 + :try_end_2a
133 + .catchall {:try_start_24 .. :try_end_2a} :catchall_2a
135 - :catchall_2d
136 + :catchall_2a
137 move-exception v2
139 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
141 throw v2
143 - :catch_32
144 - move-exception v2
146 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
148 - :goto_36
149 - new-instance v2, Landroid/accounts/OperationCanceledException;
151 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
153 - throw v2
155 - :catch_3c
156 - move-exception v2
158 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
160 - goto :goto_36
162 - :catch_41
163 + :catch_2f
164 move-exception v1
166 - :try_start_42
167 + :try_start_30
168 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
170 move-result-object v0
172 instance-of v2, v0, Ljava/io/IOException;
174 - if-eqz v2, :cond_4d
175 + if-eqz v2, :cond_3b
177 check-cast v0, Ljava/io/IOException;
179 throw v0
181 - :cond_4d
182 + :cond_3b
183 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
185 - if-eqz v2, :cond_57
186 + if-eqz v2, :cond_45
188 new-instance v2, Landroid/accounts/AuthenticatorException;
190 @@ -236,41 +236,78 @@
192 throw v2
194 - :cond_57
195 + :cond_45
196 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
198 - if-eqz v2, :cond_5e
199 + if-eqz v2, :cond_4c
201 check-cast v0, Landroid/accounts/AuthenticatorException;
203 throw v0
205 - :cond_5e
206 + :cond_4c
207 instance-of v2, v0, Ljava/lang/RuntimeException;
209 - if-eqz v2, :cond_65
210 + if-eqz v2, :cond_53
212 check-cast v0, Ljava/lang/RuntimeException;
214 throw v0
216 - :cond_65
217 + :cond_53
218 instance-of v2, v0, Ljava/lang/Error;
220 - if-eqz v2, :cond_6c
221 + if-eqz v2, :cond_5a
223 check-cast v0, Ljava/lang/Error;
225 throw v0
227 - :cond_6c
228 + :cond_5a
229 new-instance v2, Ljava/lang/IllegalStateException;
231 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
233 throw v2
234 - :try_end_72
235 - .catchall {:try_start_42 .. :try_end_72} :catchall_2d
236 + :try_end_60
237 + .catchall {:try_start_30 .. :try_end_60} :catchall_2a
239 + :catch_60
240 + move-exception v2
242 + :goto_61
243 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
245 + new-instance v2, Landroid/accounts/OperationCanceledException;
247 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
249 + throw v2
251 + :catch_6a
252 + move-exception v2
254 + goto :goto_61
256 + :catch_6c
257 + move-exception v2
259 + goto :goto_61
261 + :catch_6e
262 + move-exception v2
264 + goto :goto_61
266 + :catch_70
267 + move-exception v2
269 + goto :goto_61
271 + :catch_72
272 + move-exception v2
274 + goto :goto_61
275 .end method
278 diff -Npru stock-framework/smali/android/accounts/AccountManager$Future2Task.smali pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali
279 --- stock-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-05-06 11:56:48.138681437 -0500
280 +++ pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-05-06 12:13:36.287680580 -0500
281 @@ -101,95 +101,74 @@
282 :try_start_e
283 invoke-virtual {p0}, Landroid/accounts/AccountManager$Future2Task;->get()Ljava/lang/Object;
284 :try_end_11
285 - .catchall {:try_start_e .. :try_end_11} :catchall_42
286 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_22
287 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_2c
288 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_31
289 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_36
290 + .catchall {:try_start_e .. :try_end_11} :catchall_2b
291 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_69
292 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_63
293 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_55
294 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_1f
296 move-result-object v2
298 + :goto_12
299 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
301 - :goto_15
302 return-object v2
304 :cond_16
305 :try_start_16
306 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
307 + :try_end_19
308 + .catchall {:try_start_16 .. :try_end_19} :catchall_2b
309 + .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_19} :catch_69
310 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_19} :catch_65
311 + .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_19} :catch_5f
312 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_19} :catch_1f
314 move-result-wide v2
316 + :try_start_1a
317 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$Future2Task;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
318 :try_end_1d
319 - .catchall {:try_start_16 .. :try_end_1d} :catchall_42
320 - .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_1d} :catch_22
321 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_1d} :catch_2c
322 - .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_1d} :catch_31
323 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_1d} :catch_36
324 + .catchall {:try_start_1a .. :try_end_1d} :catchall_2b
325 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_69
326 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1a .. :try_end_1d} :catch_67
327 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1a .. :try_end_1d} :catch_61
328 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1a .. :try_end_1d} :catch_1f
330 move-result-object v2
332 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
334 - goto :goto_15
336 - :catch_22
337 - move-exception v2
338 + goto :goto_12
340 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
342 - :goto_26
343 - new-instance v2, Landroid/accounts/OperationCanceledException;
345 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
347 - throw v2
349 - :catch_2c
350 - move-exception v2
352 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
354 - goto :goto_26
356 - :catch_31
357 - move-exception v2
359 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
361 - goto :goto_26
363 - :catch_36
364 + :catch_1f
365 move-exception v1
367 - :try_start_37
368 + :try_start_20
369 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
371 move-result-object v0
373 instance-of v2, v0, Ljava/io/IOException;
375 - if-eqz v2, :cond_47
376 + if-eqz v2, :cond_30
378 check-cast v0, Ljava/io/IOException;
380 throw v0
381 - :try_end_42
382 - .catchall {:try_start_37 .. :try_end_42} :catchall_42
383 + :try_end_2b
384 + .catchall {:try_start_20 .. :try_end_2b} :catchall_2b
386 - :catchall_42
387 + :catchall_2b
388 move-exception v2
390 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
392 throw v2
394 - :cond_47
395 - :try_start_47
396 + :cond_30
397 + :try_start_30
398 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
400 - if-eqz v2, :cond_51
401 + if-eqz v2, :cond_3a
403 new-instance v2, Landroid/accounts/AuthenticatorException;
405 @@ -197,41 +176,83 @@
407 throw v2
409 - :cond_51
410 + :cond_3a
411 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
413 - if-eqz v2, :cond_58
414 + if-eqz v2, :cond_41
416 check-cast v0, Landroid/accounts/AuthenticatorException;
418 throw v0
420 - :cond_58
421 + :cond_41
422 instance-of v2, v0, Ljava/lang/RuntimeException;
424 - if-eqz v2, :cond_5f
425 + if-eqz v2, :cond_48
427 check-cast v0, Ljava/lang/RuntimeException;
429 throw v0
431 - :cond_5f
432 + :cond_48
433 instance-of v2, v0, Ljava/lang/Error;
435 - if-eqz v2, :cond_66
436 + if-eqz v2, :cond_4f
438 check-cast v0, Ljava/lang/Error;
440 throw v0
442 - :cond_66
443 + :cond_4f
444 new-instance v2, Ljava/lang/IllegalStateException;
446 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
448 throw v2
449 - :try_end_6c
450 - .catchall {:try_start_47 .. :try_end_6c} :catchall_42
451 + :try_end_55
452 + .catchall {:try_start_30 .. :try_end_55} :catchall_2b
454 + :catch_55
455 + move-exception v2
457 + :goto_56
458 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
460 + new-instance v2, Landroid/accounts/OperationCanceledException;
462 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
464 + throw v2
466 + :catch_5f
467 + move-exception v2
469 + goto :goto_56
471 + :catch_61
472 + move-exception v2
474 + goto :goto_56
476 + :catch_63
477 + move-exception v2
479 + goto :goto_56
481 + :catch_65
482 + move-exception v2
484 + goto :goto_56
486 + :catch_67
487 + move-exception v2
489 + goto :goto_56
491 + :catch_69
492 + move-exception v2
494 + goto :goto_56
495 .end method
498 diff -Npru stock-framework/smali/android/accounts/AccountManagerService.smali pdroid-framework/smali/android/accounts/AccountManagerService.smali
499 --- stock-framework/smali/android/accounts/AccountManagerService.smali 2012-05-06 11:56:48.414682804 -0500
500 +++ pdroid-framework/smali/android/accounts/AccountManagerService.smali 2012-05-06 12:13:36.467681467 -0500
501 @@ -1502,23 +1502,21 @@
503 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
504 :try_end_2a
505 - .catchall {:try_start_20 .. :try_end_2a} :catchall_35
506 + .catchall {:try_start_20 .. :try_end_2a} :catchall_32
508 move-result-wide v0
510 + :goto_2b
511 invoke-interface {v8}, Landroid/database/Cursor;->close()V
513 - :goto_2e
514 return-wide v0
516 :cond_2f
517 const-wide/16 v0, -0x1
519 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
521 - goto :goto_2e
522 + goto :goto_2b
524 - :catchall_35
525 + :catchall_32
526 move-exception v0
528 invoke-interface {v8}, Landroid/database/Cursor;->close()V
529 @@ -1713,23 +1711,21 @@
531 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
532 :try_end_45
533 - .catchall {:try_start_3b .. :try_end_45} :catchall_50
534 + .catchall {:try_start_3b .. :try_end_45} :catchall_4d
536 move-result-wide v0
538 + :goto_46
539 invoke-interface {v8}, Landroid/database/Cursor;->close()V
541 - :goto_49
542 return-wide v0
544 :cond_4a
545 const-wide/16 v0, -0x1
547 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
549 - goto :goto_49
550 + goto :goto_46
552 - :catchall_50
553 + :catchall_4d
554 move-exception v0
556 invoke-interface {v8}, Landroid/database/Cursor;->close()V
557 @@ -4581,7 +4577,7 @@
558 const/16 v16, 0x1
560 :goto_68
561 - if-eqz v16, :cond_ba
562 + if-eqz v16, :cond_b3
564 const-string v4, "accounts"
566 @@ -4609,7 +4605,7 @@
568 move-result v4
570 - if-eqz v4, :cond_b3
571 + if-eqz v4, :cond_175
573 new-instance v4, Ljava/lang/StringBuilder;
575 @@ -4679,20 +4675,9 @@
576 goto :goto_68
578 :cond_b3
579 - if-eqz v14, :cond_b8
581 - :try_start_b5
582 - invoke-interface {v14}, Landroid/database/Cursor;->close()V
584 - :cond_b8
585 - :goto_b8
586 - monitor-exit v21
588 - goto :goto_42
590 - :cond_ba
591 const/4 v4, 0x0
593 + :try_start_b4
594 move-object/from16 v0, p0
596 invoke-virtual {v0, v4}, Landroid/accounts/AccountManagerService;->getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
597 @@ -4731,10 +4716,10 @@
599 const/4 v15, 0x0
601 - :goto_df
602 + :goto_d8
603 move/from16 v0, v17
605 - if-ge v15, v0, :cond_100
606 + if-ge v15, v0, :cond_f9
608 aget-object v11, v13, v15
610 @@ -4762,9 +4747,9 @@
612 add-int/lit8 v15, v15, 0x1
614 - goto :goto_df
615 + goto :goto_d8
617 - :cond_100
618 + :cond_f9
619 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
621 move-object/from16 v0, p0
622 @@ -4772,10 +4757,10 @@
623 iget-object v5, v0, Landroid/accounts/AccountManagerService;->mSessions:Ljava/util/LinkedHashMap;
625 monitor-enter v5
626 - :try_end_108
627 - .catchall {:try_start_b5 .. :try_end_108} :catchall_ad
628 + :try_end_101
629 + .catchall {:try_start_b4 .. :try_end_101} :catchall_ad
631 - :try_start_108
632 + :try_start_101
633 invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
635 move-result-wide v18
636 @@ -4822,12 +4807,12 @@
638 move-result-object v15
640 - :goto_138
641 + :goto_131
642 invoke-interface {v15}, Ljava/util/Iterator;->hasNext()Z
644 move-result v4
646 - if-eqz v4, :cond_168
647 + if-eqz v4, :cond_161
649 invoke-interface {v15}, Ljava/util/Iterator;->next()Ljava/lang/Object;
651 @@ -4865,27 +4850,27 @@
653 invoke-virtual {v0, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
655 - goto :goto_138
656 + goto :goto_131
658 - :catchall_165
659 + :catchall_15e
660 move-exception v4
662 monitor-exit v5
663 - :try_end_167
664 - .catchall {:try_start_108 .. :try_end_167} :catchall_165
665 + :try_end_160
666 + .catchall {:try_start_101 .. :try_end_160} :catchall_15e
668 - :try_start_167
669 + :try_start_160
670 throw v4
671 - :try_end_168
672 - .catchall {:try_start_167 .. :try_end_168} :catchall_ad
673 + :try_end_161
674 + .catchall {:try_start_160 .. :try_end_161} :catchall_ad
676 - :cond_168
677 - :try_start_168
678 + :cond_161
679 + :try_start_161
680 monitor-exit v5
681 - :try_end_169
682 - .catchall {:try_start_168 .. :try_end_169} :catchall_165
683 + :try_end_162
684 + .catchall {:try_start_161 .. :try_end_162} :catchall_15e
686 - :try_start_169
687 + :try_start_162
688 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
690 move-object/from16 v0, p0
691 @@ -4899,10 +4884,21 @@
692 move-object/from16 v2, p3
694 invoke-interface {v4, v0, v1, v2}, Landroid/accounts/IAccountAuthenticatorCache;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
695 - :try_end_179
696 - .catchall {:try_start_169 .. :try_end_179} :catchall_ad
698 - goto/16 :goto_b8
699 + :cond_172
700 + :goto_172
701 + monitor-exit v21
703 + goto/16 :goto_42
705 + :cond_175
706 + if-eqz v14, :cond_172
708 + invoke-interface {v14}, Landroid/database/Cursor;->close()V
709 + :try_end_17a
710 + .catchall {:try_start_162 .. :try_end_17a} :catchall_ad
712 + goto :goto_172
713 .end method
715 .method public editProperties(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;Z)V
716 @@ -5440,9 +5436,9 @@
717 :try_end_8b
718 .catchall {:try_start_7e .. :try_end_8b} :catchall_92
720 + :goto_8b
721 invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
723 - :goto_8e
724 return-void
726 :catchall_8f
727 @@ -5475,9 +5471,7 @@
728 :try_end_9f
729 .catchall {:try_start_97 .. :try_end_9f} :catchall_92
731 - invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
733 - goto :goto_8e
734 + goto :goto_8b
735 .end method
737 .method protected getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
738 @@ -5899,11 +5893,11 @@
740 invoke-direct {v0, v1, v2}, Landroid/accounts/AccountManagerService;->onResult(Landroid/accounts/IAccountManagerResponse;Landroid/os/Bundle;)V
741 :try_end_12a
742 - .catchall {:try_start_f1 .. :try_end_12a} :catchall_152
743 + .catchall {:try_start_f1 .. :try_end_12a} :catchall_14f
745 + :goto_12a
746 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
748 - :goto_12d
749 return-void
751 :cond_12e
752 @@ -5947,13 +5941,11 @@
754 invoke-virtual {v3}, Landroid/accounts/AccountManagerService$3;->bind()V
755 :try_end_14e
756 - .catchall {:try_start_135 .. :try_end_14e} :catchall_152
758 - invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
759 + .catchall {:try_start_135 .. :try_end_14e} :catchall_14f
761 - goto :goto_12d
762 + goto :goto_12a
764 - :catchall_152
765 + :catchall_14f
766 move-exception v3
768 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
769 @@ -6119,7 +6111,7 @@
771 move-result v7
773 - if-eqz v7, :cond_5d
774 + if-eqz v7, :cond_62
776 invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
778 @@ -6133,23 +6125,23 @@
780 aput-object v7, v6, v2
781 :try_end_5a
782 - .catchall {:try_start_37 .. :try_end_5a} :catchall_61
783 + .catchall {:try_start_37 .. :try_end_5a} :catchall_5d
785 add-int/lit8 v2, v2, 0x1
787 goto :goto_48
789 - :cond_5d
790 - invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
792 - return-object v6
794 - :catchall_61
795 + :catchall_5d
796 move-exception v7
798 invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
800 throw v7
802 + :cond_62
803 + invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
805 + return-object v6
806 .end method
808 .method public getPassword(Landroid/accounts/Account;)Ljava/lang/String;
809 diff -Npru stock-framework/smali/android/app/ActivityThread.smali pdroid-framework/smali/android/app/ActivityThread.smali
810 --- stock-framework/smali/android/app/ActivityThread.smali 2012-05-06 11:56:49.442687911 -0500
811 +++ pdroid-framework/smali/android/app/ActivityThread.smali 2012-05-06 12:13:37.375685974 -0500
812 @@ -3831,9 +3831,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 @@ -3954,9 +3954,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 @@ -9677,7 +9675,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 @@ -9690,15 +9688,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 @@ -9706,18 +9704,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 @@ -9747,43 +9734,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 @@ -9792,18 +9791,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 @@ -9887,9 +9884,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 @@ -9910,7 +9907,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 @@ -9919,7 +9916,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 @@ -9936,7 +9933,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 @@ -9975,7 +9972,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 @@ -9993,35 +9990,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 @@ -10030,30 +10031,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/backup/BackupAgent$BackupServiceBinder.smali pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali
1121 --- stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-05-06 11:56:49.754689449 -0500
1122 +++ pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-05-06 12:13:38.043689286 -0500
1123 @@ -83,7 +83,7 @@
1124 :try_start_1c
1125 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1126 :try_end_1f
1127 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1128 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1130 :goto_1f
1131 return-void
1132 @@ -146,7 +146,7 @@
1133 :try_start_54
1134 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1135 :try_end_57
1136 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1137 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1139 :goto_57
1140 throw v4
1141 @@ -198,14 +198,14 @@
1142 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1144 :catch_83
1145 - move-exception v4
1146 + move-exception v5
1148 - goto :goto_1f
1149 + goto :goto_57
1151 :catch_85
1152 - move-exception v5
1153 + move-exception v4
1155 - goto :goto_57
1156 + goto :goto_1f
1157 .end method
1159 .method public doFullBackup(Landroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1160 @@ -230,9 +230,9 @@
1162 invoke-virtual {v6, v7}, Landroid/app/backup/BackupAgent;->onFullBackup(Landroid/app/backup/FullBackupDataOutput;)V
1163 :try_end_15
1164 - .catchall {:try_start_b .. :try_end_15} :catchall_64
1165 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_34
1166 - .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_7b
1167 + .catchall {:try_start_b .. :try_end_15} :catchall_5b
1168 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_2b
1169 + .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_72
1171 :try_start_15
1172 new-instance v5, Ljava/io/FileOutputStream;
1173 @@ -249,7 +249,7 @@
1175 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1176 :try_end_24
1177 - .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_2b
1178 + .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_a8
1180 :goto_24
1181 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1182 @@ -257,26 +257,15 @@
1183 :try_start_27
1184 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1185 :try_end_2a
1186 - .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_af
1187 + .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_b2
1189 :goto_2a
1190 return-void
1192 :catch_2b
1193 - move-exception v1
1195 - const-string v6, "BackupServiceBinder"
1197 - const-string v7, "Unable to finalize backup stream!"
1199 - invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1201 - goto :goto_24
1203 - :catch_34
1204 move-exception v2
1206 - :try_start_35
1207 + :try_start_2c
1208 const-string v6, "BackupServiceBinder"
1210 new-instance v7, Ljava/lang/StringBuilder;
1211 @@ -320,13 +309,13 @@
1212 invoke-direct {v6, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
1214 throw v6
1215 - :try_end_64
1216 - .catchall {:try_start_35 .. :try_end_64} :catchall_64
1217 + :try_end_5b
1218 + .catchall {:try_start_2c .. :try_end_5b} :catchall_5b
1220 - :catchall_64
1221 + :catchall_5b
1222 move-exception v6
1224 - :try_start_65
1225 + :try_start_5c
1226 new-instance v5, Ljava/io/FileOutputStream;
1228 invoke-virtual {p1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
1229 @@ -340,24 +329,24 @@
1230 new-array v0, v7, [B
1232 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1233 - :try_end_74
1234 - .catch Ljava/io/IOException; {:try_start_65 .. :try_end_74} :catch_a6
1235 + :try_end_6b
1236 + .catch Ljava/io/IOException; {:try_start_5c .. :try_end_6b} :catch_9d
1238 - :goto_74
1239 + :goto_6b
1240 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1242 - :try_start_77
1243 + :try_start_6e
1244 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1245 - :try_end_7a
1246 - .catch Landroid/os/RemoteException; {:try_start_77 .. :try_end_7a} :catch_b2
1247 + :try_end_71
1248 + .catch Landroid/os/RemoteException; {:try_start_6e .. :try_end_71} :catch_a6
1250 - :goto_7a
1251 + :goto_71
1252 throw v6
1254 - :catch_7b
1255 + :catch_72
1256 move-exception v2
1258 - :try_start_7c
1259 + :try_start_73
1260 const-string v6, "BackupServiceBinder"
1262 new-instance v7, Ljava/lang/StringBuilder;
1263 @@ -397,10 +386,10 @@
1264 invoke-static {v6, v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1266 throw v2
1267 - :try_end_a6
1268 - .catchall {:try_start_7c .. :try_end_a6} :catchall_64
1269 + :try_end_9d
1270 + .catchall {:try_start_73 .. :try_end_9d} :catchall_5b
1272 - :catch_a6
1273 + :catch_9d
1274 move-exception v1
1276 const-string v7, "BackupServiceBinder"
1277 @@ -409,17 +398,28 @@
1279 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1281 - goto :goto_74
1282 + goto :goto_6b
1284 - :catch_af
1285 - move-exception v6
1286 + :catch_a6
1287 + move-exception v7
1289 - goto/16 :goto_2a
1290 + goto :goto_71
1292 + :catch_a8
1293 + move-exception v1
1295 + const-string v6, "BackupServiceBinder"
1297 + const-string v7, "Unable to finalize backup stream!"
1299 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1301 + goto/16 :goto_24
1303 :catch_b2
1304 - move-exception v7
1305 + move-exception v6
1307 - goto :goto_7a
1308 + goto/16 :goto_2a
1309 .end method
1311 .method public doRestore(Landroid/os/ParcelFileDescriptor;ILandroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1312 @@ -462,7 +462,7 @@
1313 :try_start_1c
1314 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1315 :try_end_1f
1316 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1317 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1319 :goto_1f
1320 return-void
1321 @@ -525,7 +525,7 @@
1322 :try_start_54
1323 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1324 :try_end_57
1325 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1326 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1328 :goto_57
1329 throw v4
1330 @@ -577,14 +577,14 @@
1331 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1333 :catch_83
1334 - move-exception v4
1335 + move-exception v5
1337 - goto :goto_1f
1338 + goto :goto_57
1340 :catch_85
1341 - move-exception v5
1342 + move-exception v4
1344 - goto :goto_57
1345 + goto :goto_1f
1346 .end method
1348 .method public doRestoreFile(Landroid/os/ParcelFileDescriptor;JILjava/lang/String;Ljava/lang/String;JJILandroid/app/backup/IBackupManager;)V
1349 @@ -632,7 +632,7 @@
1351 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1352 :try_end_23
1353 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_37
1354 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_39
1356 :goto_23
1357 return-void
1358 @@ -661,18 +661,18 @@
1360 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1361 :try_end_36
1362 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_39
1363 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_37
1365 :goto_36
1366 throw v2
1368 :catch_37
1369 - move-exception v2
1370 + move-exception v3
1372 - goto :goto_23
1373 + goto :goto_36
1375 :catch_39
1376 - move-exception v3
1377 + move-exception v2
1379 - goto :goto_36
1380 + goto :goto_23
1381 .end method
1382 diff -Npru stock-framework/smali/android/app/backup/RestoreSession.smali pdroid-framework/smali/android/app/backup/RestoreSession.smali
1383 --- stock-framework/smali/android/app/backup/RestoreSession.smali 2012-05-06 11:56:49.770689529 -0500
1384 +++ pdroid-framework/smali/android/app/backup/RestoreSession.smali 2012-05-06 12:13:38.063689381 -0500
1385 @@ -52,12 +52,12 @@
1387 invoke-interface {v1}, Landroid/app/backup/IRestoreSession;->endRestoreSession()V
1388 :try_end_6
1389 - .catchall {:try_start_1 .. :try_end_6} :catchall_14
1390 + .catchall {:try_start_1 .. :try_end_6} :catchall_12
1391 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_6} :catch_9
1393 + :goto_6
1394 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1396 - :goto_8
1397 return-void
1399 :catch_9
1400 @@ -70,13 +70,11 @@
1402 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
1403 :try_end_11
1404 - .catchall {:try_start_a .. :try_end_11} :catchall_14
1405 + .catchall {:try_start_a .. :try_end_11} :catchall_12
1407 - iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1409 - goto :goto_8
1410 + goto :goto_6
1412 - :catchall_14
1413 + :catchall_12
1414 move-exception v1
1416 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1417 diff -Npru stock-framework/smali/android/app/ContextImpl$18.smali pdroid-framework/smali/android/app/ContextImpl$18.smali
1418 --- stock-framework/smali/android/app/ContextImpl$18.smali 2012-05-06 11:56:49.478688090 -0500
1419 +++ pdroid-framework/smali/android/app/ContextImpl$18.smali 2012-05-06 12:13:37.483686504 -0500
1420 @@ -26,21 +26,25 @@
1422 # virtual methods
1423 .method public createStaticService()Ljava/lang/Object;
1424 - .registers 4
1425 + .registers 5
1427 - const-string v1, "location"
1428 + const-string v2, "location"
1430 - invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1431 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1433 move-result-object v0
1435 - new-instance v1, Landroid/location/LocationManager;
1437 invoke-static {v0}, Landroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;
1439 - move-result-object v2
1440 + move-result-object v1
1442 + new-instance v2, Landroid/privacy/surrogate/PrivacyLocationManager;
1444 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1446 + move-result-object v3
1448 - invoke-direct {v1, v2}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
1449 + invoke-direct {v2, v1, v3}, Landroid/privacy/surrogate/PrivacyLocationManager;-><init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
1451 - return-object v1
1452 + return-object v2
1453 .end method
1454 diff -Npru stock-framework/smali/android/app/ContextImpl$26.smali pdroid-framework/smali/android/app/ContextImpl$26.smali
1455 --- stock-framework/smali/android/app/ContextImpl$26.smali 2012-05-06 11:56:49.478688090 -0500
1456 +++ pdroid-framework/smali/android/app/ContextImpl$26.smali 2012-05-06 12:13:37.499686594 -0500
1457 @@ -28,13 +28,13 @@
1458 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
1459 .registers 4
1461 - new-instance v0, Landroid/telephony/TelephonyManager;
1462 + new-instance v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;
1464 invoke-virtual {p1}, Landroid/app/ContextImpl;->getOuterContext()Landroid/content/Context;
1466 move-result-object v1
1468 - invoke-direct {v0, v1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
1469 + invoke-direct {v0, v1}, Landroid/privacy/surrogate/PrivacyTelephonyManager;-><init>(Landroid/content/Context;)V
1471 return-object v0
1472 .end method
1473 diff -Npru stock-framework/smali/android/app/ContextImpl$34.smali pdroid-framework/smali/android/app/ContextImpl$34.smali
1474 --- stock-framework/smali/android/app/ContextImpl$34.smali 1969-12-31 18:00:00.000000000 -0600
1475 +++ pdroid-framework/smali/android/app/ContextImpl$34.smali 2012-05-06 12:13:37.503686604 -0500
1476 @@ -0,0 +1,50 @@
1477 +.class final Landroid/app/ContextImpl$34;
1478 +.super Landroid/app/ContextImpl$StaticServiceFetcher;
1479 +.source "ContextImpl.java"
1482 +# annotations
1483 +.annotation system Ldalvik/annotation/EnclosingClass;
1484 + value = Landroid/app/ContextImpl;
1485 +.end annotation
1487 +.annotation system Ldalvik/annotation/InnerClass;
1488 + accessFlags = 0x8
1489 + name = null
1490 +.end annotation
1493 +# direct methods
1494 +.method constructor <init>()V
1495 + .registers 1
1497 + invoke-direct {p0}, Landroid/app/ContextImpl$StaticServiceFetcher;-><init>()V
1499 + return-void
1500 +.end method
1503 +# virtual methods
1504 +.method public createStaticService()Ljava/lang/Object;
1505 + .registers 5
1507 + const-string/jumbo v2, "privacy"
1509 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1511 + move-result-object v0
1513 + invoke-static {v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1515 + move-result-object v1
1517 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
1519 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1521 + move-result-object v3
1523 + invoke-direct {v2, v3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1525 + return-object v2
1526 +.end method
1527 diff -Npru stock-framework/smali/android/app/ContextImpl$3.smali pdroid-framework/smali/android/app/ContextImpl$3.smali
1528 --- stock-framework/smali/android/app/ContextImpl$3.smali 2012-05-06 11:56:49.482688102 -0500
1529 +++ pdroid-framework/smali/android/app/ContextImpl$3.smali 2012-05-06 12:13:37.503686604 -0500
1530 @@ -38,9 +38,9 @@
1532 move-result-object v1
1534 - new-instance v2, Landroid/accounts/AccountManager;
1535 + new-instance v2, Landroid/privacy/surrogate/PrivacyAccountManager;
1537 - invoke-direct {v2, p1, v1}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1538 + invoke-direct {v2, p1, v1}, Landroid/privacy/surrogate/PrivacyAccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1540 return-object v2
1541 .end method
1542 diff -Npru stock-framework/smali/android/app/ContextImpl.smali pdroid-framework/smali/android/app/ContextImpl.smali
1543 --- stock-framework/smali/android/app/ContextImpl.smali 2012-05-06 11:56:49.498688184 -0500
1544 +++ pdroid-framework/smali/android/app/ContextImpl.smali 2012-05-06 12:13:37.551686842 -0500
1545 @@ -36,6 +36,8 @@
1547 .field private static sNextPerContextServiceCacheIndex:I
1549 +.field private static sOuterContext:Landroid/content/Context;
1551 .field private static final sSharedPrefs:Ljava/util/HashMap;
1552 .annotation system Ldalvik/annotation/Signature;
1553 value = {
1554 @@ -394,6 +396,14 @@
1556 invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1558 + const-string/jumbo v0, "privacy"
1560 + new-instance v1, Landroid/app/ContextImpl$34;
1562 + invoke-direct {v1}, Landroid/app/ContextImpl$34;-><init>()V
1564 + invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1566 return-void
1567 .end method
1569 @@ -428,6 +438,8 @@
1571 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1573 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1575 return-void
1576 .end method
1578 @@ -482,6 +494,8 @@
1580 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1582 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1584 return-void
1585 .end method
1587 @@ -951,6 +965,14 @@
1588 throw v0
1589 .end method
1591 +.method static final getStaticOuterContext()Landroid/content/Context;
1592 + .registers 1
1594 + sget-object v0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1596 + return-object v0
1597 +.end method
1599 .method private getWallpaperManager()Landroid/app/WallpaperManager;
1600 .registers 2
1602 @@ -4081,6 +4103,8 @@
1604 iput-object p1, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1606 + sput-object p1, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1608 return-void
1609 .end method
1611 diff -Npru stock-framework/smali/android/app/DownloadManager.smali pdroid-framework/smali/android/app/DownloadManager.smali
1612 --- stock-framework/smali/android/app/DownloadManager.smali 2012-05-06 11:56:49.510688248 -0500
1613 +++ pdroid-framework/smali/android/app/DownloadManager.smali 2012-05-06 12:13:37.599687080 -0500
1614 @@ -618,7 +618,7 @@
1615 :try_start_11
1616 invoke-virtual {p0, v1}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1617 :try_end_14
1618 - .catchall {:try_start_11 .. :try_end_14} :catchall_3a
1619 + .catchall {:try_start_11 .. :try_end_14} :catchall_31
1621 move-result-object v0
1623 @@ -626,10 +626,10 @@
1625 if-eqz v0, :cond_1c
1627 + :goto_19
1628 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1630 :cond_1c
1631 - :goto_1c
1632 return-object v2
1634 :cond_1d
1635 @@ -638,7 +638,7 @@
1637 move-result v3
1639 - if-eqz v3, :cond_34
1640 + if-eqz v3, :cond_38
1642 const-string/jumbo v2, "media_type"
1644 @@ -648,32 +648,28 @@
1646 invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
1647 :try_end_2d
1648 - .catchall {:try_start_1d .. :try_end_2d} :catchall_3a
1649 + .catchall {:try_start_1d .. :try_end_2d} :catchall_31
1651 move-result-object v2
1653 if-eqz v0, :cond_1c
1655 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1657 - goto :goto_1c
1659 - :cond_34
1660 - if-eqz v0, :cond_1c
1662 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1663 + goto :goto_19
1665 - goto :goto_1c
1667 - :catchall_3a
1668 + :catchall_31
1669 move-exception v2
1671 - if-eqz v0, :cond_40
1672 + if-eqz v0, :cond_37
1674 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1676 - :cond_40
1677 + :cond_37
1678 throw v2
1680 + :cond_38
1681 + if-eqz v0, :cond_1c
1683 + goto :goto_19
1684 .end method
1686 .method public getUriForDownloadedFile(J)Landroid/net/Uri;
1687 @@ -702,7 +698,7 @@
1688 :try_start_11
1689 invoke-virtual {p0, v4}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1690 :try_end_14
1691 - .catchall {:try_start_11 .. :try_end_14} :catchall_72
1692 + .catchall {:try_start_11 .. :try_end_14} :catchall_66
1694 move-result-object v0
1696 @@ -710,10 +706,10 @@
1698 if-eqz v0, :cond_1c
1700 + :goto_19
1701 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1703 :cond_1c
1704 - :goto_1c
1705 return-object v6
1707 :cond_1d
1708 @@ -722,7 +718,7 @@
1710 move-result v7
1712 - if-eqz v7, :cond_6c
1713 + if-eqz v7, :cond_6d
1715 const-string/jumbo v7, "status"
1717 @@ -736,7 +732,7 @@
1719 const/16 v7, 0x8
1721 - if-ne v7, v5, :cond_6c
1722 + if-ne v7, v5, :cond_6d
1724 const-string v6, "destination"
1726 @@ -760,25 +756,20 @@
1728 const/4 v6, 0x2
1730 - if-ne v1, v6, :cond_53
1731 + if-ne v1, v6, :cond_50
1733 :cond_47
1734 sget-object v6, Landroid/provider/Downloads$Impl;->CONTENT_URI:Landroid/net/Uri;
1736 invoke-static {v6, p1, p2}, Landroid/content/ContentUris;->withAppendedId(Landroid/net/Uri;J)Landroid/net/Uri;
1737 - :try_end_4c
1738 - .catchall {:try_start_1d .. :try_end_4c} :catchall_72
1740 move-result-object v6
1742 if-eqz v0, :cond_1c
1744 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1746 - goto :goto_1c
1747 + goto :goto_19
1749 - :cond_53
1750 - :try_start_53
1751 + :cond_50
1752 const-string v6, "local_filename"
1754 invoke-interface {v0, v6}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
1755 @@ -794,33 +785,29 @@
1756 invoke-direct {v6, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
1758 invoke-static {v6}, Landroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri;
1759 - :try_end_65
1760 - .catchall {:try_start_53 .. :try_end_65} :catchall_72
1761 + :try_end_62
1762 + .catchall {:try_start_1d .. :try_end_62} :catchall_66
1764 move-result-object v6
1766 if-eqz v0, :cond_1c
1768 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1770 - goto :goto_1c
1772 - :cond_6c
1773 - if-eqz v0, :cond_1c
1775 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1777 - goto :goto_1c
1778 + goto :goto_19
1780 - :catchall_72
1781 + :catchall_66
1782 move-exception v6
1784 - if-eqz v0, :cond_78
1785 + if-eqz v0, :cond_6c
1787 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1789 - :cond_78
1790 + :cond_6c
1791 throw v6
1793 + :cond_6d
1794 + if-eqz v0, :cond_1c
1796 + goto :goto_19
1797 .end method
1799 .method public varargs markRowDeleted([J)I
1800 diff -Npru stock-framework/smali/android/app/Fragment.smali pdroid-framework/smali/android/app/Fragment.smali
1801 --- stock-framework/smali/android/app/Fragment.smali 2012-05-06 11:56:49.502688199 -0500
1802 +++ pdroid-framework/smali/android/app/Fragment.smali 2012-05-06 12:13:37.571686951 -0500
1803 @@ -393,7 +393,7 @@
1805 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1807 - const-string v0, "mState="
1808 + const-string/jumbo v0, "mState="
1810 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1812 @@ -529,7 +529,7 @@
1814 iget-object v0, p0, Landroid/app/Fragment;->mFragmentManager:Landroid/app/FragmentManagerImpl;
1816 - if-eqz v0, :cond_e6
1817 + if-eqz v0, :cond_e7
1819 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1821 @@ -541,10 +541,10 @@
1823 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1825 - :cond_e6
1826 + :cond_e7
1827 iget-object v0, p0, Landroid/app/Fragment;->mActivity:Landroid/app/Activity;
1829 - if-eqz v0, :cond_f7
1830 + if-eqz v0, :cond_f8
1832 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1834 @@ -556,10 +556,10 @@
1836 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1838 - :cond_f7
1839 + :cond_f8
1840 iget-object v0, p0, Landroid/app/Fragment;->mArguments:Landroid/os/Bundle;
1842 - if-eqz v0, :cond_108
1843 + if-eqz v0, :cond_109
1845 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1847 @@ -571,10 +571,10 @@
1849 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1851 - :cond_108
1852 + :cond_109
1853 iget-object v0, p0, Landroid/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle;
1855 - if-eqz v0, :cond_119
1856 + if-eqz v0, :cond_11a
1858 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1860 @@ -586,10 +586,10 @@
1862 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1864 - :cond_119
1865 + :cond_11a
1866 iget-object v0, p0, Landroid/app/Fragment;->mSavedViewState:Landroid/util/SparseArray;
1868 - if-eqz v0, :cond_12a
1869 + if-eqz v0, :cond_12b
1871 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1873 @@ -601,10 +601,10 @@
1875 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1877 - :cond_12a
1878 + :cond_12b
1879 iget-object v0, p0, Landroid/app/Fragment;->mTarget:Landroid/app/Fragment;
1881 - if-eqz v0, :cond_146
1882 + if-eqz v0, :cond_147
1884 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1886 @@ -624,10 +624,10 @@
1888 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(I)V
1890 - :cond_146
1891 + :cond_147
1892 iget v0, p0, Landroid/app/Fragment;->mNextAnim:I
1894 - if-eqz v0, :cond_157
1895 + if-eqz v0, :cond_158
1897 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1899 @@ -639,10 +639,10 @@
1901 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(I)V
1903 - :cond_157
1904 + :cond_158
1905 iget-object v0, p0, Landroid/app/Fragment;->mContainer:Landroid/view/ViewGroup;
1907 - if-eqz v0, :cond_168
1908 + if-eqz v0, :cond_169
1910 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1912 @@ -654,10 +654,10 @@
1914 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1916 - :cond_168
1917 + :cond_169
1918 iget-object v0, p0, Landroid/app/Fragment;->mView:Landroid/view/View;
1920 - if-eqz v0, :cond_17a
1921 + if-eqz v0, :cond_17b
1923 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1925 @@ -669,10 +669,10 @@
1927 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1929 - :cond_17a
1930 + :cond_17b
1931 iget-object v0, p0, Landroid/app/Fragment;->mAnimatingAway:Landroid/animation/Animator;
1933 - if-eqz v0, :cond_198
1934 + if-eqz v0, :cond_19a
1936 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1938 @@ -686,7 +686,7 @@
1940 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1942 - const-string v0, "mStateAfterAnimating="
1943 + const-string/jumbo v0, "mStateAfterAnimating="
1945 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1947 @@ -694,10 +694,10 @@
1949 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(I)V
1951 - :cond_198
1952 + :cond_19a
1953 iget-object v0, p0, Landroid/app/Fragment;->mLoaderManager:Landroid/app/LoaderManagerImpl;
1955 - if-eqz v0, :cond_1bc
1956 + if-eqz v0, :cond_1be
1958 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1960 @@ -727,7 +727,7 @@
1962 invoke-virtual {v0, v1, p2, p3, p4}, Landroid/app/LoaderManagerImpl;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
1964 - :cond_1bc
1965 + :cond_1be
1966 return-void
1967 .end method
1969 diff -Npru stock-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali pdroid-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali
1970 --- stock-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali 2012-05-06 11:56:49.678689071 -0500
1971 +++ pdroid-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali 2012-05-06 12:13:37.955688855 -0500
1972 @@ -542,7 +542,7 @@
1973 :cond_79
1974 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1976 - const-string v0, "mStarted="
1977 + const-string/jumbo v0, "mStarted="
1979 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1981 @@ -594,7 +594,7 @@
1983 iget-object v0, p0, Landroid/app/LoaderManagerImpl$LoaderInfo;->mPendingLoader:Landroid/app/LoaderManagerImpl$LoaderInfo;
1985 - if-eqz v0, :cond_e9
1986 + if-eqz v0, :cond_ea
1988 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1990 @@ -632,7 +632,7 @@
1992 invoke-virtual {v0, v1, p2, p3, p4}, Landroid/app/LoaderManagerImpl$LoaderInfo;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
1994 - :cond_e9
1995 + :cond_ea
1996 return-void
1997 .end method
1999 diff -Npru stock-framework/smali/android/app/WallpaperManager$Globals.smali pdroid-framework/smali/android/app/WallpaperManager$Globals.smali
2000 --- stock-framework/smali/android/app/WallpaperManager$Globals.smali 2012-05-06 11:56:49.734689350 -0500
2001 +++ pdroid-framework/smali/android/app/WallpaperManager$Globals.smali 2012-05-06 12:13:38.023689193 -0500
2002 @@ -140,7 +140,7 @@
2003 :try_start_2f
2004 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2005 :try_end_32
2006 - .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_49
2007 + .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_4d
2008 .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_47
2010 :goto_32
2011 @@ -178,7 +178,7 @@
2012 :try_start_43
2013 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2014 :try_end_46
2015 - .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_4d
2016 + .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_49
2017 .catch Landroid/os/RemoteException; {:try_start_43 .. :try_end_46} :catch_47
2019 :goto_46
2020 @@ -193,9 +193,9 @@
2021 goto :goto_40
2023 :catch_49
2024 - move-exception v8
2025 + move-exception v9
2027 - goto :goto_32
2028 + goto :goto_46
2030 :catch_4b
2031 move-exception v7
2032 @@ -203,9 +203,9 @@
2033 goto :goto_40
2035 :catch_4d
2036 - move-exception v9
2037 + move-exception v8
2039 - goto :goto_46
2040 + goto :goto_32
2041 .end method
2043 .method private getDefaultWallpaperLocked(Landroid/content/Context;)Landroid/graphics/Bitmap;
2044 @@ -261,7 +261,7 @@
2045 :try_start_28
2046 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2047 :try_end_2b
2048 - .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_42
2049 + .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_46
2050 .catch Landroid/os/RemoteException; {:try_start_28 .. :try_end_2b} :catch_40
2052 :goto_2b
2053 @@ -299,7 +299,7 @@
2054 :try_start_3c
2055 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2056 :try_end_3f
2057 - .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_46
2058 + .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_42
2059 .catch Landroid/os/RemoteException; {:try_start_3c .. :try_end_3f} :catch_40
2061 :goto_3f
2062 @@ -314,9 +314,9 @@
2063 goto :goto_39
2065 :catch_42
2066 - move-exception v7
2067 + move-exception v8
2069 - goto :goto_2b
2070 + goto :goto_3f
2072 :catch_44
2073 move-exception v6
2074 @@ -324,9 +324,9 @@
2075 goto :goto_39
2077 :catch_46
2078 - move-exception v8
2079 + move-exception v7
2081 - goto :goto_3f
2082 + goto :goto_2b
2083 .end method
2086 diff -Npru stock-framework/smali/android/bluetooth/BluetoothSocket.smali pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali
2087 --- stock-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-05-06 11:56:49.838689875 -0500
2088 +++ pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-05-06 12:13:38.131689724 -0500
2089 @@ -445,7 +445,7 @@
2091 sget-object v1, Landroid/bluetooth/BluetoothSocket$SocketState;->CLOSED:Landroid/bluetooth/BluetoothSocket$SocketState;
2092 :try_end_d
2093 - .catchall {:try_start_9 .. :try_end_d} :catchall_29
2094 + .catchall {:try_start_9 .. :try_end_d} :catchall_26
2096 if-ne v0, v1, :cond_1b
2098 @@ -457,16 +457,16 @@
2100 move-result-object v1
2102 + :goto_17
2103 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2105 - :goto_1a
2106 return v0
2108 :cond_1b
2109 :try_start_1b
2110 invoke-direct {p0}, Landroid/bluetooth/BluetoothSocket;->bindListenNative()I
2111 :try_end_1e
2112 - .catchall {:try_start_1b .. :try_end_1e} :catchall_29
2113 + .catchall {:try_start_1b .. :try_end_1e} :catchall_26
2115 move-result v0
2117 @@ -476,11 +476,9 @@
2119 move-result-object v1
2121 - invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2123 - goto :goto_1a
2124 + goto :goto_17
2126 - :catchall_29
2127 + :catchall_26
2128 move-exception v0
2130 iget-object v1, p0, Landroid/bluetooth/BluetoothSocket;->mLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
2131 diff -Npru stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali
2132 --- stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-05-06 11:56:49.874690049 -0500
2133 +++ pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-05-06 12:13:38.163689886 -0500
2134 @@ -102,11 +102,11 @@
2135 :try_start_b
2136 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2137 :try_end_e
2138 - .catchall {:try_start_b .. :try_end_e} :catchall_80
2139 + .catchall {:try_start_b .. :try_end_e} :catchall_7d
2141 move-result v0
2143 - if-eqz v0, :cond_38
2144 + if-eqz v0, :cond_35
2146 if-eqz v4, :cond_16
2148 @@ -146,21 +146,14 @@
2149 invoke-virtual {v0, v2}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2151 monitor-exit v1
2152 + :try_end_34
2153 + .catchall {:try_start_28 .. :try_end_34} :catchall_a5
2155 :goto_34
2156 return-void
2158 - :catchall_35
2159 - move-exception v0
2161 - monitor-exit v1
2162 - :try_end_37
2163 - .catchall {:try_start_28 .. :try_end_37} :catchall_35
2165 - throw v0
2167 - :cond_38
2168 - :try_start_38
2169 + :cond_35
2170 + :try_start_35
2171 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2173 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mContext:Landroid/content/Context;
2174 @@ -178,7 +171,7 @@
2176 move-result-object v4
2178 - if-eqz v4, :cond_7c
2179 + if-eqz v4, :cond_79
2181 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2183 @@ -189,26 +182,26 @@
2184 iget-object v3, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mAuthority:Ljava/lang/String;
2186 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
2187 - :try_end_55
2188 - .catchall {:try_start_38 .. :try_end_55} :catchall_80
2189 + :try_end_52
2190 + .catchall {:try_start_35 .. :try_end_52} :catchall_7d
2192 - :goto_55
2193 - if-eqz v4, :cond_5a
2194 + :goto_52
2195 + if-eqz v4, :cond_57
2197 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2199 - :cond_5a
2200 + :cond_57
2201 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2203 move-result v0
2205 - if-nez v0, :cond_65
2206 + if-nez v0, :cond_62
2208 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2210 invoke-virtual {v0, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2212 - :cond_65
2213 + :cond_62
2214 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2216 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2217 @@ -218,7 +211,7 @@
2219 monitor-enter v1
2221 - :try_start_6c
2222 + :try_start_69
2223 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2225 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2226 @@ -234,44 +227,44 @@
2228 goto :goto_34
2230 - :catchall_79
2231 + :catchall_76
2232 move-exception v0
2234 monitor-exit v1
2235 - :try_end_7b
2236 - .catchall {:try_start_6c .. :try_end_7b} :catchall_79
2237 + :try_end_78
2238 + .catchall {:try_start_69 .. :try_end_78} :catchall_76
2240 throw v0
2242 - :cond_7c
2243 + :cond_79
2244 const/4 v0, 0x1
2246 - :try_start_7d
2247 + :try_start_7a
2248 iput-boolean v0, v5, Landroid/content/SyncResult;->databaseError:Z
2249 - :try_end_7f
2250 - .catchall {:try_start_7d .. :try_end_7f} :catchall_80
2251 + :try_end_7c
2252 + .catchall {:try_start_7a .. :try_end_7c} :catchall_7d
2254 - goto :goto_55
2255 + goto :goto_52
2257 - :catchall_80
2258 + :catchall_7d
2259 move-exception v0
2261 - if-eqz v4, :cond_86
2262 + if-eqz v4, :cond_83
2264 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2266 - :cond_86
2267 + :cond_83
2268 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2270 move-result v1
2272 - if-nez v1, :cond_91
2273 + if-nez v1, :cond_8e
2275 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2277 invoke-virtual {v1, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2279 - :cond_91
2280 + :cond_8e
2281 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2283 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2284 @@ -281,7 +274,7 @@
2286 monitor-enter v1
2288 - :try_start_98
2289 + :try_start_95
2290 iget-object v2, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2292 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2293 @@ -294,8 +287,18 @@
2294 invoke-virtual {v2, v3}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2296 monitor-exit v1
2297 + :try_end_a1
2298 + .catchall {:try_start_95 .. :try_end_a1} :catchall_a2
2300 + throw v0
2302 + :catchall_a2
2303 + move-exception v0
2305 + :try_start_a3
2306 + monitor-exit v1
2307 :try_end_a4
2308 - .catchall {:try_start_98 .. :try_end_a4} :catchall_a5
2309 + .catchall {:try_start_a3 .. :try_end_a4} :catchall_a2
2311 throw v0
2313 diff -Npru stock-framework/smali/android/content/ContentResolver.smali pdroid-framework/smali/android/content/ContentResolver.smali
2314 --- stock-framework/smali/android/content/ContentResolver.smali 2012-05-06 11:56:49.490688140 -0500
2315 +++ pdroid-framework/smali/android/content/ContentResolver.smali 2012-05-06 12:13:37.527686723 -0500
2316 @@ -1662,12 +1662,12 @@
2318 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2319 :try_end_35
2320 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2321 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2322 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2324 + :goto_35
2325 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2327 - :goto_38
2328 return v8
2330 :catch_39
2331 @@ -1675,11 +1675,9 @@
2333 const/4 v8, 0x0
2335 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2337 - goto :goto_38
2338 + goto :goto_35
2340 - :catchall_3f
2341 + :catchall_3c
2342 move-exception v0
2344 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2345 @@ -1746,14 +1744,14 @@
2346 :try_start_35
2347 invoke-interface {v1, p2, p3, p4}, Landroid/content/IContentProvider;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
2348 :try_end_38
2349 - .catchall {:try_start_35 .. :try_end_38} :catchall_43
2350 + .catchall {:try_start_35 .. :try_end_38} :catchall_40
2351 .catch Landroid/os/RemoteException; {:try_start_35 .. :try_end_38} :catch_3d
2353 move-result-object v2
2355 + :goto_39
2356 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2358 - :goto_3c
2359 return-object v2
2361 :catch_3d
2362 @@ -1761,11 +1759,9 @@
2364 const/4 v2, 0x0
2366 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2368 - goto :goto_3c
2369 + goto :goto_39
2371 - :catchall_43
2372 + :catchall_40
2373 move-exception v2
2375 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2376 @@ -1856,12 +1852,12 @@
2378 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2379 :try_end_35
2380 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2381 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2382 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2384 + :goto_35
2385 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2387 - :goto_38
2388 return v8
2390 :catch_39
2391 @@ -1869,11 +1865,9 @@
2393 const/4 v8, -0x1
2395 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2397 - goto :goto_38
2398 + goto :goto_35
2400 - :catchall_3f
2401 + :catchall_3c
2402 move-exception v0
2404 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2405 @@ -2152,11 +2146,12 @@
2406 :try_start_8
2407 invoke-interface {v1, p1, p2}, Landroid/content/IContentProvider;->getStreamTypes(Landroid/net/Uri;Ljava/lang/String;)[Ljava/lang/String;
2408 :try_end_b
2409 - .catchall {:try_start_8 .. :try_end_b} :catchall_15
2410 + .catchall {:try_start_8 .. :try_end_b} :catchall_12
2411 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_b} :catch_10
2413 move-result-object v2
2415 + :goto_c
2416 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2418 goto :goto_7
2419 @@ -2164,11 +2159,9 @@
2420 :catch_10
2421 move-exception v0
2423 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2424 + goto :goto_c
2426 - goto :goto_7
2428 - :catchall_15
2429 + :catchall_12
2430 move-exception v2
2432 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2433 @@ -2185,17 +2178,18 @@
2435 move-result-object v1
2437 - if-eqz v1, :cond_4a
2438 + if-eqz v1, :cond_44
2440 :try_start_7
2441 invoke-interface {v1, p1}, Landroid/content/IContentProvider;->getType(Landroid/net/Uri;)Ljava/lang/String;
2442 :try_end_a
2443 - .catchall {:try_start_7 .. :try_end_a} :catchall_45
2444 + .catchall {:try_start_7 .. :try_end_a} :catchall_3f
2445 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_a} :catch_f
2446 - .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_14
2447 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_11
2449 move-result-object v2
2451 + :goto_b
2452 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2454 :cond_e
2455 @@ -2205,14 +2199,12 @@
2456 :catch_f
2457 move-exception v0
2459 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2461 - goto :goto_e
2462 + goto :goto_b
2464 - :catch_14
2465 + :catch_11
2466 move-exception v0
2468 - :try_start_15
2469 + :try_start_12
2470 const-string v3, "ContentResolver"
2472 new-instance v4, Ljava/lang/StringBuilder;
2473 @@ -2254,21 +2246,19 @@
2474 move-result-object v4
2476 invoke-static {v3, v4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
2477 - :try_end_41
2478 - .catchall {:try_start_15 .. :try_end_41} :catchall_45
2480 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2481 + :try_end_3e
2482 + .catchall {:try_start_12 .. :try_end_3e} :catchall_3f
2484 - goto :goto_e
2485 + goto :goto_b
2487 - :catchall_45
2488 + :catchall_3f
2489 move-exception v3
2491 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2493 throw v3
2495 - :cond_4a
2496 + :cond_44
2497 const-string v3, "content"
2499 invoke-virtual {p1}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
2500 @@ -2281,26 +2271,26 @@
2502 if-eqz v3, :cond_e
2504 - :try_start_56
2505 + :try_start_50
2506 invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
2508 move-result-object v3
2510 invoke-interface {v3, p1}, Landroid/app/IActivityManager;->getProviderMimeType(Landroid/net/Uri;)Ljava/lang/String;
2511 - :try_end_5d
2512 - .catch Landroid/os/RemoteException; {:try_start_56 .. :try_end_5d} :catch_5f
2513 - .catch Ljava/lang/Exception; {:try_start_56 .. :try_end_5d} :catch_61
2514 + :try_end_57
2515 + .catch Landroid/os/RemoteException; {:try_start_50 .. :try_end_57} :catch_59
2516 + .catch Ljava/lang/Exception; {:try_start_50 .. :try_end_57} :catch_5b
2518 move-result-object v2
2520 goto :goto_e
2522 - :catch_5f
2523 + :catch_59
2524 move-exception v0
2526 goto :goto_e
2528 - :catch_61
2529 + :catch_5b
2530 move-exception v0
2532 const-string v3, "ContentResolver"
2533 @@ -2685,9 +2675,9 @@
2534 :try_start_a8
2535 invoke-interface {v9, p1, p2}, Landroid/content/IContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
2536 :try_end_ab
2537 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_ec
2538 - .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_d2
2539 - .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_f3
2540 + .catchall {:try_start_a8 .. :try_end_ab} :catchall_e8
2541 + .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_ce
2542 + .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_ef
2544 move-result-object v8
2546 @@ -2695,6 +2685,7 @@
2548 if-eqz v9, :cond_3b
2550 + :goto_b0
2551 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2553 goto :goto_3b
2554 @@ -2723,20 +2714,18 @@
2556 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2557 :try_end_cb
2558 - .catchall {:try_start_b4 .. :try_end_cb} :catchall_ec
2559 - .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_d2
2560 - .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_f3
2561 + .catchall {:try_start_b4 .. :try_end_cb} :catchall_e8
2562 + .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_ce
2563 + .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_ef
2565 if-eqz v9, :cond_3b
2567 - invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2569 - goto/16 :goto_3b
2570 + goto :goto_b0
2572 - :catch_d2
2573 + :catch_ce
2574 move-exception v6
2576 - :try_start_d3
2577 + :try_start_cf
2578 new-instance v0, Ljava/io/FileNotFoundException;
2580 new-instance v2, Ljava/lang/StringBuilder;
2581 @@ -2760,26 +2749,26 @@
2582 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2584 throw v0
2585 - :try_end_ec
2586 - .catchall {:try_start_d3 .. :try_end_ec} :catchall_ec
2587 + :try_end_e8
2588 + .catchall {:try_start_cf .. :try_end_e8} :catchall_e8
2590 - :catchall_ec
2591 + :catchall_e8
2592 move-exception v0
2594 - if-eqz v9, :cond_f2
2595 + if-eqz v9, :cond_ee
2597 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2599 - :cond_f2
2600 + :cond_ee
2601 throw v0
2603 - :catch_f3
2604 + :catch_ef
2605 move-exception v6
2607 - :try_start_f4
2608 + :try_start_f0
2609 throw v6
2610 - :try_end_f5
2611 - .catchall {:try_start_f4 .. :try_end_f5} :catchall_ec
2612 + :try_end_f1
2613 + .catchall {:try_start_f0 .. :try_end_f1} :catchall_e8
2614 .end method
2616 .method public final openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;
2617 @@ -3061,9 +3050,9 @@
2618 :try_start_1f
2619 invoke-interface {v8, p1, p2, p3}, Landroid/content/IContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor;
2620 :try_end_22
2621 - .catchall {:try_start_1f .. :try_end_22} :catchall_63
2622 - .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_49
2623 - .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_6a
2624 + .catchall {:try_start_1f .. :try_end_22} :catchall_60
2625 + .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_46
2626 + .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_67
2628 move-result-object v7
2630 @@ -3073,10 +3062,10 @@
2632 if-eqz v8, :cond_2b
2634 + :goto_28
2635 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2637 :cond_2b
2638 - :goto_2b
2639 return-object v0
2641 :cond_2c
2642 @@ -3103,20 +3092,18 @@
2644 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2645 :try_end_43
2646 - .catchall {:try_start_2c .. :try_end_43} :catchall_63
2647 - .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_49
2648 - .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_6a
2649 + .catchall {:try_start_2c .. :try_end_43} :catchall_60
2650 + .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_46
2651 + .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_67
2653 if-eqz v8, :cond_2b
2655 - invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2657 - goto :goto_2b
2658 + goto :goto_28
2660 - :catch_49
2661 + :catch_46
2662 move-exception v6
2664 - :try_start_4a
2665 + :try_start_47
2666 new-instance v0, Ljava/io/FileNotFoundException;
2668 new-instance v2, Ljava/lang/StringBuilder;
2669 @@ -3140,26 +3127,26 @@
2670 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2672 throw v0
2673 - :try_end_63
2674 - .catchall {:try_start_4a .. :try_end_63} :catchall_63
2675 + :try_end_60
2676 + .catchall {:try_start_47 .. :try_end_60} :catchall_60
2678 - :catchall_63
2679 + :catchall_60
2680 move-exception v0
2682 - if-eqz v8, :cond_69
2683 + if-eqz v8, :cond_66
2685 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2687 - :cond_69
2688 + :cond_66
2689 throw v0
2691 - :catch_6a
2692 + :catch_67
2693 move-exception v6
2695 - :try_start_6b
2696 + :try_start_68
2697 throw v6
2698 - :try_end_6c
2699 - .catchall {:try_start_6b .. :try_end_6c} :catchall_63
2700 + :try_end_69
2701 + .catchall {:try_start_68 .. :try_end_69} :catchall_60
2702 .end method
2704 .method public final query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
2705 @@ -3196,7 +3183,13 @@
2707 move-result-object v9
2709 - if-nez v9, :cond_1e
2710 + iget-object v1, p0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2712 + 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;
2714 + move-result-object v9
2716 + if-nez v9, :cond_24
2718 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2720 @@ -3204,7 +3197,7 @@
2722 goto :goto_7
2724 - :cond_1e
2725 + :cond_24
2726 invoke-interface {v9}, Landroid/database/Cursor;->getCount()I
2728 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2729 @@ -3228,13 +3221,13 @@
2730 new-instance v1, Landroid/content/ContentResolver$CursorWrapperInner;
2732 invoke-direct {v1, p0, v9, v0}, Landroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V
2733 - :try_end_35
2734 - .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_35} :catch_36
2735 - .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_35} :catch_3c
2736 + :try_end_3b
2737 + .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_3b} :catch_3c
2738 + .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_3b} :catch_42
2740 goto :goto_7
2742 - :catch_36
2743 + :catch_3c
2744 move-exception v8
2746 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2747 @@ -3243,7 +3236,7 @@
2749 goto :goto_7
2751 - :catch_3c
2752 + :catch_42
2753 move-exception v8
2755 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2756 @@ -3416,12 +3409,12 @@
2758 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2759 :try_end_36
2760 - .catchall {:try_start_1f .. :try_end_36} :catchall_40
2761 + .catchall {:try_start_1f .. :try_end_36} :catchall_3d
2762 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_36} :catch_3a
2764 + :goto_36
2765 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2767 - :goto_39
2768 return v8
2770 :catch_3a
2771 @@ -3429,11 +3422,9 @@
2773 const/4 v8, -0x1
2775 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2776 + goto :goto_36
2778 - goto :goto_39
2780 - :catchall_40
2781 + :catchall_3d
2782 move-exception v0
2784 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2785 diff -Npru stock-framework/smali/android/content/CursorLoader.smali pdroid-framework/smali/android/content/CursorLoader.smali
2786 --- stock-framework/smali/android/content/CursorLoader.smali 2012-05-06 11:56:49.930690321 -0500
2787 +++ pdroid-framework/smali/android/content/CursorLoader.smali 2012-05-06 12:13:38.259690362 -0500
2788 @@ -192,7 +192,7 @@
2790 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2792 - const-string v0, "mSortOrder="
2793 + const-string/jumbo v0, "mSortOrder="
2795 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2797 diff -Npru stock-framework/smali/android/content/Loader.smali pdroid-framework/smali/android/content/Loader.smali
2798 --- stock-framework/smali/android/content/Loader.smali 2012-05-06 11:56:49.878690066 -0500
2799 +++ pdroid-framework/smali/android/content/Loader.smali 2012-05-06 12:13:38.171689918 -0500
2800 @@ -156,7 +156,7 @@
2802 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2804 - const-string v0, "mStarted="
2805 + const-string/jumbo v0, "mStarted="
2807 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2809 diff -Npru stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali
2810 --- stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-05-06 11:56:49.986690592 -0500
2811 +++ pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-05-06 12:13:38.303690574 -0500
2812 @@ -139,7 +139,7 @@
2814 invoke-interface {v1, v2, v3}, Landroid/content/ISyncAdapter;->initialize(Landroid/accounts/Account;Ljava/lang/String;)V
2815 :try_end_43
2816 - .catchall {:try_start_2 .. :try_end_43} :catchall_80
2817 + .catchall {:try_start_2 .. :try_end_43} :catchall_7d
2818 .catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_43} :catch_4e
2820 :cond_43
2821 @@ -149,9 +149,9 @@
2823 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2825 + :goto_4a
2826 invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2828 - :goto_4d
2829 return-void
2831 :catch_4e
2832 @@ -194,7 +194,7 @@
2834 invoke-static {v1, v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2835 :try_end_75
2836 - .catchall {:try_start_4f .. :try_end_75} :catchall_80
2837 + .catchall {:try_start_4f .. :try_end_75} :catchall_7d
2839 iget-object v1, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2841 @@ -202,11 +202,9 @@
2843 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2845 - invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2847 - goto :goto_4d
2848 + goto :goto_4a
2850 - :catchall_80
2851 + :catchall_7d
2852 move-exception v1
2854 iget-object v2, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2855 diff -Npru stock-framework/smali/android/content/SyncStorageEngine.smali pdroid-framework/smali/android/content/SyncStorageEngine.smali
2856 --- stock-framework/smali/android/content/SyncStorageEngine.smali 2012-05-06 11:56:50.042690876 -0500
2857 +++ pdroid-framework/smali/android/content/SyncStorageEngine.smali 2012-05-06 12:13:38.363690870 -0500
2858 @@ -487,7 +487,7 @@
2859 :try_start_18
2860 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2861 :try_end_1b
2862 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_34
2863 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_2d
2865 :goto_1b
2866 return-void
2867 @@ -529,17 +529,12 @@
2868 :try_start_30
2869 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2870 :try_end_33
2871 - .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_36
2872 + .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34
2874 :goto_33
2875 throw v4
2877 :catch_34
2878 - move-exception v4
2880 - goto :goto_1b
2882 - :catch_36
2883 move-exception v5
2885 goto :goto_33
2886 @@ -1750,7 +1745,7 @@
2888 invoke-interface {v9, v14, v15}, Lorg/xmlpull/v1/XmlPullParser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
2889 :try_end_43
2890 - .catchall {:try_start_2 .. :try_end_43} :catchall_12c
2891 + .catchall {:try_start_2 .. :try_end_43} :catchall_12a
2892 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_2 .. :try_end_43} :catch_e6
2893 .catch Ljava/io/IOException; {:try_start_2 .. :try_end_43} :catch_104
2895 @@ -1774,8 +1769,8 @@
2897 iput v14, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2898 :try_end_53
2899 - .catchall {:try_start_47 .. :try_end_53} :catchall_12c
2900 - .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_148
2901 + .catchall {:try_start_47 .. :try_end_53} :catchall_12a
2902 + .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_146
2903 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_47 .. :try_end_53} :catch_e6
2904 .catch Ljava/io/IOException; {:try_start_47 .. :try_end_53} :catch_104
2906 @@ -1848,7 +1843,7 @@
2907 :goto_89
2908 invoke-interface {v9}, Lorg/xmlpull/v1/XmlPullParser;->next()I
2909 :try_end_8c
2910 - .catchall {:try_start_55 .. :try_end_8c} :catchall_12c
2911 + .catchall {:try_start_55 .. :try_end_8c} :catchall_12a
2912 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_55 .. :try_end_8c} :catch_e6
2913 .catch Ljava/io/IOException; {:try_start_55 .. :try_end_8c} :catch_104
2915 @@ -1892,7 +1887,7 @@
2916 :try_start_a7
2917 invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2918 :try_end_aa
2919 - .catchall {:try_start_a7 .. :try_end_aa} :catchall_12c
2920 + .catchall {:try_start_a7 .. :try_end_aa} :catchall_12a
2921 .catch Ljava/lang/NumberFormatException; {:try_start_a7 .. :try_end_aa} :catch_ac
2922 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_a7 .. :try_end_aa} :catch_e6
2923 .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_aa} :catch_104
2924 @@ -1912,8 +1907,8 @@
2925 :try_start_af
2926 invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2927 :try_end_b2
2928 - .catchall {:try_start_af .. :try_end_b2} :catchall_12c
2929 - .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_148
2930 + .catchall {:try_start_af .. :try_end_b2} :catchall_12a
2931 + .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_146
2932 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_af .. :try_end_b2} :catch_e6
2933 .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_104
2935 @@ -1977,7 +1972,7 @@
2937 invoke-direct {v0, v9, v10}, Landroid/content/SyncStorageEngine;->parseExtra(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/Pair;)V
2938 :try_end_e5
2939 - .catchall {:try_start_b6 .. :try_end_e5} :catchall_12c
2940 + .catchall {:try_start_b6 .. :try_end_e5} :catchall_12a
2941 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_b6 .. :try_end_e5} :catch_e6
2942 .catch Ljava/io/IOException; {:try_start_b6 .. :try_end_e5} :catch_104
2944 @@ -1993,7 +1988,7 @@
2946 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2947 :try_end_ee
2948 - .catchall {:try_start_e7 .. :try_end_ee} :catchall_12c
2949 + .catchall {:try_start_e7 .. :try_end_ee} :catchall_12a
2951 add-int/lit8 v14, v5, 0x1
2953 @@ -2026,7 +2021,7 @@
2954 :catch_104
2955 move-exception v2
2957 - if-nez v4, :cond_124
2958 + if-nez v4, :cond_122
2960 :try_start_107
2961 const-string v14, "SyncManager"
2962 @@ -2035,7 +2030,7 @@
2964 invoke-static {v14, v15}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2965 :try_end_10e
2966 - .catchall {:try_start_107 .. :try_end_10e} :catchall_12c
2967 + .catchall {:try_start_107 .. :try_end_10e} :catchall_12a
2969 :goto_10e
2970 add-int/lit8 v14, v5, 0x1
2971 @@ -2057,28 +2052,23 @@
2972 :try_start_11e
2973 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2974 :try_end_121
2975 - .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_122
2976 + .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_102
2978 goto :goto_a6
2980 - :catch_122
2981 - move-exception v14
2983 - goto :goto_a6
2985 - :cond_124
2986 - :try_start_124
2987 + :cond_122
2988 + :try_start_122
2989 const-string v14, "SyncManager"
2991 const-string v15, "Error reading accounts"
2993 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2994 - :try_end_12b
2995 - .catchall {:try_start_124 .. :try_end_12b} :catchall_12c
2996 + :try_end_129
2997 + .catchall {:try_start_122 .. :try_end_129} :catchall_12a
2999 goto :goto_10e
3001 - :catchall_12c
3002 + :catchall_12a
3003 move-exception v14
3005 add-int/lit8 v15, v5, 0x1
3006 @@ -2097,28 +2087,28 @@
3008 iput v15, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
3010 - if-eqz v4, :cond_142
3011 + if-eqz v4, :cond_140
3013 - :try_start_13f
3014 + :try_start_13d
3015 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
3016 - :try_end_142
3017 - .catch Ljava/io/IOException; {:try_start_13f .. :try_end_142} :catch_146
3018 + :try_end_140
3019 + .catch Ljava/io/IOException; {:try_start_13d .. :try_end_140} :catch_141
3021 - :cond_142
3022 - :goto_142
3023 + :cond_140
3024 + :goto_140
3025 throw v14
3027 + :catch_141
3028 + move-exception v15
3030 + goto :goto_140
3032 :catch_143
3033 move-exception v14
3035 goto/16 :goto_a3
3037 :catch_146
3038 - move-exception v15
3040 - goto :goto_142
3042 - :catch_148
3043 move-exception v14
3045 goto/16 :goto_53
3046 @@ -3473,14 +3463,14 @@
3048 invoke-virtual {v2}, Landroid/os/Parcel;->readBundle()Landroid/os/Bundle;
3049 :try_end_10
3050 - .catchall {:try_start_5 .. :try_end_10} :catchall_1f
3051 + .catchall {:try_start_5 .. :try_end_10} :catchall_1c
3052 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_10} :catch_15
3054 move-result-object v0
3056 + :goto_11
3057 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3059 - :goto_14
3060 return-object v0
3062 :catch_15
3063 @@ -3491,13 +3481,11 @@
3065 invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
3066 :try_end_1b
3067 - .catchall {:try_start_16 .. :try_end_1b} :catchall_1f
3069 - invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3070 + .catchall {:try_start_16 .. :try_end_1b} :catchall_1c
3072 - goto :goto_14
3073 + goto :goto_11
3075 - :catchall_1f
3076 + :catchall_1c
3077 move-exception v3
3079 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3080 diff -Npru stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali
3081 --- stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-05-06 11:56:50.158691462 -0500
3082 +++ pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-05-06 12:13:38.491691509 -0500
3083 @@ -105,13 +105,13 @@
3085 invoke-interface {v1}, Landroid/database/IBulkCursor;->close()V
3086 :try_end_d
3087 - .catchall {:try_start_8 .. :try_end_d} :catchall_1b
3088 + .catchall {:try_start_8 .. :try_end_d} :catchall_19
3089 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_d} :catch_10
3091 + :goto_d
3092 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3094 :cond_f
3095 - :goto_f
3096 return-void
3098 :catch_10
3099 @@ -124,13 +124,11 @@
3101 invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
3102 :try_end_18
3103 - .catchall {:try_start_11 .. :try_end_18} :catchall_1b
3104 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
3106 - iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3108 - goto :goto_f
3109 + goto :goto_d
3111 - :catchall_1b
3112 + :catchall_19
3113 move-exception v1
3115 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3116 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteClosable.smali pdroid-framework/smali/android/database/sqlite/SQLiteClosable.smali
3117 --- stock-framework/smali/android/database/sqlite/SQLiteClosable.smali 2012-05-06 11:56:50.166691491 -0500
3118 +++ pdroid-framework/smali/android/database/sqlite/SQLiteClosable.smali 2012-05-06 12:13:38.499691552 -0500
3119 @@ -72,9 +72,9 @@
3120 :cond_31
3121 instance-of v1, p0, Landroid/database/sqlite/SQLiteProgram;
3123 - if-eqz v1, :cond_42
3124 + if-eqz v1, :cond_43
3126 - const-string v1, "mSql = "
3127 + const-string/jumbo v1, "mSql = "
3129 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3131 @@ -86,12 +86,12 @@
3133 goto :goto_27
3135 - :cond_42
3136 + :cond_43
3137 instance-of v1, p0, Landroid/database/CursorWindow;
3139 if-eqz v1, :cond_27
3141 - const-string v1, "mStartPos = "
3142 + const-string/jumbo v1, "mStartPos = "
3144 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3146 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteCursor.smali pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali
3147 --- stock-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-05-06 11:56:50.186691591 -0500
3148 +++ pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-05-06 12:13:38.527691682 -0500
3149 @@ -116,7 +116,7 @@
3150 const/4 v2, 0x0
3152 :goto_4a
3153 - if-ge v2, v0, :cond_66
3154 + if-ge v2, v0, :cond_6d
3156 iget-object v3, p0, Landroid/database/sqlite/SQLiteCursor;->mQuery:Landroid/database/sqlite/SQLiteQuery;
3158 @@ -138,7 +138,7 @@
3160 iput v2, p0, Landroid/database/sqlite/SQLiteCursor;->mRowIdColumnIndex:I
3161 :try_end_60
3162 - .catchall {:try_start_3f .. :try_end_60} :catchall_6c
3163 + .catchall {:try_start_3f .. :try_end_60} :catchall_66
3165 :cond_60
3166 add-int/lit8 v2, v2, 0x1
3167 @@ -150,14 +150,7 @@
3169 goto :goto_30
3171 - :cond_66
3172 - iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3174 - invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3176 - return-void
3178 - :catchall_6c
3179 + :catchall_66
3180 move-exception v3
3182 iget-object v4, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3183 @@ -165,6 +158,13 @@
3184 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3186 throw v3
3188 + :cond_6d
3189 + iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3191 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3193 + return-void
3194 .end method
3196 .method public constructor <init>(Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
3197 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali
3198 --- stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-05-06 11:56:50.222691768 -0500
3199 +++ pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-05-06 12:13:38.539691747 -0500
3200 @@ -459,19 +459,19 @@
3202 if-nez v2, :cond_32
3204 + :goto_2f
3205 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3207 :cond_32
3208 - :goto_32
3209 return-void
3211 :cond_33
3212 - if-eqz p2, :cond_58
3213 + if-eqz p2, :cond_55
3215 :try_start_35
3216 iget-object v3, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3218 - if-nez v3, :cond_58
3219 + if-nez v3, :cond_55
3221 const-string v3, "BEGIN EXCLUSIVE;"
3223 @@ -502,26 +502,24 @@
3224 invoke-interface {p1}, Landroid/database/sqlite/SQLiteTransactionListener;->onBegin()V
3225 :try_end_51
3226 .catchall {:try_start_4e .. :try_end_51} :catchall_25
3227 - .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5e
3228 + .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5b
3230 :cond_51
3231 const/4 v2, 0x1
3233 if-nez v2, :cond_32
3235 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3237 - goto :goto_32
3238 + goto :goto_2f
3240 - :cond_58
3241 - :try_start_58
3242 + :cond_55
3243 + :try_start_55
3244 const-string v3, "BEGIN IMMEDIATE;"
3246 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3248 goto :goto_3e
3250 - :catch_5e
3251 + :catch_5b
3252 move-exception v0
3254 const-string v3, "ROLLBACK;"
3255 @@ -529,8 +527,8 @@
3256 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3258 throw v0
3259 - :try_end_65
3260 - .catchall {:try_start_58 .. :try_end_65} :catchall_25
3261 + :try_end_62
3262 + .catchall {:try_start_55 .. :try_end_62} :catchall_25
3263 .end method
3265 .method private checkLockHoldTime()V
3266 @@ -2993,6 +2991,8 @@
3268 if-nez v0, :cond_43
3270 + :cond_3f
3271 + :goto_3f
3272 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3274 goto :goto_7
3275 @@ -3009,7 +3009,7 @@
3277 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3279 - if-eqz v0, :cond_7f
3280 + if-eqz v0, :cond_3f
3282 const-string v0, "SQLiteDatabase"
3284 @@ -3063,10 +3063,7 @@
3285 :try_end_7f
3286 .catchall {:try_start_6f .. :try_end_7f} :catchall_6a
3288 - :cond_7f
3289 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3291 - goto :goto_7
3292 + goto :goto_3f
3293 .end method
3295 .method closeDatabase()V
3296 @@ -3507,13 +3504,13 @@
3297 :try_start_3
3298 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3299 :try_end_5
3300 - .catchall {:try_start_3 .. :try_end_5} :catchall_1e
3301 + .catchall {:try_start_3 .. :try_end_5} :catchall_1b
3303 if-nez v0, :cond_b
3305 + :goto_7
3306 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3308 - :goto_a
3309 return-void
3311 :cond_b
3312 @@ -3532,13 +3529,11 @@
3314 iput-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3315 :try_end_1a
3316 - .catchall {:try_start_b .. :try_end_1a} :catchall_1e
3318 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3319 + .catchall {:try_start_b .. :try_end_1a} :catchall_1b
3321 - goto :goto_a
3322 + goto :goto_7
3324 - :catchall_1e
3325 + :catchall_1b
3326 move-exception v0
3328 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3329 @@ -3568,7 +3563,7 @@
3330 :try_start_c
3331 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3332 :try_end_e
3333 - .catchall {:try_start_c .. :try_end_e} :catchall_6f
3334 + .catchall {:try_start_c .. :try_end_e} :catchall_59
3336 if-eqz v2, :cond_15
3338 @@ -3596,8 +3591,10 @@
3340 invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
3341 :try_end_26
3342 - .catchall {:try_start_15 .. :try_end_26} :catchall_6f
3343 + .catchall {:try_start_15 .. :try_end_26} :catchall_59
3345 + :cond_26
3346 + :goto_26
3347 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3349 goto :goto_8
3350 @@ -3606,7 +3603,7 @@
3351 :try_start_2a
3352 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mHasAttachedDbs:Z
3354 - if-eqz v2, :cond_5c
3355 + if-eqz v2, :cond_5e
3357 const-string v1, "SQLiteDatabase"
3359 @@ -3616,7 +3613,7 @@
3361 move-result v1
3363 - if-eqz v1, :cond_58
3364 + if-eqz v1, :cond_26
3366 const-string v1, "SQLiteDatabase"
3368 @@ -3648,15 +3645,19 @@
3370 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
3371 :try_end_58
3372 - .catchall {:try_start_2a .. :try_end_58} :catchall_6f
3373 + .catchall {:try_start_2a .. :try_end_58} :catchall_59
3375 + goto :goto_26
3377 + :catchall_59
3378 + move-exception v0
3380 - :cond_58
3381 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3383 - goto :goto_8
3384 + throw v0
3386 - :cond_5c
3387 - :try_start_5c
3388 + :cond_5e
3389 + :try_start_5e
3390 new-instance v0, Landroid/database/sqlite/DatabaseConnectionPool;
3392 invoke-direct {v0, p0}, Landroid/database/sqlite/DatabaseConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V
3393 @@ -3668,21 +3669,14 @@
3394 const-string v2, "WAL"
3396 invoke-direct {p0, v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->setJournalMode(Ljava/lang/String;Ljava/lang/String;)V
3397 - :try_end_6a
3398 - .catchall {:try_start_5c .. :try_end_6a} :catchall_6f
3399 + :try_end_6c
3400 + .catchall {:try_start_5e .. :try_end_6c} :catchall_59
3402 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3404 move v0, v1
3406 goto :goto_8
3408 - :catchall_6f
3409 - move-exception v0
3411 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3413 - throw v0
3414 .end method
3416 .method public endTransaction()V
3417 @@ -3716,9 +3710,9 @@
3419 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3421 + :goto_16
3422 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3424 - :goto_19
3425 return-void
3427 :cond_1a
3428 @@ -3753,21 +3747,21 @@
3429 :try_start_2a
3430 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3432 - if-eqz v2, :cond_56
3433 + if-eqz v2, :cond_53
3435 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3437 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onCommit()V
3438 :try_end_33
3439 .catchall {:try_start_2a .. :try_end_33} :catchall_1e
3440 - .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_5c
3441 + .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_59
3443 :cond_33
3444 :goto_33
3445 :try_start_33
3446 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3448 - if-eqz v2, :cond_62
3449 + if-eqz v2, :cond_5f
3451 const-string v2, "COMMIT;"
3453 @@ -3797,37 +3791,35 @@
3454 :goto_50
3455 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3457 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3459 - goto :goto_19
3460 + goto :goto_16
3462 - :cond_56
3463 - :try_start_56
3464 + :cond_53
3465 + :try_start_53
3466 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3468 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onRollback()V
3469 - :try_end_5b
3470 - .catchall {:try_start_56 .. :try_end_5b} :catchall_1e
3471 - .catch Ljava/lang/RuntimeException; {:try_start_56 .. :try_end_5b} :catch_5c
3472 + :try_end_58
3473 + .catchall {:try_start_53 .. :try_end_58} :catchall_1e
3474 + .catch Ljava/lang/RuntimeException; {:try_start_53 .. :try_end_58} :catch_59
3476 goto :goto_33
3478 - :catch_5c
3479 + :catch_59
3480 move-exception v0
3482 move-object v1, v0
3484 const/4 v2, 0x0
3486 - :try_start_5f
3487 + :try_start_5c
3488 iput-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3489 - :try_end_61
3490 - .catchall {:try_start_5f .. :try_end_61} :catchall_1e
3491 + :try_end_5e
3492 + .catchall {:try_start_5c .. :try_end_5e} :catchall_1e
3494 goto :goto_33
3496 - :cond_62
3497 - :try_start_62
3498 + :cond_5f
3499 + :try_start_5f
3500 const-string v2, "ROLLBACK;"
3502 invoke-virtual {p0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3503 @@ -3835,11 +3827,11 @@
3504 if-eqz v1, :cond_50
3506 throw v1
3507 - :try_end_6a
3508 - .catchall {:try_start_62 .. :try_end_6a} :catchall_1e
3509 - .catch Landroid/database/SQLException; {:try_start_62 .. :try_end_6a} :catch_6a
3510 + :try_end_67
3511 + .catchall {:try_start_5f .. :try_end_67} :catchall_1e
3512 + .catch Landroid/database/SQLException; {:try_start_5f .. :try_end_67} :catch_67
3514 - :catch_6a
3515 + :catch_67
3516 move-exception v2
3518 goto :goto_50
3519 @@ -4806,7 +4798,7 @@
3521 move-result v6
3523 - if-nez v6, :cond_af
3524 + if-nez v6, :cond_b6
3526 const-string v7, "SQLiteDatabase"
3528 @@ -4844,7 +4836,7 @@
3530 invoke-static {v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3531 :try_end_a8
3532 - .catchall {:try_start_54 .. :try_end_a8} :catchall_b7
3533 + .catchall {:try_start_54 .. :try_end_a8} :catchall_af
3535 const/4 v6, 0x0
3537 @@ -4856,25 +4848,25 @@
3538 :goto_ae
3539 return v6
3541 - :cond_af
3542 - if-eqz v4, :cond_b4
3543 + :catchall_af
3544 + move-exception v6
3546 - invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3547 + if-eqz v4, :cond_b5
3549 - :cond_b4
3550 - add-int/lit8 v2, v2, 0x1
3552 - goto :goto_47
3553 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3555 - :catchall_b7
3556 - move-exception v6
3557 + :cond_b5
3558 + throw v6
3560 - if-eqz v4, :cond_bd
3561 + :cond_b6
3562 + if-eqz v4, :cond_bb
3564 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3566 - :cond_bd
3567 - throw v6
3568 + :cond_bb
3569 + add-int/lit8 v2, v2, 0x1
3571 + goto :goto_47
3573 :cond_be
3574 const/4 v6, 0x1
3575 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteStatement.smali pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali
3576 --- stock-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-05-06 11:56:50.238691851 -0500
3577 +++ pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-05-06 12:13:38.547691790 -0500
3578 @@ -417,13 +417,13 @@
3580 invoke-virtual {v5, v6, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->logTimeStat(Ljava/lang/String;J)V
3581 :try_end_10
3582 - .catchall {:try_start_1 .. :try_end_10} :catchall_3e
3583 + .catchall {:try_start_1 .. :try_end_10} :catchall_3b
3584 .catch Ljava/io/IOException; {:try_start_1 .. :try_end_10} :catch_14
3585 - .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_22
3586 + .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_1f
3588 + :goto_10
3589 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3591 - :goto_13
3592 return-object v2
3594 :catch_14
3595 @@ -435,19 +435,14 @@
3596 const-string/jumbo v6, "simpleQueryForBlobFileDescriptor() failed"
3598 invoke-static {v5, v6, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3599 - :try_end_1d
3600 - .catchall {:try_start_15 .. :try_end_1d} :catchall_3e
3602 const/4 v2, 0x0
3604 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3606 - goto :goto_13
3607 + goto :goto_10
3609 - :catch_22
3610 + :catch_1f
3611 move-exception v0
3613 - :try_start_23
3614 new-instance v5, Landroid/database/sqlite/SQLiteDoneException;
3616 new-instance v6, Ljava/lang/StringBuilder;
3617 @@ -473,10 +468,10 @@
3618 invoke-direct {v5, v6}, Landroid/database/sqlite/SQLiteDoneException;-><init>(Ljava/lang/String;)V
3620 throw v5
3621 - :try_end_3e
3622 - .catchall {:try_start_23 .. :try_end_3e} :catchall_3e
3623 + :try_end_3b
3624 + .catchall {:try_start_15 .. :try_end_3b} :catchall_3b
3626 - :catchall_3e
3627 + :catchall_3b
3628 move-exception v5
3630 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3631 diff -Npru stock-framework/smali/android/media/MediaPlayer.smali pdroid-framework/smali/android/media/MediaPlayer.smali
3632 --- stock-framework/smali/android/media/MediaPlayer.smali 2012-05-06 11:56:51.058695910 -0500
3633 +++ pdroid-framework/smali/android/media/MediaPlayer.smali 2012-05-06 12:13:39.127694657 -0500
3634 @@ -985,9 +985,9 @@
3636 invoke-virtual {v7, p2, v0}, Landroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
3637 :try_end_21
3638 - .catchall {:try_start_17 .. :try_end_21} :catchall_6e
3639 - .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_52
3640 - .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_67
3641 + .catchall {:try_start_17 .. :try_end_21} :catchall_64
3642 + .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_4f
3643 + .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_6b
3645 move-result-object v6
3647 @@ -995,6 +995,7 @@
3649 if-eqz v6, :cond_15
3651 + :goto_26
3652 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3654 goto :goto_15
3655 @@ -1009,27 +1010,20 @@
3657 cmp-long v0, v0, v2
3659 - if-gez v0, :cond_41
3660 + if-gez v0, :cond_3e
3662 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3664 move-result-object v0
3666 invoke-virtual {p0, v0}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V
3667 - :try_end_3b
3668 - .catchall {:try_start_2a .. :try_end_3b} :catchall_6e
3669 - .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_3b} :catch_52
3670 - .catch Ljava/io/IOException; {:try_start_2a .. :try_end_3b} :catch_67
3672 :goto_3b
3673 if-eqz v6, :cond_15
3675 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3677 - goto :goto_15
3678 + goto :goto_26
3680 - :cond_41
3681 - :try_start_41
3682 + :cond_3e
3683 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3685 move-result-object v1
3686 @@ -1045,22 +1039,22 @@
3687 move-object v0, p0
3689 invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V
3690 - :try_end_51
3691 - .catchall {:try_start_41 .. :try_end_51} :catchall_6e
3692 - .catch Ljava/lang/SecurityException; {:try_start_41 .. :try_end_51} :catch_52
3693 - .catch Ljava/io/IOException; {:try_start_41 .. :try_end_51} :catch_67
3694 + :try_end_4e
3695 + .catchall {:try_start_2a .. :try_end_4e} :catchall_64
3696 + .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_4e} :catch_4f
3697 + .catch Ljava/io/IOException; {:try_start_2a .. :try_end_4e} :catch_6b
3699 goto :goto_3b
3701 - :catch_52
3702 + :catch_4f
3703 move-exception v0
3705 - if-eqz v6, :cond_58
3706 + if-eqz v6, :cond_55
3708 + :goto_52
3709 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3711 - :cond_58
3712 - :goto_58
3713 + :cond_55
3714 const-string v0, "MediaPlayer"
3716 const-string v1, "Couldn\'t open file on client side, trying server side"
3717 @@ -1075,24 +1069,22 @@
3719 goto :goto_15
3721 - :catch_67
3722 + :catchall_64
3723 move-exception v0
3725 - if-eqz v6, :cond_58
3726 + if-eqz v6, :cond_6a
3728 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3730 - goto :goto_58
3731 + :cond_6a
3732 + throw v0
3734 - :catchall_6e
3735 + :catch_6b
3736 move-exception v0
3738 - if-eqz v6, :cond_74
3739 + if-eqz v6, :cond_55
3741 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3743 - :cond_74
3744 - throw v0
3745 + goto :goto_52
3746 .end method
3748 .method public setDataSource(Ljava/io/FileDescriptor;)V
3749 diff -Npru stock-framework/smali/android/net/VpnService.smali pdroid-framework/smali/android/net/VpnService.smali
3750 --- stock-framework/smali/android/net/VpnService.smali 2012-05-06 11:56:51.246696841 -0500
3751 +++ pdroid-framework/smali/android/net/VpnService.smali 2012-05-06 12:13:39.331695674 -0500
3752 @@ -155,8 +155,6 @@
3754 :try_start_d
3755 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3756 - :try_end_10
3757 - .catch Ljava/lang/Exception; {:try_start_d .. :try_end_10} :catch_1e
3759 :goto_10
3760 return v2
3761 @@ -166,10 +164,9 @@
3763 const/4 v2, 0x0
3765 - :try_start_13
3766 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3767 :try_end_16
3768 - .catch Ljava/lang/Exception; {:try_start_13 .. :try_end_16} :catch_17
3769 + .catch Ljava/lang/Exception; {:try_start_d .. :try_end_16} :catch_17
3771 goto :goto_10
3773 @@ -184,7 +181,7 @@
3774 :try_start_1a
3775 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3776 :try_end_1d
3777 - .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_20
3778 + .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_1e
3780 :goto_1d
3781 throw v2
3782 @@ -192,11 +189,6 @@
3783 :catch_1e
3784 move-exception v3
3786 - goto :goto_10
3788 - :catch_20
3789 - move-exception v3
3791 goto :goto_1d
3792 .end method
3794 diff -Npru stock-framework/smali/android/net/wifi/WifiConfigStore.smali pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali
3795 --- stock-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-05-06 11:56:51.334697290 -0500
3796 +++ pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-05-06 12:13:39.415696085 -0500
3797 @@ -2786,9 +2786,9 @@
3799 invoke-direct {v9, v0}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
3800 :try_end_14
3801 - .catchall {:try_start_1 .. :try_end_14} :catchall_23d
3802 - .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_243
3803 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_240
3804 + .catchall {:try_start_1 .. :try_end_14} :catchall_23a
3805 + .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_240
3806 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_23d
3808 :try_start_14
3809 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3810 @@ -2815,7 +2815,7 @@
3812 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3813 :try_end_2d
3814 - .catchall {:try_start_14 .. :try_end_2d} :catchall_17e
3815 + .catchall {:try_start_14 .. :try_end_2d} :catchall_17b
3816 .catch Ljava/io/EOFException; {:try_start_14 .. :try_end_2d} :catch_d5
3817 .catch Ljava/io/IOException; {:try_start_14 .. :try_end_2d} :catch_10b
3819 @@ -2842,27 +2842,27 @@
3821 invoke-virtual {v11, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
3822 :try_end_3b
3823 - .catchall {:try_start_34 .. :try_end_3b} :catchall_17e
3824 + .catchall {:try_start_34 .. :try_end_3b} :catchall_17b
3825 .catch Ljava/lang/IllegalArgumentException; {:try_start_34 .. :try_end_3b} :catch_bb
3826 .catch Ljava/io/EOFException; {:try_start_34 .. :try_end_3b} :catch_d5
3827 .catch Ljava/io/IOException; {:try_start_34 .. :try_end_3b} :catch_10b
3829 move-result v19
3831 - if-eqz v19, :cond_1cd
3832 + if-eqz v19, :cond_1ca
3834 const/16 v19, -0x1
3836 move/from16 v0, v19
3838 - if-eq v7, v0, :cond_230
3839 + if-eq v7, v0, :cond_22d
3841 :try_start_44
3842 sget-object v20, Landroid/net/wifi/WifiConfigStore;->sConfiguredNetworks:Ljava/util/HashMap;
3844 monitor-enter v20
3845 :try_end_47
3846 - .catchall {:try_start_44 .. :try_end_47} :catchall_17e
3847 + .catchall {:try_start_44 .. :try_end_47} :catchall_17b
3848 .catch Ljava/io/EOFException; {:try_start_44 .. :try_end_47} :catch_d5
3849 .catch Ljava/io/IOException; {:try_start_44 .. :try_end_47} :catch_10b
3851 @@ -2889,7 +2889,7 @@
3853 check-cast v2, Landroid/net/wifi/WifiConfiguration;
3855 - if-nez v2, :cond_1ee
3856 + if-nez v2, :cond_1eb
3858 const-string v19, "configuration found for missing network, ignored"
3860 @@ -2899,7 +2899,7 @@
3861 :pswitch_64
3862 monitor-exit v20
3863 :try_end_65
3864 - .catchall {:try_start_47 .. :try_end_65} :catchall_212
3865 + .catchall {:try_start_47 .. :try_end_65} :catchall_20f
3867 :cond_65
3868 :goto_65
3869 @@ -2923,7 +2923,7 @@
3870 :goto_72
3871 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3872 :try_end_75
3873 - .catchall {:try_start_66 .. :try_end_75} :catchall_17e
3874 + .catchall {:try_start_66 .. :try_end_75} :catchall_17b
3875 .catch Ljava/io/EOFException; {:try_start_66 .. :try_end_75} :catch_d5
3876 .catch Ljava/io/IOException; {:try_start_66 .. :try_end_75} :catch_10b
3878 @@ -3000,7 +3000,7 @@
3880 invoke-virtual {v13, v12}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)V
3881 :try_end_ba
3882 - .catchall {:try_start_76 .. :try_end_ba} :catchall_17e
3883 + .catchall {:try_start_76 .. :try_end_ba} :catchall_17b
3884 .catch Ljava/lang/IllegalArgumentException; {:try_start_76 .. :try_end_ba} :catch_bb
3885 .catch Ljava/io/EOFException; {:try_start_76 .. :try_end_ba} :catch_d5
3886 .catch Ljava/io/IOException; {:try_start_76 .. :try_end_ba} :catch_10b
3887 @@ -3033,7 +3033,7 @@
3889 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3890 :try_end_d4
3891 - .catchall {:try_start_bc .. :try_end_d4} :catchall_17e
3892 + .catchall {:try_start_bc .. :try_end_d4} :catchall_17b
3893 .catch Ljava/io/EOFException; {:try_start_bc .. :try_end_d4} :catch_d5
3894 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_d4} :catch_10b
3896 @@ -3069,7 +3069,7 @@
3898 move-result v19
3900 - if-eqz v19, :cond_165
3901 + if-eqz v19, :cond_162
3903 const/4 v3, 0x0
3905 @@ -3081,7 +3081,7 @@
3907 move/from16 v1, v19
3909 - if-ne v0, v1, :cond_12f
3910 + if-ne v0, v1, :cond_12c
3912 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3914 @@ -3103,7 +3103,7 @@
3916 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)V
3917 :try_end_109
3918 - .catchall {:try_start_e1 .. :try_end_109} :catchall_17e
3919 + .catchall {:try_start_e1 .. :try_end_109} :catchall_17b
3920 .catch Ljava/lang/IllegalArgumentException; {:try_start_e1 .. :try_end_109} :catch_bb
3921 .catch Ljava/io/EOFException; {:try_start_e1 .. :try_end_109} :catch_d5
3922 .catch Ljava/io/IOException; {:try_start_e1 .. :try_end_109} :catch_10b
3923 @@ -3139,24 +3139,19 @@
3925 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3926 :try_end_125
3927 - .catchall {:try_start_10d .. :try_end_125} :catchall_23d
3928 + .catchall {:try_start_10d .. :try_end_125} :catchall_23a
3930 if-eqz v8, :cond_33
3932 :try_start_127
3933 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
3934 :try_end_12a
3935 - .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_12c
3936 + .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_de
3938 goto/16 :goto_33
3940 - :catch_12c
3941 - move-exception v19
3943 - goto/16 :goto_33
3945 - :cond_12f
3946 - :try_start_12f
3947 + :cond_12c
3948 + :try_start_12c
3949 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3951 move-result v19
3952 @@ -3167,7 +3162,7 @@
3954 move/from16 v1, v20
3956 - if-ne v0, v1, :cond_150
3957 + if-ne v0, v1, :cond_14d
3959 new-instance v3, Landroid/net/LinkAddress;
3961 @@ -3189,7 +3184,7 @@
3963 invoke-direct {v3, v0, v1}, Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
3965 - :cond_150
3966 + :cond_14d
3967 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3969 move-result v19
3970 @@ -3212,7 +3207,7 @@
3972 goto :goto_fd
3974 - :cond_165
3975 + :cond_162
3976 const-string v19, "dns"
3978 move-object/from16 v0, v19
3979 @@ -3221,7 +3216,7 @@
3981 move-result v19
3983 - if-eqz v19, :cond_186
3984 + if-eqz v19, :cond_183
3986 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3988 @@ -3234,33 +3229,33 @@
3989 move-object/from16 v0, v19
3991 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addDns(Ljava/net/InetAddress;)V
3992 - :try_end_17c
3993 - .catchall {:try_start_12f .. :try_end_17c} :catchall_17e
3994 - .catch Ljava/lang/IllegalArgumentException; {:try_start_12f .. :try_end_17c} :catch_bb
3995 - .catch Ljava/io/EOFException; {:try_start_12f .. :try_end_17c} :catch_d5
3996 - .catch Ljava/io/IOException; {:try_start_12f .. :try_end_17c} :catch_10b
3997 + :try_end_179
3998 + .catchall {:try_start_12c .. :try_end_179} :catchall_17b
3999 + .catch Ljava/lang/IllegalArgumentException; {:try_start_12c .. :try_end_179} :catch_bb
4000 + .catch Ljava/io/EOFException; {:try_start_12c .. :try_end_179} :catch_d5
4001 + .catch Ljava/io/IOException; {:try_start_12c .. :try_end_179} :catch_10b
4003 goto/16 :goto_72
4005 - :catchall_17e
4006 + :catchall_17b
4007 move-exception v19
4009 move-object v8, v9
4011 - :goto_180
4012 - if-eqz v8, :cond_185
4013 + :goto_17d
4014 + if-eqz v8, :cond_182
4016 - :try_start_182
4017 + :try_start_17f
4018 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
4019 - :try_end_185
4020 - .catch Ljava/lang/Exception; {:try_start_182 .. :try_end_185} :catch_23a
4021 + :try_end_182
4022 + .catch Ljava/lang/Exception; {:try_start_17f .. :try_end_182} :catch_234
4024 - :cond_185
4025 - :goto_185
4026 + :cond_182
4027 + :goto_182
4028 throw v19
4030 - :cond_186
4031 - :try_start_186
4032 + :cond_183
4033 + :try_start_183
4034 const-string/jumbo v19, "proxySettings"
4036 move-object/from16 v0, v19
4037 @@ -3269,7 +3264,7 @@
4039 move-result v19
4041 - if-eqz v19, :cond_19b
4042 + if-eqz v19, :cond_198
4044 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4046 @@ -3281,7 +3276,7 @@
4048 goto/16 :goto_72
4050 - :cond_19b
4051 + :cond_198
4052 const-string/jumbo v19, "proxyHost"
4054 move-object/from16 v0, v19
4055 @@ -3290,7 +3285,7 @@
4057 move-result v19
4059 - if-eqz v19, :cond_1ac
4060 + if-eqz v19, :cond_1a9
4062 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4064 @@ -3298,7 +3293,7 @@
4066 goto/16 :goto_72
4068 - :cond_1ac
4069 + :cond_1a9
4070 const-string/jumbo v19, "proxyPort"
4072 move-object/from16 v0, v19
4073 @@ -3307,7 +3302,7 @@
4075 move-result v19
4077 - if-eqz v19, :cond_1bd
4078 + if-eqz v19, :cond_1ba
4080 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4082 @@ -3315,7 +3310,7 @@
4084 goto/16 :goto_72
4086 - :cond_1bd
4087 + :cond_1ba
4088 const-string v19, "exclusionList"
4090 move-object/from16 v0, v19
4091 @@ -3332,7 +3327,7 @@
4093 goto/16 :goto_72
4095 - :cond_1cd
4096 + :cond_1ca
4097 new-instance v19, Ljava/lang/StringBuilder;
4099 invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
4100 @@ -3360,16 +3355,16 @@
4101 move-result-object v19
4103 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4104 - :try_end_1ec
4105 - .catchall {:try_start_186 .. :try_end_1ec} :catchall_17e
4106 - .catch Ljava/lang/IllegalArgumentException; {:try_start_186 .. :try_end_1ec} :catch_bb
4107 - .catch Ljava/io/EOFException; {:try_start_186 .. :try_end_1ec} :catch_d5
4108 - .catch Ljava/io/IOException; {:try_start_186 .. :try_end_1ec} :catch_10b
4109 + :try_end_1e9
4110 + .catchall {:try_start_183 .. :try_end_1e9} :catchall_17b
4111 + .catch Ljava/lang/IllegalArgumentException; {:try_start_183 .. :try_end_1e9} :catch_bb
4112 + .catch Ljava/io/EOFException; {:try_start_183 .. :try_end_1e9} :catch_d5
4113 + .catch Ljava/io/IOException; {:try_start_183 .. :try_end_1e9} :catch_10b
4115 goto/16 :goto_72
4117 - :cond_1ee
4118 - :try_start_1ee
4119 + :cond_1eb
4120 + :try_start_1eb
4121 iput-object v13, v2, Landroid/net/wifi/WifiConfiguration;->linkProperties:Landroid/net/LinkProperties;
4123 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$IpAssignment:[I
4124 @@ -3380,14 +3375,14 @@
4126 aget v19, v19, v21
4128 - packed-switch v19, :pswitch_data_246
4129 + packed-switch v19, :pswitch_data_244
4131 const-string v19, "Ignore invalid ip assignment while reading"
4133 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4135 - :goto_200
4136 - :pswitch_200
4137 + :goto_1fd
4138 + :pswitch_1fd
4139 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$ProxySettings:[I
4141 invoke-virtual/range {v17 .. v17}, Landroid/net/wifi/WifiConfiguration$ProxySettings;->ordinal()I
4142 @@ -3396,7 +3391,7 @@
4144 aget v19, v19, v21
4146 - packed-switch v19, :pswitch_data_250
4147 + packed-switch v19, :pswitch_data_24e
4149 const-string v19, "Ignore invalid proxy settings while reading"
4151 @@ -3404,27 +3399,27 @@
4153 goto/16 :goto_64
4155 - :catchall_212
4156 + :catchall_20f
4157 move-exception v19
4159 monitor-exit v20
4160 - :try_end_214
4161 - .catchall {:try_start_1ee .. :try_end_214} :catchall_212
4162 + :try_end_211
4163 + .catchall {:try_start_1eb .. :try_end_211} :catchall_20f
4165 - :try_start_214
4166 + :try_start_211
4167 throw v19
4168 - :try_end_215
4169 - .catchall {:try_start_214 .. :try_end_215} :catchall_17e
4170 - .catch Ljava/io/EOFException; {:try_start_214 .. :try_end_215} :catch_d5
4171 - .catch Ljava/io/IOException; {:try_start_214 .. :try_end_215} :catch_10b
4172 + :try_end_212
4173 + .catchall {:try_start_211 .. :try_end_212} :catchall_17b
4174 + .catch Ljava/io/EOFException; {:try_start_211 .. :try_end_212} :catch_d5
4175 + .catch Ljava/io/IOException; {:try_start_211 .. :try_end_212} :catch_10b
4177 - :pswitch_215
4178 - :try_start_215
4179 + :pswitch_212
4180 + :try_start_212
4181 iput-object v10, v2, Landroid/net/wifi/WifiConfiguration;->ipAssignment:Landroid/net/wifi/WifiConfiguration$IpAssignment;
4183 - goto :goto_200
4184 + goto :goto_1fd
4186 - :pswitch_218
4187 + :pswitch_215
4188 move-object/from16 v0, v17
4190 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4191 @@ -3441,63 +3436,65 @@
4193 goto/16 :goto_64
4195 - :pswitch_22a
4196 + :pswitch_227
4197 move-object/from16 v0, v17
4199 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4200 - :try_end_22e
4201 - .catchall {:try_start_215 .. :try_end_22e} :catchall_212
4202 + :try_end_22b
4203 + .catchall {:try_start_212 .. :try_end_22b} :catchall_20f
4205 goto/16 :goto_64
4207 - :cond_230
4208 - :try_start_230
4209 + :cond_22d
4210 + :try_start_22d
4211 const-string v19, "Missing id while parsing configuration"
4213 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4214 - :try_end_235
4215 - .catchall {:try_start_230 .. :try_end_235} :catchall_17e
4216 - .catch Ljava/io/EOFException; {:try_start_230 .. :try_end_235} :catch_d5
4217 - .catch Ljava/io/IOException; {:try_start_230 .. :try_end_235} :catch_10b
4218 + :try_end_232
4219 + .catchall {:try_start_22d .. :try_end_232} :catchall_17b
4220 + .catch Ljava/io/EOFException; {:try_start_22d .. :try_end_232} :catch_d5
4221 + .catch Ljava/io/IOException; {:try_start_22d .. :try_end_232} :catch_10b
4223 goto/16 :goto_65
4225 + :catch_234
4226 + move-exception v20
4228 + goto/16 :goto_182
4230 :catch_237
4231 move-exception v19
4233 goto/16 :goto_32
4235 - :catch_23a
4236 - move-exception v20
4238 - goto/16 :goto_185
4240 - :catchall_23d
4241 + :catchall_23a
4242 move-exception v19
4244 - goto/16 :goto_180
4245 + goto/16 :goto_17d
4247 - :catch_240
4248 + :catch_23d
4249 move-exception v4
4251 goto/16 :goto_10d
4253 - :catch_243
4254 + :catch_240
4255 move-exception v19
4257 goto/16 :goto_d7
4259 - :pswitch_data_246
4260 + nop
4262 + :pswitch_data_244
4263 .packed-switch 0x1
4264 - :pswitch_215
4265 - :pswitch_215
4266 - :pswitch_200
4267 + :pswitch_212
4268 + :pswitch_212
4269 + :pswitch_1fd
4270 .end packed-switch
4272 - :pswitch_data_250
4273 + :pswitch_data_24e
4274 .packed-switch 0x1
4275 - :pswitch_218
4276 - :pswitch_22a
4277 + :pswitch_215
4278 + :pswitch_227
4279 :pswitch_64
4280 .end packed-switch
4281 .end method
4282 @@ -4603,8 +4600,8 @@
4284 invoke-direct {v11, v15}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
4285 :try_end_12
4286 - .catchall {:try_start_1 .. :try_end_12} :catchall_1c1
4287 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1d0
4288 + .catchall {:try_start_1 .. :try_end_12} :catchall_1bd
4289 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1ce
4291 const/4 v15, 0x2
4293 @@ -4615,7 +4612,7 @@
4295 monitor-enter v16
4296 :try_end_19
4297 - .catchall {:try_start_13 .. :try_end_19} :catchall_1cd
4298 + .catchall {:try_start_13 .. :try_end_19} :catchall_1cb
4299 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_19} :catch_71
4301 :try_start_19
4302 @@ -4661,7 +4658,7 @@
4304 aget v15, v15, v17
4306 - packed-switch v15, :pswitch_data_1d6
4307 + packed-switch v15, :pswitch_data_1d2
4309 const-string v15, "Ignore invalid ip assignment while writing"
4311 @@ -4681,7 +4678,7 @@
4313 aget v15, v15, v17
4315 - packed-switch v15, :pswitch_data_1e0
4316 + packed-switch v15, :pswitch_data_1dc
4318 const-string v15, "Ignore invalid proxy settings while writing"
4320 @@ -4723,7 +4720,7 @@
4321 :try_start_70
4322 throw v15
4323 :try_end_71
4324 - .catchall {:try_start_70 .. :try_end_71} :catchall_1cd
4325 + .catchall {:try_start_70 .. :try_end_71} :catchall_1cb
4326 .catch Ljava/io/IOException; {:try_start_70 .. :try_end_71} :catch_71
4328 :catch_71
4329 @@ -4737,14 +4734,14 @@
4331 invoke-static {v15}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4332 :try_end_78
4333 - .catchall {:try_start_73 .. :try_end_78} :catchall_1c1
4334 + .catchall {:try_start_73 .. :try_end_78} :catchall_1bd
4336 if-eqz v10, :cond_7d
4338 :try_start_7a
4339 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4340 :try_end_7d
4341 - .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c8
4342 + .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c6
4344 :cond_7d
4345 :goto_7d
4346 @@ -5073,74 +5070,71 @@
4347 :try_end_1b5
4348 .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_6e
4350 - if-eqz v11, :cond_1d3
4351 + if-eqz v11, :cond_1ba
4353 :try_start_1b7
4354 invoke-virtual {v11}, Ljava/io/DataOutputStream;->close()V
4355 :try_end_1ba
4356 - .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1bd
4358 - move-object v10, v11
4360 - goto/16 :goto_7d
4362 - :catch_1bd
4363 - move-exception v15
4364 + .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1c9
4366 + :cond_1ba
4367 + :goto_1ba
4368 move-object v10, v11
4370 goto/16 :goto_7d
4372 - :catchall_1c1
4373 + :catchall_1bd
4374 move-exception v15
4376 - :goto_1c2
4377 - if-eqz v10, :cond_1c7
4378 + :goto_1be
4379 + if-eqz v10, :cond_1c3
4381 - :try_start_1c4
4382 + :try_start_1c0
4383 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4384 - :try_end_1c7
4385 - .catch Ljava/lang/Exception; {:try_start_1c4 .. :try_end_1c7} :catch_1cb
4386 + :try_end_1c3
4387 + .catch Ljava/lang/Exception; {:try_start_1c0 .. :try_end_1c3} :catch_1c4
4389 - :cond_1c7
4390 - :goto_1c7
4391 + :cond_1c3
4392 + :goto_1c3
4393 throw v15
4395 - :catch_1c8
4396 + :catch_1c4
4397 + move-exception v16
4399 + goto :goto_1c3
4401 + :catch_1c6
4402 move-exception v15
4404 goto/16 :goto_7d
4406 - :catch_1cb
4407 - move-exception v16
4408 + :catch_1c9
4409 + move-exception v15
4411 - goto :goto_1c7
4412 + goto :goto_1ba
4414 - :catchall_1cd
4415 + :catchall_1cb
4416 move-exception v15
4418 move-object v10, v11
4420 - goto :goto_1c2
4421 + goto :goto_1be
4423 - :catch_1d0
4424 + :catch_1ce
4425 move-exception v3
4427 goto/16 :goto_73
4429 - :cond_1d3
4430 - move-object v10, v11
4432 - goto/16 :goto_7d
4433 + nop
4435 - :pswitch_data_1d6
4436 + :pswitch_data_1d2
4437 .packed-switch 0x1
4438 :pswitch_7e
4439 :pswitch_155
4440 :pswitch_46
4441 .end packed-switch
4443 - :pswitch_data_1e0
4444 + :pswitch_data_1dc
4445 .packed-switch 0x1
4446 :pswitch_166
4447 :pswitch_1a2
4448 diff -Npru stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali
4449 --- stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-05-06 11:56:51.498698095 -0500
4450 +++ pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-05-06 12:13:39.607697047 -0500
4451 @@ -161,7 +161,7 @@
4453 monitor-enter v14
4454 :try_end_26
4455 - .catchall {:try_start_21 .. :try_end_26} :catchall_160
4456 + .catchall {:try_start_21 .. :try_end_26} :catchall_15d
4458 :goto_26
4459 :try_start_26
4460 @@ -169,11 +169,11 @@
4462 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldExit:Z
4464 - if-eqz v13, :cond_3d
4465 + if-eqz v13, :cond_3a
4467 monitor-exit v14
4468 :try_end_2d
4469 - .catchall {:try_start_26 .. :try_end_2d} :catchall_15d
4470 + .catchall {:try_start_26 .. :try_end_2d} :catchall_15a
4472 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4474 @@ -187,21 +187,14 @@
4475 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4477 monitor-exit v14
4478 + :try_end_39
4479 + .catchall {:try_start_32 .. :try_end_39} :catchall_212
4481 :goto_39
4482 return-void
4484 - :catchall_3a
4485 - move-exception v13
4487 - monitor-exit v14
4488 - :try_end_3c
4489 - .catchall {:try_start_32 .. :try_end_3c} :catchall_3a
4491 - throw v13
4493 - :cond_3d
4494 - :try_start_3d
4495 + :cond_3a
4496 + :try_start_3a
4497 move-object/from16 v0, p0
4499 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEventQueue:Ljava/util/ArrayList;
4500 @@ -210,7 +203,7 @@
4502 move-result v13
4504 - if-nez v13, :cond_5c
4505 + if-nez v13, :cond_59
4507 move-object/from16 v0, p0
4509 @@ -228,24 +221,24 @@
4511 move-object v5, v0
4513 - :goto_54
4514 + :goto_51
4515 monitor-exit v14
4516 - :try_end_55
4517 - .catchall {:try_start_3d .. :try_end_55} :catchall_15d
4518 + :try_end_52
4519 + .catchall {:try_start_3a .. :try_end_52} :catchall_15a
4521 - if-eqz v5, :cond_1a9
4522 + if-eqz v5, :cond_1a6
4524 - :try_start_57
4525 + :try_start_54
4526 invoke-interface {v5}, Ljava/lang/Runnable;->run()V
4527 - :try_end_5a
4528 - .catchall {:try_start_57 .. :try_end_5a} :catchall_160
4529 + :try_end_57
4530 + .catchall {:try_start_54 .. :try_end_57} :catchall_15d
4532 const/4 v5, 0x0
4534 goto :goto_21
4536 - :cond_5c
4537 - :try_start_5c
4538 + :cond_59
4539 + :try_start_59
4540 move-object/from16 v0, p0
4542 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4543 @@ -254,7 +247,7 @@
4545 iget-boolean v15, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestPaused:Z
4547 - if-eq v13, v15, :cond_75
4548 + if-eq v13, v15, :cond_72
4550 move-object/from16 v0, p0
4552 @@ -270,12 +263,12 @@
4554 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4556 - :cond_75
4557 + :cond_72
4558 move-object/from16 v0, p0
4560 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldReleaseEglContext:Z
4562 - if-eqz v13, :cond_87
4563 + if-eqz v13, :cond_84
4565 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4567 @@ -289,8 +282,8 @@
4569 const/4 v1, 0x1
4571 - :cond_87
4572 - if-eqz v8, :cond_90
4573 + :cond_84
4574 + if-eqz v8, :cond_8d
4576 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4578 @@ -298,18 +291,18 @@
4580 const/4 v8, 0x0
4582 - :cond_90
4583 + :cond_8d
4584 move-object/from16 v0, p0
4586 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4588 - if-eqz v13, :cond_c7
4589 + if-eqz v13, :cond_c4
4591 move-object/from16 v0, p0
4593 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4595 - if-eqz v13, :cond_c7
4596 + if-eqz v13, :cond_c4
4598 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4600 @@ -322,7 +315,7 @@
4602 move-result v13
4604 - if-eqz v13, :cond_b3
4605 + if-eqz v13, :cond_b0
4607 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4609 @@ -332,12 +325,12 @@
4611 move-result v13
4613 - if-eqz v13, :cond_b6
4614 + if-eqz v13, :cond_b3
4616 - :cond_b3
4617 + :cond_b0
4618 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4620 - :cond_b6
4621 + :cond_b3
4622 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4624 move-result-object v13
4625 @@ -346,7 +339,7 @@
4627 move-result v13
4629 - if-eqz v13, :cond_c7
4630 + if-eqz v13, :cond_c4
4632 move-object/from16 v0, p0
4634 @@ -354,28 +347,28 @@
4636 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->finish()V
4638 - :cond_c7
4639 + :cond_c4
4640 move-object/from16 v0, p0
4642 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4644 - if-nez v13, :cond_e8
4645 + if-nez v13, :cond_e5
4647 move-object/from16 v0, p0
4649 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4651 - if-nez v13, :cond_e8
4652 + if-nez v13, :cond_e5
4654 move-object/from16 v0, p0
4656 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4658 - if-eqz v13, :cond_dc
4659 + if-eqz v13, :cond_d9
4661 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4663 - :cond_dc
4664 + :cond_d9
4665 const/4 v13, 0x1
4667 move-object/from16 v0, p0
4668 @@ -388,18 +381,18 @@
4670 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4672 - :cond_e8
4673 + :cond_e5
4674 move-object/from16 v0, p0
4676 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4678 - if-eqz v13, :cond_100
4679 + if-eqz v13, :cond_fd
4681 move-object/from16 v0, p0
4683 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4685 - if-eqz v13, :cond_100
4686 + if-eqz v13, :cond_fd
4688 const/4 v13, 0x0
4690 @@ -413,8 +406,8 @@
4692 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4694 - :cond_100
4695 - if-eqz v4, :cond_110
4696 + :cond_fd
4697 + if-eqz v4, :cond_10d
4699 const/4 v12, 0x0
4701 @@ -432,36 +425,36 @@
4703 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4705 - :cond_110
4706 + :cond_10d
4707 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->readyToDraw()Z
4709 move-result v13
4711 - if-eqz v13, :cond_1a0
4712 + if-eqz v13, :cond_19d
4714 move-object/from16 v0, p0
4716 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4718 - if-nez v13, :cond_11f
4719 + if-nez v13, :cond_11c
4721 - if-eqz v1, :cond_16e
4722 + if-eqz v1, :cond_16b
4724 const/4 v1, 0x0
4726 - :cond_11f
4727 - :goto_11f
4728 + :cond_11c
4729 + :goto_11c
4730 move-object/from16 v0, p0
4732 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4734 - if-eqz v13, :cond_132
4735 + if-eqz v13, :cond_12f
4737 move-object/from16 v0, p0
4739 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4741 - if-nez v13, :cond_132
4742 + if-nez v13, :cond_12f
4744 const/4 v13, 0x1
4746 @@ -473,12 +466,12 @@
4748 const/4 v9, 0x1
4750 - :cond_132
4751 + :cond_12f
4752 move-object/from16 v0, p0
4754 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4756 - if-eqz v13, :cond_1a0
4757 + if-eqz v13, :cond_19d
4759 move-object/from16 v0, p0
4761 @@ -489,7 +482,7 @@
4763 move-result v13
4765 - if-eqz v13, :cond_19a
4766 + if-eqz v13, :cond_197
4768 const/4 v9, 0x1
4770 @@ -512,28 +505,28 @@
4771 #setter for: Landroid/opengl/GLSurfaceView;->mSizeChanged:Z
4772 invoke-static {v13, v15}, Landroid/opengl/GLSurfaceView;->access$1002(Landroid/opengl/GLSurfaceView;Z)Z
4774 - :goto_154
4775 + :goto_151
4776 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4778 move-result-object v13
4780 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4782 - goto/16 :goto_54
4783 + goto/16 :goto_51
4785 - :catchall_15d
4786 + :catchall_15a
4787 move-exception v13
4789 monitor-exit v14
4790 - :try_end_15f
4791 - .catchall {:try_start_5c .. :try_end_15f} :catchall_15d
4792 + :try_end_15c
4793 + .catchall {:try_start_59 .. :try_end_15c} :catchall_15a
4795 - :try_start_15f
4796 + :try_start_15c
4797 throw v13
4798 - :try_end_160
4799 - .catchall {:try_start_15f .. :try_end_160} :catchall_160
4800 + :try_end_15d
4801 + .catchall {:try_start_15c .. :try_end_15d} :catchall_15d
4803 - :catchall_160
4804 + :catchall_15d
4805 move-exception v13
4807 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4808 @@ -542,19 +535,19 @@
4810 monitor-enter v14
4812 - :try_start_166
4813 + :try_start_163
4814 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4816 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4818 monitor-exit v14
4819 - :try_end_16d
4820 - .catchall {:try_start_166 .. :try_end_16d} :catchall_212
4821 + :try_end_16a
4822 + .catchall {:try_start_163 .. :try_end_16a} :catchall_20f
4824 throw v13
4826 - :cond_16e
4827 - :try_start_16e
4828 + :cond_16b
4829 + :try_start_16b
4830 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4832 move-result-object v13
4833 @@ -562,26 +555,26 @@
4834 move-object/from16 v0, p0
4836 invoke-virtual {v13, v0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->tryAcquireEglContextLocked(Landroid/opengl/GLSurfaceView$GLThread;)Z
4837 - :try_end_177
4838 - .catchall {:try_start_16e .. :try_end_177} :catchall_15d
4839 + :try_end_174
4840 + .catchall {:try_start_16b .. :try_end_174} :catchall_15a
4842 move-result v13
4844 - if-eqz v13, :cond_11f
4845 + if-eqz v13, :cond_11c
4847 - :try_start_17a
4848 + :try_start_177
4849 move-object/from16 v0, p0
4851 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4853 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->start()V
4854 - :try_end_181
4855 - .catchall {:try_start_17a .. :try_end_181} :catchall_15d
4856 - .catch Ljava/lang/RuntimeException; {:try_start_17a .. :try_end_181} :catch_18f
4857 + :try_end_17e
4858 + .catchall {:try_start_177 .. :try_end_17e} :catchall_15a
4859 + .catch Ljava/lang/RuntimeException; {:try_start_177 .. :try_end_17e} :catch_18c
4861 const/4 v13, 0x1
4863 - :try_start_182
4864 + :try_start_17f
4865 move-object/from16 v0, p0
4867 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4868 @@ -594,9 +587,9 @@
4870 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4872 - goto :goto_11f
4873 + goto :goto_11c
4875 - :catch_18f
4876 + :catch_18c
4877 move-exception v10
4879 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4880 @@ -609,30 +602,30 @@
4882 throw v10
4884 - :cond_19a
4885 + :cond_197
4886 const/4 v13, 0x0
4888 move-object/from16 v0, p0
4890 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestRender:Z
4892 - goto :goto_154
4893 + goto :goto_151
4895 - :cond_1a0
4896 + :cond_19d
4897 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4899 move-result-object v13
4901 invoke-virtual {v13}, Ljava/lang/Object;->wait()V
4902 - :try_end_1a7
4903 - .catchall {:try_start_182 .. :try_end_1a7} :catchall_15d
4904 + :try_end_1a4
4905 + .catchall {:try_start_17f .. :try_end_1a4} :catchall_15a
4907 goto/16 :goto_26
4909 - :cond_1a9
4910 - if-eqz v3, :cond_1da
4911 + :cond_1a6
4912 + if-eqz v3, :cond_1d7
4914 - :try_start_1ab
4915 + :try_start_1a8
4916 move-object/from16 v0, p0
4918 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4919 @@ -654,10 +647,10 @@
4920 check-cast v0, Ljavax/microedition/khronos/opengles/GL10;
4922 move-object v6, v0
4923 - :try_end_1bf
4924 - .catchall {:try_start_1ab .. :try_end_1bf} :catchall_160
4925 + :try_end_1bc
4926 + .catchall {:try_start_1a8 .. :try_end_1bc} :catchall_15d
4928 - if-nez v6, :cond_1d2
4929 + if-nez v6, :cond_1cf
4931 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4933 @@ -665,7 +658,7 @@
4935 monitor-enter v14
4937 - :try_start_1c6
4938 + :try_start_1c3
4939 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4941 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4942 @@ -674,17 +667,17 @@
4944 goto/16 :goto_39
4946 - :catchall_1cf
4947 + :catchall_1cc
4948 move-exception v13
4950 monitor-exit v14
4951 - :try_end_1d1
4952 - .catchall {:try_start_1c6 .. :try_end_1d1} :catchall_1cf
4953 + :try_end_1ce
4954 + .catchall {:try_start_1c3 .. :try_end_1ce} :catchall_1cc
4956 throw v13
4958 - :cond_1d2
4959 - :try_start_1d2
4960 + :cond_1cf
4961 + :try_start_1cf
4962 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4964 move-result-object v13
4965 @@ -693,8 +686,8 @@
4967 const/4 v3, 0x0
4969 - :cond_1da
4970 - if-eqz v2, :cond_1ea
4971 + :cond_1d7
4972 + if-eqz v2, :cond_1e7
4974 move-object/from16 v0, p0
4976 @@ -710,8 +703,8 @@
4978 const/4 v2, 0x0
4980 - :cond_1ea
4981 - if-eqz v9, :cond_1fb
4982 + :cond_1e7
4983 + if-eqz v9, :cond_1f8
4985 move-object/from16 v0, p0
4987 @@ -727,7 +720,7 @@
4989 const/4 v9, 0x0
4991 - :cond_1fb
4992 + :cond_1f8
4993 move-object/from16 v0, p0
4995 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRenderer:Landroid/opengl/GLSurfaceView$Renderer;
4996 @@ -739,22 +732,32 @@
4997 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4999 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->swap()Z
5000 - :try_end_209
5001 - .catchall {:try_start_1d2 .. :try_end_209} :catchall_160
5002 + :try_end_206
5003 + .catchall {:try_start_1cf .. :try_end_206} :catchall_15d
5005 move-result v13
5007 - if-nez v13, :cond_20d
5008 + if-nez v13, :cond_20a
5010 const/4 v8, 0x1
5012 - :cond_20d
5013 + :cond_20a
5014 if-eqz v12, :cond_21
5016 const/4 v4, 0x1
5018 goto/16 :goto_21
5020 + :catchall_20f
5021 + move-exception v13
5023 + :try_start_210
5024 + monitor-exit v14
5025 + :try_end_211
5026 + .catchall {:try_start_210 .. :try_end_211} :catchall_20f
5028 + throw v13
5030 :catchall_212
5031 move-exception v13
5033 @@ -1371,39 +1374,37 @@
5034 :try_start_1a
5035 invoke-direct {p0}, Landroid/opengl/GLSurfaceView$GLThread;->guardedRun()V
5036 :try_end_1d
5037 - .catchall {:try_start_1a .. :try_end_1d} :catchall_2e
5038 - .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_25
5039 + .catchall {:try_start_1a .. :try_end_1d} :catchall_25
5040 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_2e
5042 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5044 move-result-object v0
5046 + :goto_21
5047 invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5049 - :goto_24
5050 return-void
5052 - :catch_25
5053 + :catchall_25
5054 move-exception v0
5056 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5058 - move-result-object v0
5059 + move-result-object v1
5061 - invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5062 + invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5064 - goto :goto_24
5065 + throw v0
5067 - :catchall_2e
5068 + :catch_2e
5069 move-exception v0
5071 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5073 - move-result-object v1
5075 - invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5076 + move-result-object v0
5078 - throw v0
5079 + goto :goto_21
5080 .end method
5082 .method public setRenderMode(I)V
5083 diff -Npru stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali
5084 --- stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-05-06 11:56:51.606698634 -0500
5085 +++ pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-05-06 12:13:39.707697534 -0500
5086 @@ -582,14 +582,14 @@
5088 invoke-interface {v0, v1, v2, v3}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5089 :try_end_1fb
5090 - .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21d
5091 + .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21a
5092 .catch Landroid/os/RemoteException; {:try_start_1e5 .. :try_end_1fb} :catch_20d
5094 + :goto_1fb
5095 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5096 invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5098 :cond_1fe
5099 - :goto_1fe
5100 move-object/from16 v0, p1
5102 iget v0, v0, Landroid/os/StrictMode$ViolationInfo;->policy:I
5103 @@ -619,14 +619,11 @@
5105 invoke-static {v0, v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5106 :try_end_219
5107 - .catchall {:try_start_20e .. :try_end_219} :catchall_21d
5108 + .catchall {:try_start_20e .. :try_end_219} :catchall_21a
5110 - #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5111 - invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5113 - goto :goto_1fe
5114 + goto :goto_1fb
5116 - :catchall_21d
5117 + :catchall_21a
5118 move-exception v19
5120 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5121 diff -Npru stock-framework/smali/android/os/StrictMode.smali pdroid-framework/smali/android/os/StrictMode.smali
5122 --- stock-framework/smali/android/os/StrictMode.smali 2012-05-06 11:56:51.614698671 -0500
5123 +++ pdroid-framework/smali/android/os/StrictMode.smali 2012-05-06 12:13:39.715697583 -0500
5124 @@ -1686,13 +1686,13 @@
5126 invoke-interface {v0, v1, v2, v5}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5127 :try_end_d3
5128 - .catchall {:try_start_bf .. :try_end_d3} :catchall_fc
5129 + .catchall {:try_start_bf .. :try_end_d3} :catchall_f9
5130 .catch Landroid/os/RemoteException; {:try_start_bf .. :try_end_d3} :catch_ec
5132 + :goto_d3
5133 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5135 :cond_d6
5136 - :goto_d6
5137 if-eqz v10, :cond_a4
5139 sget-object v17, Ljava/lang/System;->err:Ljava/io/PrintStream;
5140 @@ -1727,13 +1727,11 @@
5142 invoke-static {v0, v1, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5143 :try_end_f8
5144 - .catchall {:try_start_ed .. :try_end_f8} :catchall_fc
5145 + .catchall {:try_start_ed .. :try_end_f8} :catchall_f9
5147 - invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5149 - goto :goto_d6
5150 + goto :goto_d3
5152 - :catchall_fc
5153 + :catchall_f9
5154 move-exception v17
5156 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5157 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali
5158 --- stock-framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
5159 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-05-06 12:13:39.775697880 -0500
5160 @@ -0,0 +1,104 @@
5161 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
5162 +.super Ljava/lang/Object;
5163 +.source "IPrivacySettingsManager.java"
5165 +# interfaces
5166 +.implements Landroid/os/IInterface;
5169 +# annotations
5170 +.annotation system Ldalvik/annotation/MemberClasses;
5171 + value = {
5172 + Landroid/privacy/IPrivacySettingsManager$Stub;
5174 +.end annotation
5177 +# virtual methods
5178 +.method public abstract addObserver(Ljava/lang/String;)V
5179 + .annotation system Ldalvik/annotation/Throws;
5180 + value = {
5181 + Landroid/os/RemoteException;
5183 + .end annotation
5184 +.end method
5186 +.method public abstract deleteSettings(Ljava/lang/String;)Z
5187 + .annotation system Ldalvik/annotation/Throws;
5188 + value = {
5189 + Landroid/os/RemoteException;
5191 + .end annotation
5192 +.end method
5194 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5195 + .annotation system Ldalvik/annotation/Throws;
5196 + value = {
5197 + Landroid/os/RemoteException;
5199 + .end annotation
5200 +.end method
5202 +.method public abstract getVersion()D
5203 + .annotation system Ldalvik/annotation/Throws;
5204 + value = {
5205 + Landroid/os/RemoteException;
5207 + .end annotation
5208 +.end method
5210 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5211 + .annotation system Ldalvik/annotation/Throws;
5212 + value = {
5213 + Landroid/os/RemoteException;
5215 + .end annotation
5216 +.end method
5218 +.method public abstract purgeSettings()Z
5219 + .annotation system Ldalvik/annotation/Throws;
5220 + value = {
5221 + Landroid/os/RemoteException;
5223 + .end annotation
5224 +.end method
5226 +.method public abstract registerObservers()V
5227 + .annotation system Ldalvik/annotation/Throws;
5228 + value = {
5229 + Landroid/os/RemoteException;
5231 + .end annotation
5232 +.end method
5234 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
5235 + .annotation system Ldalvik/annotation/Throws;
5236 + value = {
5237 + Landroid/os/RemoteException;
5239 + .end annotation
5240 +.end method
5242 +.method public abstract setBootCompleted()V
5243 + .annotation system Ldalvik/annotation/Throws;
5244 + value = {
5245 + Landroid/os/RemoteException;
5247 + .end annotation
5248 +.end method
5250 +.method public abstract setEnabled(Z)Z
5251 + .annotation system Ldalvik/annotation/Throws;
5252 + value = {
5253 + Landroid/os/RemoteException;
5255 + .end annotation
5256 +.end method
5258 +.method public abstract setNotificationsEnabled(Z)Z
5259 + .annotation system Ldalvik/annotation/Throws;
5260 + value = {
5261 + Landroid/os/RemoteException;
5263 + .end annotation
5264 +.end method
5265 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
5266 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 18:00:00.000000000 -0600
5267 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-05-06 12:13:39.775697880 -0500
5268 @@ -0,0 +1,743 @@
5269 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5270 +.super Ljava/lang/Object;
5271 +.source "IPrivacySettingsManager.java"
5273 +# interfaces
5274 +.implements Landroid/privacy/IPrivacySettingsManager;
5277 +# annotations
5278 +.annotation system Ldalvik/annotation/EnclosingClass;
5279 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
5280 +.end annotation
5282 +.annotation system Ldalvik/annotation/InnerClass;
5283 + accessFlags = 0xa
5284 + name = "Proxy"
5285 +.end annotation
5288 +# instance fields
5289 +.field private mRemote:Landroid/os/IBinder;
5292 +# direct methods
5293 +.method constructor <init>(Landroid/os/IBinder;)V
5294 + .registers 2
5296 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5298 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5300 + return-void
5301 +.end method
5304 +# virtual methods
5305 +.method public addObserver(Ljava/lang/String;)V
5306 + .registers 7
5307 + .annotation system Ldalvik/annotation/Throws;
5308 + value = {
5309 + Landroid/os/RemoteException;
5311 + .end annotation
5313 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5315 + move-result-object v0
5317 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5319 + move-result-object v1
5321 + :try_start_8
5322 + const-string v2, "android.privacy.IPrivacySettingsManager"
5324 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5326 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5328 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5330 + const/4 v3, 0x6
5332 + const/4 v4, 0x0
5334 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5336 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5337 + :try_end_1a
5338 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
5340 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5342 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5344 + return-void
5346 + :catchall_21
5347 + move-exception v2
5349 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5351 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5353 + throw v2
5354 +.end method
5356 +.method public asBinder()Landroid/os/IBinder;
5357 + .registers 2
5359 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5361 + return-object v0
5362 +.end method
5364 +.method public deleteSettings(Ljava/lang/String;)Z
5365 + .registers 8
5366 + .annotation system Ldalvik/annotation/Throws;
5367 + value = {
5368 + Landroid/os/RemoteException;
5370 + .end annotation
5372 + const/4 v2, 0x0
5374 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5376 + move-result-object v0
5378 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5380 + move-result-object v1
5382 + :try_start_9
5383 + const-string v3, "android.privacy.IPrivacySettingsManager"
5385 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5387 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5389 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5391 + const/4 v4, 0x3
5393 + const/4 v5, 0x0
5395 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5397 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5399 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5400 + :try_end_1e
5401 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
5403 + move-result v3
5405 + if-eqz v3, :cond_22
5407 + const/4 v2, 0x1
5409 + :cond_22
5410 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5412 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5414 + return v2
5416 + :catchall_29
5417 + move-exception v3
5419 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5421 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5423 + throw v3
5424 +.end method
5426 +.method public getInterfaceDescriptor()Ljava/lang/String;
5427 + .registers 2
5429 + const-string v0, "android.privacy.IPrivacySettingsManager"
5431 + return-object v0
5432 +.end method
5434 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5435 + .registers 8
5436 + .annotation system Ldalvik/annotation/Throws;
5437 + value = {
5438 + Landroid/os/RemoteException;
5440 + .end annotation
5442 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5444 + move-result-object v0
5446 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5448 + move-result-object v1
5450 + :try_start_8
5451 + const-string v3, "android.privacy.IPrivacySettingsManager"
5453 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5455 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5457 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5459 + const/4 v4, 0x1
5461 + const/4 v5, 0x0
5463 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5465 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5467 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5469 + move-result v3
5471 + if-eqz v3, :cond_2f
5473 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
5475 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
5477 + move-result-object v2
5479 + check-cast v2, Landroid/privacy/PrivacySettings;
5480 + :try_end_28
5481 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
5483 + :goto_28
5484 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5486 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5488 + return-object v2
5490 + :cond_2f
5491 + const/4 v2, 0x0
5493 + goto :goto_28
5495 + :catchall_31
5496 + move-exception v3
5498 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5500 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5502 + throw v3
5503 +.end method
5505 +.method public getVersion()D
5506 + .registers 8
5507 + .annotation system Ldalvik/annotation/Throws;
5508 + value = {
5509 + Landroid/os/RemoteException;
5511 + .end annotation
5513 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5515 + move-result-object v0
5517 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5519 + move-result-object v1
5521 + :try_start_8
5522 + const-string v4, "android.privacy.IPrivacySettingsManager"
5524 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5526 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5528 + const/16 v5, 0x8
5530 + const/4 v6, 0x0
5532 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5534 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5536 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
5537 + :try_end_1b
5538 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
5540 + move-result-wide v2
5542 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5544 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5546 + return-wide v2
5548 + :catchall_23
5549 + move-exception v4
5551 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5553 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5555 + throw v4
5556 +.end method
5558 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5559 + .registers 10
5560 + .annotation system Ldalvik/annotation/Throws;
5561 + value = {
5562 + Landroid/os/RemoteException;
5564 + .end annotation
5566 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5568 + move-result-object v0
5570 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5572 + move-result-object v1
5574 + :try_start_8
5575 + const-string v2, "android.privacy.IPrivacySettingsManager"
5577 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5579 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5581 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
5583 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5585 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5587 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5589 + const/4 v3, 0x4
5591 + const/4 v4, 0x0
5593 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5595 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5596 + :try_end_23
5597 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
5599 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5601 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5603 + return-void
5605 + :catchall_2a
5606 + move-exception v2
5608 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5610 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5612 + throw v2
5613 +.end method
5615 +.method public purgeSettings()Z
5616 + .registers 7
5617 + .annotation system Ldalvik/annotation/Throws;
5618 + value = {
5619 + Landroid/os/RemoteException;
5621 + .end annotation
5623 + const/4 v2, 0x0
5625 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5627 + move-result-object v0
5629 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5631 + move-result-object v1
5633 + :try_start_9
5634 + const-string v3, "android.privacy.IPrivacySettingsManager"
5636 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5638 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5640 + const/4 v4, 0x7
5642 + const/4 v5, 0x0
5644 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5646 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5648 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5649 + :try_end_1b
5650 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
5652 + move-result v3
5654 + if-eqz v3, :cond_1f
5656 + const/4 v2, 0x1
5658 + :cond_1f
5659 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5661 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5663 + return v2
5665 + :catchall_26
5666 + move-exception v3
5668 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5670 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5672 + throw v3
5673 +.end method
5675 +.method public registerObservers()V
5676 + .registers 6
5677 + .annotation system Ldalvik/annotation/Throws;
5678 + value = {
5679 + Landroid/os/RemoteException;
5681 + .end annotation
5683 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5685 + move-result-object v0
5687 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5689 + move-result-object v1
5691 + :try_start_8
5692 + const-string v2, "android.privacy.IPrivacySettingsManager"
5694 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5696 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5698 + const/4 v3, 0x5
5700 + const/4 v4, 0x0
5702 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5704 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5705 + :try_end_17
5706 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
5708 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5710 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5712 + return-void
5714 + :catchall_1e
5715 + move-exception v2
5717 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5719 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5721 + throw v2
5722 +.end method
5724 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
5725 + .registers 9
5726 + .annotation system Ldalvik/annotation/Throws;
5727 + value = {
5728 + Landroid/os/RemoteException;
5730 + .end annotation
5732 + const/4 v2, 0x1
5734 + const/4 v3, 0x0
5736 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5738 + move-result-object v0
5740 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5742 + move-result-object v1
5744 + :try_start_a
5745 + const-string v4, "android.privacy.IPrivacySettingsManager"
5747 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5749 + if-eqz p1, :cond_30
5751 + const/4 v4, 0x1
5753 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5755 + const/4 v4, 0x0
5757 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
5759 + :goto_19
5760 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5762 + const/4 v5, 0x2
5764 + const/4 v6, 0x0
5766 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5768 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5770 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5771 + :try_end_26
5772 + .catchall {:try_start_a .. :try_end_26} :catchall_35
5774 + move-result v4
5776 + if-eqz v4, :cond_3d
5778 + :goto_29
5779 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5781 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5783 + return v2
5785 + :cond_30
5786 + const/4 v4, 0x0
5788 + :try_start_31
5789 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5790 + :try_end_34
5791 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
5793 + goto :goto_19
5795 + :catchall_35
5796 + move-exception v3
5798 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5800 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5802 + throw v3
5804 + :cond_3d
5805 + move v2, v3
5807 + goto :goto_29
5808 +.end method
5810 +.method public setBootCompleted()V
5811 + .registers 6
5812 + .annotation system Ldalvik/annotation/Throws;
5813 + value = {
5814 + Landroid/os/RemoteException;
5816 + .end annotation
5818 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5820 + move-result-object v0
5822 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5824 + move-result-object v1
5826 + :try_start_8
5827 + const-string v2, "android.privacy.IPrivacySettingsManager"
5829 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5831 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5833 + const/16 v3, 0xb
5835 + const/4 v4, 0x0
5837 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5839 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5840 + :try_end_18
5841 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
5843 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5845 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5847 + return-void
5849 + :catchall_1f
5850 + move-exception v2
5852 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5854 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5856 + throw v2
5857 +.end method
5859 +.method public setEnabled(Z)Z
5860 + .registers 9
5861 + .annotation system Ldalvik/annotation/Throws;
5862 + value = {
5863 + Landroid/os/RemoteException;
5865 + .end annotation
5867 + const/4 v2, 0x1
5869 + const/4 v3, 0x0
5871 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5873 + move-result-object v0
5875 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5877 + move-result-object v1
5879 + :try_start_a
5880 + const-string v4, "android.privacy.IPrivacySettingsManager"
5882 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5884 + if-eqz p1, :cond_2d
5886 + move v4, v2
5888 + :goto_12
5889 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5891 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5893 + const/16 v5, 0x9
5895 + const/4 v6, 0x0
5897 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5899 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5901 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5902 + :try_end_23
5903 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5905 + move-result v4
5907 + if-eqz v4, :cond_2f
5909 + :goto_26
5910 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5912 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5914 + return v2
5916 + :cond_2d
5917 + move v4, v3
5919 + goto :goto_12
5921 + :cond_2f
5922 + move v2, v3
5924 + goto :goto_26
5926 + :catchall_31
5927 + move-exception v3
5929 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5931 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5933 + throw v3
5934 +.end method
5936 +.method public setNotificationsEnabled(Z)Z
5937 + .registers 9
5938 + .annotation system Ldalvik/annotation/Throws;
5939 + value = {
5940 + Landroid/os/RemoteException;
5942 + .end annotation
5944 + const/4 v2, 0x1
5946 + const/4 v3, 0x0
5948 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5950 + move-result-object v0
5952 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5954 + move-result-object v1
5956 + :try_start_a
5957 + const-string v4, "android.privacy.IPrivacySettingsManager"
5959 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5961 + if-eqz p1, :cond_2d
5963 + move v4, v2
5965 + :goto_12
5966 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5968 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5970 + const/16 v5, 0xa
5972 + const/4 v6, 0x0
5974 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5976 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5978 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5979 + :try_end_23
5980 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5982 + move-result v4
5984 + if-eqz v4, :cond_2f
5986 + :goto_26
5987 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5989 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5991 + return v2
5993 + :cond_2d
5994 + move v4, v3
5996 + goto :goto_12
5998 + :cond_2f
5999 + move v2, v3
6001 + goto :goto_26
6003 + :catchall_31
6004 + move-exception v3
6006 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6008 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6010 + throw v3
6011 +.end method
6012 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
6013 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 18:00:00.000000000 -0600
6014 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-05-06 12:13:39.775697880 -0500
6015 @@ -0,0 +1,412 @@
6016 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
6017 +.super Landroid/os/Binder;
6018 +.source "IPrivacySettingsManager.java"
6020 +# interfaces
6021 +.implements Landroid/privacy/IPrivacySettingsManager;
6024 +# annotations
6025 +.annotation system Ldalvik/annotation/EnclosingClass;
6026 + value = Landroid/privacy/IPrivacySettingsManager;
6027 +.end annotation
6029 +.annotation system Ldalvik/annotation/InnerClass;
6030 + accessFlags = 0x409
6031 + name = "Stub"
6032 +.end annotation
6034 +.annotation system Ldalvik/annotation/MemberClasses;
6035 + value = {
6036 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6038 +.end annotation
6041 +# static fields
6042 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
6044 +.field static final TRANSACTION_addObserver:I = 0x6
6046 +.field static final TRANSACTION_deleteSettings:I = 0x3
6048 +.field static final TRANSACTION_getSettings:I = 0x1
6050 +.field static final TRANSACTION_getVersion:I = 0x8
6052 +.field static final TRANSACTION_notification:I = 0x4
6054 +.field static final TRANSACTION_purgeSettings:I = 0x7
6056 +.field static final TRANSACTION_registerObservers:I = 0x5
6058 +.field static final TRANSACTION_saveSettings:I = 0x2
6060 +.field static final TRANSACTION_setBootCompleted:I = 0xb
6062 +.field static final TRANSACTION_setEnabled:I = 0x9
6064 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
6067 +# direct methods
6068 +.method public constructor <init>()V
6069 + .registers 2
6071 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
6073 + const-string v0, "android.privacy.IPrivacySettingsManager"
6075 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
6077 + return-void
6078 +.end method
6080 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
6081 + .registers 3
6083 + if-nez p0, :cond_4
6085 + const/4 v0, 0x0
6087 + :goto_3
6088 + return-object v0
6090 + :cond_4
6091 + const-string v1, "android.privacy.IPrivacySettingsManager"
6093 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
6095 + move-result-object v0
6097 + if-eqz v0, :cond_13
6099 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
6101 + if-eqz v1, :cond_13
6103 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
6105 + goto :goto_3
6107 + :cond_13
6108 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6110 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
6112 + goto :goto_3
6113 +.end method
6116 +# virtual methods
6117 +.method public asBinder()Landroid/os/IBinder;
6118 + .registers 1
6120 + return-object p0
6121 +.end method
6123 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6124 + .registers 14
6125 + .annotation system Ldalvik/annotation/Throws;
6126 + value = {
6127 + Landroid/os/RemoteException;
6129 + .end annotation
6131 + const/4 v6, 0x0
6133 + const/4 v7, 0x1
6135 + sparse-switch p1, :sswitch_data_10e
6137 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6139 + move-result v7
6141 + :goto_9
6142 + return v7
6144 + :sswitch_a
6145 + const-string v6, "android.privacy.IPrivacySettingsManager"
6147 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
6149 + goto :goto_9
6151 + :sswitch_10
6152 + const-string v8, "android.privacy.IPrivacySettingsManager"
6154 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6156 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6158 + move-result-object v0
6160 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6162 + move-result-object v4
6164 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6166 + if-eqz v4, :cond_29
6168 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
6170 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6172 + goto :goto_9
6174 + :cond_29
6175 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6177 + goto :goto_9
6179 + :sswitch_2d
6180 + const-string v8, "android.privacy.IPrivacySettingsManager"
6182 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6184 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6186 + move-result v8
6188 + if-eqz v8, :cond_4e
6190 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
6192 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
6194 + move-result-object v0
6196 + check-cast v0, Landroid/privacy/PrivacySettings;
6198 + :goto_40
6199 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
6201 + move-result v4
6203 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6205 + if-eqz v4, :cond_4a
6207 + move v6, v7
6209 + :cond_4a
6210 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6212 + goto :goto_9
6214 + :cond_4e
6215 + const/4 v0, 0x0
6217 + goto :goto_40
6219 + :sswitch_50
6220 + const-string v8, "android.privacy.IPrivacySettingsManager"
6222 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6224 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6226 + move-result-object v0
6228 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
6230 + move-result v4
6232 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6234 + if-eqz v4, :cond_63
6236 + move v6, v7
6238 + :cond_63
6239 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6241 + goto :goto_9
6243 + :sswitch_67
6244 + const-string v6, "android.privacy.IPrivacySettingsManager"
6246 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6248 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6250 + move-result-object v0
6252 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
6254 + move-result v1
6256 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6258 + move-result-object v2
6260 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6262 + move-result-object v3
6264 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6266 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6268 + goto :goto_9
6270 + :sswitch_83
6271 + const-string v6, "android.privacy.IPrivacySettingsManager"
6273 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6275 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
6277 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6279 + goto/16 :goto_9
6281 + :sswitch_90
6282 + const-string v6, "android.privacy.IPrivacySettingsManager"
6284 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6286 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6288 + move-result-object v0
6290 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
6292 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6294 + goto/16 :goto_9
6296 + :sswitch_a1
6297 + const-string v8, "android.privacy.IPrivacySettingsManager"
6299 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6301 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
6303 + move-result v4
6305 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6307 + if-eqz v4, :cond_b0
6309 + move v6, v7
6311 + :cond_b0
6312 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6314 + goto/16 :goto_9
6316 + :sswitch_b5
6317 + const-string v6, "android.privacy.IPrivacySettingsManager"
6319 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6321 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
6323 + move-result-wide v4
6325 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6327 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
6329 + goto/16 :goto_9
6331 + :sswitch_c6
6332 + const-string v8, "android.privacy.IPrivacySettingsManager"
6334 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6336 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6338 + move-result v8
6340 + if-eqz v8, :cond_e1
6342 + move v0, v7
6344 + :goto_d2
6345 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
6347 + move-result v4
6349 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6351 + if-eqz v4, :cond_dc
6353 + move v6, v7
6355 + :cond_dc
6356 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6358 + goto/16 :goto_9
6360 + :cond_e1
6361 + move v0, v6
6363 + goto :goto_d2
6365 + :sswitch_e3
6366 + const-string v8, "android.privacy.IPrivacySettingsManager"
6368 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6370 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6372 + move-result v8
6374 + if-eqz v8, :cond_fe
6376 + move v0, v7
6378 + :goto_ef
6379 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
6381 + move-result v4
6383 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6385 + if-eqz v4, :cond_f9
6387 + move v6, v7
6389 + :cond_f9
6390 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6392 + goto/16 :goto_9
6394 + :cond_fe
6395 + move v0, v6
6397 + goto :goto_ef
6399 + :sswitch_100
6400 + const-string v6, "android.privacy.IPrivacySettingsManager"
6402 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6404 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
6406 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6408 + goto/16 :goto_9
6410 + nop
6412 + :sswitch_data_10e
6413 + .sparse-switch
6414 + 0x1 -> :sswitch_10
6415 + 0x2 -> :sswitch_2d
6416 + 0x3 -> :sswitch_50
6417 + 0x4 -> :sswitch_67
6418 + 0x5 -> :sswitch_83
6419 + 0x6 -> :sswitch_90
6420 + 0x7 -> :sswitch_a1
6421 + 0x8 -> :sswitch_b5
6422 + 0x9 -> :sswitch_c6
6423 + 0xa -> :sswitch_e3
6424 + 0xb -> :sswitch_100
6425 + 0x5f4e5446 -> :sswitch_a
6426 + .end sparse-switch
6427 +.end method
6428 diff -Npru stock-framework/smali/android/privacy/PrivacyFileObserver.smali pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali
6429 --- stock-framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 18:00:00.000000000 -0600
6430 +++ pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali 2012-05-06 12:13:39.779697891 -0500
6431 @@ -0,0 +1,217 @@
6432 +.class public Landroid/privacy/PrivacyFileObserver;
6433 +.super Landroid/os/FileObserver;
6434 +.source "PrivacyFileObserver.java"
6437 +# static fields
6438 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
6440 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
6443 +# instance fields
6444 +.field public absolutePath:Ljava/lang/String;
6446 +.field public children:Ljava/util/HashMap;
6447 + .annotation system Ldalvik/annotation/Signature;
6448 + value = {
6449 + "Ljava/util/HashMap",
6450 + "<",
6451 + "Ljava/lang/String;",
6452 + "Landroid/privacy/PrivacyFileObserver;",
6453 + ">;"
6455 + .end annotation
6456 +.end field
6458 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6461 +# direct methods
6462 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6463 + .registers 12
6465 + const/16 v8, 0xfff
6467 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
6469 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6471 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6473 + new-instance v8, Ljava/util/HashMap;
6475 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
6477 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6479 + new-instance v7, Ljava/io/File;
6481 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6483 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6485 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
6487 + move-result v8
6489 + if-eqz v8, :cond_42
6491 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
6493 + move-result-object v6
6495 + move-object v0, v6
6497 + array-length v4, v0
6499 + const/4 v3, 0x0
6501 + :goto_24
6502 + if-ge v3, v4, :cond_42
6504 + aget-object v2, v0, v3
6506 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6508 + move-result-object v5
6510 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
6512 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6514 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6516 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6518 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
6520 + move-result v8
6522 + if-eqz v8, :cond_3f
6524 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
6526 + :cond_3f
6527 + add-int/lit8 v3, v3, 0x1
6529 + goto :goto_24
6531 + :cond_42
6532 + return-void
6533 +.end method
6536 +# virtual methods
6537 +.method public addObserver(Ljava/lang/String;)V
6538 + .registers 6
6540 + new-instance v2, Ljava/lang/StringBuilder;
6542 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
6544 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6546 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6548 + move-result-object v2
6550 + const-string v3, "/"
6552 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6554 + move-result-object v2
6556 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6558 + move-result-object v2
6560 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6562 + move-result-object v1
6564 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6566 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
6568 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
6570 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6572 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6574 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6576 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6578 + return-void
6579 +.end method
6581 +.method public onEvent(ILjava/lang/String;)V
6582 + .registers 11
6584 + and-int/lit8 v4, p1, 0x1
6586 + if-eqz v4, :cond_34
6588 + new-instance v3, Ljava/util/StringTokenizer;
6590 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6592 + const-string v5, "/"
6594 + invoke-direct {v3, v4, v5}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
6596 + const/4 v0, 0x0
6598 + :goto_e
6599 + const/4 v4, 0x3
6601 + if-ge v0, v4, :cond_1d
6603 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->hasMoreElements()Z
6605 + move-result v4
6607 + if-eqz v4, :cond_1d
6609 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6611 + add-int/lit8 v0, v0, 0x1
6613 + goto :goto_e
6615 + :cond_1d
6616 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6618 + move-result-object v2
6620 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6622 + invoke-virtual {v4, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6624 + move-result-object v1
6626 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6628 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
6630 + move-result v5
6632 + const-string/jumbo v6, "systemLogs"
6634 + const/4 v7, 0x0
6636 + invoke-virtual {v4, v2, v5, v6, v7}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6638 + :cond_34
6639 + return-void
6640 +.end method
6642 +.method public startWatching()V
6643 + .registers 1
6645 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
6647 + return-void
6648 +.end method
6649 diff -Npru stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
6650 --- stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 18:00:00.000000000 -0600
6651 +++ pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-05-06 12:13:39.783697912 -0500
6652 @@ -0,0 +1,4581 @@
6653 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
6654 +.super Ljava/lang/Object;
6655 +.source "PrivacyPersistenceAdapter.java"
6658 +# static fields
6659 +.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) );"
6661 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6663 +.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);"
6665 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
6667 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
6669 +.field private static final DATABASE_VERSION:I = 0x3
6671 +.field public static final DUMMY_UID:I = -0x1
6673 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6675 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6677 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6679 +.field private static final RETRY_QUERY_COUNT:I = 0x5
6681 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
6683 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
6685 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
6687 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
6689 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
6691 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
6693 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
6695 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
6697 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
6699 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
6701 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
6703 +.field public static readingThreads:Ljava/lang/Integer;
6706 +# instance fields
6707 +.field private context:Landroid/content/Context;
6709 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
6712 +# direct methods
6713 +.method static constructor <clinit>()V
6714 + .registers 3
6716 + const/4 v2, 0x0
6718 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
6720 + move-result-object v0
6722 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
6724 + const/16 v0, 0x23
6726 + new-array v0, v0, [Ljava/lang/String;
6728 + const-string v1, "_id"
6730 + aput-object v1, v0, v2
6732 + const/4 v1, 0x1
6734 + const-string/jumbo v2, "packageName"
6736 + aput-object v2, v0, v1
6738 + const/4 v1, 0x2
6740 + const-string/jumbo v2, "uid"
6742 + aput-object v2, v0, v1
6744 + const/4 v1, 0x3
6746 + const-string v2, "deviceIdSetting"
6748 + aput-object v2, v0, v1
6750 + const/4 v1, 0x4
6752 + const-string v2, "deviceId"
6754 + aput-object v2, v0, v1
6756 + const/4 v1, 0x5
6758 + const-string v2, "line1NumberSetting"
6760 + aput-object v2, v0, v1
6762 + const/4 v1, 0x6
6764 + const-string v2, "line1Number"
6766 + aput-object v2, v0, v1
6768 + const/4 v1, 0x7
6770 + const-string v2, "locationGpsSetting"
6772 + aput-object v2, v0, v1
6774 + const/16 v1, 0x8
6776 + const-string v2, "locationGpsLat"
6778 + aput-object v2, v0, v1
6780 + const/16 v1, 0x9
6782 + const-string v2, "locationGpsLon"
6784 + aput-object v2, v0, v1
6786 + const/16 v1, 0xa
6788 + const-string v2, "locationNetworkSetting"
6790 + aput-object v2, v0, v1
6792 + const/16 v1, 0xb
6794 + const-string v2, "locationNetworkLat"
6796 + aput-object v2, v0, v1
6798 + const/16 v1, 0xc
6800 + const-string v2, "locationNetworkLon"
6802 + aput-object v2, v0, v1
6804 + const/16 v1, 0xd
6806 + const-string/jumbo v2, "networkInfoSetting"
6808 + aput-object v2, v0, v1
6810 + const/16 v1, 0xe
6812 + const-string/jumbo v2, "simInfoSetting"
6814 + aput-object v2, v0, v1
6816 + const/16 v1, 0xf
6818 + const-string/jumbo v2, "simSerialNumberSetting"
6820 + aput-object v2, v0, v1
6822 + const/16 v1, 0x10
6824 + const-string/jumbo v2, "simSerialNumber"
6826 + aput-object v2, v0, v1
6828 + const/16 v1, 0x11
6830 + const-string/jumbo v2, "subscriberIdSetting"
6832 + aput-object v2, v0, v1
6834 + const/16 v1, 0x12
6836 + const-string/jumbo v2, "subscriberId"
6838 + aput-object v2, v0, v1
6840 + const/16 v1, 0x13
6842 + const-string v2, "accountsSetting"
6844 + aput-object v2, v0, v1
6846 + const/16 v1, 0x14
6848 + const-string v2, "accountsAuthTokensSetting"
6850 + aput-object v2, v0, v1
6852 + const/16 v1, 0x15
6854 + const-string/jumbo v2, "outgoingCallsSetting"
6856 + aput-object v2, v0, v1
6858 + const/16 v1, 0x16
6860 + const-string v2, "incomingCallsSetting"
6862 + aput-object v2, v0, v1
6864 + const/16 v1, 0x17
6866 + const-string v2, "contactsSetting"
6868 + aput-object v2, v0, v1
6870 + const/16 v1, 0x18
6872 + const-string v2, "calendarSetting"
6874 + aput-object v2, v0, v1
6876 + const/16 v1, 0x19
6878 + const-string/jumbo v2, "mmsSetting"
6880 + aput-object v2, v0, v1
6882 + const/16 v1, 0x1a
6884 + const-string/jumbo v2, "smsSetting"
6886 + aput-object v2, v0, v1
6888 + const/16 v1, 0x1b
6890 + const-string v2, "callLogSetting"
6892 + aput-object v2, v0, v1
6894 + const/16 v1, 0x1c
6896 + const-string v2, "bookmarksSetting"
6898 + aput-object v2, v0, v1
6900 + const/16 v1, 0x1d
6902 + const-string/jumbo v2, "systemLogsSetting"
6904 + aput-object v2, v0, v1
6906 + const/16 v1, 0x1e
6908 + const-string v2, "externalStorageSetting"
6910 + aput-object v2, v0, v1
6912 + const/16 v1, 0x1f
6914 + const-string v2, "cameraSetting"
6916 + aput-object v2, v0, v1
6918 + const/16 v1, 0x20
6920 + const-string/jumbo v2, "recordAudioSetting"
6922 + aput-object v2, v0, v1
6924 + const/16 v1, 0x21
6926 + const-string/jumbo v2, "notificationSetting"
6928 + aput-object v2, v0, v1
6930 + const/16 v1, 0x22
6932 + const-string v2, "intentBootCompletedSetting"
6934 + aput-object v2, v0, v1
6936 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
6938 + return-void
6939 +.end method
6941 +.method public constructor <init>(Landroid/content/Context;)V
6942 + .registers 6
6944 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
6946 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
6948 + new-instance v2, Ljava/io/File;
6950 + const-string v3, "/data/system/"
6952 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6954 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
6956 + move-result v0
6958 + if-eqz v0, :cond_3c
6960 + new-instance v2, Ljava/io/File;
6962 + const-string v3, "/data/system/privacy.db"
6964 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6966 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6968 + move-result v2
6970 + if-nez v2, :cond_22
6972 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
6974 + :cond_22
6975 + new-instance v2, Ljava/io/File;
6977 + const-string v3, "/data/system/privacy"
6979 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6981 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6983 + move-result v2
6985 + if-nez v2, :cond_32
6987 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
6989 + :cond_32
6990 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
6992 + move-result v1
6994 + const/4 v2, 0x3
6996 + if-ge v1, v2, :cond_3c
6998 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
7000 + :cond_3c
7001 + return-void
7002 +.end method
7004 +.method private declared-synchronized createDatabase()V
7005 + .registers 6
7007 + monitor-enter p0
7009 + :try_start_1
7010 + const-string v2, "PrivacyPersistenceAdapter"
7012 + const-string v3, "createDatabase - creating privacy database file"
7014 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7015 + :try_end_8
7016 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
7018 + :try_start_8
7019 + const-string v2, "/data/system/privacy.db"
7021 + const/4 v3, 0x0
7023 + const/high16 v4, 0x1000
7025 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7027 + move-result-object v0
7029 + const-string v2, "PrivacyPersistenceAdapter"
7031 + const-string v3, "createDatabase - creating privacy database"
7033 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7035 + 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);"
7037 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7039 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7041 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7043 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
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 (\"db_version\", 3);"
7049 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7051 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7053 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7055 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7057 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7059 + if-eqz v0, :cond_41
7061 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7063 + move-result v2
7065 + if-eqz v2, :cond_41
7067 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7068 + :try_end_41
7069 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
7070 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
7072 + :cond_41
7073 + :goto_41
7074 + monitor-exit p0
7076 + return-void
7078 + :catch_43
7079 + move-exception v1
7081 + :try_start_44
7082 + const-string v2, "PrivacyPersistenceAdapter"
7084 + const-string v3, "createDatabase - failed to create privacy database"
7086 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7087 + :try_end_4b
7088 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
7090 + goto :goto_41
7092 + :catchall_4c
7093 + move-exception v2
7095 + monitor-exit p0
7097 + throw v2
7098 +.end method
7100 +.method private declared-synchronized createSettingsDir()V
7101 + .registers 4
7103 + monitor-enter p0
7105 + :try_start_1
7106 + new-instance v0, Ljava/io/File;
7108 + const-string v1, "/data/system/privacy/"
7110 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7112 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
7114 + const/4 v1, 0x1
7116 + const/4 v2, 0x0
7118 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
7120 + const/4 v1, 0x1
7122 + const/4 v2, 0x0
7124 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
7125 + :try_end_15
7126 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
7128 + monitor-exit p0
7130 + return-void
7132 + :catchall_17
7133 + move-exception v1
7135 + monitor-exit p0
7137 + throw v1
7138 +.end method
7140 +.method private deleteRecursive(Ljava/io/File;)V
7141 + .registers 7
7143 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
7145 + move-result v4
7147 + if-eqz v4, :cond_16
7149 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
7151 + move-result-object v0
7153 + array-length v3, v0
7155 + const/4 v2, 0x0
7157 + :goto_c
7158 + if-ge v2, v3, :cond_16
7160 + aget-object v1, v0, v2
7162 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7164 + add-int/lit8 v2, v2, 0x1
7166 + goto :goto_c
7168 + :cond_16
7169 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
7171 + return-void
7172 +.end method
7174 +.method private getDbVersion()I
7175 + .registers 9
7177 + const/4 v4, 0x1
7179 + const/4 v3, -0x1
7181 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7183 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7185 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7187 + move-result v6
7189 + add-int/lit8 v6, v6, 0x1
7191 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7193 + move-result-object v6
7195 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7197 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7199 + move-result-object v1
7201 + :try_start_16
7202 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
7204 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7206 + move-result-object v0
7208 + if-eqz v0, :cond_5e
7210 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
7212 + move-result v6
7214 + if-nez v6, :cond_25
7216 + const/4 v3, 0x1
7218 + :cond_25
7219 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7221 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7223 + monitor-enter v7
7224 + :try_end_2b
7225 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
7227 + :try_start_2b
7228 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7230 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7232 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7234 + move-result v6
7236 + add-int/lit8 v6, v6, -0x1
7238 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7240 + move-result-object v6
7242 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7244 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7246 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7248 + move-result v6
7250 + if-nez v6, :cond_4e
7252 + if-eqz v1, :cond_4e
7254 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7256 + move-result v6
7258 + if-eqz v6, :cond_4e
7260 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7262 + :cond_4e
7263 + monitor-exit v7
7265 + :goto_4f
7266 + if-ne v3, v4, :cond_66
7268 + :goto_51
7269 + return v3
7271 + :catchall_52
7272 + move-exception v6
7274 + monitor-exit v7
7275 + :try_end_54
7276 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
7278 + :try_start_54
7279 + throw v6
7280 + :try_end_55
7281 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
7283 + :catch_55
7284 + move-exception v2
7286 + const-string v6, "PrivacyPersistenceAdapter"
7288 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
7290 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7292 + goto :goto_4f
7294 + :cond_5e
7295 + :try_start_5e
7296 + const-string v6, "PrivacyPersistenceAdapter"
7298 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
7300 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7301 + :try_end_65
7302 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
7304 + goto :goto_4f
7306 + :cond_66
7307 + const-string v6, "db_version"
7309 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
7311 + move-result-object v5
7313 + if-nez v5, :cond_70
7315 + move v3, v4
7317 + goto :goto_51
7319 + :cond_70
7320 + :try_start_70
7321 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7322 + :try_end_73
7323 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
7325 + move-result v4
7327 + move v3, v4
7329 + goto :goto_51
7331 + :catch_76
7332 + move-exception v2
7334 + const-string v6, "PrivacyPersistenceAdapter"
7336 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
7338 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7340 + move v3, v4
7342 + goto :goto_51
7343 +.end method
7345 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7346 + .registers 4
7348 + monitor-enter p0
7350 + :try_start_1
7351 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7353 + if-eqz v0, :cond_11
7355 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7357 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7359 + move-result v0
7361 + if-eqz v0, :cond_11
7363 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7364 + :try_end_f
7365 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
7367 + :goto_f
7368 + monitor-exit p0
7370 + return-object v0
7372 + :cond_11
7373 + :try_start_11
7374 + const-string v0, "/data/system/privacy.db"
7376 + const/4 v1, 0x0
7378 + const/4 v2, 0x1
7380 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7382 + move-result-object v0
7384 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7386 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7387 + :try_end_1d
7388 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
7390 + goto :goto_f
7392 + :catchall_1e
7393 + move-exception v0
7395 + monitor-exit p0
7397 + throw v0
7398 +.end method
7400 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7401 + .registers 4
7403 + monitor-enter p0
7405 + :try_start_1
7406 + new-instance v0, Ljava/io/File;
7408 + const-string v1, "/data/system/privacy.db"
7410 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7412 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
7414 + move-result v0
7416 + if-nez v0, :cond_11
7418 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7420 + :cond_11
7421 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
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;->isOpen()Z
7429 + move-result v0
7431 + if-eqz v0, :cond_29
7433 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7435 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
7437 + move-result v0
7439 + if-nez v0, :cond_29
7441 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7442 + :try_end_27
7443 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
7445 + :goto_27
7446 + monitor-exit p0
7448 + return-object v0
7450 + :cond_29
7451 + :try_start_29
7452 + const-string v0, "/data/system/privacy.db"
7454 + const/4 v1, 0x0
7456 + const/4 v2, 0x0
7458 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7460 + move-result-object v0
7462 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7464 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7465 + :try_end_35
7466 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
7468 + goto :goto_27
7470 + :catchall_36
7471 + move-exception v0
7473 + monitor-exit p0
7475 + throw v0
7476 +.end method
7478 +.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;
7479 + .registers 16
7480 + .annotation system Ldalvik/annotation/Throws;
7481 + value = {
7482 + Ljava/lang/Exception;
7484 + .end annotation
7486 + const/4 v0, 0x0
7488 + const/4 v3, 0x0
7490 + const/4 v2, 0x0
7492 + :goto_3
7493 + if-nez v3, :cond_27
7495 + const/4 v4, 0x5
7497 + if-ge v2, v4, :cond_27
7499 + if-eqz v0, :cond_d
7501 + :try_start_a
7502 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7504 + :cond_d
7505 + 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;
7506 + :try_end_10
7507 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
7509 + move-result-object v0
7511 + const/4 v3, 0x1
7513 + :goto_12
7514 + add-int/lit8 v2, v2, 0x1
7516 + goto :goto_3
7518 + :catch_15
7519 + move-exception v1
7521 + const/4 v3, 0x0
7523 + if-eqz p1, :cond_22
7525 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7527 + move-result v4
7529 + if-eqz v4, :cond_22
7531 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7533 + :cond_22
7534 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7536 + move-result-object p1
7538 + goto :goto_12
7540 + :cond_27
7541 + if-nez v3, :cond_32
7543 + new-instance v4, Ljava/lang/Exception;
7545 + const-string/jumbo v5, "query - failed to execute query on the DB"
7547 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7549 + throw v4
7551 + :cond_32
7552 + return-object v0
7553 +.end method
7555 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7556 + .registers 9
7557 + .annotation system Ldalvik/annotation/Throws;
7558 + value = {
7559 + Ljava/lang/Exception;
7561 + .end annotation
7563 + const/4 v0, 0x0
7565 + const/4 v3, 0x0
7567 + const/4 v2, 0x0
7569 + :goto_3
7570 + if-nez v3, :cond_28
7572 + const/4 v4, 0x5
7574 + if-ge v2, v4, :cond_28
7576 + if-eqz v0, :cond_d
7578 + :try_start_a
7579 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7581 + :cond_d
7582 + const/4 v4, 0x0
7584 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
7585 + :try_end_11
7586 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
7588 + move-result-object v0
7590 + const/4 v3, 0x1
7592 + :goto_13
7593 + add-int/lit8 v2, v2, 0x1
7595 + goto :goto_3
7597 + :catch_16
7598 + move-exception v1
7600 + const/4 v3, 0x0
7602 + if-eqz p1, :cond_23
7604 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7606 + move-result v4
7608 + if-eqz v4, :cond_23
7610 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7612 + :cond_23
7613 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7615 + move-result-object p1
7617 + goto :goto_13
7619 + :cond_28
7620 + if-nez v3, :cond_33
7622 + new-instance v4, Ljava/lang/Exception;
7624 + const-string/jumbo v5, "query - failed to execute query on the DB"
7626 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7628 + throw v4
7630 + :cond_33
7631 + return-object v0
7632 +.end method
7634 +.method private declared-synchronized upgradeDatabase(I)V
7635 + .registers 23
7637 + monitor-enter p0
7639 + :try_start_1
7640 + const-string v17, "PrivacyPersistenceAdapter"
7642 + new-instance v18, Ljava/lang/StringBuilder;
7644 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
7646 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
7648 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7650 + move-result-object v18
7652 + move-object/from16 v0, v18
7654 + move/from16 v1, p1
7656 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7658 + move-result-object v18
7660 + const-string v19, " to "
7662 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7664 + move-result-object v18
7666 + const/16 v19, 0x3
7668 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7670 + move-result-object v18
7672 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7674 + move-result-object v18
7676 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7678 + new-instance v6, Ljava/io/File;
7680 + const-string v17, "/data/system/privacy.db"
7682 + move-object/from16 v0, v17
7684 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7686 + new-instance v5, Ljava/io/File;
7688 + const-string v17, "/data/system/privacy.db.bak"
7690 + move-object/from16 v0, v17
7692 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7693 + :try_end_3c
7694 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
7696 + :try_start_3c
7697 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7698 + :try_end_3f
7699 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
7700 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
7702 + :goto_3f
7703 + :try_start_3f
7704 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7706 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
7708 + move-result-wide v17
7710 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
7712 + move-result-wide v19
7714 + sub-long v17, v17, v19
7716 + const-wide/16 v19, 0x7d0
7718 + cmp-long v17, v17, v19
7720 + if-lez v17, :cond_69
7722 + const-string v17, "PrivacyPersistenceAdapter"
7724 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
7726 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7727 + :try_end_5a
7728 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
7730 + :goto_5a
7731 + monitor-exit p0
7733 + return-void
7735 + :catch_5c
7736 + move-exception v7
7738 + :try_start_5d
7739 + const-string v17, "PrivacyPersistenceAdapter"
7741 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
7743 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7744 + :try_end_65
7745 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
7747 + goto :goto_3f
7749 + :catchall_66
7750 + move-exception v17
7752 + monitor-exit p0
7754 + throw v17
7756 + :cond_69
7757 + :try_start_69
7758 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7760 + move-result-object v4
7762 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
7764 + packed-switch p1, :pswitch_data_164
7766 + :cond_73
7767 + :goto_73
7768 + if-eqz v4, :cond_159
7770 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7772 + move-result v17
7774 + if-eqz v17, :cond_159
7776 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7778 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7780 + :goto_81
7781 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
7782 + :try_end_84
7783 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
7785 + goto :goto_5a
7787 + :pswitch_85
7788 + if-eqz v4, :cond_73
7790 + :try_start_87
7791 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7793 + move-result v17
7795 + if-eqz v17, :cond_73
7797 + const-string v17, "DROP TABLE IF EXISTS version;"
7799 + move-object/from16 v0, v17
7801 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7803 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7805 + move-object/from16 v0, v17
7807 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7809 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7811 + move-object/from16 v0, v17
7813 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7815 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7817 + move-object/from16 v0, v17
7819 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7821 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7823 + move-object/from16 v0, v17
7825 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7827 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7829 + move-object/from16 v0, v17
7831 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7833 + new-instance v14, Ljava/io/File;
7835 + const-string v17, "/data/system/privacy"
7837 + move-object/from16 v0, v17
7839 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7841 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
7843 + move-result-object v2
7845 + array-length v10, v2
7847 + const/4 v8, 0x0
7849 + move v9, v8
7851 + :goto_c7
7852 + if-ge v9, v10, :cond_127
7854 + aget-object v13, v2, v9
7856 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
7858 + move-result-object v3
7860 + array-length v11, v3
7862 + const/4 v8, 0x0
7864 + :goto_d1
7865 + if-ge v8, v11, :cond_123
7867 + aget-object v16, v3, v8
7869 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
7871 + move-result v17
7873 + if-eqz v17, :cond_120
7875 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
7877 + move-result-object v15
7879 + const/16 v17, 0x0
7881 + aget-object v17, v15, v17
7883 + if-eqz v17, :cond_120
7885 + new-instance v12, Ljava/io/File;
7887 + new-instance v17, Ljava/lang/StringBuilder;
7889 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7891 + move-object/from16 v0, v17
7893 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7895 + move-result-object v17
7897 + const-string v18, "/"
7899 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7901 + move-result-object v17
7903 + const/16 v18, 0x0
7905 + aget-object v18, v15, v18
7907 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
7909 + move-result-object v18
7911 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7913 + move-result-object v17
7915 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7917 + move-result-object v17
7919 + move-object/from16 v0, v17
7921 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7923 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
7925 + const/16 v17, 0x0
7927 + aget-object v17, v15, v17
7929 + move-object/from16 v0, v17
7931 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
7933 + move-object/from16 v0, p0
7935 + move-object/from16 v1, v16
7937 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7939 + :cond_120
7940 + add-int/lit8 v8, v8, 0x1
7942 + goto :goto_d1
7944 + :cond_123
7945 + add-int/lit8 v8, v9, 0x1
7947 + move v9, v8
7949 + goto :goto_c7
7951 + :cond_127
7952 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
7953 + :try_end_12a
7954 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
7955 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
7957 + goto/16 :goto_73
7959 + :catch_12c
7960 + move-exception v7
7962 + if-eqz v4, :cond_13b
7964 + :try_start_12f
7965 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7967 + move-result v17
7969 + if-eqz v17, :cond_13b
7971 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7973 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7975 + :cond_13b
7976 + const-string v17, "PrivacyPersistenceAdapter"
7978 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
7980 + move-object/from16 v0, v17
7982 + move-object/from16 v1, v18
7984 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7986 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7988 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7990 + goto/16 :goto_73
7992 + :pswitch_14f
7993 + const-string v17, "PrivacyPersistenceAdapter"
7995 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
7997 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7999 + goto/16 :goto_73
8001 + :cond_159
8002 + const-string v17, "PrivacyPersistenceAdapter"
8004 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
8006 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8007 + :try_end_161
8008 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
8010 + goto/16 :goto_81
8012 + nop
8014 + :pswitch_data_164
8015 + .packed-switch 0x1
8016 + :pswitch_85
8017 + :pswitch_85
8018 + :pswitch_14f
8019 + .end packed-switch
8020 +.end method
8023 +# virtual methods
8024 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
8025 + .registers 16
8027 + monitor-enter p0
8029 + const/4 v11, 0x1
8031 + :try_start_2
8032 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8034 + move-result-object v0
8036 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
8037 + :try_end_9
8038 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
8040 + :try_start_9
8041 + const-string/jumbo v1, "settings"
8043 + const/4 v2, 0x1
8045 + new-array v2, v2, [Ljava/lang/String;
8047 + const/4 v3, 0x0
8049 + const-string v4, "_id"
8051 + aput-object v4, v2, v3
8053 + const-string/jumbo v3, "packageName=?"
8055 + const/4 v4, 0x1
8057 + new-array v4, v4, [Ljava/lang/String;
8059 + const/4 v5, 0x0
8061 + aput-object p1, v4, v5
8063 + const/4 v5, 0x0
8065 + const/4 v6, 0x0
8067 + const/4 v7, 0x0
8069 + 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;
8071 + move-result-object v8
8073 + if-eqz v8, :cond_4c
8075 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
8077 + move-result v1
8079 + if-lez v1, :cond_4c
8081 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
8083 + move-result v1
8085 + if-eqz v1, :cond_4c
8087 + const/4 v1, 0x0
8089 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
8091 + move-result v10
8093 + const-string v1, "allowed_contacts"
8095 + const-string/jumbo v2, "settings_id=?"
8097 + const/4 v3, 0x1
8099 + new-array v3, v3, [Ljava/lang/String;
8101 + const/4 v4, 0x0
8103 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8105 + move-result-object v5
8107 + aput-object v5, v3, v4
8109 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8111 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
8113 + :cond_4c
8114 + const-string/jumbo v1, "settings"
8116 + const-string/jumbo v2, "packageName=?"
8118 + const/4 v3, 0x1
8120 + new-array v3, v3, [Ljava/lang/String;
8122 + const/4 v4, 0x0
8124 + aput-object p1, v3, v4
8126 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8128 + move-result v1
8130 + if-nez v1, :cond_8d
8132 + const-string v1, "PrivacyPersistenceAdapter"
8134 + new-instance v2, Ljava/lang/StringBuilder;
8136 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
8138 + const-string v3, "deleteSettings - database entry for "
8140 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8142 + move-result-object v2
8144 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8146 + move-result-object v2
8148 + const-string v3, " not found"
8150 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8152 + move-result-object v2
8154 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8156 + move-result-object v2
8158 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8159 + :try_end_7c
8160 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
8161 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
8163 + const/4 v1, 0x0
8165 + :try_start_7d
8166 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8168 + if-eqz v0, :cond_8b
8170 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8172 + move-result v2
8174 + if-eqz v2, :cond_8b
8176 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8177 + :try_end_8b
8178 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
8180 + :cond_8b
8181 + :goto_8b
8182 + monitor-exit p0
8184 + return v1
8186 + :cond_8d
8187 + :try_start_8d
8188 + new-instance v12, Ljava/io/File;
8190 + new-instance v1, Ljava/lang/StringBuilder;
8192 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8194 + const-string v2, "/data/system/privacy/"
8196 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8198 + move-result-object v1
8200 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8202 + move-result-object v1
8204 + const-string v2, "/"
8206 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8208 + move-result-object v1
8210 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8212 + move-result-object v1
8214 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8216 + new-instance v13, Ljava/io/File;
8218 + new-instance v1, Ljava/lang/StringBuilder;
8220 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8222 + const-string v2, "/data/system/privacy/"
8224 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8226 + move-result-object v1
8228 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8230 + move-result-object v1
8232 + const-string v2, "/systemLogsSetting"
8234 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8236 + move-result-object v1
8238 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8240 + move-result-object v1
8242 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8244 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
8246 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8248 + move-result-object v1
8250 + if-eqz v1, :cond_d9
8252 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8254 + move-result-object v1
8256 + array-length v1, v1
8258 + if-nez v1, :cond_dc
8260 + :cond_d9
8261 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8263 + :cond_dc
8264 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8265 + :try_end_df
8266 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
8267 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
8269 + :try_start_df
8270 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8272 + if-eqz v0, :cond_ed
8274 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8276 + move-result v1
8278 + if-eqz v1, :cond_ed
8280 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8281 + :try_end_ed
8282 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
8284 + :cond_ed
8285 + :goto_ed
8286 + move v1, v11
8288 + goto :goto_8b
8290 + :catch_ef
8291 + move-exception v9
8293 + const/4 v11, 0x0
8295 + :try_start_f1
8296 + const-string v1, "PrivacyPersistenceAdapter"
8298 + const-string v2, "deleteSettings - could not delete settings"
8300 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8301 + :try_end_f8
8302 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
8304 + :try_start_f8
8305 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8307 + if-eqz v0, :cond_ed
8309 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8311 + move-result v1
8313 + if-eqz v1, :cond_ed
8315 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8316 + :try_end_106
8317 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
8319 + goto :goto_ed
8321 + :catchall_107
8322 + move-exception v1
8324 + monitor-exit p0
8326 + throw v1
8328 + :catchall_10a
8329 + move-exception v1
8331 + :try_start_10b
8332 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8334 + if-eqz v0, :cond_119
8336 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8338 + move-result v2
8340 + if-eqz v2, :cond_119
8342 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8344 + :cond_119
8345 + throw v1
8346 + :try_end_11a
8347 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
8348 +.end method
8350 +.method public getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
8351 + .registers 47
8353 + const/16 v43, 0x0
8355 + if-nez p1, :cond_e
8357 + const-string v1, "PrivacyPersistenceAdapter"
8359 + const-string v4, "getSettings - insufficient application identifier - package name is required"
8361 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8363 + move-object/from16 v3, v43
8365 + :goto_d
8366 + return-object v43
8368 + :cond_e
8369 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8371 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8373 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8375 + move-result v1
8377 + add-int/lit8 v1, v1, 0x1
8379 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8381 + move-result-object v1
8383 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8385 + :try_start_1e
8386 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8387 + :try_end_21
8388 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_1e .. :try_end_21} :catch_243
8390 + move-result-object v2
8392 + const/16 v41, 0x0
8394 + :try_start_24
8395 + const-string/jumbo v3, "settings"
8397 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
8399 + const-string/jumbo v5, "packageName=?"
8401 + const/4 v1, 0x1
8403 + new-array v6, v1, [Ljava/lang/String;
8405 + const/4 v1, 0x0
8407 + aput-object p1, v6, v1
8409 + const/4 v7, 0x0
8411 + const/4 v8, 0x0
8413 + const/4 v9, 0x0
8415 + const/4 v10, 0x0
8417 + move-object/from16 v1, p0
8419 + 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;
8421 + move-result-object v41
8423 + if-eqz v41, :cond_2d3
8425 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToFirst()Z
8427 + move-result v1
8429 + if-eqz v1, :cond_2d3
8431 + new-instance v3, Landroid/privacy/PrivacySettings;
8433 + const/4 v1, 0x0
8435 + move-object/from16 v0, v41
8437 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8439 + move-result v1
8441 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8443 + move-result-object v4
8445 + const/4 v1, 0x1
8447 + move-object/from16 v0, v41
8449 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8451 + move-result-object v5
8453 + const/4 v1, 0x2
8455 + move-object/from16 v0, v41
8457 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8459 + move-result v6
8461 + const/4 v1, 0x3
8463 + move-object/from16 v0, v41
8465 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8467 + move-result v1
8469 + int-to-byte v7, v1
8471 + const/4 v1, 0x4
8473 + move-object/from16 v0, v41
8475 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8477 + move-result-object v8
8479 + const/4 v1, 0x5
8481 + move-object/from16 v0, v41
8483 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8485 + move-result v1
8487 + int-to-byte v9, v1
8489 + const/4 v1, 0x6
8491 + move-object/from16 v0, v41
8493 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8495 + move-result-object v10
8497 + const/4 v1, 0x7
8499 + move-object/from16 v0, v41
8501 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8503 + move-result v1
8505 + int-to-byte v11, v1
8507 + const/16 v1, 0x8
8509 + move-object/from16 v0, v41
8511 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8513 + move-result-object v12
8515 + const/16 v1, 0x9
8517 + move-object/from16 v0, v41
8519 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8521 + move-result-object v13
8523 + const/16 v1, 0xa
8525 + move-object/from16 v0, v41
8527 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8529 + move-result v1
8531 + int-to-byte v14, v1
8533 + const/16 v1, 0xb
8535 + move-object/from16 v0, v41
8537 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8539 + move-result-object v15
8541 + const/16 v1, 0xc
8543 + move-object/from16 v0, v41
8545 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8547 + move-result-object v16
8549 + const/16 v1, 0xd
8551 + move-object/from16 v0, v41
8553 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8555 + move-result v1
8557 + int-to-byte v0, v1
8559 + move/from16 v17, v0
8561 + const/16 v1, 0xe
8563 + move-object/from16 v0, v41
8565 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8567 + move-result v1
8569 + int-to-byte v0, v1
8571 + move/from16 v18, v0
8573 + const/16 v1, 0xf
8575 + move-object/from16 v0, v41
8577 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8579 + move-result v1
8581 + int-to-byte v0, v1
8583 + move/from16 v19, v0
8585 + const/16 v1, 0x10
8587 + move-object/from16 v0, v41
8589 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8591 + move-result-object v20
8593 + const/16 v1, 0x11
8595 + move-object/from16 v0, v41
8597 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8599 + move-result v1
8601 + int-to-byte v0, v1
8603 + move/from16 v21, v0
8605 + const/16 v1, 0x12
8607 + move-object/from16 v0, v41
8609 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8611 + move-result-object v22
8613 + const/16 v1, 0x13
8615 + move-object/from16 v0, v41
8617 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8619 + move-result v1
8621 + int-to-byte v0, v1
8623 + move/from16 v23, v0
8625 + const/16 v1, 0x14
8627 + move-object/from16 v0, v41
8629 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8631 + move-result v1
8633 + int-to-byte v0, v1
8635 + move/from16 v24, v0
8637 + const/16 v1, 0x15
8639 + move-object/from16 v0, v41
8641 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8643 + move-result v1
8645 + int-to-byte v0, v1
8647 + move/from16 v25, v0
8649 + const/16 v1, 0x16
8651 + move-object/from16 v0, v41
8653 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8655 + move-result v1
8657 + int-to-byte v0, v1
8659 + move/from16 v26, v0
8661 + const/16 v1, 0x17
8663 + move-object/from16 v0, v41
8665 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8667 + move-result v1
8669 + int-to-byte v0, v1
8671 + move/from16 v27, v0
8673 + const/16 v1, 0x18
8675 + move-object/from16 v0, v41
8677 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8679 + move-result v1
8681 + int-to-byte v0, v1
8683 + move/from16 v28, v0
8685 + const/16 v1, 0x19
8687 + move-object/from16 v0, v41
8689 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8691 + move-result v1
8693 + int-to-byte v0, v1
8695 + move/from16 v29, v0
8697 + const/16 v1, 0x1a
8699 + move-object/from16 v0, v41
8701 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8703 + move-result v1
8705 + int-to-byte v0, v1
8707 + move/from16 v30, v0
8709 + const/16 v1, 0x1b
8711 + move-object/from16 v0, v41
8713 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8715 + move-result v1
8717 + int-to-byte v0, v1
8719 + move/from16 v31, v0
8721 + const/16 v1, 0x1c
8723 + move-object/from16 v0, v41
8725 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8727 + move-result v1
8729 + int-to-byte v0, v1
8731 + move/from16 v32, v0
8733 + const/16 v1, 0x1d
8735 + move-object/from16 v0, v41
8737 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8739 + move-result v1
8741 + int-to-byte v0, v1
8743 + move/from16 v33, v0
8745 + const/16 v1, 0x1e
8747 + move-object/from16 v0, v41
8749 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8751 + move-result v1
8753 + int-to-byte v0, v1
8755 + move/from16 v34, v0
8757 + const/16 v1, 0x1f
8759 + move-object/from16 v0, v41
8761 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8763 + move-result v1
8765 + int-to-byte v0, v1
8767 + move/from16 v35, v0
8769 + const/16 v1, 0x20
8771 + move-object/from16 v0, v41
8773 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8775 + move-result v1
8777 + int-to-byte v0, v1
8779 + move/from16 v36, v0
8781 + const/16 v1, 0x21
8783 + move-object/from16 v0, v41
8785 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8787 + move-result v1
8789 + int-to-byte v0, v1
8791 + move/from16 v37, v0
8793 + const/16 v1, 0x22
8795 + move-object/from16 v0, v41
8797 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8799 + move-result v1
8801 + int-to-byte v0, v1
8803 + move/from16 v38, v0
8805 + const/16 v39, 0x0
8807 + 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
8808 + :try_end_19f
8809 + .catchall {:try_start_24 .. :try_end_19f} :catchall_299
8810 + .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_19f} :catch_2ce
8812 + :try_start_19f
8813 + new-instance v1, Ljava/lang/StringBuilder;
8815 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8817 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
8819 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8821 + move-result-object v1
8823 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
8825 + move-result-object v4
8827 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
8829 + move-result v4
8831 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8833 + move-result-object v4
8835 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8837 + move-result-object v1
8839 + const-string v4, ";"
8841 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8843 + move-result-object v1
8845 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8847 + move-result-object v1
8849 + move-object/from16 v0, p0
8851 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
8853 + move-result-object v41
8855 + if-eqz v41, :cond_266
8857 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8859 + move-result v1
8861 + if-lez v1, :cond_266
8863 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8865 + move-result v1
8867 + new-array v0, v1, [I
8869 + move-object/from16 v40, v0
8871 + :goto_1da
8872 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToNext()Z
8874 + move-result v1
8876 + if-eqz v1, :cond_261
8878 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getPosition()I
8880 + move-result v1
8882 + const/4 v4, 0x1
8884 + move-object/from16 v0, v41
8886 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
8888 + move-result v4
8890 + aput v4, v40, v1
8891 + :try_end_1ed
8892 + .catchall {:try_start_19f .. :try_end_1ed} :catchall_2cc
8893 + .catch Ljava/lang/Exception; {:try_start_19f .. :try_end_1ed} :catch_1ee
8895 + goto :goto_1da
8897 + :catch_1ee
8898 + move-exception v42
8900 + :goto_1ef
8901 + :try_start_1ef
8902 + const-string v1, "PrivacyPersistenceAdapter"
8904 + new-instance v4, Ljava/lang/StringBuilder;
8906 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
8908 + const-string v5, "getSettings - failed to get settings for package: "
8910 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8912 + move-result-object v4
8914 + move-object/from16 v0, p1
8916 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8918 + move-result-object v4
8920 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8922 + move-result-object v4
8924 + move-object/from16 v0, v42
8926 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8928 + invoke-virtual/range {v42 .. v42}, Ljava/lang/Exception;->printStackTrace()V
8930 + if-eqz v41, :cond_213
8932 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8933 + :try_end_213
8934 + .catchall {:try_start_1ef .. :try_end_213} :catchall_2cc
8936 + :cond_213
8937 + if-eqz v41, :cond_218
8939 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8941 + :cond_218
8942 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8944 + monitor-enter v4
8946 + :try_start_21b
8947 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8949 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8951 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8953 + move-result v1
8955 + add-int/lit8 v1, v1, -0x1
8957 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8959 + move-result-object v1
8961 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8963 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8965 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8967 + move-result v1
8969 + if-nez v1, :cond_23e
8971 + if-eqz v2, :cond_23e
8973 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8975 + move-result v1
8977 + if-eqz v1, :cond_23e
8979 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8981 + :cond_23e
8982 + monitor-exit v4
8983 + :try_end_23f
8984 + .catchall {:try_start_21b .. :try_end_23f} :catchall_296
8986 + :goto_23f
8987 + move-object/from16 v43, v3
8989 + goto/16 :goto_d
8991 + :catch_243
8992 + move-exception v42
8994 + const-string v1, "PrivacyPersistenceAdapter"
8996 + const-string v4, "getSettings - database could not be opened"
8998 + move-object/from16 v0, v42
9000 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9002 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9004 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9006 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9008 + move-result v1
9010 + add-int/lit8 v1, v1, -0x1
9012 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9014 + move-result-object v1
9016 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9018 + move-object/from16 v3, v43
9020 + goto/16 :goto_d
9022 + :cond_261
9023 + :try_start_261
9024 + move-object/from16 v0, v40
9026 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
9027 + :try_end_266
9028 + .catchall {:try_start_261 .. :try_end_266} :catchall_2cc
9029 + .catch Ljava/lang/Exception; {:try_start_261 .. :try_end_266} :catch_1ee
9031 + :cond_266
9032 + :goto_266
9033 + if-eqz v41, :cond_26b
9035 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9037 + :cond_26b
9038 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9040 + monitor-enter v4
9042 + :try_start_26e
9043 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9045 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9047 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9049 + move-result v1
9051 + add-int/lit8 v1, v1, -0x1
9053 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9055 + move-result-object v1
9057 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9059 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9061 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9063 + move-result v1
9065 + if-nez v1, :cond_291
9067 + if-eqz v2, :cond_291
9069 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9071 + move-result v1
9073 + if-eqz v1, :cond_291
9075 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9077 + :cond_291
9078 + monitor-exit v4
9080 + goto :goto_23f
9082 + :catchall_293
9083 + move-exception v1
9085 + monitor-exit v4
9086 + :try_end_295
9087 + .catchall {:try_start_26e .. :try_end_295} :catchall_293
9089 + throw v1
9091 + :catchall_296
9092 + move-exception v1
9094 + :try_start_297
9095 + monitor-exit v4
9096 + :try_end_298
9097 + .catchall {:try_start_297 .. :try_end_298} :catchall_296
9099 + throw v1
9101 + :catchall_299
9102 + move-exception v1
9104 + move-object/from16 v3, v43
9106 + :goto_29c
9107 + if-eqz v41, :cond_2a1
9109 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9111 + :cond_2a1
9112 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9114 + monitor-enter v4
9116 + :try_start_2a4
9117 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9119 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9121 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9123 + move-result v5
9125 + add-int/lit8 v5, v5, -0x1
9127 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9129 + move-result-object v5
9131 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9133 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9135 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9137 + move-result v5
9139 + if-nez v5, :cond_2c7
9141 + if-eqz v2, :cond_2c7
9143 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9145 + move-result v5
9147 + if-eqz v5, :cond_2c7
9149 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9151 + :cond_2c7
9152 + monitor-exit v4
9153 + :try_end_2c8
9154 + .catchall {:try_start_2a4 .. :try_end_2c8} :catchall_2c9
9156 + throw v1
9158 + :catchall_2c9
9159 + move-exception v1
9161 + :try_start_2ca
9162 + monitor-exit v4
9163 + :try_end_2cb
9164 + .catchall {:try_start_2ca .. :try_end_2cb} :catchall_2c9
9166 + throw v1
9168 + :catchall_2cc
9169 + move-exception v1
9171 + goto :goto_29c
9173 + :catch_2ce
9174 + move-exception v42
9176 + move-object/from16 v3, v43
9178 + goto/16 :goto_1ef
9180 + :cond_2d3
9181 + move-object/from16 v3, v43
9183 + goto :goto_266
9184 +.end method
9186 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
9187 + .registers 15
9189 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9191 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9193 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9195 + move-result v0
9197 + add-int/lit8 v0, v0, 0x1
9199 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9201 + move-result-object v0
9203 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9205 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9207 + move-result-object v1
9209 + const/4 v12, 0x0
9211 + :try_start_15
9212 + const-string/jumbo v2, "map"
9214 + const/4 v0, 0x1
9216 + new-array v3, v0, [Ljava/lang/String;
9218 + const/4 v0, 0x0
9220 + const-string/jumbo v4, "value"
9222 + aput-object v4, v3, v0
9224 + const-string/jumbo v4, "name=?"
9226 + const/4 v0, 0x1
9228 + new-array v5, v0, [Ljava/lang/String;
9230 + const/4 v0, 0x0
9232 + aput-object p1, v5, v0
9234 + const/4 v6, 0x0
9236 + const/4 v7, 0x0
9238 + const/4 v8, 0x0
9240 + const/4 v9, 0x0
9242 + move-object v0, p0
9244 + 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;
9246 + move-result-object v10
9248 + if-eqz v10, :cond_77
9250 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
9252 + move-result v0
9254 + if-lez v0, :cond_77
9256 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
9258 + move-result v0
9260 + if-eqz v0, :cond_77
9262 + const-string/jumbo v0, "value"
9264 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
9266 + move-result v0
9268 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9270 + move-result-object v12
9272 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
9273 + :try_end_4f
9274 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
9276 + :goto_4f
9277 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9279 + monitor-enter v2
9281 + :try_start_52
9282 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9284 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9286 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9288 + move-result v0
9290 + add-int/lit8 v0, v0, -0x1
9292 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9294 + move-result-object v0
9296 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9298 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9300 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9302 + move-result v0
9304 + if-nez v0, :cond_75
9306 + if-eqz v1, :cond_75
9308 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9310 + move-result v0
9312 + if-eqz v0, :cond_75
9314 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9316 + :cond_75
9317 + monitor-exit v2
9318 + :try_end_76
9319 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
9321 + return-object v12
9323 + :cond_77
9324 + :try_start_77
9325 + const-string v0, "PrivacyPersistenceAdapter"
9327 + new-instance v2, Ljava/lang/StringBuilder;
9329 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9331 + const-string v3, "getValue - could not get value for name: "
9333 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9335 + move-result-object v2
9337 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9339 + move-result-object v2
9341 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9343 + move-result-object v2
9345 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
9346 + :try_end_8f
9347 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
9349 + goto :goto_4f
9351 + :catch_90
9352 + move-exception v11
9354 + const-string v0, "PrivacyPersistenceAdapter"
9356 + new-instance v2, Ljava/lang/StringBuilder;
9358 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9360 + const-string v3, "getValue - could not get value for name: "
9362 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9364 + move-result-object v2
9366 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9368 + move-result-object v2
9370 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9372 + move-result-object v2
9374 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9376 + goto :goto_4f
9378 + :catchall_aa
9379 + move-exception v0
9381 + :try_start_ab
9382 + monitor-exit v2
9383 + :try_end_ac
9384 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
9386 + throw v0
9387 +.end method
9389 +.method public purgeSettings()Z
9390 + .registers 28
9392 + const/16 v25, 0x1
9394 + new-instance v13, Ljava/util/ArrayList;
9396 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
9398 + move-object/from16 v0, p0
9400 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
9402 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
9404 + move-result-object v21
9406 + const/16 v2, 0x80
9408 + move-object/from16 v0, v21
9410 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
9412 + move-result-object v19
9414 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
9416 + move-result-object v18
9418 + :goto_1b
9419 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
9421 + move-result v2
9423 + if-eqz v2, :cond_2d
9425 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
9427 + move-result-object v12
9429 + check-cast v12, Landroid/content/pm/ApplicationInfo;
9431 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
9433 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9435 + goto :goto_1b
9437 + :cond_2d
9438 + new-instance v26, Ljava/io/File;
9440 + const-string v2, "/data/system/privacy"
9442 + move-object/from16 v0, v26
9444 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9446 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
9448 + move-result-object v15
9450 + array-length v0, v15
9452 + move/from16 v20, v0
9454 + const/16 v18, 0x0
9456 + :goto_3f
9457 + move/from16 v0, v18
9459 + move/from16 v1, v20
9461 + if-ge v0, v1, :cond_5d
9463 + aget-object v23, v15, v18
9465 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
9467 + move-result-object v24
9469 + move-object/from16 v0, v24
9471 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9473 + move-result v2
9475 + if-nez v2, :cond_5a
9477 + move-object/from16 v0, p0
9479 + move-object/from16 v1, v23
9481 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
9483 + :cond_5a
9484 + add-int/lit8 v18, v18, 0x1
9486 + goto :goto_3f
9488 + :cond_5d
9489 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9491 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9493 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9495 + move-result v2
9497 + add-int/lit8 v2, v2, 0x1
9499 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9501 + move-result-object v2
9503 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9505 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9507 + move-result-object v3
9509 + const/16 v16, 0x0
9511 + :try_start_73
9512 + const-string/jumbo v4, "settings"
9514 + const/4 v2, 0x1
9516 + new-array v5, v2, [Ljava/lang/String;
9518 + const/4 v2, 0x0
9520 + const-string/jumbo v6, "packageName"
9522 + aput-object v6, v5, v2
9524 + const/4 v6, 0x0
9526 + const/4 v7, 0x0
9528 + const/4 v8, 0x0
9530 + const/4 v9, 0x0
9532 + const/4 v10, 0x0
9534 + const/4 v11, 0x0
9536 + move-object/from16 v2, p0
9538 + 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;
9540 + move-result-object v16
9542 + new-instance v14, Ljava/util/ArrayList;
9544 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
9546 + :goto_90
9547 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
9549 + move-result v2
9551 + if-eqz v2, :cond_142
9553 + const/4 v2, 0x0
9555 + move-object/from16 v0, v16
9557 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9559 + move-result-object v24
9561 + move-object/from16 v0, v24
9563 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9565 + move-result v2
9567 + if-nez v2, :cond_e7
9569 + move-object/from16 v0, p0
9571 + move-object/from16 v1, v24
9573 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9574 + :try_end_ac
9575 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
9576 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
9578 + goto :goto_90
9580 + :catch_ad
9581 + move-exception v17
9583 + :try_start_ae
9584 + const-string v2, "PrivacyPersistenceAdapter"
9586 + const-string/jumbo v4, "purgeSettings - purging DB failed"
9588 + move-object/from16 v0, v17
9590 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9591 + :try_end_b8
9592 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
9594 + const/16 v25, 0x0
9596 + if-eqz v16, :cond_bf
9598 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9600 + :cond_bf
9601 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9603 + monitor-enter v4
9605 + :try_start_c2
9606 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9608 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9610 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9612 + move-result v2
9614 + add-int/lit8 v2, v2, -0x1
9616 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9618 + move-result-object v2
9620 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9622 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9624 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9626 + move-result v2
9628 + if-nez v2, :cond_e5
9630 + if-eqz v3, :cond_e5
9632 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9634 + move-result v2
9636 + if-eqz v2, :cond_e5
9638 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9640 + :cond_e5
9641 + monitor-exit v4
9642 + :try_end_e6
9643 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
9645 + :goto_e6
9646 + return v25
9648 + :cond_e7
9649 + :try_start_e7
9650 + move-object/from16 v0, v24
9652 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9654 + move-result v2
9656 + if-eqz v2, :cond_135
9658 + const/4 v2, 0x0
9660 + move-object/from16 v0, p0
9662 + move-object/from16 v1, v24
9664 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
9666 + move-result-object v22
9668 + move-object/from16 v0, p0
9670 + move-object/from16 v1, v24
9672 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9674 + move-object/from16 v0, p0
9676 + move-object/from16 v1, v22
9678 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9679 + :try_end_106
9680 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
9681 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
9683 + goto :goto_90
9685 + :catchall_107
9686 + move-exception v2
9688 + if-eqz v16, :cond_10d
9690 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9692 + :cond_10d
9693 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9695 + monitor-enter v4
9697 + :try_start_110
9698 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9700 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9702 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9704 + move-result v5
9706 + add-int/lit8 v5, v5, -0x1
9708 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9710 + move-result-object v5
9712 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9714 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9716 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9718 + move-result v5
9720 + if-nez v5, :cond_133
9722 + if-eqz v3, :cond_133
9724 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9726 + move-result v5
9728 + if-eqz v5, :cond_133
9730 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9732 + :cond_133
9733 + monitor-exit v4
9734 + :try_end_134
9735 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
9737 + throw v2
9739 + :cond_135
9740 + :try_start_135
9741 + move-object/from16 v0, v24
9743 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9744 + :try_end_13a
9745 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
9746 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
9748 + goto/16 :goto_90
9750 + :catchall_13c
9751 + move-exception v2
9753 + :try_start_13d
9754 + monitor-exit v4
9755 + :try_end_13e
9756 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
9758 + throw v2
9760 + :catchall_13f
9761 + move-exception v2
9763 + :try_start_140
9764 + monitor-exit v4
9765 + :try_end_141
9766 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
9768 + throw v2
9770 + :cond_142
9771 + if-eqz v16, :cond_147
9773 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9775 + :cond_147
9776 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9778 + monitor-enter v4
9780 + :try_start_14a
9781 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9783 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9785 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9787 + move-result v2
9789 + add-int/lit8 v2, v2, -0x1
9791 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9793 + move-result-object v2
9795 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9797 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9799 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9801 + move-result v2
9803 + if-nez v2, :cond_16d
9805 + if-eqz v3, :cond_16d
9807 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9809 + move-result v2
9811 + if-eqz v2, :cond_16d
9813 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9815 + :cond_16d
9816 + monitor-exit v4
9818 + goto/16 :goto_e6
9820 + :catchall_170
9821 + move-exception v2
9823 + monitor-exit v4
9824 + :try_end_172
9825 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
9827 + throw v2
9828 +.end method
9830 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
9831 + .registers 27
9833 + monitor-enter p0
9835 + const/16 v18, 0x1
9837 + :try_start_3
9838 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
9840 + move-result-object v17
9842 + if-eqz v17, :cond_f
9844 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->isEmpty()Z
9846 + move-result v3
9848 + if-eqz v3, :cond_1a
9850 + :cond_f
9851 + const-string v3, "PrivacyPersistenceAdapter"
9853 + const-string/jumbo v4, "saveSettings - either package name, UID or both is missing"
9855 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
9856 + :try_end_17
9857 + .catchall {:try_start_3 .. :try_end_17} :catchall_2c2
9859 + const/4 v3, 0x0
9861 + :goto_18
9862 + monitor-exit p0
9864 + return v3
9866 + :cond_1a
9867 + :try_start_1a
9868 + new-instance v23, Landroid/content/ContentValues;
9870 + invoke-direct/range {v23 .. v23}, Landroid/content/ContentValues;-><init>()V
9872 + const-string/jumbo v3, "packageName"
9874 + move-object/from16 v0, v23
9876 + move-object/from16 v1, v17
9878 + invoke-virtual {v0, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9880 + const-string/jumbo v3, "uid"
9882 + const/4 v4, -0x1
9884 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9886 + move-result-object v4
9888 + move-object/from16 v0, v23
9890 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
9892 + const-string v3, "deviceIdSetting"
9894 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
9896 + move-result v4
9898 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9900 + move-result-object v4
9902 + move-object/from16 v0, v23
9904 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9906 + const-string v3, "deviceId"
9908 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
9910 + move-result-object v4
9912 + move-object/from16 v0, v23
9914 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9916 + const-string v3, "line1NumberSetting"
9918 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
9920 + move-result v4
9922 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9924 + move-result-object v4
9926 + move-object/from16 v0, v23
9928 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9930 + const-string v3, "line1Number"
9932 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
9934 + move-result-object v4
9936 + move-object/from16 v0, v23
9938 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9940 + const-string v3, "locationGpsSetting"
9942 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
9944 + move-result v4
9946 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9948 + move-result-object v4
9950 + move-object/from16 v0, v23
9952 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9954 + const-string v3, "locationGpsLat"
9956 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
9958 + move-result-object v4
9960 + move-object/from16 v0, v23
9962 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9964 + const-string v3, "locationGpsLon"
9966 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
9968 + move-result-object v4
9970 + move-object/from16 v0, v23
9972 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9974 + const-string v3, "locationNetworkSetting"
9976 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
9978 + move-result v4
9980 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9982 + move-result-object v4
9984 + move-object/from16 v0, v23
9986 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9988 + const-string v3, "locationNetworkLat"
9990 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
9992 + move-result-object v4
9994 + move-object/from16 v0, v23
9996 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9998 + const-string v3, "locationNetworkLon"
10000 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
10002 + move-result-object v4
10004 + move-object/from16 v0, v23
10006 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10008 + const-string/jumbo v3, "networkInfoSetting"
10010 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
10012 + move-result v4
10014 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10016 + move-result-object v4
10018 + move-object/from16 v0, v23
10020 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10022 + const-string/jumbo v3, "simInfoSetting"
10024 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
10026 + move-result v4
10028 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10030 + move-result-object v4
10032 + move-object/from16 v0, v23
10034 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10036 + const-string/jumbo v3, "simSerialNumberSetting"
10038 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
10040 + move-result v4
10042 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10044 + move-result-object v4
10046 + move-object/from16 v0, v23
10048 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10050 + const-string/jumbo v3, "simSerialNumber"
10052 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
10054 + move-result-object v4
10056 + move-object/from16 v0, v23
10058 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10060 + const-string/jumbo v3, "subscriberIdSetting"
10062 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
10064 + move-result v4
10066 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10068 + move-result-object v4
10070 + move-object/from16 v0, v23
10072 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10074 + const-string/jumbo v3, "subscriberId"
10076 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
10078 + move-result-object v4
10080 + move-object/from16 v0, v23
10082 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10084 + const-string v3, "accountsSetting"
10086 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
10088 + move-result v4
10090 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10092 + move-result-object v4
10094 + move-object/from16 v0, v23
10096 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10098 + const-string v3, "accountsAuthTokensSetting"
10100 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
10102 + move-result v4
10104 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10106 + move-result-object v4
10108 + move-object/from16 v0, v23
10110 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10112 + const-string/jumbo v3, "outgoingCallsSetting"
10114 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
10116 + move-result v4
10118 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10120 + move-result-object v4
10122 + move-object/from16 v0, v23
10124 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10126 + const-string v3, "incomingCallsSetting"
10128 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
10130 + move-result v4
10132 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10134 + move-result-object v4
10136 + move-object/from16 v0, v23
10138 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10140 + const-string v3, "contactsSetting"
10142 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
10144 + move-result v4
10146 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10148 + move-result-object v4
10150 + move-object/from16 v0, v23
10152 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10154 + const-string v3, "calendarSetting"
10156 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
10158 + move-result v4
10160 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10162 + move-result-object v4
10164 + move-object/from16 v0, v23
10166 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10168 + const-string/jumbo v3, "mmsSetting"
10170 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
10172 + move-result v4
10174 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10176 + move-result-object v4
10178 + move-object/from16 v0, v23
10180 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10182 + const-string/jumbo v3, "smsSetting"
10184 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
10186 + move-result v4
10188 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10190 + move-result-object v4
10192 + move-object/from16 v0, v23
10194 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10196 + const-string v3, "callLogSetting"
10198 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
10200 + move-result v4
10202 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10204 + move-result-object v4
10206 + move-object/from16 v0, v23
10208 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10210 + const-string v3, "bookmarksSetting"
10212 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
10214 + move-result v4
10216 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10218 + move-result-object v4
10220 + move-object/from16 v0, v23
10222 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10224 + const-string/jumbo v3, "systemLogsSetting"
10226 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10228 + move-result v4
10230 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10232 + move-result-object v4
10234 + move-object/from16 v0, v23
10236 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10238 + const-string/jumbo v3, "notificationSetting"
10240 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
10242 + move-result v4
10244 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10246 + move-result-object v4
10248 + move-object/from16 v0, v23
10250 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10252 + const-string v3, "intentBootCompletedSetting"
10254 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
10256 + move-result v4
10258 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10260 + move-result-object v4
10262 + move-object/from16 v0, v23
10264 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10266 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10268 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10270 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10272 + move-result v3
10274 + add-int/lit8 v3, v3, 0x1
10276 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10278 + move-result-object v3
10280 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10282 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10284 + move-result-object v2
10286 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
10287 + :try_end_1eb
10288 + .catchall {:try_start_1a .. :try_end_1eb} :catchall_2c2
10290 + const/4 v11, 0x0
10292 + :try_start_1ec
10293 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
10295 + move-result-object v15
10297 + if-eqz v15, :cond_2c8
10299 + const-string/jumbo v3, "settings"
10301 + const-string v4, "_id=?"
10303 + const/4 v5, 0x1
10305 + new-array v5, v5, [Ljava/lang/String;
10307 + const/4 v6, 0x0
10309 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10311 + move-result-object v7
10313 + aput-object v7, v5, v6
10315 + move-object/from16 v0, v23
10317 + 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
10319 + move-result v3
10321 + const/4 v4, 0x1
10323 + if-ge v3, v4, :cond_249
10325 + new-instance v3, Ljava/lang/Exception;
10327 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10329 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10331 + throw v3
10332 + :try_end_213
10333 + .catchall {:try_start_1ec .. :try_end_213} :catchall_291
10334 + .catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_213} :catch_213
10336 + :catch_213
10337 + move-exception v13
10339 + const/16 v18, 0x0
10341 + :try_start_216
10342 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10344 + if-eqz v11, :cond_21e
10346 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10348 + :cond_21e
10349 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10351 + monitor-enter v4
10352 + :try_end_221
10353 + .catchall {:try_start_216 .. :try_end_221} :catchall_2c2
10355 + :try_start_221
10356 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10358 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10360 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10362 + move-result v3
10364 + add-int/lit8 v3, v3, -0x1
10366 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10368 + move-result-object v3
10370 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10372 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10374 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10376 + move-result v3
10378 + if-nez v3, :cond_244
10380 + if-eqz v2, :cond_244
10382 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10384 + move-result v3
10386 + if-eqz v3, :cond_244
10388 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10390 + :cond_244
10391 + monitor-exit v4
10392 + :try_end_245
10393 + .catchall {:try_start_221 .. :try_end_245} :catchall_4ca
10395 + :goto_245
10396 + move/from16 v3, v18
10398 + goto/16 :goto_18
10400 + :cond_249
10401 + :try_start_249
10402 + const-string v3, "allowed_contacts"
10404 + const-string/jumbo v4, "settings_id=?"
10406 + const/4 v5, 0x1
10408 + new-array v5, v5, [Ljava/lang/String;
10410 + const/4 v6, 0x0
10412 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10414 + move-result-object v7
10416 + aput-object v7, v5, v6
10418 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10420 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10422 + move-result-object v10
10424 + if-eqz v10, :cond_3f2
10426 + new-instance v12, Landroid/content/ContentValues;
10428 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10430 + const/4 v14, 0x0
10432 + :goto_267
10433 + array-length v3, v10
10435 + if-ge v14, v3, :cond_3f2
10437 + const-string/jumbo v3, "settings_id"
10439 + invoke-virtual {v12, v3, v15}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10441 + const-string v3, "contact_id"
10443 + aget v4, v10, v14
10445 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10447 + move-result-object v4
10449 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10451 + const-string v3, "allowed_contacts"
10453 + const/4 v4, 0x0
10455 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10457 + move-result-wide v3
10459 + const-wide/16 v5, -0x1
10461 + cmp-long v3, v3, v5
10463 + if-nez v3, :cond_2c5
10465 + new-instance v3, Ljava/lang/Exception;
10467 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10469 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10471 + throw v3
10472 + :try_end_291
10473 + .catchall {:try_start_249 .. :try_end_291} :catchall_291
10474 + .catch Ljava/lang/Exception; {:try_start_249 .. :try_end_291} :catch_213
10476 + :catchall_291
10477 + move-exception v3
10479 + :try_start_292
10480 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10482 + if-eqz v11, :cond_29a
10484 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10486 + :cond_29a
10487 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10489 + monitor-enter v4
10490 + :try_end_29d
10491 + .catchall {:try_start_292 .. :try_end_29d} :catchall_2c2
10493 + :try_start_29d
10494 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10496 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10498 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10500 + move-result v5
10502 + add-int/lit8 v5, v5, -0x1
10504 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10506 + move-result-object v5
10508 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10510 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10512 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10514 + move-result v5
10516 + if-nez v5, :cond_2c0
10518 + if-eqz v2, :cond_2c0
10520 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10522 + move-result v5
10524 + if-eqz v5, :cond_2c0
10526 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10528 + :cond_2c0
10529 + monitor-exit v4
10530 + :try_end_2c1
10531 + .catchall {:try_start_29d .. :try_end_2c1} :catchall_4cd
10533 + :try_start_2c1
10534 + throw v3
10535 + :try_end_2c2
10536 + .catchall {:try_start_2c1 .. :try_end_2c2} :catchall_2c2
10538 + :catchall_2c2
10539 + move-exception v3
10541 + monitor-exit p0
10543 + throw v3
10545 + :cond_2c5
10546 + add-int/lit8 v14, v14, 0x1
10548 + goto :goto_267
10550 + :cond_2c8
10551 + :try_start_2c8
10552 + const-string/jumbo v3, "settings"
10554 + const/4 v4, 0x1
10556 + new-array v4, v4, [Ljava/lang/String;
10558 + const/4 v5, 0x0
10560 + const-string v6, "_id"
10562 + aput-object v6, v4, v5
10564 + const-string/jumbo v5, "packageName=?"
10566 + const/4 v6, 0x1
10568 + new-array v6, v6, [Ljava/lang/String;
10570 + const/4 v7, 0x0
10572 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10574 + move-result-object v8
10576 + aput-object v8, v6, v7
10578 + const/4 v7, 0x0
10580 + const/4 v8, 0x0
10582 + const/4 v9, 0x0
10584 + 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;
10586 + move-result-object v11
10588 + if-eqz v11, :cond_3e7
10590 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10592 + move-result v3
10594 + const/4 v4, 0x1
10596 + if-ne v3, v4, :cond_36e
10598 + const-string/jumbo v3, "settings"
10600 + const-string/jumbo v4, "packageName=?"
10602 + const/4 v5, 0x1
10604 + new-array v5, v5, [Ljava/lang/String;
10606 + const/4 v6, 0x0
10608 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10610 + move-result-object v7
10612 + aput-object v7, v5, v6
10614 + move-object/from16 v0, v23
10616 + 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
10618 + move-result v3
10620 + const/4 v4, 0x1
10622 + if-ge v3, v4, :cond_312
10624 + new-instance v3, Ljava/lang/Exception;
10626 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10628 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10630 + throw v3
10632 + :cond_312
10633 + invoke-interface {v11}, Landroid/database/Cursor;->moveToFirst()Z
10635 + move-result v3
10637 + if-eqz v3, :cond_3f2
10639 + const/4 v3, 0x0
10641 + invoke-interface {v11, v3}, Landroid/database/Cursor;->getInt(I)I
10643 + move-result v3
10645 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10647 + move-result-object v16
10649 + const-string v3, "allowed_contacts"
10651 + const-string/jumbo v4, "settings_id=?"
10653 + const/4 v5, 0x1
10655 + new-array v5, v5, [Ljava/lang/String;
10657 + const/4 v6, 0x0
10659 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10661 + move-result-object v7
10663 + aput-object v7, v5, v6
10665 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10667 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10669 + move-result-object v10
10671 + if-eqz v10, :cond_3f2
10673 + new-instance v12, Landroid/content/ContentValues;
10675 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10677 + const/4 v14, 0x0
10679 + :goto_33f
10680 + array-length v3, v10
10682 + if-ge v14, v3, :cond_3f2
10684 + const-string/jumbo v3, "settings_id"
10686 + move-object/from16 v0, v16
10688 + invoke-virtual {v12, v3, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10690 + const-string v3, "contact_id"
10692 + aget v4, v10, v14
10694 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10696 + move-result-object v4
10698 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10700 + const-string v3, "allowed_contacts"
10702 + const/4 v4, 0x0
10704 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10706 + move-result-wide v3
10708 + const-wide/16 v5, -0x1
10710 + cmp-long v3, v3, v5
10712 + if-nez v3, :cond_36b
10714 + new-instance v3, Ljava/lang/Exception;
10716 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10718 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10720 + throw v3
10722 + :cond_36b
10723 + add-int/lit8 v14, v14, 0x1
10725 + goto :goto_33f
10727 + :cond_36e
10728 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10730 + move-result v3
10732 + if-nez v3, :cond_3dc
10734 + const-string/jumbo v3, "settings"
10736 + const/4 v4, 0x0
10738 + move-object/from16 v0, v23
10740 + invoke-virtual {v2, v3, v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10742 + move-result-wide v19
10744 + const-wide/16 v3, -0x1
10746 + cmp-long v3, v19, v3
10748 + if-nez v3, :cond_38d
10750 + new-instance v3, Ljava/lang/Exception;
10752 + const-string/jumbo v4, "saveSettings - failed to insert new record into DB"
10754 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10756 + throw v3
10758 + :cond_38d
10759 + const-string v3, "allowed_contacts"
10761 + const-string/jumbo v4, "settings_id=?"
10763 + const/4 v5, 0x1
10765 + new-array v5, v5, [Ljava/lang/String;
10767 + const/4 v6, 0x0
10769 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
10771 + move-result-object v7
10773 + aput-object v7, v5, v6
10775 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10777 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10779 + move-result-object v10
10781 + if-eqz v10, :cond_3f2
10783 + new-instance v12, Landroid/content/ContentValues;
10785 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10787 + const/4 v14, 0x0
10789 + :goto_3ab
10790 + array-length v3, v10
10792 + if-ge v14, v3, :cond_3f2
10794 + const-string/jumbo v3, "settings_id"
10796 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
10798 + move-result-object v4
10800 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
10802 + const-string v3, "contact_id"
10804 + aget v4, v10, v14
10806 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10808 + move-result-object v4
10810 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10812 + const-string v3, "allowed_contacts"
10814 + const/4 v4, 0x0
10816 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10818 + move-result-wide v3
10820 + const-wide/16 v5, -0x1
10822 + cmp-long v3, v3, v5
10824 + if-nez v3, :cond_3d9
10826 + new-instance v3, Ljava/lang/Exception;
10828 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10830 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10832 + throw v3
10834 + :cond_3d9
10835 + add-int/lit8 v14, v14, 0x1
10837 + goto :goto_3ab
10839 + :cond_3dc
10840 + const/16 v18, 0x0
10842 + new-instance v3, Ljava/lang/Exception;
10844 + const-string/jumbo v4, "saveSettings - duplicate entries in the privacy.db"
10846 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10848 + throw v3
10850 + :cond_3e7
10851 + const/16 v18, 0x0
10853 + new-instance v3, Ljava/lang/Exception;
10855 + const-string/jumbo v4, "saveSettings - cursor is null, database access failed"
10857 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10859 + throw v3
10861 + :cond_3f2
10862 + new-instance v21, Ljava/io/File;
10864 + new-instance v3, Ljava/lang/StringBuilder;
10866 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10868 + const-string v4, "/data/system/privacy/"
10870 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10872 + move-result-object v3
10874 + move-object/from16 v0, v17
10876 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10878 + move-result-object v3
10880 + const-string v4, "/"
10882 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10884 + move-result-object v3
10886 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10888 + move-result-object v3
10890 + move-object/from16 v0, v21
10892 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10894 + new-instance v22, Ljava/io/File;
10896 + new-instance v3, Ljava/lang/StringBuilder;
10898 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10900 + const-string v4, "/data/system/privacy/"
10902 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10904 + move-result-object v3
10906 + move-object/from16 v0, v17
10908 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10910 + move-result-object v3
10912 + const-string v4, "/"
10914 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10916 + move-result-object v3
10918 + const-string v4, "/systemLogsSetting"
10920 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10922 + move-result-object v3
10924 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10926 + move-result-object v3
10928 + move-object/from16 v0, v22
10930 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10931 + :try_end_43c
10932 + .catchall {:try_start_2c8 .. :try_end_43c} :catchall_291
10933 + .catch Ljava/lang/Exception; {:try_start_2c8 .. :try_end_43c} :catch_213
10935 + :try_start_43c
10936 + invoke-virtual/range {v21 .. v21}, Ljava/io/File;->mkdirs()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;->setReadable(ZZ)Z
10946 + const/4 v3, 0x1
10948 + const/4 v4, 0x0
10950 + move-object/from16 v0, v21
10952 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setExecutable(ZZ)Z
10954 + invoke-virtual/range {v22 .. v22}, Ljava/io/File;->createNewFile()Z
10956 + const/4 v3, 0x1
10958 + const/4 v4, 0x0
10960 + move-object/from16 v0, v22
10962 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10964 + new-instance v24, Ljava/io/OutputStreamWriter;
10966 + new-instance v3, Ljava/io/FileOutputStream;
10968 + move-object/from16 v0, v22
10970 + invoke-direct {v3, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
10972 + move-object/from16 v0, v24
10974 + invoke-direct {v0, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
10976 + new-instance v3, Ljava/lang/StringBuilder;
10978 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10980 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10982 + move-result v4
10984 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
10986 + move-result-object v3
10988 + const-string v4, ""
10990 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10992 + move-result-object v3
10994 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10996 + move-result-object v3
10998 + move-object/from16 v0, v24
11000 + invoke-virtual {v0, v3}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
11002 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->flush()V
11004 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->close()V
11005 + :try_end_487
11006 + .catchall {:try_start_43c .. :try_end_487} :catchall_291
11007 + .catch Ljava/io/IOException; {:try_start_43c .. :try_end_487} :catch_4be
11008 + .catch Ljava/lang/Exception; {:try_start_43c .. :try_end_487} :catch_213
11010 + :try_start_487
11011 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11012 + :try_end_48a
11013 + .catchall {:try_start_487 .. :try_end_48a} :catchall_291
11014 + .catch Ljava/lang/Exception; {:try_start_487 .. :try_end_48a} :catch_213
11016 + :try_start_48a
11017 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11019 + if-eqz v11, :cond_492
11021 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
11023 + :cond_492
11024 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11026 + monitor-enter v4
11027 + :try_end_495
11028 + .catchall {:try_start_48a .. :try_end_495} :catchall_2c2
11030 + :try_start_495
11031 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11033 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11035 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11037 + move-result v3
11039 + add-int/lit8 v3, v3, -0x1
11041 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11043 + move-result-object v3
11045 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11047 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11049 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11051 + move-result v3
11053 + if-nez v3, :cond_4b8
11055 + if-eqz v2, :cond_4b8
11057 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11059 + move-result v3
11061 + if-eqz v3, :cond_4b8
11063 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11065 + :cond_4b8
11066 + monitor-exit v4
11068 + goto/16 :goto_245
11070 + :catchall_4bb
11071 + move-exception v3
11073 + monitor-exit v4
11074 + :try_end_4bd
11075 + .catchall {:try_start_495 .. :try_end_4bd} :catchall_4bb
11077 + :try_start_4bd
11078 + throw v3
11079 + :try_end_4be
11080 + .catchall {:try_start_4bd .. :try_end_4be} :catchall_2c2
11082 + :catch_4be
11083 + move-exception v13
11085 + const/16 v18, 0x0
11087 + :try_start_4c1
11088 + new-instance v3, Ljava/lang/Exception;
11090 + const-string/jumbo v4, "saveSettings - could not write settings to file"
11092 + invoke-direct {v3, v4, v13}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
11094 + throw v3
11095 + :try_end_4ca
11096 + .catchall {:try_start_4c1 .. :try_end_4ca} :catchall_291
11097 + .catch Ljava/lang/Exception; {:try_start_4c1 .. :try_end_4ca} :catch_213
11099 + :catchall_4ca
11100 + move-exception v3
11102 + :try_start_4cb
11103 + monitor-exit v4
11104 + :try_end_4cc
11105 + .catchall {:try_start_4cb .. :try_end_4cc} :catchall_4ca
11107 + :try_start_4cc
11108 + throw v3
11109 + :try_end_4cd
11110 + .catchall {:try_start_4cc .. :try_end_4cd} :catchall_2c2
11112 + :catchall_4cd
11113 + move-exception v3
11115 + :try_start_4ce
11116 + monitor-exit v4
11117 + :try_end_4cf
11118 + .catchall {:try_start_4ce .. :try_end_4cf} :catchall_4cd
11120 + :try_start_4cf
11121 + throw v3
11122 + :try_end_4d0
11123 + .catchall {:try_start_4cf .. :try_end_4d0} :catchall_2c2
11124 +.end method
11126 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
11127 + .registers 10
11129 + monitor-enter p0
11131 + :try_start_1
11132 + const-string v3, "PrivacyPersistenceAdapter"
11134 + new-instance v4, Ljava/lang/StringBuilder;
11136 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11138 + const-string/jumbo v5, "setValue - name "
11140 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11142 + move-result-object v4
11144 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11146 + move-result-object v4
11148 + const-string v5, " value "
11150 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11152 + move-result-object v4
11154 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11156 + move-result-object v4
11158 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11160 + move-result-object v4
11162 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11164 + new-instance v2, Landroid/content/ContentValues;
11166 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
11168 + const-string/jumbo v3, "name"
11170 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11172 + const-string/jumbo v3, "value"
11174 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11176 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11178 + move-result-object v0
11180 + const-string/jumbo v3, "map"
11182 + const/4 v4, 0x0
11184 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11186 + move-result-wide v3
11188 + const-wide/16 v5, -0x1
11190 + cmp-long v3, v3, v5
11192 + if-eqz v3, :cond_5d
11194 + const/4 v1, 0x1
11196 + :goto_48
11197 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11199 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11201 + move-result v3
11203 + if-nez v3, :cond_5b
11205 + if-eqz v0, :cond_5b
11207 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11209 + move-result v3
11211 + if-eqz v3, :cond_5b
11213 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11214 + :try_end_5b
11215 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
11217 + :cond_5b
11218 + monitor-exit p0
11220 + return v1
11222 + :cond_5d
11223 + const/4 v1, 0x0
11225 + goto :goto_48
11227 + :catchall_5f
11228 + move-exception v3
11230 + monitor-exit p0
11232 + throw v3
11233 +.end method
11234 diff -Npru stock-framework/smali/android/privacy/PrivacySettings$1.smali pdroid-framework/smali/android/privacy/PrivacySettings$1.smali
11235 --- stock-framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 18:00:00.000000000 -0600
11236 +++ pdroid-framework/smali/android/privacy/PrivacySettings$1.smali 2012-05-06 12:13:39.783697912 -0500
11237 @@ -0,0 +1,77 @@
11238 +.class final Landroid/privacy/PrivacySettings$1;
11239 +.super Ljava/lang/Object;
11240 +.source "PrivacySettings.java"
11242 +# interfaces
11243 +.implements Landroid/os/Parcelable$Creator;
11246 +# annotations
11247 +.annotation system Ldalvik/annotation/EnclosingClass;
11248 + value = Landroid/privacy/PrivacySettings;
11249 +.end annotation
11251 +.annotation system Ldalvik/annotation/InnerClass;
11252 + accessFlags = 0x8
11253 + name = null
11254 +.end annotation
11256 +.annotation system Ldalvik/annotation/Signature;
11257 + value = {
11258 + "Ljava/lang/Object;",
11259 + "Landroid/os/Parcelable$Creator",
11260 + "<",
11261 + "Landroid/privacy/PrivacySettings;",
11262 + ">;"
11264 +.end annotation
11267 +# direct methods
11268 +.method constructor <init>()V
11269 + .registers 1
11271 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11273 + return-void
11274 +.end method
11277 +# virtual methods
11278 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11279 + .registers 3
11281 + new-instance v0, Landroid/privacy/PrivacySettings;
11283 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
11285 + return-object v0
11286 +.end method
11288 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
11289 + .registers 3
11291 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11293 + move-result-object v0
11295 + return-object v0
11296 +.end method
11298 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
11299 + .registers 3
11301 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
11303 + return-object v0
11304 +.end method
11306 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
11307 + .registers 3
11309 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
11311 + move-result-object v0
11313 + return-object v0
11314 +.end method
11315 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali
11316 --- stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 18:00:00.000000000 -0600
11317 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-05-06 12:13:39.787697940 -0500
11318 @@ -0,0 +1,535 @@
11319 +.class public Landroid/privacy/PrivacySettingsManagerService;
11320 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
11321 +.source "PrivacySettingsManagerService.java"
11324 +# static fields
11325 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
11327 +.field private static final VERSION:D = 1.32
11329 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
11331 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
11334 +# instance fields
11335 +.field private bootCompleted:Z
11337 +.field private context:Landroid/content/Context;
11339 +.field private enabled:Z
11341 +.field private notificationsEnabled:Z
11343 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11346 +# direct methods
11347 +.method public constructor <init>(Landroid/content/Context;)V
11348 + .registers 5
11350 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
11352 + const-string v0, "PrivacySettingsManagerService"
11354 + new-instance v1, Ljava/lang/StringBuilder;
11356 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11358 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
11360 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11362 + move-result-object v1
11364 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11366 + move-result-object v2
11368 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11370 + move-result-object v1
11372 + const-string v2, " UID: "
11374 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11376 + move-result-object v1
11378 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11380 + move-result v2
11382 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11384 + move-result-object v1
11386 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11388 + move-result-object v1
11390 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11392 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11394 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
11396 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
11398 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11400 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11402 + const-string v1, "/data/system/privacy"
11404 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11406 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11408 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11410 + const-string v1, "enabled"
11412 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11414 + move-result-object v0
11416 + const-string v1, "1"
11418 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11420 + move-result v0
11422 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11424 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11426 + const-string/jumbo v1, "notifications_enabled"
11428 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11430 + move-result-object v0
11432 + const-string v1, "1"
11434 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11436 + move-result v0
11438 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11440 + const/4 v0, 0x0
11442 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11444 + return-void
11445 +.end method
11448 +# virtual methods
11449 +.method public addObserver(Ljava/lang/String;)V
11450 + .registers 5
11452 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11454 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11456 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11458 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11460 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11462 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11464 + return-void
11465 +.end method
11467 +.method public deleteSettings(Ljava/lang/String;)Z
11468 + .registers 8
11470 + const/4 v5, 0x1
11472 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11474 + move-result v2
11476 + const/16 v3, 0x3e8
11478 + if-eq v2, v3, :cond_12
11480 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11482 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
11484 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
11486 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11488 + :cond_12
11489 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11491 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
11493 + move-result v1
11495 + new-instance v2, Ljava/lang/StringBuilder;
11497 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11499 + const-string v3, "/data/system/privacy/"
11501 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11503 + move-result-object v2
11505 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11507 + move-result-object v2
11509 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11511 + move-result-object v0
11513 + new-instance v2, Ljava/io/File;
11515 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11517 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
11519 + move-result v2
11521 + if-eqz v2, :cond_3e
11523 + if-ne v1, v5, :cond_3e
11525 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11527 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11529 + :cond_3d
11530 + :goto_3d
11531 + return v1
11533 + :cond_3e
11534 + if-ne v1, v5, :cond_3d
11536 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11538 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
11540 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
11542 + goto :goto_3d
11543 +.end method
11545 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11546 + .registers 4
11548 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11550 + if-nez v0, :cond_12
11552 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11554 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11556 + move-result-object v0
11558 + const-string v1, "com.privacy.pdroid"
11560 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11562 + move-result v0
11564 + if-eqz v0, :cond_1a
11566 + :cond_12
11567 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11569 + const/4 v1, 0x0
11571 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
11573 + move-result-object v0
11575 + :goto_19
11576 + return-object v0
11578 + :cond_1a
11579 + const/4 v0, 0x0
11581 + goto :goto_19
11582 +.end method
11584 +.method public getVersion()D
11585 + .registers 3
11587 + const-wide v0, 0x3ff51eb851eb851fL
11589 + return-wide v0
11590 +.end method
11592 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11593 + .registers 8
11595 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11597 + if-eqz v1, :cond_34
11599 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11601 + if-eqz v1, :cond_34
11603 + new-instance v0, Landroid/content/Intent;
11605 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
11607 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11609 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
11611 + const-string/jumbo v1, "packageName"
11613 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11615 + const-string/jumbo v1, "uid"
11617 + const/4 v2, -0x1
11619 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
11621 + const-string v1, "accessMode"
11623 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
11625 + const-string v1, "dataType"
11627 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11629 + const-string/jumbo v1, "output"
11631 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11633 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11635 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
11637 + :cond_34
11638 + return-void
11639 +.end method
11641 +.method public purgeSettings()Z
11642 + .registers 2
11644 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11646 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11648 + move-result v0
11650 + return v0
11651 +.end method
11653 +.method public registerObservers()V
11654 + .registers 4
11656 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11658 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11660 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11662 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11664 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11666 + const-string v1, "/data/system/privacy"
11668 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11670 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11672 + return-void
11673 +.end method
11675 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
11676 + .registers 6
11678 + const-string v1, "PrivacySettingsManagerService"
11680 + new-instance v2, Ljava/lang/StringBuilder;
11682 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11684 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
11686 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11688 + move-result-object v2
11690 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11692 + move-result v3
11694 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11696 + move-result-object v2
11698 + const-string v3, ") has sufficient permissions"
11700 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11702 + move-result-object v2
11704 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11706 + move-result-object v2
11708 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11710 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11712 + move-result v1
11714 + const/16 v2, 0x3e8
11716 + if-eq v1, v2, :cond_34
11718 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11720 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
11722 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
11724 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11726 + :cond_34
11727 + const-string v1, "PrivacySettingsManagerService"
11729 + new-instance v2, Ljava/lang/StringBuilder;
11731 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11733 + const-string/jumbo v3, "saveSettings - "
11735 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11737 + move-result-object v2
11739 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11741 + move-result-object v2
11743 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11745 + move-result-object v2
11747 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11749 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11751 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
11753 + move-result v0
11755 + const/4 v1, 0x1
11757 + if-ne v0, v1, :cond_5f
11759 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11761 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
11763 + move-result-object v2
11765 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11767 + :cond_5f
11768 + return v0
11769 +.end method
11771 +.method public setBootCompleted()V
11772 + .registers 2
11774 + const/4 v0, 0x1
11776 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11778 + return-void
11779 +.end method
11781 +.method public setEnabled(Z)Z
11782 + .registers 6
11784 + const/4 v1, 0x1
11786 + if-eqz p1, :cond_12
11788 + const-string v0, "1"
11790 + :goto_5
11791 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11793 + const-string v3, "enabled"
11795 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11797 + move-result v2
11799 + if-eqz v2, :cond_15
11801 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11803 + :goto_11
11804 + return v1
11806 + :cond_12
11807 + const-string v0, "0"
11809 + goto :goto_5
11811 + :cond_15
11812 + const/4 v1, 0x0
11814 + goto :goto_11
11815 +.end method
11817 +.method public setNotificationsEnabled(Z)Z
11818 + .registers 6
11820 + const/4 v1, 0x1
11822 + if-eqz p1, :cond_15
11824 + const-string v0, "1"
11826 + :goto_5
11827 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11829 + const-string/jumbo v3, "notifications_enabled"
11831 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11833 + move-result v2
11835 + if-eqz v2, :cond_18
11837 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11839 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11841 + :goto_14
11842 + return v1
11844 + :cond_15
11845 + const-string v0, "0"
11847 + goto :goto_5
11849 + :cond_18
11850 + const/4 v1, 0x0
11852 + goto :goto_14
11853 +.end method
11854 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManager.smali pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali
11855 --- stock-framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
11856 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali 2012-05-06 12:13:39.787697940 -0500
11857 @@ -0,0 +1,531 @@
11858 +.class public Landroid/privacy/PrivacySettingsManager;
11859 +.super Ljava/lang/Object;
11860 +.source "PrivacySettingsManager.java"
11863 +# static fields
11864 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11866 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
11869 +# instance fields
11870 +.field private service:Landroid/privacy/IPrivacySettingsManager;
11873 +# direct methods
11874 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
11875 + .registers 3
11877 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11879 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11881 + return-void
11882 +.end method
11885 +# virtual methods
11886 +.method public addObserver(Ljava/lang/String;)V
11887 + .registers 5
11889 + :try_start_0
11890 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11892 + if-eqz v1, :cond_a
11894 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11896 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
11898 + :goto_9
11899 + return-void
11901 + :cond_a
11902 + const-string v1, "PrivacySettingsManager"
11904 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
11906 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11907 + :try_end_11
11908 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
11910 + goto :goto_9
11912 + :catch_12
11913 + move-exception v0
11915 + const-string v1, "PrivacySettingsManager"
11917 + const-string v2, "RemoteException in addObserver: "
11919 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11921 + goto :goto_9
11922 +.end method
11924 +.method public deleteSettings(Ljava/lang/String;)Z
11925 + .registers 3
11927 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11929 + move-result v0
11931 + return v0
11932 +.end method
11934 +.method public deleteSettings(Ljava/lang/String;I)Z
11935 + .registers 7
11937 + const/4 v1, 0x0
11939 + :try_start_1
11940 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11942 + if-eqz v2, :cond_c
11944 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11946 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11948 + move-result v1
11950 + :goto_b
11951 + return v1
11953 + :cond_c
11954 + const-string v2, "PrivacySettingsManager"
11956 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
11958 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11959 + :try_end_13
11960 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11962 + goto :goto_b
11964 + :catch_14
11965 + move-exception v0
11967 + const-string v2, "PrivacySettingsManager"
11969 + const-string v3, "RemoteException in deleteSettings: "
11971 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11973 + goto :goto_b
11974 +.end method
11976 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11977 + .registers 6
11979 + const/4 v1, 0x0
11981 + :try_start_1
11982 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11984 + if-eqz v2, :cond_c
11986 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11988 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11990 + move-result-object v1
11992 + :goto_b
11993 + return-object v1
11995 + :cond_c
11996 + const-string v2, "PrivacySettingsManager"
11998 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
12000 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12001 + :try_end_13
12002 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
12004 + goto :goto_b
12006 + :catch_14
12007 + move-exception v0
12009 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
12011 + goto :goto_b
12012 +.end method
12014 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
12015 + .registers 4
12017 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12019 + move-result-object v0
12021 + return-object v0
12022 +.end method
12024 +.method public getVersion()D
12025 + .registers 4
12027 + :try_start_0
12028 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12030 + if-eqz v1, :cond_b
12032 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12034 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
12036 + move-result-wide v1
12038 + :goto_a
12039 + return-wide v1
12041 + :cond_b
12042 + const-string v1, "PrivacySettingsManager"
12044 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
12046 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12047 + :try_end_12
12048 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
12050 + :goto_12
12051 + const-wide/16 v1, 0x0
12053 + goto :goto_a
12055 + :catch_15
12056 + move-exception v0
12058 + const-string v1, "PrivacySettingsManager"
12060 + const-string v2, "RemoteException in getVersion: "
12062 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12064 + goto :goto_12
12065 +.end method
12067 +.method public isServiceAvailable()Z
12068 + .registers 2
12070 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12072 + if-eqz v0, :cond_6
12074 + const/4 v0, 0x1
12076 + :goto_5
12077 + return v0
12079 + :cond_6
12080 + const/4 v0, 0x0
12082 + goto :goto_5
12083 +.end method
12085 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12086 + .registers 9
12088 + :try_start_0
12089 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12091 + if-eqz v1, :cond_a
12093 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12095 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
12097 + :goto_9
12098 + return-void
12100 + :cond_a
12101 + const-string v1, "PrivacySettingsManager"
12103 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12105 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12106 + :try_end_11
12107 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12109 + goto :goto_9
12111 + :catch_12
12112 + move-exception v0
12114 + const-string v1, "PrivacySettingsManager"
12116 + const-string v2, "RemoteException in notification: "
12118 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12120 + goto :goto_9
12121 +.end method
12123 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12124 + .registers 13
12126 + move-object v0, p0
12128 + move-object v1, p1
12130 + move v2, p3
12132 + move-object v3, p4
12134 + move-object v4, p5
12136 + move-object v5, p6
12138 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12140 + return-void
12141 +.end method
12143 +.method public purgeSettings()Z
12144 + .registers 4
12146 + :try_start_0
12147 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12149 + if-eqz v1, :cond_b
12151 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12153 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
12155 + move-result v1
12157 + :goto_a
12158 + return v1
12160 + :cond_b
12161 + const-string v1, "PrivacySettingsManager"
12163 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12165 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12166 + :try_end_12
12167 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
12169 + :goto_12
12170 + const/4 v1, 0x0
12172 + goto :goto_a
12174 + :catch_14
12175 + move-exception v0
12177 + const-string v1, "PrivacySettingsManager"
12179 + const-string v2, "RemoteException in purgeSettings: "
12181 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12183 + goto :goto_12
12184 +.end method
12186 +.method public registerObservers()V
12187 + .registers 4
12189 + :try_start_0
12190 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12192 + if-eqz v1, :cond_a
12194 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12196 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
12198 + :goto_9
12199 + return-void
12201 + :cond_a
12202 + const-string v1, "PrivacySettingsManager"
12204 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12206 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12207 + :try_end_11
12208 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12210 + goto :goto_9
12212 + :catch_12
12213 + move-exception v0
12215 + const-string v1, "PrivacySettingsManager"
12217 + const-string v2, "RemoteException in registerObservers: "
12219 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12221 + goto :goto_9
12222 +.end method
12224 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
12225 + .registers 6
12227 + const/4 v1, 0x0
12229 + :try_start_1
12230 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12232 + if-eqz v2, :cond_c
12234 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12236 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12238 + move-result v1
12240 + :goto_b
12241 + return v1
12243 + :cond_c
12244 + const-string v2, "PrivacySettingsManager"
12246 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
12248 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12249 + :try_end_14
12250 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
12252 + goto :goto_b
12254 + :catch_15
12255 + move-exception v0
12257 + const-string v2, "PrivacySettingsManager"
12259 + const-string v3, "RemoteException in saveSettings: "
12261 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12263 + goto :goto_b
12264 +.end method
12266 +.method public setBootCompleted()V
12267 + .registers 4
12269 + :try_start_0
12270 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12272 + if-eqz v1, :cond_a
12274 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12276 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
12278 + :goto_9
12279 + return-void
12281 + :cond_a
12282 + const-string v1, "PrivacySettingsManager"
12284 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
12286 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12287 + :try_end_12
12288 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
12290 + goto :goto_9
12292 + :catch_13
12293 + move-exception v0
12295 + const-string v1, "PrivacySettingsManager"
12297 + const-string v2, "RemoteException in setBootCompleted: "
12299 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12301 + goto :goto_9
12302 +.end method
12304 +.method public setEnabled(Z)Z
12305 + .registers 5
12307 + :try_start_0
12308 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12310 + if-eqz v1, :cond_b
12312 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12314 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
12316 + move-result v1
12318 + :goto_a
12319 + return v1
12321 + :cond_b
12322 + const-string v1, "PrivacySettingsManager"
12324 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
12326 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12327 + :try_end_13
12328 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12330 + :goto_13
12331 + const/4 v1, 0x0
12333 + goto :goto_a
12335 + :catch_15
12336 + move-exception v0
12338 + const-string v1, "PrivacySettingsManager"
12340 + const-string v2, "RemoteException in setEnabled: "
12342 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12344 + goto :goto_13
12345 +.end method
12347 +.method public setNotificationsEnabled(Z)Z
12348 + .registers 5
12350 + :try_start_0
12351 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12353 + if-eqz v1, :cond_b
12355 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12357 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
12359 + move-result v1
12361 + :goto_a
12362 + return v1
12364 + :cond_b
12365 + const-string v1, "PrivacySettingsManager"
12367 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
12369 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12370 + :try_end_13
12371 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12373 + :goto_13
12374 + const/4 v1, 0x0
12376 + goto :goto_a
12378 + :catch_15
12379 + move-exception v0
12381 + const-string v1, "PrivacySettingsManager"
12383 + const-string v2, "RemoteException in setNotificationsEnabled: "
12385 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12387 + goto :goto_13
12388 +.end method
12389 diff -Npru stock-framework/smali/android/privacy/PrivacySettings.smali pdroid-framework/smali/android/privacy/PrivacySettings.smali
12390 --- stock-framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 18:00:00.000000000 -0600
12391 +++ pdroid-framework/smali/android/privacy/PrivacySettings.smali 2012-05-06 12:13:39.787697940 -0500
12392 @@ -0,0 +1,2109 @@
12393 +.class public final Landroid/privacy/PrivacySettings;
12394 +.super Ljava/lang/Object;
12395 +.source "PrivacySettings.java"
12397 +# interfaces
12398 +.implements Landroid/os/Parcelable;
12401 +# static fields
12402 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
12403 + .annotation system Ldalvik/annotation/Signature;
12404 + value = {
12405 + "Landroid/os/Parcelable$Creator",
12406 + "<",
12407 + "Landroid/privacy/PrivacySettings;",
12408 + ">;"
12410 + .end annotation
12411 +.end field
12413 +.field public static final CUSTOM:B = 0x2t
12415 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
12417 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
12419 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
12421 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
12423 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
12425 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
12427 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
12429 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
12431 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
12433 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
12435 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
12437 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
12439 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
12441 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
12443 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
12445 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
12447 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
12449 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
12451 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
12453 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
12455 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
12457 +.field public static final EMPTY:B = 0x1t
12459 +.field public static final RANDOM:B = 0x3t
12461 +.field public static final REAL:B = 0x0t
12463 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
12465 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
12468 +# instance fields
12469 +.field private final _id:Ljava/lang/Integer;
12471 +.field private accountsAuthTokensSetting:B
12473 +.field private accountsSetting:B
12475 +.field private allowedContacts:[I
12477 +.field private bookmarksSetting:B
12479 +.field private calendarSetting:B
12481 +.field private callLogSetting:B
12483 +.field private contactsSetting:B
12485 +.field private deviceId:Ljava/lang/String;
12487 +.field private deviceIdSetting:B
12489 +.field private incomingCallsSetting:B
12491 +.field private intentBootCompletedSetting:B
12493 +.field private line1Number:Ljava/lang/String;
12495 +.field private line1NumberSetting:B
12497 +.field private locationGpsLat:Ljava/lang/String;
12499 +.field private locationGpsLon:Ljava/lang/String;
12501 +.field private locationGpsSetting:B
12503 +.field private locationNetworkLat:Ljava/lang/String;
12505 +.field private locationNetworkLon:Ljava/lang/String;
12507 +.field private locationNetworkSetting:B
12509 +.field private mmsSetting:B
12511 +.field private networkInfoSetting:B
12513 +.field private notificationSetting:B
12515 +.field private outgoingCallsSetting:B
12517 +.field private packageName:Ljava/lang/String;
12519 +.field private simInfoSetting:B
12521 +.field private simSerialNumber:Ljava/lang/String;
12523 +.field private simSerialNumberSetting:B
12525 +.field private smsSetting:B
12527 +.field private subscriberId:Ljava/lang/String;
12529 +.field private subscriberIdSetting:B
12531 +.field private systemLogsSetting:B
12533 +.field private uid:I
12536 +# direct methods
12537 +.method static constructor <clinit>()V
12538 + .registers 1
12540 + new-instance v0, Landroid/privacy/PrivacySettings$1;
12542 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
12544 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
12546 + return-void
12547 +.end method
12549 +.method public constructor <init>(Landroid/os/Parcel;)V
12550 + .registers 4
12552 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12554 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12556 + move-result v0
12558 + const/4 v1, -0x1
12560 + if-ne v0, v1, :cond_ce
12562 + const/4 v1, 0x0
12564 + :goto_b
12565 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12567 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12569 + move-result-object v1
12571 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12573 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12575 + move-result v1
12577 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
12579 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12581 + move-result v1
12583 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12585 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12587 + move-result-object v1
12589 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12591 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12593 + move-result v1
12595 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12597 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12599 + move-result-object v1
12601 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12603 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12605 + move-result v1
12607 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12609 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12611 + move-result-object v1
12613 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12615 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12617 + move-result-object v1
12619 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12621 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12623 + move-result v1
12625 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12627 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12629 + move-result-object v1
12631 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12633 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12635 + move-result-object v1
12637 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12639 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12641 + move-result v1
12643 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12645 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12647 + move-result v1
12649 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12651 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12653 + move-result v1
12655 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12657 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12659 + move-result-object v1
12661 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12663 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12665 + move-result v1
12667 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12669 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12671 + move-result-object v1
12673 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12675 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12677 + move-result v1
12679 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12681 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12683 + move-result v1
12685 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12687 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12689 + move-result v1
12691 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12693 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12695 + move-result v1
12697 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12699 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12701 + move-result v1
12703 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12705 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12707 + move-result v1
12709 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12711 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12713 + move-result v1
12715 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12717 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12719 + move-result v1
12721 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12723 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12725 + move-result v1
12727 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12729 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12731 + move-result v1
12733 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12735 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12737 + move-result v1
12739 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12741 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12743 + move-result v1
12745 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12747 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12749 + move-result v1
12751 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12753 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
12755 + move-result-object v1
12757 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12759 + return-void
12761 + :cond_ce
12762 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12764 + move-result-object v1
12766 + goto/16 :goto_b
12767 +.end method
12769 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
12770 + .registers 6
12772 + const/4 v1, 0x0
12774 + const/4 v0, 0x0
12776 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12778 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12780 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12782 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12784 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12786 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12788 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12790 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12792 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12794 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12796 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12798 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12800 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12802 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12804 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12806 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12808 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12810 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12812 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12814 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12816 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12818 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12820 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12822 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12824 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12826 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12828 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12830 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12832 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12834 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12836 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12838 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12840 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12842 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12844 + return-void
12845 +.end method
12847 +.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
12848 + .registers 38
12850 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12852 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12854 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12856 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12858 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12860 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12862 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12864 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12866 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12868 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12870 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12872 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12874 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12876 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12878 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12880 + move/from16 v0, p15
12882 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12884 + move/from16 v0, p16
12886 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12888 + move-object/from16 v0, p17
12890 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12892 + move/from16 v0, p18
12894 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12896 + move-object/from16 v0, p19
12898 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12900 + move/from16 v0, p20
12902 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12904 + move/from16 v0, p21
12906 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12908 + move/from16 v0, p22
12910 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12912 + move/from16 v0, p23
12914 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12916 + move/from16 v0, p24
12918 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12920 + move/from16 v0, p25
12922 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12924 + move/from16 v0, p26
12926 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12928 + move/from16 v0, p27
12930 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12932 + move/from16 v0, p28
12934 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12936 + move/from16 v0, p29
12938 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12940 + move/from16 v0, p30
12942 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12944 + move/from16 v0, p34
12946 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12948 + move/from16 v0, p35
12950 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12952 + move-object/from16 v0, p36
12954 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12956 + return-void
12957 +.end method
12959 +.method private getRandomLat()Ljava/lang/String;
12960 + .registers 10
12962 + const-wide v7, 0x4056800000000000L
12964 + invoke-static {}, Ljava/lang/Math;->random()D
12966 + move-result-wide v3
12968 + const-wide v5, 0x4066800000000000L
12970 + mul-double v0, v3, v5
12972 + cmpl-double v3, v0, v7
12974 + if-lez v3, :cond_35
12976 + new-instance v2, Ljava/math/BigDecimal;
12978 + sub-double v3, v0, v7
12980 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12982 + :goto_1b
12983 + new-instance v3, Ljava/lang/StringBuilder;
12985 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
12987 + const/4 v4, 0x6
12989 + const/4 v5, 0x4
12991 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
12993 + move-result-object v4
12995 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12997 + move-result-object v3
12999 + const-string v4, ""
13001 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13003 + move-result-object v3
13005 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13007 + move-result-object v3
13009 + return-object v3
13011 + :cond_35
13012 + new-instance v2, Ljava/math/BigDecimal;
13014 + neg-double v3, v0
13016 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13018 + goto :goto_1b
13019 +.end method
13021 +.method private getRandomLon()Ljava/lang/String;
13022 + .registers 10
13024 + const-wide v7, 0x4066800000000000L
13026 + invoke-static {}, Ljava/lang/Math;->random()D
13028 + move-result-wide v3
13030 + const-wide v5, 0x4076800000000000L
13032 + mul-double v0, v3, v5
13034 + cmpl-double v3, v0, v7
13036 + if-lez v3, :cond_35
13038 + new-instance v2, Ljava/math/BigDecimal;
13040 + sub-double v3, v0, v7
13042 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13044 + :goto_1b
13045 + new-instance v3, Ljava/lang/StringBuilder;
13047 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
13049 + const/4 v4, 0x6
13051 + const/4 v5, 0x4
13053 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
13055 + move-result-object v4
13057 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13059 + move-result-object v3
13061 + const-string v4, ""
13063 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13065 + move-result-object v3
13067 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13069 + move-result-object v3
13071 + return-object v3
13073 + :cond_35
13074 + new-instance v2, Ljava/math/BigDecimal;
13076 + neg-double v3, v0
13078 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13080 + goto :goto_1b
13081 +.end method
13084 +# virtual methods
13085 +.method public describeContents()I
13086 + .registers 2
13088 + const/4 v0, 0x0
13090 + return v0
13091 +.end method
13093 +.method public getAccountsAuthTokensSetting()B
13094 + .registers 2
13096 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13098 + return v0
13099 +.end method
13101 +.method public getAccountsSetting()B
13102 + .registers 2
13104 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13106 + return v0
13107 +.end method
13109 +.method public getAllowedContacts()[I
13110 + .registers 2
13112 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13114 + return-object v0
13115 +.end method
13117 +.method public getBookmarksSetting()B
13118 + .registers 2
13120 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13122 + return v0
13123 +.end method
13125 +.method public getCalendarSetting()B
13126 + .registers 2
13128 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13130 + return v0
13131 +.end method
13133 +.method public getCallLogSetting()B
13134 + .registers 2
13136 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13138 + return v0
13139 +.end method
13141 +.method public getContactsSetting()B
13142 + .registers 2
13144 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13146 + return v0
13147 +.end method
13149 +.method public getDeviceId()Ljava/lang/String;
13150 + .registers 6
13152 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13154 + const/4 v3, 0x1
13156 + if-ne v2, v3, :cond_8
13158 + const-string v2, ""
13160 + :goto_7
13161 + return-object v2
13163 + :cond_8
13164 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13166 + const/4 v3, 0x3
13168 + if-ne v2, v3, :cond_35
13170 + new-instance v0, Ljava/util/Random;
13172 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13174 + new-instance v2, Ljava/lang/StringBuilder;
13176 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13178 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13180 + move-result-wide v3
13182 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13184 + move-result-wide v3
13186 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13188 + move-result-object v2
13190 + const-string v3, ""
13192 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13194 + move-result-object v2
13196 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13198 + move-result-object v1
13200 + const/4 v2, 0x0
13202 + const/16 v3, 0xf
13204 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13206 + move-result-object v2
13208 + goto :goto_7
13210 + :cond_35
13211 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13213 + goto :goto_7
13214 +.end method
13216 +.method public getDeviceIdSetting()B
13217 + .registers 2
13219 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13221 + return v0
13222 +.end method
13224 +.method public getIncomingCallsSetting()B
13225 + .registers 2
13227 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13229 + return v0
13230 +.end method
13232 +.method public getIntentBootCompletedSetting()B
13233 + .registers 2
13235 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13237 + return v0
13238 +.end method
13240 +.method public getLine1Number()Ljava/lang/String;
13241 + .registers 6
13243 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13245 + const/4 v3, 0x1
13247 + if-ne v2, v3, :cond_8
13249 + const-string v2, ""
13251 + :goto_7
13252 + return-object v2
13254 + :cond_8
13255 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13257 + const/4 v3, 0x3
13259 + if-ne v2, v3, :cond_3b
13261 + new-instance v0, Ljava/util/Random;
13263 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13265 + new-instance v2, Ljava/lang/StringBuilder;
13267 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13269 + const-string v3, "+"
13271 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13273 + move-result-object v2
13275 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13277 + move-result-wide v3
13279 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13281 + move-result-wide v3
13283 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13285 + move-result-object v2
13287 + const-string v3, ""
13289 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13291 + move-result-object v2
13293 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13295 + move-result-object v1
13297 + const/4 v2, 0x0
13299 + const/16 v3, 0xd
13301 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13303 + move-result-object v2
13305 + goto :goto_7
13307 + :cond_3b
13308 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13310 + goto :goto_7
13311 +.end method
13313 +.method public getLine1NumberSetting()B
13314 + .registers 2
13316 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13318 + return v0
13319 +.end method
13321 +.method public getLocationGpsLat()Ljava/lang/String;
13322 + .registers 3
13324 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13326 + const/4 v1, 0x1
13328 + if-ne v0, v1, :cond_8
13330 + const-string v0, ""
13332 + :goto_7
13333 + return-object v0
13335 + :cond_8
13336 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13338 + const/4 v1, 0x3
13340 + if-ne v0, v1, :cond_12
13342 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13344 + move-result-object v0
13346 + goto :goto_7
13348 + :cond_12
13349 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13351 + goto :goto_7
13352 +.end method
13354 +.method public getLocationGpsLon()Ljava/lang/String;
13355 + .registers 3
13357 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13359 + const/4 v1, 0x1
13361 + if-ne v0, v1, :cond_8
13363 + const-string v0, ""
13365 + :goto_7
13366 + return-object v0
13368 + :cond_8
13369 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13371 + const/4 v1, 0x3
13373 + if-ne v0, v1, :cond_12
13375 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13377 + move-result-object v0
13379 + goto :goto_7
13381 + :cond_12
13382 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13384 + goto :goto_7
13385 +.end method
13387 +.method public getLocationGpsSetting()B
13388 + .registers 2
13390 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13392 + return v0
13393 +.end method
13395 +.method public getLocationNetworkLat()Ljava/lang/String;
13396 + .registers 3
13398 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13400 + const/4 v1, 0x1
13402 + if-ne v0, v1, :cond_8
13404 + const-string v0, ""
13406 + :goto_7
13407 + return-object v0
13409 + :cond_8
13410 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13412 + const/4 v1, 0x3
13414 + if-ne v0, v1, :cond_12
13416 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13418 + move-result-object v0
13420 + goto :goto_7
13422 + :cond_12
13423 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13425 + goto :goto_7
13426 +.end method
13428 +.method public getLocationNetworkLon()Ljava/lang/String;
13429 + .registers 3
13431 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13433 + const/4 v1, 0x1
13435 + if-ne v0, v1, :cond_8
13437 + const-string v0, ""
13439 + :goto_7
13440 + return-object v0
13442 + :cond_8
13443 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13445 + const/4 v1, 0x3
13447 + if-ne v0, v1, :cond_12
13449 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13451 + move-result-object v0
13453 + goto :goto_7
13455 + :cond_12
13456 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13458 + goto :goto_7
13459 +.end method
13461 +.method public getLocationNetworkSetting()B
13462 + .registers 2
13464 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13466 + return v0
13467 +.end method
13469 +.method public getMmsSetting()B
13470 + .registers 2
13472 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13474 + return v0
13475 +.end method
13477 +.method public getNetworkInfoSetting()B
13478 + .registers 2
13480 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13482 + return v0
13483 +.end method
13485 +.method public getNotificationSetting()B
13486 + .registers 2
13488 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13490 + return v0
13491 +.end method
13493 +.method public getOutgoingCallsSetting()B
13494 + .registers 2
13496 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13498 + return v0
13499 +.end method
13501 +.method public getPackageName()Ljava/lang/String;
13502 + .registers 2
13504 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13506 + return-object v0
13507 +.end method
13509 +.method public getSimInfoSetting()B
13510 + .registers 2
13512 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13514 + return v0
13515 +.end method
13517 +.method public getSimSerialNumber()Ljava/lang/String;
13518 + .registers 5
13520 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13522 + const/4 v2, 0x1
13524 + if-ne v1, v2, :cond_8
13526 + const-string v1, ""
13528 + :goto_7
13529 + return-object v1
13531 + :cond_8
13532 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13534 + const/4 v2, 0x3
13536 + if-ne v1, v2, :cond_2e
13538 + new-instance v0, Ljava/util/Random;
13540 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13542 + new-instance v1, Ljava/lang/StringBuilder;
13544 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
13546 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13548 + move-result-wide v2
13550 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
13552 + move-result-wide v2
13554 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13556 + move-result-object v1
13558 + const-string v2, ""
13560 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13562 + move-result-object v1
13564 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13566 + move-result-object v1
13568 + goto :goto_7
13570 + :cond_2e
13571 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13573 + goto :goto_7
13574 +.end method
13576 +.method public getSimSerialNumberSetting()B
13577 + .registers 2
13579 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13581 + return v0
13582 +.end method
13584 +.method public getSmsSetting()B
13585 + .registers 2
13587 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13589 + return v0
13590 +.end method
13592 +.method public getSubscriberId()Ljava/lang/String;
13593 + .registers 6
13595 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13597 + const/4 v3, 0x1
13599 + if-ne v2, v3, :cond_8
13601 + const-string v2, ""
13603 + :goto_7
13604 + return-object v2
13606 + :cond_8
13607 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13609 + const/4 v3, 0x3
13611 + if-ne v2, v3, :cond_35
13613 + new-instance v0, Ljava/util/Random;
13615 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13617 + new-instance v2, Ljava/lang/StringBuilder;
13619 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13621 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13623 + move-result-wide v3
13625 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13627 + move-result-wide v3
13629 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13631 + move-result-object v2
13633 + const-string v3, ""
13635 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13637 + move-result-object v2
13639 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13641 + move-result-object v1
13643 + const/4 v2, 0x0
13645 + const/16 v3, 0xf
13647 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13649 + move-result-object v2
13651 + goto :goto_7
13653 + :cond_35
13654 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13656 + goto :goto_7
13657 +.end method
13659 +.method public getSubscriberIdSetting()B
13660 + .registers 2
13662 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13664 + return v0
13665 +.end method
13667 +.method public getSystemLogsSetting()B
13668 + .registers 2
13670 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13672 + return v0
13673 +.end method
13675 +.method public getUid()I
13676 + .registers 2
13678 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
13680 + return v0
13681 +.end method
13683 +.method public get_id()Ljava/lang/Integer;
13684 + .registers 2
13686 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13688 + return-object v0
13689 +.end method
13691 +.method public setAccountsAuthTokensSetting(B)V
13692 + .registers 2
13694 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13696 + return-void
13697 +.end method
13699 +.method public setAccountsSetting(B)V
13700 + .registers 2
13702 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13704 + return-void
13705 +.end method
13707 +.method public setAllowedContacts([I)V
13708 + .registers 2
13710 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13712 + return-void
13713 +.end method
13715 +.method public setBookmarksSetting(B)V
13716 + .registers 2
13718 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13720 + return-void
13721 +.end method
13723 +.method public setCalendarSetting(B)V
13724 + .registers 2
13726 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13728 + return-void
13729 +.end method
13731 +.method public setCallLogSetting(B)V
13732 + .registers 2
13734 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13736 + return-void
13737 +.end method
13739 +.method public setContactsSetting(B)V
13740 + .registers 2
13742 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13744 + return-void
13745 +.end method
13747 +.method public setDeviceId(Ljava/lang/String;)V
13748 + .registers 2
13750 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13752 + return-void
13753 +.end method
13755 +.method public setDeviceIdSetting(B)V
13756 + .registers 2
13758 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13760 + return-void
13761 +.end method
13763 +.method public setIncomingCallsSetting(B)V
13764 + .registers 2
13766 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13768 + return-void
13769 +.end method
13771 +.method public setIntentBootCompletedSetting(B)V
13772 + .registers 2
13774 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13776 + return-void
13777 +.end method
13779 +.method public setLine1Number(Ljava/lang/String;)V
13780 + .registers 2
13782 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13784 + return-void
13785 +.end method
13787 +.method public setLine1NumberSetting(B)V
13788 + .registers 2
13790 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13792 + return-void
13793 +.end method
13795 +.method public setLocationGpsLat(Ljava/lang/String;)V
13796 + .registers 2
13798 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13800 + return-void
13801 +.end method
13803 +.method public setLocationGpsLon(Ljava/lang/String;)V
13804 + .registers 2
13806 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13808 + return-void
13809 +.end method
13811 +.method public setLocationGpsSetting(B)V
13812 + .registers 2
13814 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13816 + return-void
13817 +.end method
13819 +.method public setLocationNetworkLat(Ljava/lang/String;)V
13820 + .registers 2
13822 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13824 + return-void
13825 +.end method
13827 +.method public setLocationNetworkLon(Ljava/lang/String;)V
13828 + .registers 2
13830 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13832 + return-void
13833 +.end method
13835 +.method public setLocationNetworkSetting(B)V
13836 + .registers 2
13838 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13840 + return-void
13841 +.end method
13843 +.method public setMmsSetting(B)V
13844 + .registers 2
13846 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13848 + return-void
13849 +.end method
13851 +.method public setNetworkInfoSetting(B)V
13852 + .registers 2
13854 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13856 + return-void
13857 +.end method
13859 +.method public setNotificationSetting(B)V
13860 + .registers 2
13862 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13864 + return-void
13865 +.end method
13867 +.method public setOutgoingCallsSetting(B)V
13868 + .registers 2
13870 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13872 + return-void
13873 +.end method
13875 +.method public setPackageName(Ljava/lang/String;)V
13876 + .registers 2
13878 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13880 + return-void
13881 +.end method
13883 +.method public setSimInfoSetting(B)V
13884 + .registers 2
13886 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13888 + return-void
13889 +.end method
13891 +.method public setSimSerialNumber(Ljava/lang/String;)V
13892 + .registers 2
13894 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13896 + return-void
13897 +.end method
13899 +.method public setSimSerialNumberSetting(B)V
13900 + .registers 2
13902 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13904 + return-void
13905 +.end method
13907 +.method public setSmsSetting(B)V
13908 + .registers 2
13910 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13912 + return-void
13913 +.end method
13915 +.method public setSubscriberId(Ljava/lang/String;)V
13916 + .registers 2
13918 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13920 + return-void
13921 +.end method
13923 +.method public setSubscriberIdSetting(B)V
13924 + .registers 2
13926 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13928 + return-void
13929 +.end method
13931 +.method public setSystemLogsSetting(B)V
13932 + .registers 2
13934 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13936 + return-void
13937 +.end method
13939 +.method public setUid(I)V
13940 + .registers 2
13942 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
13944 + return-void
13945 +.end method
13947 +.method public toString()Ljava/lang/String;
13948 + .registers 3
13950 + new-instance v0, Ljava/lang/StringBuilder;
13952 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
13954 + const-string v1, "PrivacySettings [_id="
13956 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13958 + move-result-object v0
13960 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13962 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13964 + move-result-object v0
13966 + const-string v1, ", accountsAuthTokensSetting="
13968 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13970 + move-result-object v0
13972 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13974 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13976 + move-result-object v0
13978 + const-string v1, ", accountsSetting="
13980 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13982 + move-result-object v0
13984 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13986 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13988 + move-result-object v0
13990 + const-string v1, ", bookmarksSetting="
13992 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13994 + move-result-object v0
13996 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13998 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14000 + move-result-object v0
14002 + const-string v1, ", calendarSetting="
14004 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14006 + move-result-object v0
14008 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14010 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14012 + move-result-object v0
14014 + const-string v1, ", callLogSetting="
14016 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14018 + move-result-object v0
14020 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14022 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14024 + move-result-object v0
14026 + const-string v1, ", contactsSetting="
14028 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14030 + move-result-object v0
14032 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14034 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14036 + move-result-object v0
14038 + const-string v1, ", deviceId="
14040 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14042 + move-result-object v0
14044 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14046 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14048 + move-result-object v0
14050 + const-string v1, ", deviceIdSetting="
14052 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14054 + move-result-object v0
14056 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14058 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14060 + move-result-object v0
14062 + const-string v1, ", incomingCallsSetting="
14064 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14066 + move-result-object v0
14068 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14070 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14072 + move-result-object v0
14074 + const-string v1, ", intentBootCompletedSetting="
14076 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14078 + move-result-object v0
14080 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14082 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14084 + move-result-object v0
14086 + const-string v1, ", line1Number="
14088 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14090 + move-result-object v0
14092 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14094 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14096 + move-result-object v0
14098 + const-string v1, ", line1NumberSetting="
14100 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14102 + move-result-object v0
14104 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14106 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14108 + move-result-object v0
14110 + const-string v1, ", locationGpsLat="
14112 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14114 + move-result-object v0
14116 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14118 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14120 + move-result-object v0
14122 + const-string v1, ", locationGpsLon="
14124 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14126 + move-result-object v0
14128 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14130 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14132 + move-result-object v0
14134 + const-string v1, ", locationGpsSetting="
14136 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14138 + move-result-object v0
14140 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14142 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14144 + move-result-object v0
14146 + const-string v1, ", locationNetworkLat="
14148 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14150 + move-result-object v0
14152 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14154 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14156 + move-result-object v0
14158 + const-string v1, ", locationNetworkLon="
14160 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14162 + move-result-object v0
14164 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14166 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14168 + move-result-object v0
14170 + const-string v1, ", locationNetworkSetting="
14172 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14174 + move-result-object v0
14176 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14178 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14180 + move-result-object v0
14182 + const-string v1, ", mmsSetting="
14184 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14186 + move-result-object v0
14188 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14190 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14192 + move-result-object v0
14194 + const-string v1, ", networkInfoSetting="
14196 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14198 + move-result-object v0
14200 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14202 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14204 + move-result-object v0
14206 + const-string v1, ", notificationSetting="
14208 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14210 + move-result-object v0
14212 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14214 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14216 + move-result-object v0
14218 + const-string v1, ", outgoingCallsSetting="
14220 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14222 + move-result-object v0
14224 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14226 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14228 + move-result-object v0
14230 + const-string v1, ", packageName="
14232 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14234 + move-result-object v0
14236 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14238 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14240 + move-result-object v0
14242 + const-string v1, ", simInfoSetting="
14244 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14246 + move-result-object v0
14248 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14250 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14252 + move-result-object v0
14254 + const-string v1, ", simSerialNumber="
14256 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14258 + move-result-object v0
14260 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14262 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14264 + move-result-object v0
14266 + const-string v1, ", simSerialNumberSetting="
14268 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14270 + move-result-object v0
14272 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14274 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14276 + move-result-object v0
14278 + const-string v1, ", smsSetting="
14280 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14282 + move-result-object v0
14284 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14286 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14288 + move-result-object v0
14290 + const-string v1, ", subscriberId="
14292 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14294 + move-result-object v0
14296 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14298 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14300 + move-result-object v0
14302 + const-string v1, ", subscriberIdSetting="
14304 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14306 + move-result-object v0
14308 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14310 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14312 + move-result-object v0
14314 + const-string v1, ", systemLogsSetting="
14316 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14318 + move-result-object v0
14320 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14322 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14324 + move-result-object v0
14326 + const-string v1, ", uid="
14328 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14330 + move-result-object v0
14332 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
14334 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14336 + move-result-object v0
14338 + const-string v1, "]"
14340 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14342 + move-result-object v0
14344 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
14346 + move-result-object v0
14348 + return-object v0
14349 +.end method
14351 +.method public writeToParcel(Landroid/os/Parcel;I)V
14352 + .registers 4
14354 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14356 + if-nez v0, :cond_a9
14358 + const/4 v0, -0x1
14360 + :goto_5
14361 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14363 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14365 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14367 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
14369 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14371 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14373 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14375 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14377 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14379 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14381 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14383 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14385 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14387 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14389 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14391 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14393 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14395 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14397 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14399 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14401 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14403 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14405 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14407 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14409 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14411 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14413 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14415 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14417 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14419 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14421 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14423 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14425 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14427 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14429 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14431 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14433 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14435 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14437 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14439 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14441 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14443 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14445 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14447 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14449 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14451 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14453 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14455 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14457 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14459 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14461 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14463 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14465 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14467 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14469 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14471 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14473 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14475 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14477 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14479 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14481 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14483 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14485 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14487 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14489 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
14491 + return-void
14493 + :cond_a9
14494 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14496 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
14498 + move-result v0
14500 + goto/16 :goto_5
14501 +.end method
14502 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
14503 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 18:00:00.000000000 -0600
14504 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-05-06 12:13:39.787697940 -0500
14505 @@ -0,0 +1,129 @@
14506 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14507 +.super Ljava/lang/Object;
14508 +.source "PrivacyAccountManager.java"
14510 +# interfaces
14511 +.implements Landroid/accounts/AccountManagerFuture;
14514 +# annotations
14515 +.annotation system Ldalvik/annotation/EnclosingClass;
14516 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
14517 +.end annotation
14519 +.annotation system Ldalvik/annotation/InnerClass;
14520 + accessFlags = 0x2
14521 + name = "PrivacyAccountManagerFuture"
14522 +.end annotation
14524 +.annotation system Ldalvik/annotation/Signature;
14525 + value = {
14526 + "<V:",
14527 + "Ljava/lang/Object;",
14528 + ">",
14529 + "Ljava/lang/Object;",
14530 + "Landroid/accounts/AccountManagerFuture",
14531 + "<TV;>;"
14533 +.end annotation
14536 +# instance fields
14537 +.field private result:Ljava/lang/Object;
14538 + .annotation system Ldalvik/annotation/Signature;
14539 + value = {
14540 + "TV;"
14542 + .end annotation
14543 +.end field
14545 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14548 +# direct methods
14549 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14550 + .registers 3
14551 + .annotation system Ldalvik/annotation/Signature;
14552 + value = {
14553 + "(TV;)V"
14555 + .end annotation
14557 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14559 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
14561 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14563 + return-void
14564 +.end method
14567 +# virtual methods
14568 +.method public cancel(Z)Z
14569 + .registers 3
14571 + const/4 v0, 0x0
14573 + return v0
14574 +.end method
14576 +.method public getResult()Ljava/lang/Object;
14577 + .registers 2
14578 + .annotation system Ldalvik/annotation/Signature;
14579 + value = {
14580 + "()TV;"
14582 + .end annotation
14584 + .annotation system Ldalvik/annotation/Throws;
14585 + value = {
14586 + Landroid/accounts/OperationCanceledException;,
14587 + Ljava/io/IOException;,
14588 + Landroid/accounts/AuthenticatorException;
14590 + .end annotation
14592 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14594 + return-object v0
14595 +.end method
14597 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
14598 + .registers 5
14599 + .annotation system Ldalvik/annotation/Signature;
14600 + value = {
14601 + "(J",
14602 + "Ljava/util/concurrent/TimeUnit;",
14603 + ")TV;"
14605 + .end annotation
14607 + .annotation system Ldalvik/annotation/Throws;
14608 + value = {
14609 + Landroid/accounts/OperationCanceledException;,
14610 + Ljava/io/IOException;,
14611 + Landroid/accounts/AuthenticatorException;
14613 + .end annotation
14615 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14617 + return-object v0
14618 +.end method
14620 +.method public isCancelled()Z
14621 + .registers 2
14623 + const/4 v0, 0x0
14625 + return v0
14626 +.end method
14628 +.method public isDone()Z
14629 + .registers 2
14631 + const/4 v0, 0x1
14633 + return v0
14634 +.end method
14635 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
14636 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 18:00:00.000000000 -0600
14637 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-05-06 12:13:39.791697954 -0500
14638 @@ -0,0 +1,701 @@
14639 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
14640 +.super Landroid/accounts/AccountManager;
14641 +.source "PrivacyAccountManager.java"
14644 +# annotations
14645 +.annotation system Ldalvik/annotation/MemberClasses;
14646 + value = {
14647 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14649 +.end annotation
14652 +# static fields
14653 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
14656 +# instance fields
14657 +.field private context:Landroid/content/Context;
14659 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
14662 +# direct methods
14663 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14664 + .registers 5
14666 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14668 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14670 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14672 + const-string/jumbo v1, "privacy"
14674 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14676 + move-result-object v1
14678 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14680 + move-result-object v1
14682 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14684 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14686 + return-void
14687 +.end method
14689 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14690 + .registers 6
14692 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14694 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14696 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14698 + const-string/jumbo v1, "privacy"
14700 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14702 + move-result-object v1
14704 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14706 + move-result-object v1
14708 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14710 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14712 + return-void
14713 +.end method
14716 +# virtual methods
14717 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14718 + .registers 12
14719 + .annotation system Ldalvik/annotation/Throws;
14720 + value = {
14721 + Landroid/accounts/OperationCanceledException;,
14722 + Ljava/io/IOException;,
14723 + Landroid/accounts/AuthenticatorException;
14725 + .end annotation
14727 + const/4 v5, 0x0
14729 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14731 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14733 + move-result-object v1
14735 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14737 + move-result v2
14739 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14741 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14743 + move-result-object v6
14745 + if-eqz v6, :cond_23
14747 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
14749 + move-result v0
14751 + if-eqz v0, :cond_23
14753 + const/4 v7, 0x0
14755 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14757 + const/4 v3, 0x1
14759 + const-string v4, "authTokens"
14761 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14763 + :goto_22
14764 + return-object v7
14766 + :cond_23
14767 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14769 + move-result-object v7
14771 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14773 + const/4 v3, 0x0
14775 + const-string v4, "authTokens"
14777 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14779 + goto :goto_22
14780 +.end method
14782 +.method public getAccounts()[Landroid/accounts/Account;
14783 + .registers 10
14785 + const/4 v5, 0x0
14787 + const/4 v3, 0x0
14789 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14791 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14793 + move-result-object v1
14795 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14797 + move-result v2
14799 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14801 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14803 + move-result-object v6
14805 + if-eqz v6, :cond_27
14807 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14809 + move-result v0
14811 + if-eqz v0, :cond_27
14813 + const-string v8, "[empty accounts list]"
14815 + new-array v7, v3, [Landroid/accounts/Account;
14817 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14819 + const/4 v3, 0x1
14821 + const-string v4, "accountsList"
14823 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14825 + :goto_26
14826 + return-object v7
14828 + :cond_27
14829 + const-string v8, "[real value]"
14831 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
14833 + move-result-object v7
14835 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14837 + const-string v4, "accountsList"
14839 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14841 + goto :goto_26
14842 +.end method
14844 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14845 + .registers 11
14847 + const/4 v5, 0x0
14849 + const/4 v3, 0x0
14851 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14853 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14855 + move-result-object v1
14857 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14859 + move-result v2
14861 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14863 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14865 + move-result-object v6
14867 + if-eqz v6, :cond_27
14869 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14871 + move-result v0
14873 + if-eqz v0, :cond_27
14875 + const-string v8, "[empty accounts list]"
14877 + new-array v7, v3, [Landroid/accounts/Account;
14879 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14881 + const/4 v3, 0x1
14883 + const-string v4, "accountsList"
14885 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14887 + :goto_26
14888 + return-object v7
14890 + :cond_27
14891 + const-string v8, "[real value]"
14893 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14895 + move-result-object v7
14897 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14899 + const-string v4, "accountsList"
14901 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14903 + goto :goto_26
14904 +.end method
14906 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14907 + .registers 14
14908 + .annotation system Ldalvik/annotation/Signature;
14909 + value = {
14910 + "(",
14911 + "Ljava/lang/String;",
14912 + "[",
14913 + "Ljava/lang/String;",
14914 + "Landroid/accounts/AccountManagerCallback",
14915 + "<[",
14916 + "Landroid/accounts/Account;",
14917 + ">;",
14918 + "Landroid/os/Handler;",
14919 + ")",
14920 + "Landroid/accounts/AccountManagerFuture",
14921 + "<[",
14922 + "Landroid/accounts/Account;",
14923 + ">;"
14925 + .end annotation
14927 + const/4 v5, 0x0
14929 + const/4 v3, 0x0
14931 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14933 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14935 + move-result-object v1
14937 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14939 + move-result v2
14941 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14943 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14945 + move-result-object v6
14947 + if-eqz v6, :cond_2c
14949 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14951 + move-result v0
14953 + if-eqz v0, :cond_2c
14955 + const-string v8, "[false]"
14957 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14959 + new-array v0, v3, [Landroid/accounts/Account;
14961 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14963 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14965 + const/4 v3, 0x1
14967 + const-string v4, "accountsList"
14969 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14971 + :goto_2b
14972 + return-object v7
14974 + :cond_2c
14975 + const-string v8, "[real value]"
14977 + 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;
14979 + move-result-object v7
14981 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14983 + const-string v4, "accountsList"
14985 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14987 + goto :goto_2b
14988 +.end method
14990 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14991 + .registers 16
14992 + .annotation system Ldalvik/annotation/Signature;
14993 + value = {
14994 + "(",
14995 + "Landroid/accounts/Account;",
14996 + "Ljava/lang/String;",
14997 + "Landroid/os/Bundle;",
14998 + "Landroid/app/Activity;",
14999 + "Landroid/accounts/AccountManagerCallback",
15000 + "<",
15001 + "Landroid/os/Bundle;",
15002 + ">;",
15003 + "Landroid/os/Handler;",
15004 + ")",
15005 + "Landroid/accounts/AccountManagerFuture",
15006 + "<",
15007 + "Landroid/os/Bundle;",
15008 + ">;"
15010 + .end annotation
15012 + const/4 v5, 0x0
15014 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15016 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15018 + move-result-object v1
15020 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15022 + move-result v2
15024 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15026 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15028 + move-result-object v6
15030 + if-eqz v6, :cond_2e
15032 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15034 + move-result v0
15036 + if-eqz v0, :cond_2e
15038 + const-string v8, "[empty]"
15040 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15042 + new-instance v0, Landroid/os/Bundle;
15044 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15046 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15048 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15050 + const/4 v3, 0x1
15052 + const-string v4, "authTokens"
15054 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15056 + :goto_2d
15057 + return-object v7
15059 + :cond_2e
15060 + const-string v8, "[real value]"
15062 + 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;
15064 + move-result-object v7
15066 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15068 + const/4 v3, 0x0
15070 + const-string v4, "authTokens"
15072 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15074 + goto :goto_2d
15075 +.end method
15077 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15078 + .registers 15
15079 + .annotation system Ldalvik/annotation/Signature;
15080 + value = {
15081 + "(",
15082 + "Landroid/accounts/Account;",
15083 + "Ljava/lang/String;",
15084 + "Z",
15085 + "Landroid/accounts/AccountManagerCallback",
15086 + "<",
15087 + "Landroid/os/Bundle;",
15088 + ">;",
15089 + "Landroid/os/Handler;",
15090 + ")",
15091 + "Landroid/accounts/AccountManagerFuture",
15092 + "<",
15093 + "Landroid/os/Bundle;",
15094 + ">;"
15096 + .end annotation
15098 + const/4 v5, 0x0
15100 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15102 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15104 + move-result-object v1
15106 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15108 + move-result v2
15110 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15112 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15114 + move-result-object v6
15116 + if-eqz v6, :cond_2e
15118 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15120 + move-result v0
15122 + if-eqz v0, :cond_2e
15124 + const-string v8, "[empty]"
15126 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15128 + new-instance v0, Landroid/os/Bundle;
15130 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15132 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15134 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15136 + const/4 v3, 0x1
15138 + const-string v4, "authTokens"
15140 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15142 + :goto_2d
15143 + return-object v7
15145 + :cond_2e
15146 + const-string v8, "[real value]"
15148 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15150 + move-result-object v7
15152 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15154 + const/4 v3, 0x0
15156 + const-string v4, "authTokens"
15158 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15160 + goto :goto_2d
15161 +.end method
15163 +.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;
15164 + .registers 18
15165 + .annotation system Ldalvik/annotation/Signature;
15166 + value = {
15167 + "(",
15168 + "Ljava/lang/String;",
15169 + "Ljava/lang/String;",
15170 + "[",
15171 + "Ljava/lang/String;",
15172 + "Landroid/app/Activity;",
15173 + "Landroid/os/Bundle;",
15174 + "Landroid/os/Bundle;",
15175 + "Landroid/accounts/AccountManagerCallback",
15176 + "<",
15177 + "Landroid/os/Bundle;",
15178 + ">;",
15179 + "Landroid/os/Handler;",
15180 + ")",
15181 + "Landroid/accounts/AccountManagerFuture",
15182 + "<",
15183 + "Landroid/os/Bundle;",
15184 + ">;"
15186 + .end annotation
15188 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15190 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15192 + move-result-object v1
15194 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15196 + move-result v2
15198 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15200 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15202 + move-result-object v6
15204 + if-eqz v6, :cond_2e
15206 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15208 + move-result v0
15210 + if-eqz v0, :cond_2e
15212 + const-string v8, "[empty]"
15214 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15216 + new-instance v0, Landroid/os/Bundle;
15218 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15220 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15222 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15224 + const/4 v3, 0x1
15226 + const-string v4, "authTokens"
15228 + const/4 v5, 0x0
15230 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15232 + :goto_2d
15233 + return-object v7
15235 + :cond_2e
15236 + const-string v8, "[real value]"
15238 + 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;
15240 + move-result-object v7
15242 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15244 + const/4 v3, 0x0
15246 + const-string v4, "authTokens"
15248 + const/4 v5, 0x0
15250 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15252 + goto :goto_2d
15253 +.end method
15255 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15256 + .registers 14
15257 + .annotation system Ldalvik/annotation/Signature;
15258 + value = {
15259 + "(",
15260 + "Landroid/accounts/Account;",
15261 + "[",
15262 + "Ljava/lang/String;",
15263 + "Landroid/accounts/AccountManagerCallback",
15264 + "<",
15265 + "Ljava/lang/Boolean;",
15266 + ">;",
15267 + "Landroid/os/Handler;",
15268 + ")",
15269 + "Landroid/accounts/AccountManagerFuture",
15270 + "<",
15271 + "Ljava/lang/Boolean;",
15272 + ">;"
15274 + .end annotation
15276 + const/4 v5, 0x0
15278 + const/4 v3, 0x0
15280 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15282 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15284 + move-result-object v1
15286 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15288 + move-result v2
15290 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15292 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15294 + move-result-object v6
15296 + if-eqz v6, :cond_2e
15298 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15300 + move-result v0
15302 + if-eqz v0, :cond_2e
15304 + const-string v8, "[false]"
15306 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15308 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
15310 + move-result-object v0
15312 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15314 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15316 + const/4 v3, 0x1
15318 + const-string v4, "accountsList"
15320 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15322 + :goto_2d
15323 + return-object v7
15325 + :cond_2e
15326 + const-string v8, "[real value]"
15328 + 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;
15330 + move-result-object v7
15332 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15334 + const-string v4, "accountsList"
15336 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15338 + goto :goto_2d
15339 +.end method
15340 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
15341 --- stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 18:00:00.000000000 -0600
15342 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-05-06 12:13:39.791697954 -0500
15343 @@ -0,0 +1,1087 @@
15344 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
15345 +.super Ljava/lang/Object;
15346 +.source "PrivacyActivityManagerService.java"
15349 +# static fields
15350 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
15352 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
15354 +.field private static tmpIn:Landroid/content/Intent;
15356 +.field private static tmpInHash:J
15358 +.field private static tmpInReceivers:I
15360 +.field private static tmpMms:Landroid/content/Intent;
15362 +.field private static tmpMmsHash:J
15364 +.field private static tmpMmsReceivers:I
15366 +.field private static tmpOut:Landroid/content/Intent;
15368 +.field private static tmpOutHash:J
15370 +.field private static tmpOutReceivers:I
15372 +.field private static tmpPackageAddedHash:J
15374 +.field private static tmpSms:Landroid/content/Intent;
15376 +.field private static tmpSmsHash:J
15378 +.field private static tmpSmsReceivers:I
15381 +# direct methods
15382 +.method static constructor <clinit>()V
15383 + .registers 3
15385 + const/4 v2, 0x0
15387 + const-wide/16 v0, 0x0
15389 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15391 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15393 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15395 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15397 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15399 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15401 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15403 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
15405 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
15407 + return-void
15408 +.end method
15410 +.method public constructor <init>()V
15411 + .registers 1
15413 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15415 + return-void
15416 +.end method
15418 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
15419 + .registers 22
15421 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15423 + if-nez v2, :cond_11
15425 + const-string/jumbo v2, "privacy"
15427 + move-object/from16 v0, p3
15429 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
15431 + move-result-object v2
15433 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
15435 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15437 + :cond_11
15438 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
15440 + move-result-object v9
15442 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
15444 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15446 + move-result v2
15448 + if-eqz v2, :cond_ad
15450 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15452 + move-object/from16 v0, p0
15454 + move/from16 v1, p1
15456 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15458 + move-result-object v8
15460 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15462 + move-object/from16 v0, p2
15464 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15466 + move-result-object v16
15468 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15470 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15472 + move-result-wide v4
15474 + cmp-long v2, v2, v4
15476 + if-eqz v2, :cond_49
15478 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15480 + move-result-object v2
15482 + check-cast v2, Landroid/content/Intent;
15484 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15486 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15488 + move-result-wide v2
15490 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15492 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15494 + :cond_49
15495 + if-eqz v8, :cond_76
15497 + :try_start_4b
15498 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
15500 + move-result v2
15502 + if-eqz v2, :cond_76
15504 + const-string v16, ""
15506 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15508 + move-object/from16 v0, p2
15510 + move-object/from16 v1, v16
15512 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15514 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15516 + const/4 v5, 0x1
15518 + const-string/jumbo v6, "outgoingCall"
15520 + const/4 v7, 0x0
15522 + move-object/from16 v3, p0
15524 + move/from16 v4, p1
15526 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15527 + :try_end_6a
15528 + .catch Ljava/lang/Exception; {:try_start_4b .. :try_end_6a} :catch_a0
15530 + :cond_6a
15531 + :goto_6a
15532 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15534 + const/4 v3, 0x1
15536 + if-le v2, v3, :cond_a9
15538 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15540 + add-int/lit8 v2, v2, -0x1
15542 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15544 + :cond_75
15545 + :goto_75
15546 + return-void
15548 + :cond_76
15549 + :try_start_76
15550 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15552 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15554 + move-result-wide v4
15556 + cmp-long v2, v2, v4
15558 + if-nez v2, :cond_6a
15560 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15562 + const-string v3, "android.intent.extra.PHONE_NUMBER"
15564 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15566 + move-result-object v16
15568 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15570 + move-object/from16 v0, p2
15572 + move-object/from16 v1, v16
15574 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15576 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15578 + const/4 v5, 0x0
15580 + const-string/jumbo v6, "outgoingCall"
15582 + const/4 v7, 0x0
15584 + move-object/from16 v3, p0
15586 + move/from16 v4, p1
15588 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15589 + :try_end_9f
15590 + .catch Ljava/lang/Exception; {:try_start_76 .. :try_end_9f} :catch_a0
15592 + goto :goto_6a
15594 + :catch_a0
15595 + move-exception v13
15597 + const-string v2, "PrivacyActivityManagerService"
15599 + const-string v3, "failed to enforce intent broadcast permission"
15601 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15603 + goto :goto_6a
15605 + :cond_a9
15606 + const/4 v2, 0x0
15608 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15610 + goto :goto_75
15612 + :cond_ad
15613 + const-string v2, "android.intent.action.PHONE_STATE"
15615 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15617 + move-result v2
15619 + if-eqz v2, :cond_14d
15621 + const-string v2, "incoming_number"
15623 + move-object/from16 v0, p2
15625 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15627 + move-result-object v16
15629 + if-eqz v16, :cond_75
15631 + invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->isEmpty()Z
15633 + move-result v2
15635 + if-nez v2, :cond_75
15637 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15639 + move-object/from16 v0, p0
15641 + move/from16 v1, p1
15643 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15645 + move-result-object v8
15647 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15649 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15651 + move-result-wide v4
15653 + cmp-long v2, v2, v4
15655 + if-eqz v2, :cond_e9
15657 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15659 + move-result-object v2
15661 + check-cast v2, Landroid/content/Intent;
15663 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15665 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15667 + move-result-wide v2
15669 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15671 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15673 + :cond_e9
15674 + if-eqz v8, :cond_116
15676 + :try_start_eb
15677 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
15679 + move-result v2
15681 + if-eqz v2, :cond_116
15683 + const-string v16, ""
15685 + const-string v2, "incoming_number"
15687 + move-object/from16 v0, p2
15689 + move-object/from16 v1, v16
15691 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15693 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15695 + const/4 v5, 0x1
15697 + const-string v6, "incomingCall"
15699 + const/4 v7, 0x0
15701 + move-object/from16 v3, p0
15703 + move/from16 v4, p1
15705 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15706 + :try_end_109
15707 + .catch Ljava/lang/Exception; {:try_start_eb .. :try_end_109} :catch_13f
15709 + :cond_109
15710 + :goto_109
15711 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15713 + const/4 v3, 0x1
15715 + if-le v2, v3, :cond_148
15717 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15719 + add-int/lit8 v2, v2, -0x1
15721 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15723 + goto/16 :goto_75
15725 + :cond_116
15726 + :try_start_116
15727 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15729 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15731 + move-result-wide v4
15733 + cmp-long v2, v2, v4
15735 + if-nez v2, :cond_109
15737 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15739 + const-string v3, "incoming_number"
15741 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15743 + move-result-object v16
15745 + const-string v2, "incoming_number"
15747 + move-object/from16 v0, p2
15749 + move-object/from16 v1, v16
15751 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15753 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15755 + const/4 v5, 0x0
15757 + const-string v6, "incomingCall"
15759 + const/4 v7, 0x0
15761 + move-object/from16 v3, p0
15763 + move/from16 v4, p1
15765 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15766 + :try_end_13e
15767 + .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_13e} :catch_13f
15769 + goto :goto_109
15771 + :catch_13f
15772 + move-exception v13
15774 + const-string v2, "PrivacyActivityManagerService"
15776 + const-string v3, "failed to enforce intent broadcast permission"
15778 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15780 + goto :goto_109
15782 + :cond_148
15783 + const/4 v2, 0x0
15785 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15787 + goto/16 :goto_75
15789 + :cond_14d
15790 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
15792 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15794 + move-result v2
15796 + if-eqz v2, :cond_222
15798 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15800 + move-object/from16 v0, p0
15802 + move/from16 v1, p1
15804 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15806 + move-result-object v8
15808 + const-string v16, "[real]"
15810 + const-string/jumbo v2, "pdus"
15812 + move-object/from16 v0, p2
15814 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15816 + move-result-object v2
15818 + check-cast v2, [Ljava/lang/Object;
15820 + move-object v15, v2
15822 + check-cast v15, [Ljava/lang/Object;
15824 + if-eqz v15, :cond_1cd
15826 + const/4 v2, 0x0
15828 + aget-object v2, v15, v2
15830 + check-cast v2, [B
15832 + check-cast v2, [B
15834 + move-object v12, v2
15836 + :goto_179
15837 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15839 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15841 + move-result-wide v4
15843 + cmp-long v2, v2, v4
15845 + if-eqz v2, :cond_193
15847 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15849 + move-result-object v2
15851 + check-cast v2, Landroid/content/Intent;
15853 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15855 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15857 + move-result-wide v2
15859 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15861 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15863 + :cond_193
15864 + if-eqz v8, :cond_1cf
15866 + :try_start_195
15867 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
15869 + move-result v2
15871 + if-eqz v2, :cond_1cf
15873 + const-string v16, "[empty]"
15875 + const/4 v2, 0x1
15877 + new-array v14, v2, [Ljava/lang/Object;
15879 + const/4 v2, 0x0
15881 + const/16 v3, 0x10
15883 + new-array v3, v3, [B
15885 + fill-array-data v3, :array_350
15887 + aput-object v3, v14, v2
15889 + const-string/jumbo v2, "pdus"
15891 + move-object/from16 v0, p2
15893 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15895 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15897 + const/4 v5, 0x1
15899 + const-string/jumbo v6, "sms"
15901 + const/4 v7, 0x0
15903 + move-object/from16 v3, p0
15905 + move/from16 v4, p1
15907 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15908 + :try_end_1c0
15909 + .catch Ljava/lang/Exception; {:try_start_195 .. :try_end_1c0} :catch_212
15911 + :cond_1c0
15912 + :goto_1c0
15913 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15915 + const/4 v3, 0x1
15917 + if-le v2, v3, :cond_21d
15919 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15921 + add-int/lit8 v2, v2, -0x1
15923 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15925 + goto/16 :goto_75
15927 + :cond_1cd
15928 + const/4 v12, 0x0
15930 + goto :goto_179
15932 + :cond_1cf
15933 + :try_start_1cf
15934 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15936 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15938 + move-result-wide v4
15940 + cmp-long v2, v2, v4
15942 + if-nez v2, :cond_1c0
15944 + const-string/jumbo v2, "pdus"
15946 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15948 + const-string/jumbo v4, "pdus"
15950 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15952 + move-result-object v3
15954 + move-object/from16 v0, p2
15956 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15958 + const-string/jumbo v2, "pdus"
15960 + move-object/from16 v0, p2
15962 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15964 + move-result-object v2
15966 + check-cast v2, [Ljava/lang/Object;
15968 + move-object v0, v2
15970 + check-cast v0, [Ljava/lang/Object;
15972 + move-object v15, v0
15974 + if-eqz v15, :cond_21b
15976 + const/4 v2, 0x0
15978 + aget-object v2, v15, v2
15980 + check-cast v2, [B
15982 + check-cast v2, [B
15984 + move-object v12, v2
15986 + :goto_203
15987 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15989 + const/4 v5, 0x0
15991 + const-string/jumbo v6, "sms"
15993 + const/4 v7, 0x0
15995 + move-object/from16 v3, p0
15997 + move/from16 v4, p1
15999 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16000 + :try_end_211
16001 + .catch Ljava/lang/Exception; {:try_start_1cf .. :try_end_211} :catch_212
16003 + goto :goto_1c0
16005 + :catch_212
16006 + move-exception v13
16008 + const-string v2, "PrivacyActivityManagerService"
16010 + const-string v3, "failed to enforce intent broadcast permission"
16012 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16014 + goto :goto_1c0
16016 + :cond_21b
16017 + const/4 v12, 0x0
16019 + goto :goto_203
16021 + :cond_21d
16022 + const/4 v2, 0x0
16024 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16026 + goto/16 :goto_75
16028 + :cond_222
16029 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
16031 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16033 + move-result v2
16035 + if-nez v2, :cond_232
16037 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
16039 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16041 + move-result v2
16043 + if-eqz v2, :cond_2ff
16045 + :cond_232
16046 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16048 + move-object/from16 v0, p0
16050 + move/from16 v1, p1
16052 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16054 + move-result-object v8
16056 + const-string v16, "[real]"
16058 + const-string/jumbo v2, "pdus"
16060 + move-object/from16 v0, p2
16062 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16064 + move-result-object v2
16066 + check-cast v2, [Ljava/lang/Object;
16068 + move-object v15, v2
16070 + check-cast v15, [Ljava/lang/Object;
16072 + if-eqz v15, :cond_2aa
16074 + const/4 v2, 0x0
16076 + aget-object v2, v15, v2
16078 + check-cast v2, [B
16080 + check-cast v2, [B
16082 + move-object v12, v2
16084 + :goto_256
16085 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16087 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16089 + move-result-wide v4
16091 + cmp-long v2, v2, v4
16093 + if-eqz v2, :cond_270
16095 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
16097 + move-result-object v2
16099 + check-cast v2, Landroid/content/Intent;
16101 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16103 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16105 + move-result-wide v2
16107 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16109 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16111 + :cond_270
16112 + if-eqz v8, :cond_2ac
16114 + :try_start_272
16115 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16117 + move-result v2
16119 + if-eqz v2, :cond_2ac
16121 + const-string v16, "[empty]"
16123 + const/4 v2, 0x1
16125 + new-array v14, v2, [Ljava/lang/Object;
16127 + const/4 v2, 0x0
16129 + const/16 v3, 0x10
16131 + new-array v3, v3, [B
16133 + fill-array-data v3, :array_35c
16135 + aput-object v3, v14, v2
16137 + const-string/jumbo v2, "pdus"
16139 + move-object/from16 v0, p2
16141 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16143 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16145 + const/4 v5, 0x1
16147 + const-string/jumbo v6, "mms"
16149 + const/4 v7, 0x0
16151 + move-object/from16 v3, p0
16153 + move/from16 v4, p1
16155 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16156 + :try_end_29d
16157 + .catch Ljava/lang/Exception; {:try_start_272 .. :try_end_29d} :catch_2ef
16159 + :cond_29d
16160 + :goto_29d
16161 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16163 + const/4 v3, 0x1
16165 + if-le v2, v3, :cond_2fa
16167 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16169 + add-int/lit8 v2, v2, -0x1
16171 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16173 + goto/16 :goto_75
16175 + :cond_2aa
16176 + const/4 v12, 0x0
16178 + goto :goto_256
16180 + :cond_2ac
16181 + :try_start_2ac
16182 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16184 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16186 + move-result-wide v4
16188 + cmp-long v2, v2, v4
16190 + if-nez v2, :cond_29d
16192 + const-string/jumbo v2, "pdus"
16194 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16196 + const-string/jumbo v4, "pdus"
16198 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16200 + move-result-object v3
16202 + move-object/from16 v0, p2
16204 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16206 + const-string/jumbo v2, "pdus"
16208 + move-object/from16 v0, p2
16210 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16212 + move-result-object v2
16214 + check-cast v2, [Ljava/lang/Object;
16216 + move-object v0, v2
16218 + check-cast v0, [Ljava/lang/Object;
16220 + move-object v15, v0
16222 + if-eqz v15, :cond_2f8
16224 + const/4 v2, 0x0
16226 + aget-object v2, v15, v2
16228 + check-cast v2, [B
16230 + check-cast v2, [B
16232 + move-object v12, v2
16234 + :goto_2e0
16235 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16237 + const/4 v5, 0x0
16239 + const-string/jumbo v6, "mms"
16241 + const/4 v7, 0x0
16243 + move-object/from16 v3, p0
16245 + move/from16 v4, p1
16247 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16248 + :try_end_2ee
16249 + .catch Ljava/lang/Exception; {:try_start_2ac .. :try_end_2ee} :catch_2ef
16251 + goto :goto_29d
16253 + :catch_2ef
16254 + move-exception v13
16256 + const-string v2, "PrivacyActivityManagerService"
16258 + const-string v3, "failed to enforce intent broadcast permission"
16260 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16262 + goto :goto_29d
16264 + :cond_2f8
16265 + const/4 v12, 0x0
16267 + goto :goto_2e0
16269 + :cond_2fa
16270 + const/4 v2, 0x0
16272 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16274 + goto/16 :goto_75
16276 + :cond_2ff
16277 + const-string v2, "android.intent.action.BOOT_COMPLETED"
16279 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16281 + move-result v2
16283 + if-eqz v2, :cond_30e
16285 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16287 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
16289 + goto/16 :goto_75
16291 + :cond_30e
16292 + const-string v2, "android.intent.action.PACKAGE_ADDED"
16294 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16296 + move-result v2
16298 + if-eqz v2, :cond_75
16300 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16302 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16304 + move-result-wide v4
16306 + cmp-long v2, v2, v4
16308 + if-eqz v2, :cond_75
16310 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16312 + move-result-wide v2
16314 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16316 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
16318 + move-result-object v2
16320 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
16322 + move-result-object v10
16324 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
16326 + move-result-object v2
16328 + const-string v3, "android.intent.extra.UID"
16330 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
16332 + move-result v11
16334 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16336 + invoke-virtual {v2, v10, v11}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16338 + move-result-object v8
16340 + if-eqz v8, :cond_75
16342 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
16344 + move-result v2
16346 + if-eq v2, v11, :cond_75
16348 + invoke-virtual {v8, v11}, Landroid/privacy/PrivacySettings;->setUid(I)V
16350 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16352 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16354 + goto/16 :goto_75
16356 + :array_350
16357 + .array-data 0x1
16358 + 0x0t
16359 + 0x20t
16360 + 0x1t
16361 + 0x81t
16362 + 0xf0t
16363 + 0x0t
16364 + 0x0t
16365 + 0x11t
16366 + 0x90t
16367 + 0x1t
16368 + 0x30t
16369 + 0x22t
16370 + 0x22t
16371 + 0x80t
16372 + 0x1t
16373 + 0x20t
16374 + .end array-data
16376 + :array_35c
16377 + .array-data 0x1
16378 + 0x0t
16379 + 0x20t
16380 + 0x1t
16381 + 0x81t
16382 + 0xf0t
16383 + 0x0t
16384 + 0x0t
16385 + 0x11t
16386 + 0x90t
16387 + 0x1t
16388 + 0x30t
16389 + 0x22t
16390 + 0x22t
16391 + 0x80t
16392 + 0x1t
16393 + 0x20t
16394 + .end array-data
16395 +.end method
16397 +.method private static hashCode(Landroid/content/Intent;)J
16398 + .registers 7
16400 + const-wide/16 v3, 0x0
16402 + const-string/jumbo v2, "privacy_hash"
16404 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
16406 + move-result-wide v0
16408 + cmp-long v2, v0, v3
16410 + if-nez v2, :cond_1e
16412 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
16414 + move-result v2
16416 + int-to-long v2, v2
16418 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
16420 + move-result-wide v4
16422 + add-long v0, v2, v4
16424 + const-string/jumbo v2, "privacy_hash"
16426 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
16428 + :cond_1e
16429 + return-wide v0
16430 +.end method
16431 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
16432 --- stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 18:00:00.000000000 -0600
16433 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-05-06 12:13:39.791697954 -0500
16434 @@ -0,0 +1,624 @@
16435 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
16436 +.super Ljava/lang/Object;
16437 +.source "PrivacyContentResolver.java"
16440 +# static fields
16441 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
16443 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
16446 +# direct methods
16447 +.method public constructor <init>()V
16448 + .registers 1
16450 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16452 + return-void
16453 +.end method
16455 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
16456 + .registers 8
16458 + new-instance v4, Ljava/lang/StringBuffer;
16460 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
16462 + if-eqz p0, :cond_2d
16464 + move-object v0, p0
16466 + array-length v3, v0
16468 + const/4 v2, 0x0
16470 + :goto_a
16471 + if-ge v2, v3, :cond_30
16473 + aget-object v1, v0, v2
16475 + new-instance v5, Ljava/lang/StringBuilder;
16477 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
16479 + const-string v6, "["
16481 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16483 + move-result-object v5
16485 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16487 + move-result-object v5
16489 + const-string v6, "]"
16491 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16493 + move-result-object v5
16495 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
16497 + move-result-object v5
16499 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
16501 + add-int/lit8 v2, v2, 0x1
16503 + goto :goto_a
16505 + :cond_2d
16506 + const-string v5, ""
16508 + :goto_2f
16509 + return-object v5
16511 + :cond_30
16512 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
16514 + move-result-object v5
16516 + goto :goto_2f
16517 +.end method
16519 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
16520 + .registers 21
16521 + .annotation system Ldalvik/annotation/Throws;
16522 + value = {
16523 + Landroid/os/RemoteException;
16525 + .end annotation
16527 + if-eqz p0, :cond_1e4
16529 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16531 + if-nez v1, :cond_13
16533 + const-string/jumbo v1, "privacy"
16535 + move-object/from16 v0, p2
16537 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
16539 + move-result-object v1
16541 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
16543 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16545 + :cond_13
16546 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
16548 + move-result-object v2
16550 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
16552 + move-result v3
16554 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16556 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16558 + move-result-object v7
16560 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16562 + move-result-object v9
16564 + const-string v15, "[real]"
16566 + move-object/from16 v13, p3
16568 + if-eqz v9, :cond_54
16570 + const-string v1, "contacts"
16572 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16574 + move-result v1
16576 + if-nez v1, :cond_3b
16578 + const-string v1, "com.android.contacts"
16580 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16582 + move-result v1
16584 + if-eqz v1, :cond_ab
16586 + :cond_3b
16587 + if-eqz v7, :cond_54
16589 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16591 + move-result v1
16593 + const/4 v4, 0x1
16595 + if-ne v1, v4, :cond_55
16597 + const-string v15, "[empty]"
16599 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16601 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16603 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16605 + const/4 v4, 0x1
16607 + const-string v5, "contacts"
16609 + const/4 v6, 0x0
16611 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16613 + :cond_54
16614 + :goto_54
16615 + return-object v13
16617 + :cond_55
16618 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16620 + move-result v1
16622 + const/4 v4, 0x2
16624 + if-ne v1, v4, :cond_a1
16626 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
16628 + move-result-object v1
16630 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
16632 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
16634 + move-result-object v4
16636 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
16638 + move-result v1
16640 + if-eqz v1, :cond_a1
16642 + const/4 v11, 0x0
16644 + if-eqz p1, :cond_82
16646 + move-object/from16 v8, p1
16648 + array-length v12, v8
16650 + const/4 v10, 0x0
16652 + :goto_73
16653 + if-ge v10, v12, :cond_82
16655 + aget-object v16, v8, v10
16657 + const-string v1, "_id"
16659 + move-object/from16 v0, v16
16661 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16663 + move-result v1
16665 + if-eqz v1, :cond_93
16667 + const/4 v11, 0x1
16669 + :cond_82
16670 + if-nez v11, :cond_96
16672 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16674 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16676 + :goto_89
16677 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16679 + const/4 v4, 0x2
16681 + const-string v5, "contacts"
16683 + const/4 v6, 0x0
16685 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16687 + goto :goto_54
16689 + :cond_93
16690 + add-int/lit8 v10, v10, 0x1
16692 + goto :goto_73
16694 + :cond_96
16695 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
16697 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
16699 + move-result-object v1
16701 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
16703 + move-object v13, v14
16705 + goto :goto_89
16707 + :cond_a1
16708 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16710 + const/4 v4, 0x0
16712 + const-string v5, "contacts"
16714 + const/4 v6, 0x0
16716 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16718 + goto :goto_54
16720 + :cond_ab
16721 + const-string v1, "com.android.calendar"
16723 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16725 + move-result v1
16727 + if-eqz v1, :cond_d8
16729 + if-eqz v7, :cond_cd
16731 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
16733 + move-result v1
16735 + const/4 v4, 0x1
16737 + if-ne v1, v4, :cond_cd
16739 + const-string v15, "[empty]"
16741 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16743 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16745 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16747 + const/4 v4, 0x1
16749 + const-string v5, "calendar"
16751 + const/4 v6, 0x0
16753 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16755 + goto :goto_54
16757 + :cond_cd
16758 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16760 + const/4 v4, 0x0
16762 + const-string v5, "calendar"
16764 + const/4 v6, 0x0
16766 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16768 + goto/16 :goto_54
16770 + :cond_d8
16771 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
16773 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16775 + move-result-object v1
16777 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16779 + move-result v1
16781 + if-eqz v1, :cond_10c
16783 + if-eqz v7, :cond_100
16785 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16787 + move-result v1
16789 + const/4 v4, 0x1
16791 + if-ne v1, v4, :cond_100
16793 + const-string v15, "[empty]"
16795 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16797 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16799 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16801 + const/4 v4, 0x1
16803 + const-string/jumbo v5, "mms"
16805 + const/4 v6, 0x0
16807 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16809 + goto/16 :goto_54
16811 + :cond_100
16812 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16814 + const/4 v4, 0x0
16816 + const-string/jumbo v5, "mms"
16818 + const/4 v6, 0x0
16820 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16822 + goto/16 :goto_54
16824 + :cond_10c
16825 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
16827 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16829 + move-result-object v1
16831 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16833 + move-result v1
16835 + if-eqz v1, :cond_140
16837 + if-eqz v7, :cond_134
16839 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16841 + move-result v1
16843 + const/4 v4, 0x1
16845 + if-ne v1, v4, :cond_134
16847 + const-string v15, "[empty]"
16849 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16851 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16853 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16855 + const/4 v4, 0x1
16857 + const-string/jumbo v5, "sms"
16859 + const/4 v6, 0x0
16861 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16863 + goto/16 :goto_54
16865 + :cond_134
16866 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16868 + const/4 v4, 0x0
16870 + const-string/jumbo v5, "sms"
16872 + const/4 v6, 0x0
16874 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16876 + goto/16 :goto_54
16878 + :cond_140
16879 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
16881 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16883 + move-result-object v1
16885 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16887 + move-result v1
16889 + if-nez v1, :cond_155
16891 + const-string/jumbo v1, "mms-sms-v2"
16893 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16895 + move-result v1
16897 + if-eqz v1, :cond_184
16899 + :cond_155
16900 + if-eqz v7, :cond_178
16902 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16904 + move-result v1
16906 + const/4 v4, 0x1
16908 + if-eq v1, v4, :cond_165
16910 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16912 + move-result v1
16914 + const/4 v4, 0x1
16916 + if-ne v1, v4, :cond_178
16918 + :cond_165
16919 + const-string v15, "[empty]"
16921 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16923 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16925 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16927 + const/4 v4, 0x1
16929 + const-string/jumbo v5, "mmsSms"
16931 + const/4 v6, 0x0
16933 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16935 + goto/16 :goto_54
16937 + :cond_178
16938 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16940 + const/4 v4, 0x0
16942 + const-string/jumbo v5, "mmsSms"
16944 + const/4 v6, 0x0
16946 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16948 + goto/16 :goto_54
16950 + :cond_184
16951 + const-string v1, "call_log"
16953 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16955 + move-result v1
16957 + if-eqz v1, :cond_1b2
16959 + if-eqz v7, :cond_1a7
16961 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
16963 + move-result v1
16965 + const/4 v4, 0x1
16967 + if-ne v1, v4, :cond_1a7
16969 + const-string v15, "[empty]"
16971 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16973 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16975 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16977 + const/4 v4, 0x1
16979 + const-string v5, "callLog"
16981 + const/4 v6, 0x0
16983 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16985 + goto/16 :goto_54
16987 + :cond_1a7
16988 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16990 + const/4 v4, 0x0
16992 + const-string v5, "callLog"
16994 + const/4 v6, 0x0
16996 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16998 + goto/16 :goto_54
17000 + :cond_1b2
17001 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
17003 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
17005 + move-result-object v1
17007 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17009 + move-result v1
17011 + if-eqz v1, :cond_54
17013 + if-eqz v7, :cond_1d9
17015 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
17017 + move-result v1
17019 + const/4 v4, 0x1
17021 + if-ne v1, v4, :cond_1d9
17023 + const-string v15, "[empty]"
17025 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17027 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17029 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17031 + const/4 v4, 0x1
17033 + const-string v5, "bookmarks"
17035 + const/4 v6, 0x0
17037 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17039 + goto/16 :goto_54
17041 + :cond_1d9
17042 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17044 + const/4 v4, 0x0
17046 + const-string v5, "bookmarks"
17048 + const/4 v6, 0x0
17050 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17052 + goto/16 :goto_54
17054 + :cond_1e4
17055 + move-object/from16 v13, p3
17057 + goto/16 :goto_54
17058 +.end method
17059 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali
17060 --- stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 18:00:00.000000000 -0600
17061 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-05-06 12:13:39.795697973 -0500
17062 @@ -0,0 +1,1225 @@
17063 +.class public Landroid/privacy/surrogate/PrivacyCursor;
17064 +.super Ljava/lang/Object;
17065 +.source "PrivacyCursor.java"
17067 +# interfaces
17068 +.implements Landroid/database/Cursor;
17071 +# static fields
17072 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
17075 +# instance fields
17076 +.field private allowedIdMapping:[I
17078 +.field private allowedIds:[I
17080 +.field private realCursor:Landroid/database/Cursor;
17083 +# direct methods
17084 +.method public constructor <init>()V
17085 + .registers 1
17087 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17089 + return-void
17090 +.end method
17092 +.method public constructor <init>(Landroid/database/Cursor;[I)V
17093 + .registers 7
17095 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17097 + if-eqz p2, :cond_8
17099 + array-length v2, p2
17101 + if-nez v2, :cond_9
17103 + :cond_8
17104 + const/4 p1, 0x0
17106 + :cond_9
17107 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17109 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17111 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17113 + if-eqz v2, :cond_3f
17115 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17117 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
17119 + move-result v0
17121 + array-length v2, p2
17123 + new-array v2, v2, [I
17125 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17127 + const/4 v1, 0x0
17129 + :cond_1d
17130 + :goto_1d
17131 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17133 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
17135 + move-result v2
17137 + if-eqz v2, :cond_3a
17139 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17141 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17143 + move-result v2
17145 + if-eqz v2, :cond_1d
17147 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17149 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17151 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17153 + move-result v3
17155 + aput v3, v2, v1
17157 + add-int/lit8 v1, v1, 0x1
17159 + goto :goto_1d
17161 + :cond_3a
17162 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17164 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
17166 + :cond_3f
17167 + return-void
17168 +.end method
17170 +.method private getContactId(Landroid/database/Cursor;)I
17171 + .registers 5
17173 + const-string v2, "_id"
17175 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17177 + move-result v0
17179 + const/4 v1, -0x1
17181 + const/4 v2, -0x1
17183 + if-eq v0, v2, :cond_e
17185 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
17187 + move-result v1
17189 + :cond_e
17190 + return v1
17191 +.end method
17193 +.method private getMappedPos(I)I
17194 + .registers 4
17196 + const/4 v0, 0x0
17198 + :goto_1
17199 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17201 + array-length v1, v1
17203 + if-ge v0, v1, :cond_10
17205 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17207 + aget v1, v1, v0
17209 + if-ne v1, p1, :cond_d
17211 + :goto_c
17212 + return v0
17214 + :cond_d
17215 + add-int/lit8 v0, v0, 0x1
17217 + goto :goto_1
17219 + :cond_10
17220 + const/4 v0, -0x1
17222 + goto :goto_c
17223 +.end method
17225 +.method private isAllowed(I)Z
17226 + .registers 7
17228 + const/4 v4, 0x0
17230 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17232 + array-length v3, v0
17234 + const/4 v2, 0x0
17236 + :goto_5
17237 + if-ge v2, v3, :cond_c
17239 + aget v1, v0, v2
17241 + if-ne p1, v1, :cond_d
17243 + const/4 v4, 0x1
17245 + :cond_c
17246 + return v4
17248 + :cond_d
17249 + add-int/lit8 v2, v2, 0x1
17251 + goto :goto_5
17252 +.end method
17254 +.method private isAllowed(Landroid/database/Cursor;)Z
17255 + .registers 3
17257 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
17259 + move-result v0
17261 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
17263 + move-result v0
17265 + return v0
17266 +.end method
17269 +# virtual methods
17270 +.method public close()V
17271 + .registers 2
17273 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17275 + if-eqz v0, :cond_9
17277 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17279 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
17281 + :cond_9
17282 + return-void
17283 +.end method
17285 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17286 + .registers 4
17288 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17290 + if-eqz v0, :cond_9
17292 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17294 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17296 + :cond_9
17297 + return-void
17298 +.end method
17300 +.method public deactivate()V
17301 + .registers 2
17303 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17305 + if-eqz v0, :cond_9
17307 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17309 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
17311 + :cond_9
17312 + return-void
17313 +.end method
17315 +.method public getBlob(I)[B
17316 + .registers 3
17318 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17320 + if-eqz v0, :cond_b
17322 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17324 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
17326 + move-result-object v0
17328 + :goto_a
17329 + return-object v0
17331 + :cond_b
17332 + const/4 v0, 0x0
17334 + new-array v0, v0, [B
17336 + goto :goto_a
17337 +.end method
17339 +.method public getColumnCount()I
17340 + .registers 2
17342 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17344 + if-eqz v0, :cond_b
17346 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17348 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
17350 + move-result v0
17352 + :goto_a
17353 + return v0
17355 + :cond_b
17356 + const/4 v0, 0x0
17358 + goto :goto_a
17359 +.end method
17361 +.method public getColumnIndex(Ljava/lang/String;)I
17362 + .registers 3
17364 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17366 + if-eqz v0, :cond_b
17368 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17370 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17372 + move-result v0
17374 + :goto_a
17375 + return v0
17377 + :cond_b
17378 + const/4 v0, -0x1
17380 + goto :goto_a
17381 +.end method
17383 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
17384 + .registers 3
17385 + .annotation system Ldalvik/annotation/Throws;
17386 + value = {
17387 + Ljava/lang/IllegalArgumentException;
17389 + .end annotation
17391 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17393 + if-eqz v0, :cond_b
17395 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17397 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
17399 + move-result v0
17401 + :goto_a
17402 + return v0
17404 + :cond_b
17405 + const/4 v0, -0x1
17407 + goto :goto_a
17408 +.end method
17410 +.method public getColumnName(I)Ljava/lang/String;
17411 + .registers 3
17413 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17415 + if-eqz v0, :cond_b
17417 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17419 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
17421 + move-result-object v0
17423 + :goto_a
17424 + return-object v0
17426 + :cond_b
17427 + const-string v0, ""
17429 + goto :goto_a
17430 +.end method
17432 +.method public getColumnNames()[Ljava/lang/String;
17433 + .registers 4
17435 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17437 + if-eqz v0, :cond_b
17439 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17441 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnNames()[Ljava/lang/String;
17443 + move-result-object v0
17445 + :goto_a
17446 + return-object v0
17448 + :cond_b
17449 + const/4 v0, 0x1
17451 + new-array v0, v0, [Ljava/lang/String;
17453 + const/4 v1, 0x0
17455 + const-string v2, ""
17457 + aput-object v2, v0, v1
17459 + goto :goto_a
17460 +.end method
17462 +.method public getCount()I
17463 + .registers 4
17465 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17467 + if-eqz v0, :cond_23
17469 + const-string v0, "PrivacyCursor"
17471 + new-instance v1, Ljava/lang/StringBuilder;
17473 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17475 + const-string v2, "getCount: "
17477 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17479 + move-result-object v1
17481 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17483 + array-length v2, v2
17485 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17487 + move-result-object v1
17489 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17491 + move-result-object v1
17493 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17495 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17497 + array-length v0, v0
17499 + :goto_22
17500 + return v0
17502 + :cond_23
17503 + const/4 v0, 0x0
17505 + goto :goto_22
17506 +.end method
17508 +.method public getDouble(I)D
17509 + .registers 4
17511 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17513 + if-eqz v0, :cond_b
17515 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17517 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
17519 + move-result-wide v0
17521 + :goto_a
17522 + return-wide v0
17524 + :cond_b
17525 + const-wide/16 v0, 0x0
17527 + goto :goto_a
17528 +.end method
17530 +.method public getExtras()Landroid/os/Bundle;
17531 + .registers 2
17533 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17535 + if-eqz v0, :cond_b
17537 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17539 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
17541 + move-result-object v0
17543 + :goto_a
17544 + return-object v0
17546 + :cond_b
17547 + new-instance v0, Landroid/os/Bundle;
17549 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
17551 + goto :goto_a
17552 +.end method
17554 +.method public getFloat(I)F
17555 + .registers 3
17557 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17559 + if-eqz v0, :cond_b
17561 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17563 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
17565 + move-result v0
17567 + :goto_a
17568 + return v0
17570 + :cond_b
17571 + const/4 v0, 0x0
17573 + goto :goto_a
17574 +.end method
17576 +.method public getInt(I)I
17577 + .registers 4
17579 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17581 + if-eqz v1, :cond_b
17583 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17585 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
17587 + move-result v0
17589 + :goto_a
17590 + return v0
17592 + :cond_b
17593 + const/4 v0, 0x0
17595 + goto :goto_a
17596 +.end method
17598 +.method public getLong(I)J
17599 + .registers 4
17601 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17603 + if-eqz v0, :cond_b
17605 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17607 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
17609 + move-result-wide v0
17611 + :goto_a
17612 + return-wide v0
17614 + :cond_b
17615 + const-wide/16 v0, 0x0
17617 + goto :goto_a
17618 +.end method
17620 +.method public getPosition()I
17621 + .registers 5
17623 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17625 + if-eqz v1, :cond_37
17627 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17629 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17631 + move-result v1
17633 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17635 + move-result v0
17637 + const-string v1, "PrivacyCursor"
17639 + new-instance v2, Ljava/lang/StringBuilder;
17641 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
17643 + const-string v3, "getPosition - mapped position: "
17645 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17647 + move-result-object v2
17649 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17651 + move-result-object v2
17653 + const-string v3, " real position: "
17655 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17657 + move-result-object v2
17659 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17661 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17663 + move-result v3
17665 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17667 + move-result-object v2
17669 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17671 + move-result-object v2
17673 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17675 + :goto_36
17676 + return v0
17678 + :cond_37
17679 + const/4 v0, -0x1
17681 + goto :goto_36
17682 +.end method
17684 +.method public getShort(I)S
17685 + .registers 3
17687 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17689 + if-eqz v0, :cond_b
17691 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17693 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
17695 + move-result v0
17697 + :goto_a
17698 + return v0
17700 + :cond_b
17701 + const/4 v0, 0x0
17703 + goto :goto_a
17704 +.end method
17706 +.method public getString(I)Ljava/lang/String;
17707 + .registers 3
17709 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17711 + if-eqz v0, :cond_b
17713 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17715 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
17717 + move-result-object v0
17719 + :goto_a
17720 + return-object v0
17722 + :cond_b
17723 + const-string v0, ""
17725 + goto :goto_a
17726 +.end method
17728 +.method public getType(I)I
17729 + .registers 3
17731 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17733 + if-eqz v0, :cond_b
17735 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17737 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
17739 + move-result v0
17741 + :goto_a
17742 + return v0
17744 + :cond_b
17745 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17747 + const/4 v0, 0x0
17749 + goto :goto_a
17750 +.end method
17752 +.method public getWantsAllOnMoveCalls()Z
17753 + .registers 2
17755 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17757 + if-eqz v0, :cond_b
17759 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17761 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
17763 + move-result v0
17765 + :goto_a
17766 + return v0
17768 + :cond_b
17769 + const/4 v0, 0x0
17771 + goto :goto_a
17772 +.end method
17774 +.method public isAfterLast()Z
17775 + .registers 2
17777 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17779 + if-eqz v0, :cond_b
17781 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17783 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
17785 + move-result v0
17787 + :goto_a
17788 + return v0
17790 + :cond_b
17791 + const/4 v0, 0x0
17793 + goto :goto_a
17794 +.end method
17796 +.method public isBeforeFirst()Z
17797 + .registers 2
17799 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17801 + if-eqz v0, :cond_b
17803 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17805 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
17807 + move-result v0
17809 + :goto_a
17810 + return v0
17812 + :cond_b
17813 + const/4 v0, 0x0
17815 + goto :goto_a
17816 +.end method
17818 +.method public isClosed()Z
17819 + .registers 2
17821 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17823 + if-eqz v0, :cond_b
17825 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17827 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
17829 + move-result v0
17831 + :goto_a
17832 + return v0
17834 + :cond_b
17835 + const/4 v0, 0x0
17837 + goto :goto_a
17838 +.end method
17840 +.method public isFirst()Z
17841 + .registers 4
17843 + const/4 v0, 0x0
17845 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17847 + if-eqz v1, :cond_12
17849 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17851 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17853 + move-result v1
17855 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17857 + aget v2, v2, v0
17859 + if-ne v1, v2, :cond_12
17861 + const/4 v0, 0x1
17863 + :cond_12
17864 + return v0
17865 +.end method
17867 +.method public isLast()Z
17868 + .registers 4
17870 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17872 + if-eqz v0, :cond_17
17874 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17876 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
17878 + move-result v0
17880 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17882 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17884 + array-length v2, v2
17886 + add-int/lit8 v2, v2, -0x1
17888 + aget v1, v1, v2
17890 + if-ne v0, v1, :cond_17
17892 + const/4 v0, 0x1
17894 + :goto_16
17895 + return v0
17897 + :cond_17
17898 + const/4 v0, 0x0
17900 + goto :goto_16
17901 +.end method
17903 +.method public isNull(I)Z
17904 + .registers 3
17906 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17908 + if-eqz v0, :cond_b
17910 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17912 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
17914 + move-result v0
17916 + :goto_a
17917 + return v0
17919 + :cond_b
17920 + const/4 v0, 0x0
17922 + goto :goto_a
17923 +.end method
17925 +.method public move(I)Z
17926 + .registers 8
17928 + const/4 v2, 0x0
17930 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17932 + if-eqz v3, :cond_33
17934 + const-string v3, "PrivacyCursor"
17936 + new-instance v4, Ljava/lang/StringBuilder;
17938 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
17940 + const-string/jumbo v5, "move - offset: "
17942 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17944 + move-result-object v4
17946 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17948 + move-result-object v4
17950 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17952 + move-result-object v4
17954 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17956 + :try_start_1e
17957 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17959 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17961 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
17963 + move-result v4
17965 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17967 + move-result v4
17969 + add-int/2addr v4, p1
17971 + aget v1, v3, v4
17973 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17975 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
17976 + :try_end_32
17977 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_1e .. :try_end_32} :catch_34
17979 + move-result v2
17981 + :cond_33
17982 + :goto_33
17983 + return v2
17985 + :catch_34
17986 + move-exception v0
17988 + goto :goto_33
17989 +.end method
17991 +.method public moveToFirst()Z
17992 + .registers 4
17994 + const/4 v0, 0x0
17996 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17998 + if-eqz v1, :cond_f
18000 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18002 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18004 + aget v2, v2, v0
18006 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18008 + move-result v0
18010 + :cond_f
18011 + return v0
18012 +.end method
18014 +.method public moveToLast()Z
18015 + .registers 5
18017 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18019 + if-eqz v1, :cond_14
18021 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18023 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18025 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18027 + array-length v3, v3
18029 + add-int/lit8 v3, v3, -0x1
18031 + aget v2, v2, v3
18033 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18035 + move-result v0
18037 + :goto_13
18038 + return v0
18040 + :cond_14
18041 + const/4 v0, 0x0
18043 + goto :goto_13
18044 +.end method
18046 +.method public moveToNext()Z
18047 + .registers 3
18049 + const/4 v0, 0x0
18051 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18053 + if-eqz v1, :cond_d
18055 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18057 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18059 + move-result v1
18061 + if-nez v1, :cond_e
18063 + :cond_d
18064 + return v0
18066 + :cond_e
18067 + const/4 v0, 0x1
18069 + :goto_f
18070 + const/4 v1, 0x1
18072 + if-ne v0, v1, :cond_d
18074 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18076 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18078 + move-result v1
18080 + if-nez v1, :cond_d
18082 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18084 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18086 + move-result v0
18088 + goto :goto_f
18089 +.end method
18091 +.method public moveToPosition(I)Z
18092 + .registers 6
18094 + const/4 v1, 0x0
18096 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18098 + if-eqz v2, :cond_f
18100 + :try_start_5
18101 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18103 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18105 + aget v3, v3, p1
18107 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
18108 + :try_end_e
18109 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_5 .. :try_end_e} :catch_10
18111 + move-result v1
18113 + :cond_f
18114 + :goto_f
18115 + return v1
18117 + :catch_10
18118 + move-exception v0
18120 + goto :goto_f
18121 +.end method
18123 +.method public moveToPrevious()Z
18124 + .registers 3
18126 + const/4 v0, 0x0
18128 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18130 + if-eqz v1, :cond_d
18132 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18134 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18136 + move-result v1
18138 + if-nez v1, :cond_e
18140 + :cond_d
18141 + return v0
18143 + :cond_e
18144 + const/4 v0, 0x1
18146 + :goto_f
18147 + const/4 v1, 0x1
18149 + if-ne v0, v1, :cond_d
18151 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18153 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18155 + move-result v1
18157 + if-nez v1, :cond_d
18159 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18161 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18163 + move-result v0
18165 + goto :goto_f
18166 +.end method
18168 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
18169 + .registers 3
18171 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18173 + if-eqz v0, :cond_9
18175 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18177 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
18179 + :cond_9
18180 + return-void
18181 +.end method
18183 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
18184 + .registers 3
18186 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18188 + if-eqz v0, :cond_9
18190 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18192 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
18194 + :cond_9
18195 + return-void
18196 +.end method
18198 +.method public requery()Z
18199 + .registers 2
18201 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18203 + if-eqz v0, :cond_b
18205 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18207 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
18209 + move-result v0
18211 + :goto_a
18212 + return v0
18214 + :cond_b
18215 + const/4 v0, 0x0
18217 + goto :goto_a
18218 +.end method
18220 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18221 + .registers 3
18223 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18225 + if-eqz v0, :cond_b
18227 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18229 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18231 + move-result-object v0
18233 + :goto_a
18234 + return-object v0
18236 + :cond_b
18237 + new-instance v0, Landroid/os/Bundle;
18239 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
18241 + goto :goto_a
18242 +.end method
18244 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18245 + .registers 4
18247 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18249 + if-eqz v0, :cond_9
18251 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18253 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18255 + :cond_9
18256 + return-void
18257 +.end method
18259 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
18260 + .registers 3
18262 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18264 + if-eqz v0, :cond_9
18266 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18268 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
18270 + :cond_9
18271 + return-void
18272 +.end method
18274 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18275 + .registers 3
18277 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18279 + if-eqz v0, :cond_9
18281 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18283 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18285 + :cond_9
18286 + return-void
18287 +.end method
18288 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
18289 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 18:00:00.000000000 -0600
18290 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-05-06 12:13:39.795697973 -0500
18291 @@ -0,0 +1,134 @@
18292 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18293 +.super Ljava/lang/Thread;
18294 +.source "PrivacyLocationManager.java"
18297 +# annotations
18298 +.annotation system Ldalvik/annotation/EnclosingClass;
18299 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
18300 +.end annotation
18302 +.annotation system Ldalvik/annotation/InnerClass;
18303 + accessFlags = 0x2
18304 + name = "PrivacyLocationUpdater"
18305 +.end annotation
18308 +# instance fields
18309 +.field private intent:Landroid/app/PendingIntent;
18311 +.field private latitude:D
18313 +.field private listener:Landroid/location/LocationListener;
18315 +.field private longitude:D
18317 +.field private provider:Ljava/lang/String;
18319 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18322 +# direct methods
18323 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18324 + .registers 9
18326 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18328 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
18330 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18332 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18334 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18336 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18338 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18340 + return-void
18341 +.end method
18344 +# virtual methods
18345 +.method public run()V
18346 + .registers 8
18348 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18350 + if-eqz v3, :cond_43
18352 + new-instance v2, Landroid/location/Location;
18354 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18356 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
18358 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18360 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
18362 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18364 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
18366 + const/4 v1, 0x0
18368 + :goto_16
18369 + const/4 v3, 0x5
18371 + if-ge v1, v3, :cond_43
18373 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18375 + if-eqz v3, :cond_34
18377 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18379 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
18381 + :cond_22
18382 + :goto_22
18383 + :try_start_22
18384 + invoke-static {}, Ljava/lang/Math;->random()D
18386 + move-result-wide v3
18388 + const-wide v5, 0x408f400000000000L
18390 + mul-double/2addr v3, v5
18392 + double-to-int v3, v3
18394 + int-to-long v3, v3
18396 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
18397 + :try_end_31
18398 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
18400 + :goto_31
18401 + add-int/lit8 v1, v1, 0x1
18403 + goto :goto_16
18405 + :cond_34
18406 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18408 + if-eqz v3, :cond_22
18410 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18412 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
18414 + goto :goto_22
18416 + :catch_3e
18417 + move-exception v0
18419 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
18421 + goto :goto_31
18423 + :cond_43
18424 + return-void
18425 +.end method
18426 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
18427 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 18:00:00.000000000 -0600
18428 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-05-06 12:13:39.795697973 -0500
18429 @@ -0,0 +1,2091 @@
18430 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
18431 +.super Landroid/location/LocationManager;
18432 +.source "PrivacyLocationManager.java"
18435 +# annotations
18436 +.annotation system Ldalvik/annotation/MemberClasses;
18437 + value = {
18438 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18440 +.end annotation
18443 +# static fields
18444 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
18446 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
18449 +# instance fields
18450 +.field private context:Landroid/content/Context;
18452 +.field private lock:Ljava/lang/Object;
18454 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
18457 +# direct methods
18458 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
18459 + .registers 5
18461 + invoke-direct {p0, p1}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
18463 + new-instance v0, Ljava/lang/Object;
18465 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
18467 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18469 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18471 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
18473 + const-string/jumbo v1, "privacy"
18475 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
18477 + move-result-object v1
18479 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
18481 + move-result-object v1
18483 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
18485 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18487 + return-void
18488 +.end method
18490 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18491 + .registers 7
18493 + const/4 v2, 0x3
18495 + if-nez p1, :cond_5
18497 + const/4 v0, 0x0
18499 + :goto_4
18500 + return v0
18502 + :cond_5
18503 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
18505 + move-result v0
18507 + const/4 v1, 0x1
18509 + if-eq v0, v1, :cond_24
18511 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
18513 + move-result v0
18515 + if-eq v0, v2, :cond_24
18517 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
18519 + move-result v0
18521 + if-eq v0, v2, :cond_24
18523 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
18525 + move-result v0
18527 + if-eq v0, v2, :cond_24
18529 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
18531 + move-result v0
18533 + if-ne v0, v2, :cond_2b
18535 + :cond_24
18536 + const-string v0, "gps"
18538 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18540 + move-result v0
18542 + goto :goto_4
18544 + :cond_2b
18545 + const-string/jumbo v0, "network"
18547 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18549 + move-result v0
18551 + goto :goto_4
18552 +.end method
18554 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18555 + .registers 24
18557 + move-object/from16 v0, p0
18559 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18561 + move-object/from16 v19, v0
18563 + monitor-enter v19
18565 + :try_start_7
18566 + move-object/from16 v0, p0
18568 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18570 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
18572 + move-result-object v2
18574 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
18576 + move-result v3
18578 + move-object/from16 v0, p0
18580 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18582 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
18584 + move-result-object v7
18586 + const/16 v18, 0x0
18588 + if-eqz v7, :cond_239
18590 + const-string v1, "gps"
18592 + move-object/from16 v0, p1
18594 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18596 + move-result v1
18598 + if-eqz v1, :cond_111
18600 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
18602 + move-result v1
18604 + packed-switch v1, :pswitch_data_25e
18606 + :cond_30
18607 + :goto_30
18608 + monitor-exit v19
18610 + return v18
18612 + :pswitch_32
18613 + move-object/from16 v0, p0
18615 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18617 + const/4 v4, 0x0
18619 + const-string v5, "locationGPS"
18621 + const/4 v6, 0x0
18623 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18625 + goto :goto_30
18627 + :catchall_3e
18628 + move-exception v1
18630 + monitor-exit v19
18631 + :try_end_40
18632 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
18634 + throw v1
18636 + :pswitch_41
18637 + if-eqz p3, :cond_46
18639 + :try_start_43
18640 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18642 + :cond_46
18643 + const/16 v18, 0x1
18645 + move-object/from16 v0, p0
18647 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18649 + const/4 v4, 0x1
18651 + const-string v5, "locationGPS"
18653 + const/4 v6, 0x0
18655 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18656 + :try_end_53
18657 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
18659 + goto :goto_30
18661 + :pswitch_54
18662 + :try_start_54
18663 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18665 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18667 + move-result-object v1
18669 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18671 + move-result-wide v13
18673 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18675 + move-result-object v1
18677 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18679 + move-result-wide v15
18681 + move-object/from16 v9, p0
18683 + move-object/from16 v10, p1
18685 + move-object/from16 v11, p2
18687 + move-object/from16 v12, p3
18689 + 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
18691 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18692 + :try_end_74
18693 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
18694 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
18696 + const/16 v18, 0x1
18698 + :goto_76
18699 + :try_start_76
18700 + move-object/from16 v0, p0
18702 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18704 + const/4 v4, 0x2
18706 + const-string v5, "locationGPS"
18708 + new-instance v6, Ljava/lang/StringBuilder;
18710 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18712 + const-string v8, "Lat: "
18714 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18716 + move-result-object v6
18718 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18720 + move-result-object v8
18722 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18724 + move-result-object v6
18726 + const-string v8, " Lon: "
18728 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18730 + move-result-object v6
18732 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18734 + move-result-object v8
18736 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18738 + move-result-object v6
18740 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18742 + move-result-object v6
18744 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18746 + goto :goto_30
18748 + :catch_a6
18749 + move-exception v17
18751 + const-string v1, "PrivacyLocationManager"
18753 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18755 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18756 + :try_end_af
18757 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
18759 + const/16 v18, 0x1
18761 + goto :goto_76
18763 + :pswitch_b2
18764 + :try_start_b2
18765 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18767 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18769 + move-result-object v1
18771 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18773 + move-result-wide v13
18775 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18777 + move-result-object v1
18779 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18781 + move-result-wide v15
18783 + move-object/from16 v9, p0
18785 + move-object/from16 v10, p1
18787 + move-object/from16 v11, p2
18789 + move-object/from16 v12, p3
18791 + 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
18793 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18794 + :try_end_d2
18795 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
18796 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
18798 + const/16 v18, 0x1
18800 + :goto_d4
18801 + :try_start_d4
18802 + move-object/from16 v0, p0
18804 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18806 + const/4 v4, 0x3
18808 + const-string v5, "locationGPS"
18810 + new-instance v6, Ljava/lang/StringBuilder;
18812 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18814 + const-string v8, "Lat: "
18816 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18818 + move-result-object v6
18820 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18822 + move-result-object v8
18824 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18826 + move-result-object v6
18828 + const-string v8, " Lon: "
18830 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18832 + move-result-object v6
18834 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18836 + move-result-object v8
18838 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18840 + move-result-object v6
18842 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18844 + move-result-object v6
18846 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18848 + goto/16 :goto_30
18850 + :catch_105
18851 + move-exception v17
18853 + const-string v1, "PrivacyLocationManager"
18855 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18857 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18859 + const/16 v18, 0x1
18861 + goto :goto_d4
18863 + :cond_111
18864 + const-string/jumbo v1, "network"
18866 + move-object/from16 v0, p1
18868 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18870 + move-result v1
18872 + if-eqz v1, :cond_204
18874 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
18876 + move-result v1
18878 + packed-switch v1, :pswitch_data_26a
18880 + goto/16 :goto_30
18882 + :pswitch_125
18883 + move-object/from16 v0, p0
18885 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18887 + const/4 v4, 0x0
18889 + const-string v5, "locationNetwork"
18891 + const/4 v6, 0x0
18893 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18895 + goto/16 :goto_30
18897 + :pswitch_132
18898 + if-eqz p3, :cond_137
18900 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18902 + :cond_137
18903 + const/16 v18, 0x1
18905 + move-object/from16 v0, p0
18907 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18909 + const/4 v4, 0x1
18911 + const-string v5, "locationNetwork"
18913 + const/4 v6, 0x0
18915 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18916 + :try_end_144
18917 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
18919 + goto/16 :goto_30
18921 + :pswitch_146
18922 + :try_start_146
18923 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18925 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18927 + move-result-object v1
18929 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18931 + move-result-wide v13
18933 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18935 + move-result-object v1
18937 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18939 + move-result-wide v15
18941 + move-object/from16 v9, p0
18943 + move-object/from16 v10, p1
18945 + move-object/from16 v11, p2
18947 + move-object/from16 v12, p3
18949 + 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
18951 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18952 + :try_end_166
18953 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
18954 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
18956 + const/16 v18, 0x1
18958 + :goto_168
18959 + :try_start_168
18960 + move-object/from16 v0, p0
18962 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18964 + const/4 v4, 0x2
18966 + const-string v5, "locationNetwork"
18968 + new-instance v6, Ljava/lang/StringBuilder;
18970 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18972 + const-string v8, "Lat: "
18974 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18976 + move-result-object v6
18978 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18980 + move-result-object v8
18982 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18984 + move-result-object v6
18986 + const-string v8, " Lon: "
18988 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18990 + move-result-object v6
18992 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18994 + move-result-object v8
18996 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18998 + move-result-object v6
19000 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19002 + move-result-object v6
19004 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19006 + goto/16 :goto_30
19008 + :catch_199
19009 + move-exception v17
19011 + const-string v1, "PrivacyLocationManager"
19013 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19015 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19016 + :try_end_1a2
19017 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
19019 + const/16 v18, 0x1
19021 + goto :goto_168
19023 + :pswitch_1a5
19024 + :try_start_1a5
19025 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19027 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19029 + move-result-object v1
19031 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19033 + move-result-wide v13
19035 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19037 + move-result-object v1
19039 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19041 + move-result-wide v15
19043 + move-object/from16 v9, p0
19045 + move-object/from16 v10, p1
19047 + move-object/from16 v11, p2
19049 + move-object/from16 v12, p3
19051 + 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
19053 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19054 + :try_end_1c5
19055 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
19056 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
19058 + const/16 v18, 0x1
19060 + :goto_1c7
19061 + :try_start_1c7
19062 + move-object/from16 v0, p0
19064 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19066 + const/4 v4, 0x3
19068 + const-string v5, "locationNetwork"
19070 + new-instance v6, Ljava/lang/StringBuilder;
19072 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19074 + const-string v8, "Lat: "
19076 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19078 + move-result-object v6
19080 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19082 + move-result-object v8
19084 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19086 + move-result-object v6
19088 + const-string v8, " Lon: "
19090 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19092 + move-result-object v6
19094 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19096 + move-result-object v8
19098 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19100 + move-result-object v6
19102 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19104 + move-result-object v6
19106 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19108 + goto/16 :goto_30
19110 + :catch_1f8
19111 + move-exception v17
19113 + const-string v1, "PrivacyLocationManager"
19115 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19117 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19119 + const/16 v18, 0x1
19121 + goto :goto_1c7
19123 + :cond_204
19124 + const-string/jumbo v1, "passive"
19126 + move-object/from16 v0, p1
19128 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19130 + move-result v1
19132 + if-eqz v1, :cond_30
19134 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19136 + move-result v1
19138 + if-nez v1, :cond_22a
19140 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19142 + move-result v1
19144 + if-nez v1, :cond_22a
19146 + const/16 v18, 0x0
19148 + move-object/from16 v0, p0
19150 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19152 + const/4 v4, 0x0
19154 + const-string v5, "locationGPS"
19156 + const/4 v6, 0x0
19158 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19160 + goto/16 :goto_30
19162 + :cond_22a
19163 + const/16 v18, 0x1
19165 + move-object/from16 v0, p0
19167 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19169 + const/4 v4, 0x1
19171 + const-string v5, "locationGPS"
19173 + const/4 v6, 0x0
19175 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19177 + goto/16 :goto_30
19179 + :cond_239
19180 + const-string/jumbo v1, "network"
19182 + move-object/from16 v0, p1
19184 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19186 + move-result v1
19188 + if-eqz v1, :cond_251
19190 + move-object/from16 v0, p0
19192 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19194 + const/4 v4, 0x0
19196 + const-string v5, "locationNetwork"
19198 + const/4 v6, 0x0
19200 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19202 + goto/16 :goto_30
19204 + :cond_251
19205 + move-object/from16 v0, p0
19207 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19209 + const/4 v4, 0x0
19211 + const-string v5, "locationGPS"
19213 + const/4 v6, 0x0
19215 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19216 + :try_end_25c
19217 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
19219 + goto/16 :goto_30
19221 + :pswitch_data_25e
19222 + .packed-switch 0x0
19223 + :pswitch_32
19224 + :pswitch_41
19225 + :pswitch_54
19226 + :pswitch_b2
19227 + .end packed-switch
19229 + :pswitch_data_26a
19230 + .packed-switch 0x0
19231 + :pswitch_125
19232 + :pswitch_132
19233 + :pswitch_146
19234 + :pswitch_1a5
19235 + .end packed-switch
19236 +.end method
19239 +# virtual methods
19240 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19241 + .registers 10
19243 + const/4 v5, 0x0
19245 + const/4 v7, 0x0
19247 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19249 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19251 + move-result-object v1
19253 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19255 + move-result v2
19257 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19259 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19261 + move-result-object v6
19263 + if-eqz v6, :cond_24
19265 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19267 + move-result v0
19269 + if-eqz v0, :cond_24
19271 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19273 + const/4 v3, 0x1
19275 + const-string v4, "locationGPS"
19277 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19279 + move v0, v7
19281 + :goto_23
19282 + return v0
19284 + :cond_24
19285 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19287 + const-string v4, "locationGPS"
19289 + move v3, v7
19291 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19293 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19295 + move-result v0
19297 + goto :goto_23
19298 +.end method
19300 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19301 + .registers 14
19303 + const/4 v11, 0x3
19305 + const/4 v10, 0x2
19307 + const/4 v8, 0x1
19309 + const/4 v3, 0x0
19311 + const/4 v5, 0x0
19313 + if-nez p1, :cond_c
19315 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19317 + move-result-object v7
19319 + :cond_b
19320 + :goto_b
19321 + return-object v7
19323 + :cond_c
19324 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19326 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19328 + move-result-object v1
19330 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19332 + move-result v2
19334 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19336 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19338 + move-result-object v6
19340 + const/4 v7, 0x0
19342 + if-eqz v6, :cond_22c
19344 + const-string v0, "gps"
19346 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19348 + move-result v0
19350 + if-eqz v0, :cond_ff
19352 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19354 + move-result v0
19356 + packed-switch v0, :pswitch_data_29a
19358 + goto :goto_b
19360 + :pswitch_2f
19361 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19363 + move-result-object v7
19365 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19367 + const-string v4, "locationGPS"
19369 + if-eqz v7, :cond_5e
19371 + new-instance v5, Ljava/lang/StringBuilder;
19373 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19375 + const-string v8, "Lat: "
19377 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19379 + move-result-object v5
19381 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19383 + move-result-wide v8
19385 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19387 + move-result-object v5
19389 + const-string v8, " Lon: "
19391 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19393 + move-result-object v5
19395 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19397 + move-result-wide v8
19399 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19401 + move-result-object v5
19403 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19405 + move-result-object v5
19407 + :cond_5e
19408 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19410 + goto :goto_b
19412 + :pswitch_62
19413 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19415 + const-string v4, "locationGPS"
19417 + move v3, v8
19419 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19421 + goto :goto_b
19423 + :pswitch_6b
19424 + new-instance v7, Landroid/location/Location;
19426 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19428 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19430 + move-result-object v0
19432 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19434 + move-result-wide v3
19436 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19438 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19440 + move-result-object v0
19442 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19444 + move-result-wide v3
19446 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19448 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19450 + const-string v4, "locationGPS"
19452 + new-instance v3, Ljava/lang/StringBuilder;
19454 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19456 + const-string v5, "Lat: "
19458 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19460 + move-result-object v3
19462 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19464 + move-result-wide v8
19466 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19468 + move-result-object v3
19470 + const-string v5, " Lon: "
19472 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19474 + move-result-object v3
19476 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19478 + move-result-wide v8
19480 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19482 + move-result-object v3
19484 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19486 + move-result-object v5
19488 + move v3, v10
19490 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19492 + goto/16 :goto_b
19494 + :pswitch_b5
19495 + new-instance v7, Landroid/location/Location;
19497 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19499 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19501 + move-result-object v0
19503 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19505 + move-result-wide v3
19507 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19509 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19511 + move-result-object v0
19513 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19515 + move-result-wide v3
19517 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19519 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19521 + const-string v4, "locationGPS"
19523 + new-instance v3, Ljava/lang/StringBuilder;
19525 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19527 + const-string v5, "Lat: "
19529 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19531 + move-result-object v3
19533 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19535 + move-result-wide v8
19537 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19539 + move-result-object v3
19541 + const-string v5, " Lon: "
19543 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19545 + move-result-object v3
19547 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19549 + move-result-wide v8
19551 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19553 + move-result-object v3
19555 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19557 + move-result-object v5
19559 + move v3, v11
19561 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19563 + goto/16 :goto_b
19565 + :cond_ff
19566 + const-string/jumbo v0, "network"
19568 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19570 + move-result v0
19572 + if-eqz v0, :cond_1e3
19574 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19576 + move-result v0
19578 + packed-switch v0, :pswitch_data_2a6
19580 + goto/16 :goto_b
19582 + :pswitch_111
19583 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19585 + move-result-object v7
19587 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19589 + const-string v4, "locationNetwork"
19591 + if-eqz v7, :cond_140
19593 + new-instance v5, Ljava/lang/StringBuilder;
19595 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19597 + const-string v8, "Lat: "
19599 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19601 + move-result-object v5
19603 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19605 + move-result-wide v8
19607 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19609 + move-result-object v5
19611 + const-string v8, " Lon: "
19613 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19615 + move-result-object v5
19617 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19619 + move-result-wide v8
19621 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19623 + move-result-object v5
19625 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19627 + move-result-object v5
19629 + :cond_140
19630 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19632 + goto/16 :goto_b
19634 + :pswitch_145
19635 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19637 + const-string v4, "locationNetwork"
19639 + move v3, v8
19641 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19643 + goto/16 :goto_b
19645 + :pswitch_14f
19646 + new-instance v7, Landroid/location/Location;
19648 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19650 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19652 + move-result-object v0
19654 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19656 + move-result-wide v3
19658 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19660 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19662 + move-result-object v0
19664 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19666 + move-result-wide v3
19668 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19670 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19672 + const-string v4, "locationNetwork"
19674 + new-instance v3, Ljava/lang/StringBuilder;
19676 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19678 + const-string v5, "Lat: "
19680 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19682 + move-result-object v3
19684 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19686 + move-result-wide v8
19688 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19690 + move-result-object v3
19692 + const-string v5, " Lon: "
19694 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19696 + move-result-object v3
19698 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19700 + move-result-wide v8
19702 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19704 + move-result-object v3
19706 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19708 + move-result-object v5
19710 + move v3, v10
19712 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19714 + goto/16 :goto_b
19716 + :pswitch_199
19717 + new-instance v7, Landroid/location/Location;
19719 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19721 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19723 + move-result-object v0
19725 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19727 + move-result-wide v3
19729 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19731 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19733 + move-result-object v0
19735 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19737 + move-result-wide v3
19739 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19741 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19743 + const-string v4, "locationNetwork"
19745 + new-instance v3, Ljava/lang/StringBuilder;
19747 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19749 + const-string v5, "Lat: "
19751 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19753 + move-result-object v3
19755 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19757 + move-result-wide v8
19759 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19761 + move-result-object v3
19763 + const-string v5, " Lon: "
19765 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19767 + move-result-object v3
19769 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19771 + move-result-wide v8
19773 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19775 + move-result-object v3
19777 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19779 + move-result-object v5
19781 + move v3, v11
19783 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19785 + goto/16 :goto_b
19787 + :cond_1e3
19788 + const-string/jumbo v0, "passive"
19790 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19792 + move-result v0
19794 + if-eqz v0, :cond_b
19796 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19798 + move-result v0
19800 + if-nez v0, :cond_b
19802 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19804 + move-result v0
19806 + if-nez v0, :cond_b
19808 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19810 + move-result-object v7
19812 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19814 + const-string v4, "locationGPS"
19816 + if-eqz v7, :cond_227
19818 + new-instance v5, Ljava/lang/StringBuilder;
19820 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19822 + const-string v8, "Lat: "
19824 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19826 + move-result-object v5
19828 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19830 + move-result-wide v8
19832 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19834 + move-result-object v5
19836 + const-string v8, " Lon: "
19838 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19840 + move-result-object v5
19842 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19844 + move-result-wide v8
19846 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19848 + move-result-object v5
19850 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19852 + move-result-object v5
19854 + :cond_227
19855 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19857 + goto/16 :goto_b
19859 + :cond_22c
19860 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19862 + move-result-object v7
19864 + const-string/jumbo v0, "network"
19866 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19868 + move-result v0
19870 + if-eqz v0, :cond_269
19872 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19874 + const-string v4, "locationNetwork"
19876 + if-eqz v7, :cond_264
19878 + new-instance v5, Ljava/lang/StringBuilder;
19880 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19882 + const-string v8, "Lat: "
19884 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19886 + move-result-object v5
19888 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19890 + move-result-wide v8
19892 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19894 + move-result-object v5
19896 + const-string v8, " Lon: "
19898 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19900 + move-result-object v5
19902 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19904 + move-result-wide v8
19906 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19908 + move-result-object v5
19910 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19912 + move-result-object v5
19914 + :cond_264
19915 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19917 + goto/16 :goto_b
19919 + :cond_269
19920 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19922 + const-string v4, "locationGPS"
19924 + if-eqz v7, :cond_294
19926 + new-instance v5, Ljava/lang/StringBuilder;
19928 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19930 + const-string v8, "Lat: "
19932 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19934 + move-result-object v5
19936 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19938 + move-result-wide v8
19940 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19942 + move-result-object v5
19944 + const-string v8, " Lon: "
19946 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19948 + move-result-object v5
19950 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19952 + move-result-wide v8
19954 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19956 + move-result-object v5
19958 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19960 + move-result-object v5
19962 + :cond_294
19963 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19965 + goto/16 :goto_b
19967 + nop
19969 + :pswitch_data_29a
19970 + .packed-switch 0x0
19971 + :pswitch_2f
19972 + :pswitch_62
19973 + :pswitch_6b
19974 + :pswitch_b5
19975 + .end packed-switch
19977 + :pswitch_data_2a6
19978 + .packed-switch 0x0
19979 + :pswitch_111
19980 + :pswitch_145
19981 + :pswitch_14f
19982 + :pswitch_199
19983 + .end packed-switch
19984 +.end method
19986 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19987 + .registers 7
19989 + if-nez p1, :cond_7
19991 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19993 + move-result-object v0
19995 + :cond_6
19996 + :goto_6
19997 + return-object v0
19999 + :cond_7
20000 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20002 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20004 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20006 + move-result-object v3
20008 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20010 + move-result v4
20012 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20014 + move-result-object v1
20016 + const/4 v0, 0x0
20018 + if-eqz v1, :cond_5f
20020 + const-string v2, "gps"
20022 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20024 + move-result v2
20026 + if-eqz v2, :cond_2f
20028 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20030 + move-result v2
20032 + packed-switch v2, :pswitch_data_64
20034 + :pswitch_29
20035 + goto :goto_6
20037 + :pswitch_2a
20038 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20040 + move-result-object v0
20042 + goto :goto_6
20044 + :cond_2f
20045 + const-string/jumbo v2, "network"
20047 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20049 + move-result v2
20051 + if-eqz v2, :cond_45
20053 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20055 + move-result v2
20057 + packed-switch v2, :pswitch_data_70
20059 + :pswitch_3f
20060 + goto :goto_6
20062 + :pswitch_40
20063 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20065 + move-result-object v0
20067 + goto :goto_6
20069 + :cond_45
20070 + const-string/jumbo v2, "passive"
20072 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20074 + move-result v2
20076 + if-eqz v2, :cond_6
20078 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20080 + move-result v2
20082 + if-eqz v2, :cond_5a
20084 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20086 + move-result v2
20088 + if-nez v2, :cond_6
20090 + :cond_5a
20091 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20093 + move-result-object v0
20095 + goto :goto_6
20097 + :cond_5f
20098 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20100 + move-result-object v0
20102 + goto :goto_6
20104 + :pswitch_data_64
20105 + .packed-switch 0x0
20106 + :pswitch_2a
20107 + :pswitch_29
20108 + :pswitch_2a
20109 + :pswitch_2a
20110 + .end packed-switch
20112 + :pswitch_data_70
20113 + .packed-switch 0x0
20114 + :pswitch_40
20115 + :pswitch_3f
20116 + :pswitch_40
20117 + :pswitch_40
20118 + .end packed-switch
20119 +.end method
20121 +.method public isProviderEnabled(Ljava/lang/String;)Z
20122 + .registers 7
20124 + if-nez p1, :cond_7
20126 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20128 + move-result v0
20130 + :cond_6
20131 + :goto_6
20132 + :pswitch_6
20133 + return v0
20135 + :cond_7
20136 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20138 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20140 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20142 + move-result-object v3
20144 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20146 + move-result v4
20148 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20150 + move-result-object v1
20152 + const/4 v0, 0x0
20154 + if-eqz v1, :cond_65
20156 + const-string v2, "gps"
20158 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20160 + move-result v2
20162 + if-eqz v2, :cond_31
20164 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20166 + move-result v2
20168 + packed-switch v2, :pswitch_data_6a
20170 + goto :goto_6
20172 + :pswitch_2a
20173 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20175 + move-result v0
20177 + goto :goto_6
20179 + :pswitch_2f
20180 + const/4 v0, 0x1
20182 + goto :goto_6
20184 + :cond_31
20185 + const-string/jumbo v2, "network"
20187 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20189 + move-result v2
20191 + if-eqz v2, :cond_49
20193 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20195 + move-result v2
20197 + packed-switch v2, :pswitch_data_76
20199 + goto :goto_6
20201 + :pswitch_42
20202 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20204 + move-result v0
20206 + goto :goto_6
20208 + :pswitch_47
20209 + const/4 v0, 0x1
20211 + goto :goto_6
20213 + :cond_49
20214 + const-string/jumbo v2, "passive"
20216 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20218 + move-result v2
20220 + if-eqz v2, :cond_6
20222 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20224 + move-result v2
20226 + if-eqz v2, :cond_5e
20228 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20230 + move-result v2
20232 + if-nez v2, :cond_63
20234 + :cond_5e
20235 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20237 + move-result v0
20239 + goto :goto_6
20241 + :cond_63
20242 + const/4 v0, 0x0
20244 + goto :goto_6
20246 + :cond_65
20247 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20249 + move-result v0
20251 + goto :goto_6
20253 + :pswitch_data_6a
20254 + .packed-switch 0x0
20255 + :pswitch_2a
20256 + :pswitch_6
20257 + :pswitch_2f
20258 + :pswitch_2f
20259 + .end packed-switch
20261 + :pswitch_data_76
20262 + .packed-switch 0x0
20263 + :pswitch_42
20264 + :pswitch_6
20265 + :pswitch_47
20266 + :pswitch_47
20267 + .end packed-switch
20268 +.end method
20270 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20271 + .registers 7
20273 + if-eqz p4, :cond_4
20275 + if-nez p5, :cond_8
20277 + :cond_4
20278 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20280 + :cond_7
20281 + :goto_7
20282 + return-void
20284 + :cond_8
20285 + const/4 v0, 0x0
20287 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20289 + move-result v0
20291 + if-nez v0, :cond_7
20293 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20295 + goto :goto_7
20296 +.end method
20298 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20299 + .registers 8
20301 + if-eqz p4, :cond_4
20303 + if-nez p5, :cond_8
20305 + :cond_4
20306 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20308 + :cond_7
20309 + :goto_7
20310 + return-void
20312 + :cond_8
20313 + const/4 v0, 0x0
20315 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20317 + move-result v0
20319 + if-nez v0, :cond_7
20321 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20323 + goto :goto_7
20324 +.end method
20326 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20327 + .registers 7
20329 + if-eqz p1, :cond_4
20331 + if-nez p5, :cond_8
20333 + :cond_4
20334 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20336 + :cond_7
20337 + :goto_7
20338 + return-void
20340 + :cond_8
20341 + const/4 v0, 0x0
20343 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20345 + move-result v0
20347 + if-nez v0, :cond_7
20349 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20351 + goto :goto_7
20352 +.end method
20354 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20355 + .registers 7
20357 + if-eqz p1, :cond_4
20359 + if-nez p5, :cond_8
20361 + :cond_4
20362 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20364 + :cond_7
20365 + :goto_7
20366 + return-void
20368 + :cond_8
20369 + const/4 v0, 0x0
20371 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20373 + move-result v0
20375 + if-nez v0, :cond_7
20377 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20379 + goto :goto_7
20380 +.end method
20382 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20383 + .registers 8
20385 + if-eqz p1, :cond_4
20387 + if-nez p5, :cond_8
20389 + :cond_4
20390 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20392 + :cond_7
20393 + :goto_7
20394 + return-void
20396 + :cond_8
20397 + const/4 v0, 0x0
20399 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20401 + move-result v0
20403 + if-nez v0, :cond_7
20405 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20407 + goto :goto_7
20408 +.end method
20410 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20411 + .registers 4
20413 + if-eqz p1, :cond_4
20415 + if-nez p2, :cond_8
20417 + :cond_4
20418 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20420 + :cond_7
20421 + :goto_7
20422 + return-void
20424 + :cond_8
20425 + const/4 v0, 0x0
20427 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20429 + move-result v0
20431 + if-nez v0, :cond_7
20433 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20435 + goto :goto_7
20436 +.end method
20438 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20439 + .registers 5
20441 + if-eqz p1, :cond_4
20443 + if-nez p2, :cond_8
20445 + :cond_4
20446 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20448 + :cond_7
20449 + :goto_7
20450 + return-void
20452 + :cond_8
20453 + const/4 v0, 0x0
20455 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20457 + move-result v0
20459 + if-nez v0, :cond_7
20461 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20463 + goto :goto_7
20464 +.end method
20466 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20467 + .registers 4
20469 + if-eqz p1, :cond_4
20471 + if-nez p2, :cond_8
20473 + :cond_4
20474 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20476 + :cond_7
20477 + :goto_7
20478 + return-void
20480 + :cond_8
20481 + const/4 v0, 0x0
20483 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20485 + move-result v0
20487 + if-nez v0, :cond_7
20489 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20491 + goto :goto_7
20492 +.end method
20494 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20495 + .registers 5
20497 + if-eqz p1, :cond_4
20499 + if-nez p2, :cond_8
20501 + :cond_4
20502 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20504 + :cond_7
20505 + :goto_7
20506 + return-void
20508 + :cond_8
20509 + const/4 v0, 0x0
20511 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20513 + move-result v0
20515 + if-nez v0, :cond_7
20517 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20519 + goto :goto_7
20520 +.end method
20521 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
20522 --- stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 18:00:00.000000000 -0600
20523 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-05-06 12:13:39.799697999 -0500
20524 @@ -0,0 +1,731 @@
20525 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
20526 +.super Landroid/telephony/TelephonyManager;
20527 +.source "PrivacyTelephonyManager.java"
20530 +# static fields
20531 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
20534 +# instance fields
20535 +.field private context:Landroid/content/Context;
20537 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
20540 +# direct methods
20541 +.method public constructor <init>(Landroid/content/Context;)V
20542 + .registers 4
20544 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
20546 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20548 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
20550 + const-string/jumbo v1, "privacy"
20552 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20554 + move-result-object v1
20556 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20558 + move-result-object v1
20560 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20562 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20564 + return-void
20565 +.end method
20567 +.method private getNetworkInfo()Ljava/lang/String;
20568 + .registers 8
20570 + const/4 v5, 0x0
20572 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20574 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20576 + move-result-object v1
20578 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20580 + move-result v2
20582 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20584 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20586 + move-result-object v6
20588 + if-eqz v6, :cond_25
20590 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
20592 + move-result v0
20594 + if-eqz v0, :cond_25
20596 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20598 + const/4 v3, 0x1
20600 + const-string/jumbo v4, "networkInfoCurrent"
20602 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20604 + const-string v5, ""
20606 + :goto_24
20607 + return-object v5
20609 + :cond_25
20610 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20612 + const/4 v3, 0x0
20614 + const-string/jumbo v4, "networkInfoCurrent"
20616 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20618 + goto :goto_24
20619 +.end method
20621 +.method private getSimInfo()Ljava/lang/String;
20622 + .registers 8
20624 + const/4 v5, 0x0
20626 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20628 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20630 + move-result-object v1
20632 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20634 + move-result v2
20636 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20638 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20640 + move-result-object v6
20642 + if-eqz v6, :cond_25
20644 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
20646 + move-result v0
20648 + if-eqz v0, :cond_25
20650 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20652 + const/4 v3, 0x1
20654 + const-string/jumbo v4, "networkInfoSIM"
20656 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20658 + const-string v5, ""
20660 + :goto_24
20661 + return-object v5
20663 + :cond_25
20664 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20666 + const/4 v3, 0x0
20668 + const-string/jumbo v4, "networkInfoSIM"
20670 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20672 + goto :goto_24
20673 +.end method
20676 +# virtual methods
20677 +.method public getDeviceId()Ljava/lang/String;
20678 + .registers 8
20680 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20682 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20684 + move-result-object v1
20686 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20688 + move-result v2
20690 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20692 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20694 + move-result-object v6
20696 + if-eqz v6, :cond_28
20698 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20700 + move-result v0
20702 + if-eqz v0, :cond_28
20704 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
20706 + move-result-object v5
20708 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20710 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20712 + move-result v3
20714 + const-string v4, "deviceID"
20716 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20718 + :goto_27
20719 + return-object v5
20721 + :cond_28
20722 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
20724 + move-result-object v5
20726 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20728 + const/4 v3, 0x0
20730 + const-string v4, "deviceID"
20732 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20734 + goto :goto_27
20735 +.end method
20737 +.method public getLine1Number()Ljava/lang/String;
20738 + .registers 8
20740 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20742 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20744 + move-result-object v1
20746 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20748 + move-result v2
20750 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20752 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20754 + move-result-object v6
20756 + if-eqz v6, :cond_28
20758 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20760 + move-result v0
20762 + if-eqz v0, :cond_28
20764 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
20766 + move-result-object v5
20768 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20770 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20772 + move-result v3
20774 + const-string v4, "line1Number"
20776 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20778 + :goto_27
20779 + return-object v5
20781 + :cond_28
20782 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
20784 + move-result-object v5
20786 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20788 + const/4 v3, 0x0
20790 + const-string v4, "line1Number"
20792 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20794 + goto :goto_27
20795 +.end method
20797 +.method public getNeighboringCellInfo()Ljava/util/List;
20798 + .registers 10
20799 + .annotation system Ldalvik/annotation/Signature;
20800 + value = {
20801 + "()",
20802 + "Ljava/util/List",
20803 + "<",
20804 + "Landroid/telephony/NeighboringCellInfo;",
20805 + ">;"
20807 + .end annotation
20809 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20811 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20813 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20815 + move-result-object v7
20817 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20819 + move-result v8
20821 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20823 + move-result-object v5
20825 + const/4 v3, 0x0
20827 + const-string v4, "[null]"
20829 + if-eqz v5, :cond_1c
20831 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20833 + move-result v6
20835 + const/4 v7, 0x1
20837 + if-ne v6, v7, :cond_1d
20839 + :cond_1c
20840 + :goto_1c
20841 + return-object v3
20843 + :cond_1d
20844 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20846 + move-result v6
20848 + if-eqz v6, :cond_2b
20850 + new-instance v3, Ljava/util/ArrayList;
20852 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
20854 + const-string v4, "[empty list of cells]"
20856 + goto :goto_1c
20858 + :cond_2b
20859 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
20861 + move-result-object v3
20863 + const-string v0, ""
20865 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
20867 + move-result-object v2
20869 + :goto_35
20870 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
20872 + move-result v6
20874 + if-eqz v6, :cond_5f
20876 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
20878 + move-result-object v1
20880 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
20882 + new-instance v6, Ljava/lang/StringBuilder;
20884 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20886 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20888 + move-result-object v6
20890 + const-string v7, "\t"
20892 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20894 + move-result-object v6
20896 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
20898 + move-result-object v6
20900 + const-string v7, "\n"
20902 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20904 + move-result-object v6
20906 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20908 + move-result-object v0
20910 + goto :goto_35
20912 + :cond_5f
20913 + new-instance v6, Ljava/lang/StringBuilder;
20915 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20917 + const-string v7, "[real value]:\n"
20919 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20921 + move-result-object v6
20923 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20925 + move-result-object v6
20927 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20929 + move-result-object v4
20931 + goto :goto_1c
20932 +.end method
20934 +.method public getNetworkCountryIso()Ljava/lang/String;
20935 + .registers 2
20937 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20939 + move-result-object v0
20941 + if-nez v0, :cond_a
20943 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
20945 + move-result-object v0
20947 + :cond_a
20948 + return-object v0
20949 +.end method
20951 +.method public getNetworkOperator()Ljava/lang/String;
20952 + .registers 2
20954 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20956 + move-result-object v0
20958 + if-nez v0, :cond_a
20960 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
20962 + move-result-object v0
20964 + :cond_a
20965 + return-object v0
20966 +.end method
20968 +.method public getNetworkOperatorName()Ljava/lang/String;
20969 + .registers 2
20971 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20973 + move-result-object v0
20975 + if-nez v0, :cond_a
20977 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
20979 + move-result-object v0
20981 + :cond_a
20982 + return-object v0
20983 +.end method
20985 +.method public getSimCountryIso()Ljava/lang/String;
20986 + .registers 2
20988 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20990 + move-result-object v0
20992 + if-nez v0, :cond_a
20994 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
20996 + move-result-object v0
20998 + :cond_a
20999 + return-object v0
21000 +.end method
21002 +.method public getSimOperator()Ljava/lang/String;
21003 + .registers 2
21005 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21007 + move-result-object v0
21009 + if-nez v0, :cond_a
21011 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
21013 + move-result-object v0
21015 + :cond_a
21016 + return-object v0
21017 +.end method
21019 +.method public getSimOperatorName()Ljava/lang/String;
21020 + .registers 2
21022 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21024 + move-result-object v0
21026 + if-nez v0, :cond_a
21028 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
21030 + move-result-object v0
21032 + :cond_a
21033 + return-object v0
21034 +.end method
21036 +.method public getSimSerialNumber()Ljava/lang/String;
21037 + .registers 8
21039 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21041 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21043 + move-result-object v1
21045 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21047 + move-result v2
21049 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21051 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21053 + move-result-object v6
21055 + if-eqz v6, :cond_29
21057 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21059 + move-result v0
21061 + if-eqz v0, :cond_29
21063 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
21065 + move-result-object v5
21067 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21069 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21071 + move-result v3
21073 + const-string/jumbo v4, "simSerial"
21075 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21077 + :goto_28
21078 + return-object v5
21080 + :cond_29
21081 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
21083 + move-result-object v5
21085 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21087 + const/4 v3, 0x0
21089 + const-string/jumbo v4, "simSerial"
21091 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21093 + goto :goto_28
21094 +.end method
21096 +.method public getSubscriberId()Ljava/lang/String;
21097 + .registers 8
21099 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21101 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21103 + move-result-object v1
21105 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21107 + move-result v2
21109 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21111 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21113 + move-result-object v6
21115 + if-eqz v6, :cond_29
21117 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21119 + move-result v0
21121 + if-eqz v0, :cond_29
21123 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
21125 + move-result-object v5
21127 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21129 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21131 + move-result v3
21133 + const-string/jumbo v4, "subscriberID"
21135 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21137 + :goto_28
21138 + return-object v5
21140 + :cond_29
21141 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
21143 + move-result-object v5
21145 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21147 + const/4 v3, 0x0
21149 + const-string/jumbo v4, "subscriberID"
21151 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21153 + goto :goto_28
21154 +.end method
21156 +.method public getVoiceMailNumber()Ljava/lang/String;
21157 + .registers 8
21159 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21161 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21163 + move-result-object v1
21165 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21167 + move-result v2
21169 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21171 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21173 + move-result-object v6
21175 + if-eqz v6, :cond_28
21177 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21179 + move-result v0
21181 + if-eqz v0, :cond_28
21183 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21185 + move-result-object v5
21187 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21189 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21191 + move-result v3
21193 + const-string v4, "line1Number"
21195 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21197 + :goto_27
21198 + return-object v5
21200 + :cond_28
21201 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
21203 + move-result-object v5
21205 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21207 + const/4 v3, 0x0
21209 + const-string v4, "line1Number"
21211 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21213 + goto :goto_27
21214 +.end method
21216 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
21217 + .registers 4
21219 + and-int/lit8 v0, p2, 0x10
21221 + if-nez v0, :cond_8
21223 + and-int/lit8 v0, p2, 0x20
21225 + if-eqz v0, :cond_21
21227 + :cond_8
21228 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21230 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
21232 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21234 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21236 + move-result-object v0
21238 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
21240 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21242 + move-result v0
21244 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setUid(I)V
21246 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21248 + :goto_20
21249 + return-void
21251 + :cond_21
21252 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21254 + goto :goto_20
21255 +.end method
21256 diff -Npru stock-framework/smali/android/server/BluetoothService.smali pdroid-framework/smali/android/server/BluetoothService.smali
21257 --- stock-framework/smali/android/server/BluetoothService.smali 2012-05-06 11:56:51.854699866 -0500
21258 +++ pdroid-framework/smali/android/server/BluetoothService.smali 2012-05-06 12:13:39.987698925 -0500
21259 @@ -2361,9 +2361,9 @@
21261 invoke-direct {v4, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
21262 :try_end_19
21263 - .catchall {:try_start_d .. :try_end_19} :catchall_83
21264 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_63
21265 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_73
21266 + .catchall {:try_start_d .. :try_end_19} :catchall_7e
21267 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_60
21268 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_70
21270 const/16 v7, 0x11
21272 @@ -2390,9 +2390,9 @@
21274 sget-object v5, Landroid/server/BluetoothService;->mDockAddress:Ljava/lang/String;
21275 :try_end_33
21276 - .catchall {:try_start_1b .. :try_end_33} :catchall_8c
21277 - .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_92
21278 - .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8f
21279 + .catchall {:try_start_1b .. :try_end_33} :catchall_89
21280 + .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_8f
21281 + .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8c
21283 if-eqz v4, :cond_a
21285 @@ -2433,18 +2433,20 @@
21287 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21288 :try_end_53
21289 - .catchall {:try_start_3b .. :try_end_53} :catchall_8c
21290 - .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_92
21291 - .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8f
21292 + .catchall {:try_start_3b .. :try_end_53} :catchall_89
21293 + .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_8f
21294 + .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8c
21296 - if-eqz v4, :cond_95
21297 + if-eqz v4, :cond_58
21299 :try_start_55
21300 invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
21301 :try_end_58
21302 .catchall {:try_start_55 .. :try_end_58} :catchall_5d
21303 - .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_60
21304 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_87
21306 + :cond_58
21307 + :goto_58
21308 move-object v3, v4
21310 :cond_59
21311 @@ -2466,117 +2468,105 @@
21312 throw v5
21314 :catch_60
21315 - move-exception v7
21317 - move-object v3, v4
21319 - goto :goto_59
21321 - :catch_63
21322 move-exception v2
21324 - :goto_64
21325 - :try_start_64
21326 + :goto_61
21327 + :try_start_61
21328 const-string v7, "BluetoothService"
21330 const-string v8, "FileNotFoundException while trying to read dock address"
21332 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21333 - :try_end_6b
21334 - .catchall {:try_start_64 .. :try_end_6b} :catchall_83
21335 + :try_end_68
21336 + .catchall {:try_start_61 .. :try_end_68} :catchall_7e
21338 if-eqz v3, :cond_59
21340 - :try_start_6d
21341 + :try_start_6a
21342 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21343 - :try_end_70
21344 - .catchall {:try_start_6d .. :try_end_70} :catchall_5d
21345 - .catch Ljava/io/IOException; {:try_start_6d .. :try_end_70} :catch_71
21346 + :try_end_6d
21347 + .catchall {:try_start_6a .. :try_end_6d} :catchall_5d
21348 + .catch Ljava/io/IOException; {:try_start_6a .. :try_end_6d} :catch_6e
21350 goto :goto_59
21352 - :catch_71
21353 + :catch_6e
21354 move-exception v7
21356 goto :goto_59
21358 - :catch_73
21359 + :catch_70
21360 move-exception v2
21362 - :goto_74
21363 - :try_start_74
21364 + :goto_71
21365 + :try_start_71
21366 const-string v7, "BluetoothService"
21368 const-string v8, "IOException while trying to read dock address"
21370 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21371 - :try_end_7b
21372 - .catchall {:try_start_74 .. :try_end_7b} :catchall_83
21373 + :try_end_78
21374 + .catchall {:try_start_71 .. :try_end_78} :catchall_7e
21376 if-eqz v3, :cond_59
21378 - :try_start_7d
21379 + :try_start_7a
21380 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21381 - :try_end_80
21382 - .catchall {:try_start_7d .. :try_end_80} :catchall_5d
21383 - .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81
21385 - goto :goto_59
21387 - :catch_81
21388 - move-exception v7
21389 + :try_end_7d
21390 + .catchall {:try_start_7a .. :try_end_7d} :catchall_5d
21391 + .catch Ljava/io/IOException; {:try_start_7a .. :try_end_7d} :catch_6e
21393 goto :goto_59
21395 - :catchall_83
21396 + :catchall_7e
21397 move-exception v5
21399 - :goto_84
21400 - if-eqz v3, :cond_89
21401 + :goto_7f
21402 + if-eqz v3, :cond_84
21404 - :try_start_86
21405 + :try_start_81
21406 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21407 - :try_end_89
21408 - .catchall {:try_start_86 .. :try_end_89} :catchall_5d
21409 - .catch Ljava/io/IOException; {:try_start_86 .. :try_end_89} :catch_8a
21411 - :cond_89
21412 - :goto_89
21413 - :try_start_89
21414 + :try_end_84
21415 + .catchall {:try_start_81 .. :try_end_84} :catchall_5d
21416 + .catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
21418 + :cond_84
21419 + :goto_84
21420 + :try_start_84
21421 throw v5
21422 - :try_end_8a
21423 - .catchall {:try_start_89 .. :try_end_8a} :catchall_5d
21424 + :try_end_85
21425 + .catchall {:try_start_84 .. :try_end_85} :catchall_5d
21427 - :catch_8a
21428 + :catch_85
21429 move-exception v7
21431 - goto :goto_89
21432 + goto :goto_84
21434 + :catch_87
21435 + move-exception v7
21437 - :catchall_8c
21438 + goto :goto_58
21440 + :catchall_89
21441 move-exception v5
21443 move-object v3, v4
21445 - goto :goto_84
21446 + goto :goto_7f
21448 - :catch_8f
21449 + :catch_8c
21450 move-exception v2
21452 move-object v3, v4
21454 - goto :goto_74
21455 + goto :goto_71
21457 - :catch_92
21458 + :catch_8f
21459 move-exception v2
21461 move-object v3, v4
21463 - goto :goto_64
21465 - :cond_95
21466 - move-object v3, v4
21468 - goto :goto_59
21469 + goto :goto_61
21470 .end method
21472 .method private readIncomingConnectionState()V
21473 @@ -2595,9 +2585,9 @@
21475 invoke-direct {v3, v9}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
21476 :try_end_b
21477 - .catchall {:try_start_4 .. :try_end_b} :catchall_a2
21478 - .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b9
21479 - .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7f
21480 + .catchall {:try_start_4 .. :try_end_b} :catchall_9f
21481 + .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b6
21482 + .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7c
21484 :try_start_b
21485 new-instance v4, Ljava/io/DataInputStream;
21486 @@ -2672,9 +2662,9 @@
21488 invoke-virtual {v9, v11, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
21489 :try_end_51
21490 - .catchall {:try_start_b .. :try_end_51} :catchall_b3
21491 + .catchall {:try_start_b .. :try_end_51} :catchall_b0
21492 .catch Ljava/io/FileNotFoundException; {:try_start_b .. :try_end_51} :catch_52
21493 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b6
21494 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b3
21496 goto :goto_1a
21498 @@ -2709,50 +2699,45 @@
21500 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21501 :try_end_6e
21502 - .catchall {:try_start_54 .. :try_end_6e} :catchall_a2
21503 + .catchall {:try_start_54 .. :try_end_6e} :catchall_9f
21505 if-eqz v2, :cond_73
21507 :try_start_70
21508 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21509 :try_end_73
21510 - .catchall {:try_start_70 .. :try_end_73} :catchall_a9
21511 - .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_ac
21512 + .catchall {:try_start_70 .. :try_end_73} :catchall_a6
21513 + .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_9d
21515 :cond_73
21516 :goto_73
21517 :try_start_73
21518 monitor-exit v10
21519 :try_end_74
21520 - .catchall {:try_start_73 .. :try_end_74} :catchall_a9
21521 + .catchall {:try_start_73 .. :try_end_74} :catchall_a6
21523 return-void
21525 :cond_75
21526 - if-eqz v3, :cond_bb
21527 + if-eqz v3, :cond_7a
21529 :try_start_77
21530 invoke-virtual {v3}, Ljava/io/FileInputStream;->close()V
21531 :try_end_7a
21532 - .catchall {:try_start_77 .. :try_end_7a} :catchall_b0
21533 - .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_7c
21534 + .catchall {:try_start_77 .. :try_end_7a} :catchall_ad
21535 + .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_ab
21537 + :cond_7a
21538 + :goto_7a
21539 move-object v2, v3
21541 goto :goto_73
21543 :catch_7c
21544 - move-exception v9
21546 - move-object v2, v3
21548 - goto :goto_73
21550 - :catch_7f
21551 move-exception v0
21553 - :goto_80
21554 - :try_start_80
21555 + :goto_7d
21556 + :try_start_7d
21557 new-instance v9, Ljava/lang/StringBuilder;
21559 invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
21560 @@ -2776,91 +2761,86 @@
21561 move-result-object v9
21563 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21564 - :try_end_9a
21565 - .catchall {:try_start_80 .. :try_end_9a} :catchall_a2
21566 + :try_end_97
21567 + .catchall {:try_start_7d .. :try_end_97} :catchall_9f
21569 if-eqz v2, :cond_73
21571 - :try_start_9c
21572 + :try_start_99
21573 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21574 - :try_end_9f
21575 - .catchall {:try_start_9c .. :try_end_9f} :catchall_a9
21576 - .catch Ljava/io/IOException; {:try_start_9c .. :try_end_9f} :catch_a0
21577 + :try_end_9c
21578 + .catchall {:try_start_99 .. :try_end_9c} :catchall_a6
21579 + .catch Ljava/io/IOException; {:try_start_99 .. :try_end_9c} :catch_9d
21581 goto :goto_73
21583 - :catch_a0
21584 + :catch_9d
21585 move-exception v9
21587 goto :goto_73
21589 - :catchall_a2
21590 + :catchall_9f
21591 move-exception v9
21593 - :goto_a3
21594 - if-eqz v2, :cond_a8
21595 + :goto_a0
21596 + if-eqz v2, :cond_a5
21598 - :try_start_a5
21599 + :try_start_a2
21600 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21601 - :try_end_a8
21602 - .catchall {:try_start_a5 .. :try_end_a8} :catchall_a9
21603 - .catch Ljava/io/IOException; {:try_start_a5 .. :try_end_a8} :catch_ae
21604 + :try_end_a5
21605 + .catchall {:try_start_a2 .. :try_end_a5} :catchall_a6
21606 + .catch Ljava/io/IOException; {:try_start_a2 .. :try_end_a5} :catch_a9
21608 - :cond_a8
21609 - :goto_a8
21610 - :try_start_a8
21611 + :cond_a5
21612 + :goto_a5
21613 + :try_start_a5
21614 throw v9
21616 - :catchall_a9
21617 + :catchall_a6
21618 move-exception v9
21620 - :goto_aa
21621 + :goto_a7
21622 monitor-exit v10
21623 - :try_end_ab
21624 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_a9
21625 + :try_end_a8
21626 + .catchall {:try_start_a5 .. :try_end_a8} :catchall_a6
21628 throw v9
21630 - :catch_ac
21631 - move-exception v9
21632 + :catch_a9
21633 + move-exception v11
21635 - goto :goto_73
21636 + goto :goto_a5
21638 - :catch_ae
21639 - move-exception v11
21640 + :catch_ab
21641 + move-exception v9
21643 - goto :goto_a8
21644 + goto :goto_7a
21646 - :catchall_b0
21647 + :catchall_ad
21648 move-exception v9
21650 move-object v2, v3
21652 - goto :goto_aa
21653 + goto :goto_a7
21655 - :catchall_b3
21656 + :catchall_b0
21657 move-exception v9
21659 move-object v2, v3
21661 - goto :goto_a3
21662 + goto :goto_a0
21664 - :catch_b6
21665 + :catch_b3
21666 move-exception v0
21668 move-object v2, v3
21670 - goto :goto_80
21671 + goto :goto_7d
21673 - :catch_b9
21674 + :catch_b6
21675 move-exception v0
21677 goto :goto_54
21679 - :cond_bb
21680 - move-object v2, v3
21682 - goto :goto_73
21683 .end method
21685 .method private registerForAirplaneMode(Landroid/content/IntentFilter;)V
21686 @@ -3158,26 +3138,28 @@
21688 invoke-direct {v2, v3, v4}, Ljava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V
21689 :try_end_b
21690 - .catchall {:try_start_1 .. :try_end_b} :catchall_60
21691 - .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_1a
21692 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3d
21693 + .catchall {:try_start_1 .. :try_end_b} :catchall_5b
21694 + .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_17
21695 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3a
21697 const-wide/16 v3, 0x0
21699 :try_start_d
21700 invoke-virtual {v2, v3, v4}, Ljava/io/RandomAccessFile;->setLength(J)V
21701 :try_end_10
21702 - .catchall {:try_start_d .. :try_end_10} :catchall_69
21703 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6f
21704 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_6c
21705 + .catchall {:try_start_d .. :try_end_10} :catchall_66
21706 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6c
21707 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_69
21709 - if-eqz v2, :cond_72
21710 + if-eqz v2, :cond_15
21712 :try_start_12
21713 invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V
21714 :try_end_15
21715 - .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_17
21716 + .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_64
21718 + :cond_15
21719 + :goto_15
21720 move-object v1, v2
21722 :cond_16
21723 @@ -3185,17 +3167,10 @@
21724 return-void
21726 :catch_17
21727 - move-exception v3
21729 - move-object v1, v2
21731 - goto :goto_16
21733 - :catch_1a
21734 move-exception v0
21736 - :goto_1b
21737 - :try_start_1b
21738 + :goto_18
21739 + :try_start_18
21740 new-instance v3, Ljava/lang/StringBuilder;
21742 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21743 @@ -3219,28 +3194,28 @@
21744 move-result-object v3
21746 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21747 - :try_end_35
21748 - .catchall {:try_start_1b .. :try_end_35} :catchall_60
21749 + :try_end_32
21750 + .catchall {:try_start_18 .. :try_end_32} :catchall_5b
21752 if-eqz v1, :cond_16
21754 - :try_start_37
21755 + :try_start_34
21756 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21757 - :try_end_3a
21758 - .catch Ljava/io/IOException; {:try_start_37 .. :try_end_3a} :catch_3b
21759 + :try_end_37
21760 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_37} :catch_38
21762 goto :goto_16
21764 - :catch_3b
21765 + :catch_38
21766 move-exception v3
21768 goto :goto_16
21770 - :catch_3d
21771 + :catch_3a
21772 move-exception v0
21774 - :goto_3e
21775 - :try_start_3e
21776 + :goto_3b
21777 + :try_start_3b
21778 new-instance v3, Ljava/lang/StringBuilder;
21780 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21781 @@ -3264,68 +3239,63 @@
21782 move-result-object v3
21784 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21785 - :try_end_58
21786 - .catchall {:try_start_3e .. :try_end_58} :catchall_60
21787 + :try_end_55
21788 + .catchall {:try_start_3b .. :try_end_55} :catchall_5b
21790 if-eqz v1, :cond_16
21792 - :try_start_5a
21793 + :try_start_57
21794 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21795 - :try_end_5d
21796 - .catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
21798 - goto :goto_16
21800 - :catch_5e
21801 - move-exception v3
21802 + :try_end_5a
21803 + .catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_38
21805 goto :goto_16
21807 - :catchall_60
21808 + :catchall_5b
21809 move-exception v3
21811 - :goto_61
21812 - if-eqz v1, :cond_66
21813 + :goto_5c
21814 + if-eqz v1, :cond_61
21816 - :try_start_63
21817 + :try_start_5e
21818 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21819 - :try_end_66
21820 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67
21821 + :try_end_61
21822 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
21824 - :cond_66
21825 - :goto_66
21826 + :cond_61
21827 + :goto_61
21828 throw v3
21830 - :catch_67
21831 + :catch_62
21832 move-exception v4
21834 - goto :goto_66
21835 + goto :goto_61
21837 - :catchall_69
21838 + :catch_64
21839 move-exception v3
21841 - move-object v1, v2
21843 - goto :goto_61
21844 + goto :goto_15
21846 - :catch_6c
21847 - move-exception v0
21848 + :catchall_66
21849 + move-exception v3
21851 move-object v1, v2
21853 - goto :goto_3e
21854 + goto :goto_5c
21856 - :catch_6f
21857 + :catch_69
21858 move-exception v0
21860 move-object v1, v2
21862 - goto :goto_1b
21863 + goto :goto_3b
21865 + :catch_6c
21866 + move-exception v0
21868 - :cond_72
21869 move-object v1, v2
21871 - goto :goto_16
21872 + goto :goto_18
21873 .end method
21875 .method private updateCountersAndCheckForConnectionStateChange(II)Z
21876 @@ -3774,17 +3744,17 @@
21878 invoke-virtual {v2, v6}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
21879 :try_end_36
21880 - .catchall {:try_start_10 .. :try_end_36} :catchall_70
21881 - .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_76
21882 - .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_73
21883 + .catchall {:try_start_10 .. :try_end_36} :catchall_6e
21884 + .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_74
21885 + .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_71
21887 if-eqz v2, :cond_3b
21889 :try_start_38
21890 invoke-virtual {v2}, Ljava/io/BufferedWriter;->close()V
21891 :try_end_3b
21892 - .catchall {:try_start_38 .. :try_end_3b} :catchall_79
21893 - .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6a
21894 + .catchall {:try_start_38 .. :try_end_3b} :catchall_77
21895 + .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6c
21897 :cond_3b
21898 :goto_3b
21899 @@ -3814,7 +3784,7 @@
21900 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21901 :try_end_4b
21902 .catchall {:try_start_48 .. :try_end_4b} :catchall_67
21903 - .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_6c
21904 + .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_5e
21906 :cond_4b
21907 :goto_4b
21908 @@ -3867,7 +3837,7 @@
21909 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21910 :try_end_66
21911 .catchall {:try_start_63 .. :try_end_66} :catchall_67
21912 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6e
21913 + .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6a
21915 :cond_66
21916 :goto_66
21917 @@ -3887,40 +3857,35 @@
21918 :catch_6a
21919 move-exception v5
21921 - goto :goto_3b
21922 + goto :goto_66
21924 :catch_6c
21925 - move-exception v4
21927 - goto :goto_4b
21929 - :catch_6e
21930 move-exception v5
21932 - goto :goto_66
21933 + goto :goto_3b
21935 - :catchall_70
21936 + :catchall_6e
21937 move-exception v4
21939 move-object v1, v2
21941 goto :goto_61
21943 - :catch_73
21944 + :catch_71
21945 move-exception v0
21947 move-object v1, v2
21949 goto :goto_51
21951 - :catch_76
21952 + :catch_74
21953 move-exception v0
21955 move-object v1, v2
21957 goto :goto_3f
21959 - :catchall_79
21960 + :catchall_77
21961 move-exception v4
21963 move-object v1, v2
21964 @@ -4844,8 +4809,8 @@
21966 invoke-interface {v4}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOff()V
21967 :try_end_47
21968 - .catchall {:try_start_42 .. :try_end_47} :catchall_51
21969 - .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_4c
21970 + .catchall {:try_start_42 .. :try_end_47} :catchall_4c
21971 + .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_51
21973 :try_start_47
21974 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21975 @@ -4857,22 +4822,22 @@
21977 return-void
21979 - :catch_4c
21980 + :catchall_4c
21981 move-exception v4
21983 :try_start_4d
21984 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21986 - goto :goto_4a
21987 + throw v4
21989 - :catchall_51
21990 + :catch_51
21991 move-exception v4
21993 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21994 + :try_end_55
21995 + .catchall {:try_start_4d .. :try_end_55} :catchall_24
21997 - throw v4
21998 - :try_end_56
21999 - .catchall {:try_start_4d .. :try_end_56} :catchall_24
22000 + goto :goto_4a
22001 .end method
22003 .method clearApplicationStateChangeTracker()V
22004 @@ -9224,12 +9189,12 @@
22006 invoke-interface {v3}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOn()V
22007 :try_end_c
22008 - .catchall {:try_start_7 .. :try_end_c} :catchall_1c
22009 + .catchall {:try_start_7 .. :try_end_c} :catchall_19
22010 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_c} :catch_10
22012 + :goto_c
22013 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22015 - :goto_f
22016 return-void
22018 :catch_10
22019 @@ -9242,13 +9207,11 @@
22021 invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22022 :try_end_18
22023 - .catchall {:try_start_11 .. :try_end_18} :catchall_1c
22025 - invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22026 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
22028 - goto :goto_f
22029 + goto :goto_c
22031 - :catchall_1c
22032 + :catchall_19
22033 move-exception v3
22035 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22036 @@ -11399,7 +11362,7 @@
22038 invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
22039 :try_end_11
22040 - .catchall {:try_start_3 .. :try_end_11} :catchall_bf
22041 + .catchall {:try_start_3 .. :try_end_11} :catchall_bc
22043 :try_start_11
22044 new-instance v4, Ljava/io/BufferedWriter;
22045 @@ -11414,9 +11377,9 @@
22047 invoke-direct {v4, v7}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
22048 :try_end_1e
22049 - .catchall {:try_start_11 .. :try_end_1e} :catchall_b8
22050 - .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_cc
22051 - .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_95
22052 + .catchall {:try_start_11 .. :try_end_1e} :catchall_b5
22053 + .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_c9
22054 + .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_92
22056 :try_start_1e
22057 iget-object v7, p0, Landroid/server/BluetoothService;->mIncomingConnections:Ljava/util/HashMap;
22058 @@ -11480,9 +11443,9 @@
22060 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22061 :try_end_60
22062 - .catchall {:try_start_1e .. :try_end_60} :catchall_c6
22063 + .catchall {:try_start_1e .. :try_end_60} :catchall_c3
22064 .catch Ljava/io/FileNotFoundException; {:try_start_1e .. :try_end_60} :catch_61
22065 - .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c9
22066 + .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c6
22068 goto :goto_28
22070 @@ -11517,22 +11480,22 @@
22072 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22073 :try_end_7d
22074 - .catchall {:try_start_63 .. :try_end_7d} :catchall_b8
22075 + .catchall {:try_start_63 .. :try_end_7d} :catchall_b5
22077 if-eqz v3, :cond_82
22079 :try_start_7f
22080 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22081 :try_end_82
22082 - .catchall {:try_start_7f .. :try_end_82} :catchall_bf
22083 - .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_c2
22084 + .catchall {:try_start_7f .. :try_end_82} :catchall_bc
22085 + .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_b3
22087 :cond_82
22088 :goto_82
22089 :try_start_82
22090 monitor-exit v8
22091 :try_end_83
22092 - .catchall {:try_start_82 .. :try_end_83} :catchall_bf
22093 + .catchall {:try_start_82 .. :try_end_83} :catchall_bc
22095 return-void
22097 @@ -11544,34 +11507,29 @@
22099 invoke-virtual {v4, v7}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22100 :try_end_8b
22101 - .catchall {:try_start_84 .. :try_end_8b} :catchall_c6
22102 + .catchall {:try_start_84 .. :try_end_8b} :catchall_c3
22103 .catch Ljava/io/FileNotFoundException; {:try_start_84 .. :try_end_8b} :catch_61
22104 - .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c9
22105 + .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c6
22107 - if-eqz v4, :cond_ce
22108 + if-eqz v4, :cond_90
22110 :try_start_8d
22111 invoke-virtual {v4}, Ljava/io/BufferedWriter;->close()V
22112 :try_end_90
22113 - .catchall {:try_start_8d .. :try_end_90} :catchall_bf
22114 - .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_92
22115 + .catchall {:try_start_8d .. :try_end_90} :catchall_bc
22116 + .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_c1
22118 + :cond_90
22119 + :goto_90
22120 move-object v3, v4
22122 goto :goto_82
22124 :catch_92
22125 - move-exception v7
22127 - move-object v3, v4
22129 - goto :goto_82
22131 - :catch_95
22132 move-exception v1
22134 - :goto_96
22135 - :try_start_96
22136 + :goto_93
22137 + :try_start_93
22138 new-instance v7, Ljava/lang/StringBuilder;
22140 invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
22141 @@ -11595,81 +11553,76 @@
22142 move-result-object v7
22144 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22145 - :try_end_b0
22146 - .catchall {:try_start_96 .. :try_end_b0} :catchall_b8
22147 + :try_end_ad
22148 + .catchall {:try_start_93 .. :try_end_ad} :catchall_b5
22150 if-eqz v3, :cond_82
22152 - :try_start_b2
22153 + :try_start_af
22154 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22155 - :try_end_b5
22156 - .catchall {:try_start_b2 .. :try_end_b5} :catchall_bf
22157 - .catch Ljava/io/IOException; {:try_start_b2 .. :try_end_b5} :catch_b6
22158 + :try_end_b2
22159 + .catchall {:try_start_af .. :try_end_b2} :catchall_bc
22160 + .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_b3
22162 goto :goto_82
22164 - :catch_b6
22165 + :catch_b3
22166 move-exception v7
22168 goto :goto_82
22170 - :catchall_b8
22171 + :catchall_b5
22172 move-exception v7
22174 - :goto_b9
22175 - if-eqz v3, :cond_be
22176 + :goto_b6
22177 + if-eqz v3, :cond_bb
22179 - :try_start_bb
22180 + :try_start_b8
22181 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22182 - :try_end_be
22183 - .catchall {:try_start_bb .. :try_end_be} :catchall_bf
22184 - .catch Ljava/io/IOException; {:try_start_bb .. :try_end_be} :catch_c4
22185 + :try_end_bb
22186 + .catchall {:try_start_b8 .. :try_end_bb} :catchall_bc
22187 + .catch Ljava/io/IOException; {:try_start_b8 .. :try_end_bb} :catch_bf
22189 - :cond_be
22190 - :goto_be
22191 - :try_start_be
22192 + :cond_bb
22193 + :goto_bb
22194 + :try_start_bb
22195 throw v7
22197 - :catchall_bf
22198 + :catchall_bc
22199 move-exception v7
22201 monitor-exit v8
22202 - :try_end_c1
22203 - .catchall {:try_start_be .. :try_end_c1} :catchall_bf
22204 + :try_end_be
22205 + .catchall {:try_start_bb .. :try_end_be} :catchall_bc
22207 throw v7
22209 - :catch_c2
22210 - move-exception v7
22211 + :catch_bf
22212 + move-exception v9
22214 - goto :goto_82
22215 + goto :goto_bb
22217 - :catch_c4
22218 - move-exception v9
22219 + :catch_c1
22220 + move-exception v7
22222 - goto :goto_be
22223 + goto :goto_90
22225 - :catchall_c6
22226 + :catchall_c3
22227 move-exception v7
22229 move-object v3, v4
22231 - goto :goto_b9
22232 + goto :goto_b6
22234 - :catch_c9
22235 + :catch_c6
22236 move-exception v1
22238 move-object v3, v4
22240 - goto :goto_96
22241 + goto :goto_93
22243 - :catch_cc
22244 + :catch_c9
22245 move-exception v1
22247 goto :goto_63
22249 - :cond_ce
22250 - move-object v3, v4
22252 - goto :goto_82
22253 .end method
22254 diff -Npru stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali
22255 --- stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-05-06 11:56:51.874699963 -0500
22256 +++ pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-05-06 12:13:40.019699092 -0500
22257 @@ -161,25 +161,23 @@
22259 invoke-interface {v1, v2}, Lcom/android/internal/textservice/ISpellCheckerSessionListener;->onGetSuggestions([Landroid/view/textservice/SuggestionsInfo;)V
22260 :try_end_18
22261 - .catchall {:try_start_a .. :try_end_18} :catchall_21
22262 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_1c
22263 + .catchall {:try_start_a .. :try_end_18} :catchall_1c
22264 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_21
22266 + :goto_18
22267 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22269 - :goto_1b
22270 return-void
22272 - :catch_1c
22273 + :catchall_1c
22274 move-exception v1
22276 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22278 - goto :goto_1b
22279 + throw v1
22281 - :catchall_21
22282 + :catch_21
22283 move-exception v1
22285 - invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22287 - throw v1
22288 + goto :goto_18
22289 .end method
22290 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener$1.smali pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali
22291 --- stock-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-05-06 11:56:51.942700303 -0500
22292 +++ pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-05-06 12:13:40.079699388 -0500
22293 @@ -64,47 +64,317 @@
22294 .end method
22296 .method public onCallStateChanged(ILjava/lang/String;)V
22297 - .registers 6
22298 + .registers 19
22300 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22301 + move-object/from16 v0, p0
22303 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22304 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22306 - const/16 v1, 0x20
22307 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22308 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22310 - const/4 v2, 0x0
22311 + move-result-object v3
22313 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22314 + if-eqz v3, :cond_99
22316 - move-result-object v0
22317 + if-eqz p2, :cond_99
22319 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
22321 + move-result v3
22323 + if-nez v3, :cond_99
22325 + move-object/from16 v0, p0
22327 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22329 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22330 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22332 + move-result-object v3
22334 + const-string/jumbo v4, "privacy"
22336 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22338 + move-result-object v2
22340 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
22342 + move-object/from16 v0, p0
22344 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22346 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22347 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22349 + move-result-object v3
22351 + move-object/from16 v0, p0
22353 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22355 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22356 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22358 + move-result v4
22360 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22362 + move-result-object v8
22364 + if-eqz v8, :cond_6a
22366 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
22368 + move-result v3
22370 + if-eqz v3, :cond_6a
22372 + const-string v7, ""
22374 + move-object/from16 v0, p0
22376 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22378 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22380 + const/16 v4, 0x20
22382 + const/4 v5, 0x0
22384 + move/from16 v0, p1
22386 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22388 + move-result-object v3
22390 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
22391 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22393 + move-object/from16 v0, p0
22395 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22397 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22398 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22400 + move-result-object v3
22402 + move-object/from16 v0, p0
22404 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22406 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22407 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22409 + move-result v4
22411 + const/4 v5, 0x1
22413 + const-string v6, "incomingCall"
22415 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22417 + :goto_69
22418 return-void
22420 + :cond_6a
22421 + move-object/from16 v0, p0
22423 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22425 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22427 + const/16 v4, 0x20
22429 + const/4 v5, 0x0
22431 + move/from16 v0, p1
22433 + move-object/from16 v1, p2
22435 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22437 + move-result-object v3
22439 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22441 + move-object/from16 v0, p0
22443 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22445 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22446 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22448 + move-result-object v10
22450 + move-object/from16 v0, p0
22452 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22454 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22455 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22457 + move-result v11
22459 + const/4 v12, 0x0
22461 + const-string v13, "incomingCall"
22463 + move-object v9, v2
22465 + move-object/from16 v14, p2
22467 + move-object v15, v8
22469 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22471 + goto :goto_69
22473 + :cond_99
22474 + move-object/from16 v0, p0
22476 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22478 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22480 + const/16 v4, 0x20
22482 + const/4 v5, 0x0
22484 + move/from16 v0, p1
22486 + move-object/from16 v1, p2
22488 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22490 + move-result-object v3
22492 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22494 + goto :goto_69
22495 .end method
22497 .method public onCellLocationChanged(Landroid/os/Bundle;)V
22498 - .registers 6
22499 + .registers 10
22501 + const/4 v5, 0x0
22503 const/4 v3, 0x0
22505 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
22507 + move-result-object v7
22509 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22511 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22512 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22514 + move-result-object v1
22516 + if-eqz v1, :cond_4a
22518 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22520 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22521 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22523 + move-result-object v1
22525 + const-string/jumbo v2, "privacy"
22527 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22529 move-result-object v0
22531 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
22533 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22535 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22536 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22538 + move-result-object v1
22540 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22542 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22543 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22545 + move-result v2
22547 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22549 + move-result-object v6
22551 + if-eqz v6, :cond_4b
22553 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22555 + move-result v1
22557 + if-eqz v1, :cond_4b
22559 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22561 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22562 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22564 + move-result-object v1
22566 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22568 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22569 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22571 + move-result v2
22573 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22575 + move-result v3
22577 + const-string v4, "locationNetwork"
22579 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22581 + :cond_4a
22582 + :goto_4a
22583 + return-void
22585 + :cond_4b
22586 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22588 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22590 const/16 v2, 0x10
22592 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22593 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22595 move-result-object v1
22597 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
22599 - return-void
22600 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22602 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22603 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22605 + move-result-object v1
22607 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22609 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22610 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22612 + move-result v2
22614 + const-string v4, "locationNetwork"
22616 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22618 + goto :goto_4a
22619 .end method
22621 .method public onDataActivity(I)V
22622 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener.smali pdroid-framework/smali/android/telephony/PhoneStateListener.smali
22623 --- stock-framework/smali/android/telephony/PhoneStateListener.smali 2012-05-06 11:56:50.954695406 -0500
22624 +++ pdroid-framework/smali/android/telephony/PhoneStateListener.smali 2012-05-06 12:13:39.055694300 -0500
22625 @@ -29,12 +29,20 @@
22627 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
22629 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
22632 # instance fields
22633 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
22635 +.field private context:Landroid/content/Context;
22637 .field mHandler:Landroid/os/Handler;
22639 +.field private packageName:Ljava/lang/String;
22641 +.field private uid:I
22644 # direct methods
22645 .method public constructor <init>()V
22646 @@ -57,6 +65,30 @@
22647 return-void
22648 .end method
22650 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22651 + .registers 2
22653 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22655 + return-object v0
22656 +.end method
22658 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22659 + .registers 2
22661 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22663 + return-object v0
22664 +.end method
22666 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
22667 + .registers 2
22669 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
22671 + return v0
22672 +.end method
22675 # virtual methods
22676 .method public onCallForwardingIndicatorChanged(Z)V
22677 @@ -126,3 +158,27 @@
22679 return-void
22680 .end method
22682 +.method public setContext(Landroid/content/Context;)V
22683 + .registers 2
22685 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22687 + return-void
22688 +.end method
22690 +.method public setPackageName(Ljava/lang/String;)V
22691 + .registers 2
22693 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22695 + return-void
22696 +.end method
22698 +.method public setUid(I)V
22699 + .registers 2
22701 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
22703 + return-void
22704 +.end method
22705 diff -Npru stock-framework/smali/android/view/accessibility/AccessibilityManager.smali pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali
22706 --- stock-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-05-06 11:56:52.278701972 -0500
22707 +++ pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-05-06 12:13:40.379700876 -0500
22708 @@ -637,15 +637,15 @@
22710 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22711 :try_end_21
22712 - .catchall {:try_start_d .. :try_end_21} :catchall_4c
22713 + .catchall {:try_start_d .. :try_end_21} :catchall_49
22714 .catch Landroid/os/RemoteException; {:try_start_d .. :try_end_21} :catch_27
22716 if-eqz v0, :cond_26
22718 + :goto_23
22719 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22721 :cond_26
22722 - :goto_26
22723 return-void
22725 :catch_27
22726 @@ -680,21 +680,19 @@
22728 invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22729 :try_end_46
22730 - .catchall {:try_start_28 .. :try_end_46} :catchall_4c
22731 + .catchall {:try_start_28 .. :try_end_46} :catchall_49
22733 if-eqz v0, :cond_26
22735 - invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22737 - goto :goto_26
22738 + goto :goto_23
22740 - :catchall_4c
22741 + :catchall_49
22742 move-exception v4
22744 - if-eqz v0, :cond_52
22745 + if-eqz v0, :cond_4f
22747 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22749 - :cond_52
22750 + :cond_4f
22751 throw v4
22752 .end method
22753 diff -Npru stock-framework/smali/android/view/SurfaceView.smali pdroid-framework/smali/android/view/SurfaceView.smali
22754 --- stock-framework/smali/android/view/SurfaceView.smali 2012-05-06 11:56:51.502698106 -0500
22755 +++ pdroid-framework/smali/android/view/SurfaceView.smali 2012-05-06 12:13:39.611697058 -0500
22756 @@ -1342,7 +1342,7 @@
22758 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback;->surfaceDestroyed(Landroid/view/SurfaceHolder;)V
22759 :try_end_29b
22760 - .catchall {:try_start_262 .. :try_end_29b} :catchall_3c6
22761 + .catchall {:try_start_262 .. :try_end_29b} :catchall_3a7
22763 add-int/lit8 v22, v22, 0x1
22765 @@ -1486,7 +1486,7 @@
22767 invoke-virtual {v3, v4}, Landroid/view/Surface;->transferFrom(Landroid/view/Surface;)V
22769 - if-eqz v34, :cond_3a7
22770 + if-eqz v34, :cond_3c6
22772 move-object/from16 v0, p0
22774 @@ -1608,7 +1608,7 @@
22775 goto :goto_35e
22777 :cond_37a
22778 - if-eqz p2, :cond_3a7
22779 + if-eqz p2, :cond_3c6
22781 if-nez v19, :cond_382
22783 @@ -1632,7 +1632,7 @@
22785 move/from16 v1, v23
22787 - if-ge v0, v1, :cond_3a7
22788 + if-ge v0, v1, :cond_3c6
22790 aget-object v18, v17, v22
22792 @@ -1652,81 +1652,81 @@
22794 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback2;->surfaceRedrawNeeded(Landroid/view/SurfaceHolder;)V
22795 :try_end_3a4
22796 - .catchall {:try_start_301 .. :try_end_3a4} :catchall_3c6
22797 + .catchall {:try_start_301 .. :try_end_3a4} :catchall_3a7
22799 :cond_3a4
22800 add-int/lit8 v22, v22, 0x1
22802 goto :goto_38b
22804 - :cond_3a7
22805 - const/4 v3, 0x0
22806 + :catchall_3a7
22807 + move-exception v3
22809 - :try_start_3a8
22810 + const/4 v4, 0x0
22812 + :try_start_3a9
22813 move-object/from16 v0, p0
22815 - iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22816 + iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22818 - if-eqz p2, :cond_3b9
22819 + if-eqz p2, :cond_3ba
22821 move-object/from16 v0, p0
22823 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22824 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22826 move-object/from16 v0, p0
22828 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22829 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22831 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22832 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22834 - :cond_3b9
22835 + :cond_3ba
22836 move-object/from16 v0, p0
22838 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22839 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22841 move-object/from16 v0, p0
22843 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22845 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22846 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22848 - goto/16 :goto_6
22849 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22851 - :catchall_3c6
22852 - move-exception v3
22853 + throw v3
22855 - const/4 v4, 0x0
22856 + :cond_3c6
22857 + const/4 v3, 0x0
22859 move-object/from16 v0, p0
22861 - iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22862 + iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22864 - if-eqz p2, :cond_3d9
22865 + if-eqz p2, :cond_3d8
22867 move-object/from16 v0, p0
22869 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22870 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22872 move-object/from16 v0, p0
22874 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22875 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22877 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22878 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22880 - :cond_3d9
22881 + :cond_3d8
22882 move-object/from16 v0, p0
22884 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22885 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22887 move-object/from16 v0, p0
22889 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22890 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22892 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22893 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22894 + :try_end_3e3
22895 + .catch Landroid/os/RemoteException; {:try_start_3a9 .. :try_end_3e3} :catch_2f6
22897 - throw v3
22898 - :try_end_3e5
22899 - .catch Landroid/os/RemoteException; {:try_start_3a8 .. :try_end_3e5} :catch_2f6
22900 + goto/16 :goto_6
22901 .end method
22904 diff -Npru stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali
22905 --- stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-05-06 11:56:52.238701764 -0500
22906 +++ pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-05-06 12:13:40.339700668 -0500
22907 @@ -364,7 +364,7 @@
22908 :try_start_13
22909 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22910 :try_end_16
22911 - .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1c
22912 + .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1e
22914 :goto_16
22915 return-void
22916 @@ -375,20 +375,20 @@
22917 :try_start_18
22918 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22919 :try_end_1b
22920 - .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1e
22921 + .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1c
22923 :goto_1b
22924 throw v5
22926 :catch_1c
22927 - move-exception v5
22928 + move-exception v6
22930 - goto :goto_16
22931 + goto :goto_1b
22933 :catch_1e
22934 - move-exception v6
22935 + move-exception v5
22937 - goto :goto_1b
22938 + goto :goto_16
22939 .end method
22941 .method public findAccessibilityNodeInfoByViewIdClientThread(IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22942 @@ -491,7 +491,7 @@
22943 :try_start_1d
22944 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22945 :try_end_20
22946 - .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_26
22947 + .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_28
22949 :goto_20
22950 return-void
22951 @@ -502,20 +502,20 @@
22952 :try_start_22
22953 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22954 :try_end_25
22955 - .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_28
22956 + .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_26
22958 :goto_25
22959 throw v6
22961 :catch_26
22962 - move-exception v6
22963 + move-exception v7
22965 - goto :goto_20
22966 + goto :goto_25
22968 :catch_28
22969 - move-exception v7
22970 + move-exception v6
22972 - goto :goto_25
22973 + goto :goto_20
22974 .end method
22976 .method public findAccessibilityNodeInfosByViewTextClientThread(Ljava/lang/String;IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22977 @@ -639,7 +639,7 @@
22979 invoke-virtual {v8}, Landroid/view/View;->getVisibility()I
22980 :try_end_2c
22981 - .catchall {:try_start_16 .. :try_end_2c} :catchall_70
22982 + .catchall {:try_start_16 .. :try_end_2c} :catchall_6a
22984 move-result v11
22986 @@ -649,7 +649,7 @@
22987 :try_start_2f
22988 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22989 :try_end_32
22990 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_75
22991 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_46
22993 :goto_32
22994 return-void
22995 @@ -669,7 +669,7 @@
22997 invoke-virtual {v4}, Ljava/util/ArrayList;->isEmpty()Z
22998 :try_end_3f
22999 - .catchall {:try_start_33 .. :try_end_3f} :catchall_70
23000 + .catchall {:try_start_33 .. :try_end_3f} :catchall_6a
23002 move-result v11
23004 @@ -700,7 +700,7 @@
23005 const/4 v5, 0x0
23007 :goto_52
23008 - if-ge v5, v10, :cond_6a
23009 + if-ge v5, v10, :cond_71
23011 invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
23013 @@ -720,46 +720,36 @@
23015 invoke-interface {v6, v11}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23016 :try_end_67
23017 - .catchall {:try_start_48 .. :try_end_67} :catchall_70
23018 + .catchall {:try_start_48 .. :try_end_67} :catchall_6a
23020 :cond_67
23021 add-int/lit8 v5, v5, 0x1
23023 goto :goto_52
23025 - :cond_6a
23026 - :try_start_6a
23027 - invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23028 - :try_end_6d
23029 - .catch Landroid/os/RemoteException; {:try_start_6a .. :try_end_6d} :catch_6e
23030 + :catchall_6a
23031 + move-exception v11
23033 - goto :goto_32
23034 + :try_start_6b
23035 + invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23036 + :try_end_6e
23037 + .catch Landroid/os/RemoteException; {:try_start_6b .. :try_end_6e} :catch_6f
23039 - :catch_6e
23040 - move-exception v11
23041 + :goto_6e
23042 + throw v11
23044 - goto :goto_32
23045 + :catch_6f
23046 + move-exception v12
23048 - :catchall_70
23049 - move-exception v11
23050 + goto :goto_6e
23052 + :cond_71
23053 :try_start_71
23054 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23055 :try_end_74
23056 - .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_77
23058 - :goto_74
23059 - throw v11
23061 - :catch_75
23062 - move-exception v11
23063 + .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_46
23065 goto :goto_32
23067 - :catch_77
23068 - move-exception v12
23070 - goto :goto_74
23071 .end method
23073 .method public performAccessibilityActionClientThread(IIILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23074 @@ -864,7 +854,7 @@
23075 :try_start_17
23076 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23077 :try_end_1a
23078 - .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_34
23079 + .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_36
23081 :goto_1a
23082 return-void
23083 @@ -906,20 +896,20 @@
23084 :try_start_30
23085 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23086 :try_end_33
23087 - .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_36
23088 + .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_34
23090 :goto_33
23091 throw v6
23093 :catch_34
23094 - move-exception v6
23095 + move-exception v7
23097 - goto :goto_1a
23098 + goto :goto_33
23100 :catch_36
23101 - move-exception v7
23102 + move-exception v6
23104 - goto :goto_33
23105 + goto :goto_1a
23107 :pswitch_data_38
23108 .packed-switch 0x1
23109 diff -Npru stock-framework/smali/android/view/ViewRootImpl$W.smali pdroid-framework/smali/android/view/ViewRootImpl$W.smali
23110 --- stock-framework/smali/android/view/ViewRootImpl$W.smali 2012-05-06 11:56:52.242701784 -0500
23111 +++ pdroid-framework/smali/android/view/ViewRootImpl$W.smali 2012-05-06 12:13:40.339700668 -0500
23112 @@ -301,21 +301,21 @@
23114 invoke-direct {v1, p3}, Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V
23115 :try_end_47
23116 - .catchall {:try_start_42 .. :try_end_47} :catchall_64
23117 - .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_55
23118 + .catchall {:try_start_42 .. :try_end_47} :catchall_5f
23119 + .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_50
23121 :try_start_47
23122 invoke-static {v3, p1, p2, v1}, Landroid/view/ViewDebug;->dispatchCommand(Landroid/view/View;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;)V
23123 :try_end_4a
23124 - .catchall {:try_start_47 .. :try_end_4a} :catchall_70
23125 - .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_73
23126 + .catchall {:try_start_47 .. :try_end_4a} :catchall_6d
23127 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_70
23129 if-eqz v1, :cond_4f
23131 :try_start_4c
23132 invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
23133 :try_end_4f
23134 - .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50
23135 + .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_6b
23137 :cond_4f
23138 :goto_4f
23139 @@ -324,70 +324,69 @@
23140 :catch_50
23141 move-exception v2
23143 + :goto_51
23144 + :try_start_51
23145 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23147 - goto :goto_4f
23149 - :catch_55
23150 - move-exception v2
23152 - :goto_56
23153 - :try_start_56
23154 - invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23155 - :try_end_59
23156 - .catchall {:try_start_56 .. :try_end_59} :catchall_64
23157 + :try_end_54
23158 + .catchall {:try_start_51 .. :try_end_54} :catchall_5f
23160 if-eqz v0, :cond_4f
23162 - :try_start_5b
23163 + :try_start_56
23164 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23165 - :try_end_5e
23166 - .catch Ljava/io/IOException; {:try_start_5b .. :try_end_5e} :catch_5f
23167 + :try_end_59
23168 + .catch Ljava/io/IOException; {:try_start_56 .. :try_end_59} :catch_5a
23170 goto :goto_4f
23172 - :catch_5f
23173 + :catch_5a
23174 move-exception v2
23176 + :goto_5b
23177 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23179 goto :goto_4f
23181 - :catchall_64
23182 + :catchall_5f
23183 move-exception v5
23185 - :goto_65
23186 - if-eqz v0, :cond_6a
23187 + :goto_60
23188 + if-eqz v0, :cond_65
23190 - :try_start_67
23191 + :try_start_62
23192 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23193 - :try_end_6a
23194 - .catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_6b
23195 + :try_end_65
23196 + .catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
23198 - :cond_6a
23199 - :goto_6a
23200 + :cond_65
23201 + :goto_65
23202 throw v5
23204 - :catch_6b
23205 + :catch_66
23206 move-exception v2
23208 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23210 - goto :goto_6a
23211 + goto :goto_65
23213 - :catchall_70
23214 + :catch_6b
23215 + move-exception v2
23217 + goto :goto_5b
23219 + :catchall_6d
23220 move-exception v5
23222 move-object v0, v1
23224 - goto :goto_65
23225 + goto :goto_60
23227 - :catch_73
23228 + :catch_70
23229 move-exception v2
23231 move-object v0, v1
23233 - goto :goto_56
23234 + goto :goto_51
23235 .end method
23237 .method public resized(IILandroid/graphics/Rect;Landroid/graphics/Rect;ZLandroid/content/res/Configuration;)V
23238 diff -Npru stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali
23239 --- stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-05-06 11:56:52.374702450 -0500
23240 +++ pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-05-06 12:13:40.475701345 -0500
23241 @@ -123,28 +123,26 @@
23243 invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
23244 :try_end_a
23245 - .catchall {:try_start_5 .. :try_end_a} :catchall_11
23246 - .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_d
23247 + .catchall {:try_start_5 .. :try_end_a} :catchall_d
23248 + .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_11
23250 + :goto_a
23251 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23253 :cond_c
23254 - :goto_c
23255 return-void
23257 - :catch_d
23258 + :catchall_d
23259 move-exception v0
23261 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23263 - goto :goto_c
23264 + throw v0
23266 - :catchall_11
23267 + :catch_11
23268 move-exception v0
23270 - iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23272 - throw v0
23273 + goto :goto_a
23274 .end method
23276 .method private releaseQueue()V
23277 diff -Npru stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali
23278 --- stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-05-06 11:56:52.406702601 -0500
23279 +++ pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-05-06 12:13:40.503701485 -0500
23280 @@ -189,7 +189,7 @@
23282 invoke-interface {v6}, Landroid/database/Cursor;->moveToNext()Z
23283 :try_end_40
23284 - .catchall {:try_start_1e .. :try_end_40} :catchall_57
23285 + .catchall {:try_start_1e .. :try_end_40} :catchall_54
23286 .catch Ljava/lang/IllegalStateException; {:try_start_1e .. :try_end_40} :catch_49
23288 move-result v1
23289 @@ -199,10 +199,10 @@
23290 :cond_43
23291 if-eqz v6, :cond_48
23293 + :goto_45
23294 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23296 :cond_48
23297 - :goto_48
23298 return-void
23300 :catch_49
23301 @@ -215,22 +215,20 @@
23303 invoke-static {v1, v2, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23304 :try_end_51
23305 - .catchall {:try_start_4a .. :try_end_51} :catchall_57
23306 + .catchall {:try_start_4a .. :try_end_51} :catchall_54
23308 if-eqz v6, :cond_48
23310 - invoke-interface {v6}, Landroid/database/Cursor;->close()V
23312 - goto :goto_48
23313 + goto :goto_45
23315 - :catchall_57
23316 + :catchall_54
23317 move-exception v1
23319 - if-eqz v6, :cond_5d
23320 + if-eqz v6, :cond_5a
23322 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23324 - :cond_5d
23325 + :cond_5a
23326 throw v1
23327 .end method
23329 diff -Npru stock-framework/smali/android/webkit/WebView$6.smali pdroid-framework/smali/android/webkit/WebView$6.smali
23330 --- stock-framework/smali/android/webkit/WebView$6.smali 2012-05-06 11:56:52.426702709 -0500
23331 +++ pdroid-framework/smali/android/webkit/WebView$6.smali 2012-05-06 12:13:40.519701563 -0500
23332 @@ -58,8 +58,8 @@
23334 invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
23335 :try_end_8
23336 - .catchall {:try_start_1 .. :try_end_8} :catchall_2c
23337 - .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_20
23338 + .catchall {:try_start_1 .. :try_end_8} :catchall_20
23339 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_2c
23341 :try_start_8
23342 iget-object v2, p0, Landroid/webkit/WebView$6;->val$p:Landroid/graphics/Picture;
23343 @@ -80,7 +80,7 @@
23344 :try_start_16
23345 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23346 :try_end_19
23347 - .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_38
23348 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_3c
23350 :cond_19
23351 :goto_19
23352 @@ -93,7 +93,7 @@
23353 :goto_1f
23354 return-void
23356 - :catch_20
23357 + :catchall_20
23358 move-exception v2
23360 :goto_21
23361 @@ -106,13 +106,13 @@
23363 :cond_26
23364 :goto_26
23365 - iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23366 + iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23368 - invoke-virtual {v2}, Ljava/io/File;->delete()Z
23369 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
23371 - goto :goto_1f
23372 + throw v2
23374 - :catchall_2c
23375 + :catch_2c
23376 move-exception v2
23378 :goto_2d
23379 @@ -121,42 +121,42 @@
23380 :try_start_2f
23381 invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
23382 :try_end_32
23383 - .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_3c
23384 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_38
23386 :cond_32
23387 :goto_32
23388 - iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23389 + iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23391 - invoke-virtual {v3}, Ljava/io/File;->delete()Z
23392 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
23394 - throw v2
23395 + goto :goto_1f
23397 :catch_38
23398 move-exception v2
23400 - goto :goto_19
23401 + goto :goto_32
23403 :catch_3a
23404 - move-exception v2
23405 + move-exception v3
23407 goto :goto_26
23409 :catch_3c
23410 - move-exception v3
23411 + move-exception v2
23413 - goto :goto_32
23414 + goto :goto_19
23416 :catchall_3e
23417 move-exception v2
23419 move-object v0, v1
23421 - goto :goto_2d
23422 + goto :goto_21
23424 :catch_41
23425 move-exception v2
23427 move-object v0, v1
23429 - goto :goto_21
23430 + goto :goto_2d
23431 .end method
23432 diff -Npru stock-framework/smali/android/webkit/WebView$7.smali pdroid-framework/smali/android/webkit/WebView$7.smali
23433 --- stock-framework/smali/android/webkit/WebView$7.smali 2012-05-06 11:56:52.426702709 -0500
23434 +++ pdroid-framework/smali/android/webkit/WebView$7.smali 2012-05-06 12:13:40.523701590 -0500
23435 @@ -72,7 +72,7 @@
23437 invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
23438 :try_end_19
23439 - .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_23
23440 + .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_21
23442 :goto_19
23443 return-void
23444 @@ -85,18 +85,18 @@
23446 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
23447 :try_end_20
23448 - .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_21
23449 + .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_23
23451 :goto_20
23452 throw v1
23454 :catch_21
23455 - move-exception v2
23456 + move-exception v1
23458 - goto :goto_20
23459 + goto :goto_19
23461 :catch_23
23462 - move-exception v1
23463 + move-exception v2
23465 - goto :goto_19
23466 + goto :goto_20
23467 .end method
23468 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali
23469 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-05-06 11:56:52.530703216 -0500
23470 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-05-06 12:13:40.627702096 -0500
23471 @@ -140,7 +140,7 @@
23473 throw v21
23474 :try_end_51
23475 - .catchall {:try_start_19 .. :try_end_51} :catchall_15b
23476 + .catchall {:try_start_19 .. :try_end_51} :catchall_158
23477 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_19 .. :try_end_51} :catch_51
23478 .catch Ljava/io/IOException; {:try_start_19 .. :try_end_51} :catch_ed
23480 @@ -189,7 +189,7 @@
23482 invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23483 :try_end_7c
23484 - .catchall {:try_start_52 .. :try_end_7c} :catchall_15b
23485 + .catchall {:try_start_52 .. :try_end_7c} :catchall_158
23487 if-eqz v4, :cond_3c
23489 @@ -238,7 +238,7 @@
23491 monitor-enter v22
23492 :try_end_a0
23493 - .catchall {:try_start_84 .. :try_end_a0} :catchall_15b
23494 + .catchall {:try_start_84 .. :try_end_a0} :catchall_158
23495 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_84 .. :try_end_a0} :catch_51
23496 .catch Ljava/io/IOException; {:try_start_84 .. :try_end_a0} :catch_ed
23498 @@ -267,7 +267,7 @@
23499 add-int/lit8 v9, v8, -0x1
23501 :goto_b7
23502 - if-ltz v9, :cond_162
23503 + if-ltz v9, :cond_15f
23505 invoke-interface {v7, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
23507 @@ -279,7 +279,7 @@
23509 invoke-interface {v0, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
23510 :try_end_c4
23511 - .catchall {:try_start_a0 .. :try_end_c4} :catchall_1b3
23512 + .catchall {:try_start_a0 .. :try_end_c4} :catchall_1aa
23514 add-int/lit8 v9, v9, -0x1
23516 @@ -315,7 +315,7 @@
23518 move-result v21
23520 - if-nez v21, :cond_120
23521 + if-nez v21, :cond_11d
23523 new-instance v21, Lorg/xmlpull/v1/XmlPullParserException;
23525 @@ -325,7 +325,7 @@
23527 throw v21
23528 :try_end_ed
23529 - .catchall {:try_start_d7 .. :try_end_ed} :catchall_15b
23530 + .catchall {:try_start_d7 .. :try_end_ed} :catchall_158
23531 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_d7 .. :try_end_ed} :catch_51
23532 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_ed} :catch_ed
23534 @@ -372,26 +372,21 @@
23536 invoke-static {v0, v1, v10}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23537 :try_end_116
23538 - .catchall {:try_start_ee .. :try_end_116} :catchall_15b
23539 + .catchall {:try_start_ee .. :try_end_116} :catchall_158
23541 if-eqz v4, :cond_3c
23543 :try_start_118
23544 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23545 :try_end_11b
23546 - .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_11d
23547 + .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_82
23549 goto/16 :goto_3c
23551 - :catch_11d
23552 - move-exception v21
23554 - goto/16 :goto_3c
23556 - :cond_120
23557 + :cond_11d
23558 const/16 v21, 0x0
23560 - :try_start_122
23561 + :try_start_11f
23562 const-string v22, "activity"
23564 move-object/from16 v0, v21
23565 @@ -443,29 +438,29 @@
23566 invoke-direct {v13, v3, v0, v1, v2}, Landroid/widget/ActivityChooserModel$HistoricalRecord;-><init>(Ljava/lang/String;JF)V
23568 invoke-interface {v14, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23569 - :try_end_159
23570 - .catchall {:try_start_122 .. :try_end_159} :catchall_15b
23571 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_122 .. :try_end_159} :catch_51
23572 - .catch Ljava/io/IOException; {:try_start_122 .. :try_end_159} :catch_ed
23573 + :try_end_156
23574 + .catchall {:try_start_11f .. :try_end_156} :catchall_158
23575 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_11f .. :try_end_156} :catch_51
23576 + .catch Ljava/io/IOException; {:try_start_11f .. :try_end_156} :catch_ed
23578 goto/16 :goto_89
23580 - :catchall_15b
23581 + :catchall_158
23582 move-exception v21
23584 - if-eqz v4, :cond_161
23585 + if-eqz v4, :cond_15e
23587 - :try_start_15e
23588 + :try_start_15b
23589 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23590 - :try_end_161
23591 - .catch Ljava/io/IOException; {:try_start_15e .. :try_end_161} :catch_1b6
23592 + :try_end_15e
23593 + .catch Ljava/io/IOException; {:try_start_15b .. :try_end_15e} :catch_1ad
23595 - :cond_161
23596 - :goto_161
23597 + :cond_15e
23598 + :goto_15e
23599 throw v21
23601 - :cond_162
23602 - :try_start_162
23603 + :cond_15f
23604 + :try_start_15f
23605 invoke-interface {v7}, Ljava/util/List;->size()I
23607 move-result v21
23608 @@ -478,28 +473,23 @@
23610 move/from16 v1, v23
23612 - if-ne v0, v1, :cond_17b
23613 + if-ne v0, v1, :cond_175
23615 monitor-exit v22
23616 - :try_end_171
23617 - .catchall {:try_start_162 .. :try_end_171} :catchall_1b3
23618 + :try_end_16e
23619 + .catchall {:try_start_15f .. :try_end_16e} :catchall_1aa
23621 if-eqz v4, :cond_3c
23623 - :try_start_173
23624 + :try_start_170
23625 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23626 - :try_end_176
23627 - .catch Ljava/io/IOException; {:try_start_173 .. :try_end_176} :catch_178
23629 - goto/16 :goto_3c
23631 - :catch_178
23632 - move-exception v21
23633 + :try_end_173
23634 + .catch Ljava/io/IOException; {:try_start_170 .. :try_end_173} :catch_82
23636 goto/16 :goto_3c
23638 - :cond_17b
23639 - :try_start_17b
23640 + :cond_175
23641 + :try_start_175
23642 invoke-interface {v7}, Ljava/util/List;->clear()V
23644 move-object/from16 v0, v18
23645 @@ -543,40 +533,35 @@
23646 invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
23648 monitor-exit v22
23649 - :try_end_1a9
23650 - .catchall {:try_start_17b .. :try_end_1a9} :catchall_1b3
23651 + :try_end_1a3
23652 + .catchall {:try_start_175 .. :try_end_1a3} :catchall_1aa
23654 if-eqz v4, :cond_3c
23656 - :try_start_1ab
23657 + :try_start_1a5
23658 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23659 - :try_end_1ae
23660 - .catch Ljava/io/IOException; {:try_start_1ab .. :try_end_1ae} :catch_1b0
23661 + :try_end_1a8
23662 + .catch Ljava/io/IOException; {:try_start_1a5 .. :try_end_1a8} :catch_82
23664 goto/16 :goto_3c
23666 - :catch_1b0
23667 + :catchall_1aa
23668 move-exception v21
23670 - goto/16 :goto_3c
23672 - :catchall_1b3
23673 - move-exception v21
23675 - :try_start_1b4
23676 + :try_start_1ab
23677 monitor-exit v22
23678 - :try_end_1b5
23679 - .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_1b3
23680 + :try_end_1ac
23681 + .catchall {:try_start_1ab .. :try_end_1ac} :catchall_1aa
23683 - :try_start_1b5
23684 + :try_start_1ac
23685 throw v21
23686 - :try_end_1b6
23687 - .catchall {:try_start_1b5 .. :try_end_1b6} :catchall_15b
23688 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1b5 .. :try_end_1b6} :catch_51
23689 - .catch Ljava/io/IOException; {:try_start_1b5 .. :try_end_1b6} :catch_ed
23690 + :try_end_1ad
23691 + .catchall {:try_start_1ac .. :try_end_1ad} :catchall_158
23692 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1ac .. :try_end_1ad} :catch_51
23693 + .catch Ljava/io/IOException; {:try_start_1ac .. :try_end_1ad} :catch_ed
23695 - :catch_1b6
23696 + :catch_1ad
23697 move-exception v22
23699 - goto :goto_161
23700 + goto :goto_15e
23701 .end method
23702 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali
23703 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-05-06 11:56:52.530703216 -0500
23704 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-05-06 12:13:40.627702096 -0500
23705 @@ -75,7 +75,7 @@
23706 :try_start_14
23707 monitor-exit v12
23708 :try_end_15
23709 - .catchall {:try_start_14 .. :try_end_15} :catchall_13d
23710 + .catchall {:try_start_14 .. :try_end_15} :catchall_136
23712 :try_start_15
23713 iget-object v11, p0, Landroid/widget/ActivityChooserModel$HistoryPersister;->this$0:Landroid/widget/ActivityChooserModel;
23714 @@ -190,10 +190,10 @@
23716 invoke-interface {v10, v11, v12}, Lorg/xmlpull/v1/XmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
23717 :try_end_7e
23718 - .catchall {:try_start_2b .. :try_end_7e} :catchall_134
23719 + .catchall {:try_start_2b .. :try_end_7e} :catchall_12d
23720 .catch Ljava/lang/IllegalArgumentException; {:try_start_2b .. :try_end_7e} :catch_b7
23721 - .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_e0
23722 - .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_109
23723 + .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_de
23724 + .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_105
23726 add-int/lit8 v2, v2, 0x1
23728 @@ -258,10 +258,10 @@
23730 invoke-interface {v10}, Lorg/xmlpull/v1/XmlSerializer;->endDocument()V
23731 :try_end_af
23732 - .catchall {:try_start_a7 .. :try_end_af} :catchall_134
23733 + .catchall {:try_start_a7 .. :try_end_af} :catchall_12d
23734 .catch Ljava/lang/IllegalArgumentException; {:try_start_a7 .. :try_end_af} :catch_b7
23735 - .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_e0
23736 - .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_109
23737 + .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_de
23738 + .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_105
23740 if-eqz v1, :cond_a5
23742 @@ -312,26 +312,21 @@
23744 invoke-static {v11, v12, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23745 :try_end_d8
23746 - .catchall {:try_start_b8 .. :try_end_d8} :catchall_134
23747 + .catchall {:try_start_b8 .. :try_end_d8} :catchall_12d
23749 if-eqz v1, :cond_a5
23751 :try_start_da
23752 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23753 :try_end_dd
23754 - .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_de
23755 + .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_b5
23757 goto :goto_a5
23759 :catch_de
23760 - move-exception v11
23762 - goto :goto_a5
23764 - :catch_e0
23765 move-exception v5
23767 - :try_start_e1
23768 + :try_start_df
23769 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23771 move-result-object v11
23772 @@ -362,27 +357,22 @@
23773 move-result-object v12
23775 invoke-static {v11, v12, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23776 - :try_end_101
23777 - .catchall {:try_start_e1 .. :try_end_101} :catchall_134
23778 + :try_end_ff
23779 + .catchall {:try_start_df .. :try_end_ff} :catchall_12d
23781 if-eqz v1, :cond_a5
23783 - :try_start_103
23784 + :try_start_101
23785 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23786 - :try_end_106
23787 - .catch Ljava/io/IOException; {:try_start_103 .. :try_end_106} :catch_107
23789 - goto :goto_a5
23791 - :catch_107
23792 - move-exception v11
23793 + :try_end_104
23794 + .catch Ljava/io/IOException; {:try_start_101 .. :try_end_104} :catch_b5
23796 goto :goto_a5
23798 - :catch_109
23799 + :catch_105
23800 move-exception v4
23802 - :try_start_10a
23803 + :try_start_106
23804 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23806 move-result-object v11
23807 @@ -413,43 +403,38 @@
23808 move-result-object v12
23810 invoke-static {v11, v12, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23811 - :try_end_12a
23812 - .catchall {:try_start_10a .. :try_end_12a} :catchall_134
23813 + :try_end_126
23814 + .catchall {:try_start_106 .. :try_end_126} :catchall_12d
23816 if-eqz v1, :cond_a5
23818 - :try_start_12c
23819 + :try_start_128
23820 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23821 - :try_end_12f
23822 - .catch Ljava/io/IOException; {:try_start_12c .. :try_end_12f} :catch_131
23824 - goto/16 :goto_a5
23826 - :catch_131
23827 - move-exception v11
23828 + :try_end_12b
23829 + .catch Ljava/io/IOException; {:try_start_128 .. :try_end_12b} :catch_b5
23831 goto/16 :goto_a5
23833 - :catchall_134
23834 + :catchall_12d
23835 move-exception v11
23837 - if-eqz v1, :cond_13a
23838 + if-eqz v1, :cond_133
23840 - :try_start_137
23841 + :try_start_130
23842 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23843 - :try_end_13a
23844 - .catch Ljava/io/IOException; {:try_start_137 .. :try_end_13a} :catch_13b
23845 + :try_end_133
23846 + .catch Ljava/io/IOException; {:try_start_130 .. :try_end_133} :catch_134
23848 - :cond_13a
23849 - :goto_13a
23850 + :cond_133
23851 + :goto_133
23852 throw v11
23854 - :catch_13b
23855 + :catch_134
23856 move-exception v12
23858 - goto :goto_13a
23859 + goto :goto_133
23861 - :catchall_13d
23862 + :catchall_136
23863 move-exception v11
23865 move-object v8, v9
23866 diff -Npru stock-framework/smali/android/widget/Filter$RequestHandler.smali pdroid-framework/smali/android/widget/Filter$RequestHandler.smali
23867 --- stock-framework/smali/android/widget/Filter$RequestHandler.smali 2012-05-06 11:56:52.610703612 -0500
23868 +++ pdroid-framework/smali/android/widget/Filter$RequestHandler.smali 2012-05-06 12:13:40.695702439 -0500
23869 @@ -36,7 +36,7 @@
23871 iget v4, p1, Landroid/os/Message;->what:I
23873 - sparse-switch v4, :sswitch_data_a8
23874 + sparse-switch v4, :sswitch_data_a4
23876 :goto_5
23877 return-void
23878 @@ -57,7 +57,7 @@
23880 iput-object v5, v0, Landroid/widget/Filter$RequestArguments;->results:Landroid/widget/Filter$FilterResults;
23881 :try_end_14
23882 - .catchall {:try_start_a .. :try_end_14} :catchall_6e
23883 + .catchall {:try_start_a .. :try_end_14} :catchall_6b
23884 .catch Ljava/lang/Exception; {:try_start_a .. :try_end_14} :catch_4f
23886 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23887 @@ -73,9 +73,9 @@
23889 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23891 + :goto_20
23892 invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23894 - :goto_23
23895 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23897 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23898 @@ -149,7 +149,7 @@
23900 invoke-static {v5, v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23901 :try_end_5e
23902 - .catchall {:try_start_50 .. :try_end_5e} :catchall_6e
23903 + .catchall {:try_start_50 .. :try_end_5e} :catchall_6b
23905 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23907 @@ -164,11 +164,9 @@
23909 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23911 - invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23913 - goto :goto_23
23914 + goto :goto_20
23916 - :catchall_6e
23917 + :catchall_6b
23918 move-exception v5
23920 iget-object v6, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23921 @@ -188,7 +186,7 @@
23923 throw v5
23925 - :sswitch_7f
23926 + :sswitch_7c
23927 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23929 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23930 @@ -198,7 +196,7 @@
23932 monitor-enter v6
23934 - :try_start_86
23935 + :try_start_83
23936 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23938 #getter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23939 @@ -206,7 +204,7 @@
23941 move-result-object v5
23943 - if-eqz v5, :cond_a1
23944 + if-eqz v5, :cond_9e
23946 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23948 @@ -228,25 +226,23 @@
23949 #setter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23950 invoke-static {v5, v7}, Landroid/widget/Filter;->access$402(Landroid/widget/Filter;Landroid/os/Handler;)Landroid/os/Handler;
23952 - :cond_a1
23953 + :cond_9e
23954 monitor-exit v6
23956 goto/16 :goto_5
23958 - :catchall_a4
23959 + :catchall_a1
23960 move-exception v5
23962 monitor-exit v6
23963 - :try_end_a6
23964 - .catchall {:try_start_86 .. :try_end_a6} :catchall_a4
23965 + :try_end_a3
23966 + .catchall {:try_start_83 .. :try_end_a3} :catchall_a1
23968 throw v5
23970 - nop
23972 - :sswitch_data_a8
23973 + :sswitch_data_a4
23974 .sparse-switch
23975 -0x2f2f0ff3 -> :sswitch_6
23976 - -0x21524111 -> :sswitch_7f
23977 + -0x21524111 -> :sswitch_7c
23978 .end sparse-switch
23979 .end method
23980 diff -Npru stock-framework/smali/android/widget/GridView.smali pdroid-framework/smali/android/widget/GridView.smali
23981 --- stock-framework/smali/android/widget/GridView.smali 2012-05-06 11:56:52.630703708 -0500
23982 +++ pdroid-framework/smali/android/widget/GridView.smali 2012-05-06 12:13:40.715702533 -0500
23983 @@ -4243,10 +4243,11 @@
23985 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
23986 :try_end_22
23987 - .catchall {:try_start_e .. :try_end_22} :catchall_1c6
23988 + .catchall {:try_start_e .. :try_end_22} :catchall_1b5
23990 if-nez v3, :cond_2c
23992 + :goto_24
23993 const/16 v19, 0x0
23995 move/from16 v0, v19
23996 @@ -4256,7 +4257,6 @@
23997 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
23999 :cond_2c
24000 - :goto_2c
24001 return-void
24003 :cond_2d
24004 @@ -4317,7 +4317,7 @@
24006 move/from16 v19, v0
24008 - packed-switch v19, :pswitch_data_304
24009 + packed-switch v19, :pswitch_data_2f2
24011 move-object/from16 v0, p0
24013 @@ -4372,28 +4372,17 @@
24015 move/from16 v19, v0
24017 - if-nez v19, :cond_d9
24018 + if-nez v19, :cond_d1
24020 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->resetList()V
24022 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24023 - :try_end_9e
24024 - .catchall {:try_start_2d .. :try_end_9e} :catchall_1c6
24026 if-nez v3, :cond_2c
24028 - const/16 v19, 0x0
24030 - move/from16 v0, v19
24032 - move-object/from16 v1, p0
24034 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24036 - goto :goto_2c
24037 + goto :goto_24
24039 - :pswitch_a9
24040 - :try_start_a9
24041 + :pswitch_a1
24042 move-object/from16 v0, p0
24044 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24045 @@ -4420,7 +4409,7 @@
24047 goto :goto_87
24049 - :pswitch_c2
24050 + :pswitch_ba
24051 move-object/from16 v0, p0
24053 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24054 @@ -4445,7 +4434,7 @@
24056 goto :goto_87
24058 - :cond_d9
24059 + :cond_d1
24060 move-object/from16 v0, p0
24062 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24063 @@ -4468,12 +4457,12 @@
24065 move-object/from16 v17, v0
24067 - if-eqz v8, :cond_109
24068 + if-eqz v8, :cond_101
24070 const/4 v11, 0x0
24072 - :goto_f3
24073 - if-ge v11, v5, :cond_10e
24074 + :goto_eb
24075 + if-ge v11, v5, :cond_106
24077 move-object/from16 v0, p0
24079 @@ -4493,14 +4482,14 @@
24081 add-int/lit8 v11, v11, 0x1
24083 - goto :goto_f3
24084 + goto :goto_eb
24086 - :cond_109
24087 + :cond_101
24088 move-object/from16 v0, v17
24090 invoke-virtual {v0, v5, v10}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24092 - :cond_10e
24093 + :cond_106
24094 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->detachAllViewsFromParent()V
24096 move-object/from16 v0, p0
24097 @@ -4509,9 +4498,9 @@
24099 move/from16 v19, v0
24101 - packed-switch v19, :pswitch_data_314
24102 + packed-switch v19, :pswitch_data_302
24104 - if-nez v5, :cond_24d
24105 + if-nez v5, :cond_23c
24107 move-object/from16 v0, p0
24109 @@ -4519,7 +4508,7 @@
24111 move/from16 v19, v0
24113 - if-nez v19, :cond_223
24114 + if-nez v19, :cond_212
24116 move-object/from16 v0, p0
24118 @@ -4527,18 +4516,18 @@
24120 move-object/from16 v19, v0
24122 - if-eqz v19, :cond_132
24123 + if-eqz v19, :cond_12a
24125 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24127 move-result v19
24129 - if-eqz v19, :cond_21f
24130 + if-eqz v19, :cond_20e
24132 - :cond_132
24133 + :cond_12a
24134 const/16 v19, -0x1
24136 - :goto_134
24137 + :goto_12c
24138 move-object/from16 v0, p0
24140 move/from16 v1, v19
24141 @@ -4551,10 +4540,10 @@
24143 move-result-object v18
24145 - :goto_141
24146 + :goto_139
24147 invoke-virtual/range {v17 .. v17}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24149 - if-eqz v18, :cond_2b3
24150 + if-eqz v18, :cond_2a2
24152 const/16 v19, -0x1
24154 @@ -4576,8 +4565,8 @@
24156 iput v0, v1, Landroid/widget/GridView;->mSelectedTop:I
24158 - :cond_15b
24159 - :goto_15b
24160 + :cond_153
24161 + :goto_153
24162 const/16 v19, 0x0
24164 move/from16 v0, v19
24165 @@ -4622,31 +4611,20 @@
24167 move/from16 v19, v0
24169 - if-lez v19, :cond_18e
24170 + if-lez v19, :cond_186
24172 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->checkSelectionChanged()V
24174 - :cond_18e
24175 + :cond_186
24176 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24177 - :try_end_191
24178 - .catchall {:try_start_a9 .. :try_end_191} :catchall_1c6
24180 if-nez v3, :cond_2c
24182 - const/16 v19, 0x0
24184 - move/from16 v0, v19
24185 + goto/16 :goto_24
24187 - move-object/from16 v1, p0
24188 + :pswitch_18d
24189 + if-eqz v14, :cond_19c
24191 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24193 - goto/16 :goto_2c
24195 - :pswitch_19d
24196 - if-eqz v14, :cond_1ac
24198 - :try_start_19f
24199 invoke-virtual {v14}, Landroid/view/View;->getTop()I
24201 move-result v19
24202 @@ -4659,18 +4637,18 @@
24204 move-result-object v18
24206 - goto :goto_141
24207 + goto :goto_139
24209 - :cond_1ac
24210 + :cond_19c
24211 move-object/from16 v0, p0
24213 invoke-direct {v0, v7, v6}, Landroid/widget/GridView;->fillSelection(II)Landroid/view/View;
24215 move-result-object v18
24217 - goto :goto_141
24218 + goto :goto_139
24220 - :pswitch_1b3
24221 + :pswitch_1a3
24222 const/16 v19, 0x0
24224 move/from16 v0, v19
24225 @@ -4686,15 +4664,15 @@
24226 move-result-object v18
24228 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24229 - :try_end_1c4
24230 - .catchall {:try_start_19f .. :try_end_1c4} :catchall_1c6
24231 + :try_end_1b4
24232 + .catchall {:try_start_2d .. :try_end_1b4} :catchall_1b5
24234 - goto/16 :goto_141
24235 + goto :goto_139
24237 - :catchall_1c6
24238 + :catchall_1b5
24239 move-exception v19
24241 - if-nez v3, :cond_1d1
24242 + if-nez v3, :cond_1c0
24244 const/16 v20, 0x0
24246 @@ -4704,11 +4682,11 @@
24248 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24250 - :cond_1d1
24251 + :cond_1c0
24252 throw v19
24254 - :pswitch_1d2
24255 - :try_start_1d2
24256 + :pswitch_1c1
24257 + :try_start_1c1
24258 move-object/from16 v0, p0
24260 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24261 @@ -4727,9 +4705,9 @@
24263 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24265 - goto/16 :goto_141
24266 + goto/16 :goto_139
24268 - :pswitch_1e7
24269 + :pswitch_1d6
24270 move-object/from16 v0, p0
24272 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24273 @@ -4752,9 +4730,9 @@
24275 move-result-object v18
24277 - goto/16 :goto_141
24278 + goto/16 :goto_139
24280 - :pswitch_1ff
24281 + :pswitch_1ee
24282 move-object/from16 v0, p0
24284 iget v0, v0, Landroid/widget/GridView;->mSyncPosition:I
24285 @@ -4777,23 +4755,23 @@
24287 move-result-object v18
24289 - goto/16 :goto_141
24290 + goto/16 :goto_139
24292 - :pswitch_217
24293 + :pswitch_206
24294 move-object/from16 v0, p0
24296 invoke-direct {v0, v9, v7, v6}, Landroid/widget/GridView;->moveSelection(III)Landroid/view/View;
24298 move-result-object v18
24300 - goto/16 :goto_141
24301 + goto/16 :goto_139
24303 - :cond_21f
24304 + :cond_20e
24305 const/16 v19, 0x0
24307 - goto/16 :goto_134
24308 + goto/16 :goto_12c
24310 - :cond_223
24311 + :cond_212
24312 move-object/from16 v0, p0
24314 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24315 @@ -4808,18 +4786,18 @@
24317 move-object/from16 v19, v0
24319 - if-eqz v19, :cond_239
24320 + if-eqz v19, :cond_228
24322 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24324 move-result v19
24326 - if-eqz v19, :cond_24a
24327 + if-eqz v19, :cond_239
24329 - :cond_239
24330 + :cond_228
24331 const/16 v19, -0x1
24333 - :goto_23b
24334 + :goto_22a
24335 move-object/from16 v0, p0
24337 move/from16 v1, v19
24338 @@ -4832,21 +4810,21 @@
24340 move-result-object v18
24342 - goto/16 :goto_141
24343 + goto/16 :goto_139
24345 - :cond_24a
24346 + :cond_239
24347 move/from16 v19, v13
24349 - goto :goto_23b
24350 + goto :goto_22a
24352 - :cond_24d
24353 + :cond_23c
24354 move-object/from16 v0, p0
24356 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24358 move/from16 v19, v0
24360 - if-ltz v19, :cond_27e
24361 + if-ltz v19, :cond_26d
24363 move-object/from16 v0, p0
24365 @@ -4864,7 +4842,7 @@
24367 move/from16 v1, v20
24369 - if-ge v0, v1, :cond_27e
24370 + if-ge v0, v1, :cond_26d
24372 move-object/from16 v0, p0
24374 @@ -4872,9 +4850,9 @@
24376 move/from16 v19, v0
24378 - if-nez v16, :cond_279
24379 + if-nez v16, :cond_268
24381 - :goto_26f
24382 + :goto_25e
24383 move-object/from16 v0, p0
24385 move/from16 v1, v19
24386 @@ -4883,16 +4861,16 @@
24388 move-result-object v18
24390 - goto/16 :goto_141
24391 + goto/16 :goto_139
24393 - :cond_279
24394 + :cond_268
24395 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->getTop()I
24397 move-result v7
24399 - goto :goto_26f
24400 + goto :goto_25e
24402 - :cond_27e
24403 + :cond_26d
24404 move-object/from16 v0, p0
24406 iget v0, v0, Landroid/widget/GridView;->mFirstPosition:I
24407 @@ -4909,7 +4887,7 @@
24409 move/from16 v1, v20
24411 - if-ge v0, v1, :cond_2a7
24412 + if-ge v0, v1, :cond_296
24414 move-object/from16 v0, p0
24416 @@ -4917,9 +4895,9 @@
24418 move/from16 v19, v0
24420 - if-nez v15, :cond_2a2
24421 + if-nez v15, :cond_291
24423 - :goto_298
24424 + :goto_287
24425 move-object/from16 v0, p0
24427 move/from16 v1, v19
24428 @@ -4928,16 +4906,16 @@
24430 move-result-object v18
24432 - goto/16 :goto_141
24433 + goto/16 :goto_139
24435 - :cond_2a2
24436 + :cond_291
24437 invoke-virtual {v15}, Landroid/view/View;->getTop()I
24439 move-result v7
24441 - goto :goto_298
24442 + goto :goto_287
24444 - :cond_2a7
24445 + :cond_296
24446 const/16 v19, 0x0
24448 move-object/from16 v0, p0
24449 @@ -4948,16 +4926,16 @@
24451 move-result-object v18
24453 - goto/16 :goto_141
24454 + goto/16 :goto_139
24456 - :cond_2b3
24457 + :cond_2a2
24458 move-object/from16 v0, p0
24460 iget v0, v0, Landroid/widget/GridView;->mTouchMode:I
24462 move/from16 v19, v0
24464 - if-lez v19, :cond_2f0
24465 + if-lez v19, :cond_2df
24467 move-object/from16 v0, p0
24469 @@ -4971,7 +4949,7 @@
24471 move/from16 v1, v20
24473 - if-ge v0, v1, :cond_2f0
24474 + if-ge v0, v1, :cond_2df
24476 move-object/from16 v0, p0
24478 @@ -4995,7 +4973,7 @@
24480 move-result-object v4
24482 - if-eqz v4, :cond_15b
24483 + if-eqz v4, :cond_153
24485 move-object/from16 v0, p0
24487 @@ -5009,9 +4987,9 @@
24489 invoke-virtual {v0, v1, v4}, Landroid/widget/GridView;->positionSelector(ILandroid/view/View;)V
24491 - goto/16 :goto_15b
24492 + goto/16 :goto_153
24494 - :cond_2f0
24495 + :cond_2df
24496 const/16 v19, 0x0
24498 move/from16 v0, v19
24499 @@ -5027,31 +5005,29 @@
24500 move-object/from16 v19, v0
24502 invoke-virtual/range {v19 .. v19}, Landroid/graphics/Rect;->setEmpty()V
24503 - :try_end_301
24504 - .catchall {:try_start_1d2 .. :try_end_301} :catchall_1c6
24506 - goto/16 :goto_15b
24507 + :try_end_2f0
24508 + .catchall {:try_start_1c1 .. :try_end_2f0} :catchall_1b5
24510 - nop
24511 + goto/16 :goto_153
24513 - :pswitch_data_304
24514 + :pswitch_data_2f2
24515 .packed-switch 0x1
24516 :pswitch_87
24517 - :pswitch_a9
24518 + :pswitch_a1
24519 :pswitch_87
24520 :pswitch_87
24521 :pswitch_87
24522 - :pswitch_c2
24523 + :pswitch_ba
24524 .end packed-switch
24526 - :pswitch_data_314
24527 + :pswitch_data_302
24528 .packed-switch 0x1
24529 - :pswitch_1b3
24530 - :pswitch_19d
24531 - :pswitch_1d2
24532 - :pswitch_1e7
24533 - :pswitch_1ff
24534 - :pswitch_217
24535 + :pswitch_1a3
24536 + :pswitch_18d
24537 + :pswitch_1c1
24538 + :pswitch_1d6
24539 + :pswitch_1ee
24540 + :pswitch_206
24541 .end packed-switch
24542 .end method
24544 diff -Npru stock-framework/smali/android/widget/ListView.smali pdroid-framework/smali/android/widget/ListView.smali
24545 --- stock-framework/smali/android/widget/ListView.smali 2012-05-06 11:56:52.602703577 -0500
24546 +++ pdroid-framework/smali/android/widget/ListView.smali 2012-05-06 12:13:40.687702396 -0500
24547 @@ -6868,10 +6868,11 @@
24549 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24550 :try_end_1d
24551 - .catchall {:try_start_b .. :try_end_1d} :catchall_125
24552 + .catchall {:try_start_b .. :try_end_1d} :catchall_120
24554 if-nez v8, :cond_24
24556 + :goto_1f
24557 const/4 v2, 0x0
24559 move-object/from16 v0, p0
24560 @@ -6879,7 +6880,6 @@
24561 iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24563 :cond_24
24564 - :goto_24
24565 return-void
24567 :cond_25
24568 @@ -6936,7 +6936,7 @@
24570 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24572 - packed-switch v2, :pswitch_data_36e
24573 + packed-switch v2, :pswitch_data_364
24575 move-object/from16 v0, p0
24577 @@ -7016,26 +7016,17 @@
24579 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24581 - if-nez v2, :cond_cc
24582 + if-nez v2, :cond_c7
24584 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->resetList()V
24586 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24587 - :try_end_a8
24588 - .catchall {:try_start_25 .. :try_end_a8} :catchall_125
24590 if-nez v8, :cond_24
24592 - const/4 v2, 0x0
24594 - move-object/from16 v0, p0
24596 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24598 - goto/16 :goto_24
24599 + goto/16 :goto_1f
24601 - :pswitch_b1
24602 - :try_start_b1
24603 + :pswitch_ac
24604 move-object/from16 v0, p0
24606 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24607 @@ -7064,7 +7055,7 @@
24609 goto :goto_93
24611 - :cond_cc
24612 + :cond_c7
24613 move-object/from16 v0, p0
24615 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24616 @@ -7081,7 +7072,7 @@
24618 move/from16 v0, v24
24620 - if-eq v2, v0, :cond_131
24621 + if-eq v2, v0, :cond_12c
24623 new-instance v2, Ljava/lang/IllegalStateException;
24625 @@ -7152,13 +7143,13 @@
24626 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
24628 throw v2
24629 - :try_end_125
24630 - .catchall {:try_start_b1 .. :try_end_125} :catchall_125
24631 + :try_end_120
24632 + .catchall {:try_start_25 .. :try_end_120} :catchall_120
24634 - :catchall_125
24635 + :catchall_120
24636 move-exception v2
24638 - if-nez v8, :cond_130
24639 + if-nez v8, :cond_12b
24641 const/16 v24, 0x0
24643 @@ -7168,11 +7159,11 @@
24645 iput-boolean v0, v1, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24647 - :cond_130
24648 + :cond_12b
24649 throw v2
24651 - :cond_131
24652 - :try_start_131
24653 + :cond_12c
24654 + :try_start_12c
24655 move-object/from16 v0, p0
24657 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24658 @@ -7193,14 +7184,14 @@
24660 const/4 v13, 0x0
24662 - if-eqz v11, :cond_161
24663 + if-eqz v11, :cond_15c
24665 const/16 v18, 0x0
24667 - :goto_149
24668 + :goto_144
24669 move/from16 v0, v18
24671 - if-ge v0, v10, :cond_166
24672 + if-ge v0, v10, :cond_161
24674 move-object/from16 v0, p0
24676 @@ -7220,21 +7211,21 @@
24678 add-int/lit8 v18, v18, 0x1
24680 - goto :goto_149
24681 + goto :goto_144
24683 - :cond_161
24684 + :cond_15c
24685 move-object/from16 v0, v22
24687 invoke-virtual {v0, v10, v12}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24689 - :cond_166
24690 + :cond_161
24691 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24693 move-result-object v17
24695 - if-eqz v17, :cond_186
24696 + if-eqz v17, :cond_181
24698 - if-eqz v11, :cond_178
24699 + if-eqz v11, :cond_173
24701 move-object/from16 v0, p0
24703 @@ -7244,38 +7235,38 @@
24705 move-result v2
24707 - if-eqz v2, :cond_183
24708 + if-eqz v2, :cond_17e
24710 - :cond_178
24711 + :cond_173
24712 move-object/from16 v13, v17
24714 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->findFocus()Landroid/view/View;
24716 move-result-object v14
24718 - if-eqz v14, :cond_183
24719 + if-eqz v14, :cond_17e
24721 invoke-virtual {v14}, Landroid/view/View;->onStartTemporaryDetach()V
24723 - :cond_183
24724 + :cond_17e
24725 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->requestFocus()Z
24727 - :cond_186
24728 + :cond_181
24729 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->detachAllViewsFromParent()V
24731 move-object/from16 v0, p0
24733 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24735 - packed-switch v2, :pswitch_data_37c
24736 + packed-switch v2, :pswitch_data_372
24738 - if-nez v10, :cond_2ba
24739 + if-nez v10, :cond_2b0
24741 move-object/from16 v0, p0
24743 iget-boolean v2, v0, Landroid/widget/ListView;->mStackFromBottom:Z
24745 - if-nez v2, :cond_295
24746 + if-nez v2, :cond_28b
24748 const/4 v2, 0x0
24750 @@ -7301,61 +7292,61 @@
24752 move-result-object v23
24754 - :goto_1b0
24755 + :goto_1ab
24756 invoke-virtual/range {v22 .. v22}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24758 - if-eqz v23, :cond_327
24759 + if-eqz v23, :cond_31d
24761 move-object/from16 v0, p0
24763 iget-boolean v2, v0, Landroid/widget/ListView;->mItemsCanFocus:Z
24765 - if-eqz v2, :cond_31d
24766 + if-eqz v2, :cond_313
24768 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
24770 move-result v2
24772 - if-eqz v2, :cond_31d
24773 + if-eqz v2, :cond_313
24775 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->hasFocus()Z
24777 move-result v2
24779 - if-nez v2, :cond_31d
24780 + if-nez v2, :cond_313
24782 move-object/from16 v0, v23
24784 - if-ne v0, v13, :cond_1d1
24785 + if-ne v0, v13, :cond_1cc
24787 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
24789 move-result v2
24791 - if-nez v2, :cond_1d7
24792 + if-nez v2, :cond_1d2
24794 - :cond_1d1
24795 + :cond_1cc
24796 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->requestFocus()Z
24798 move-result v2
24800 - if-eqz v2, :cond_30b
24801 + if-eqz v2, :cond_301
24803 - :cond_1d7
24804 + :cond_1d2
24805 const/4 v15, 0x1
24807 - :goto_1d8
24808 - if-nez v15, :cond_30e
24809 + :goto_1d3
24810 + if-nez v15, :cond_304
24812 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24814 move-result-object v16
24816 - if-eqz v16, :cond_1e3
24817 + if-eqz v16, :cond_1de
24819 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->clearFocus()V
24821 - :cond_1e3
24822 + :cond_1de
24823 const/4 v2, -0x1
24825 move-object/from16 v0, p0
24826 @@ -7364,7 +7355,7 @@
24828 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
24830 - :goto_1eb
24831 + :goto_1e6
24832 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->getTop()I
24834 move-result v2
24835 @@ -7373,19 +7364,19 @@
24837 iput v2, v0, Landroid/widget/ListView;->mSelectedTop:I
24839 - :cond_1f3
24840 - :goto_1f3
24841 - if-eqz v14, :cond_1fe
24842 + :cond_1ee
24843 + :goto_1ee
24844 + if-eqz v14, :cond_1f9
24846 invoke-virtual {v14}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
24848 move-result-object v2
24850 - if-eqz v2, :cond_1fe
24851 + if-eqz v2, :cond_1f9
24853 invoke-virtual {v14}, Landroid/view/View;->onFinishTemporaryDetach()V
24855 - :cond_1fe
24856 + :cond_1f9
24857 const/4 v2, 0x0
24859 move-object/from16 v0, p0
24860 @@ -7418,29 +7409,20 @@
24862 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24864 - if-lez v2, :cond_222
24865 + if-lez v2, :cond_21d
24867 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->checkSelectionChanged()V
24869 - :cond_222
24870 + :cond_21d
24871 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24872 - :try_end_225
24873 - .catchall {:try_start_131 .. :try_end_225} :catchall_125
24875 if-nez v8, :cond_24
24877 - const/4 v2, 0x0
24879 - move-object/from16 v0, p0
24881 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24883 - goto/16 :goto_24
24884 + goto/16 :goto_1f
24886 - :pswitch_22e
24887 - if-eqz v4, :cond_23c
24888 + :pswitch_224
24889 + if-eqz v4, :cond_232
24891 - :try_start_230
24892 invoke-virtual {v4}, Landroid/view/View;->getTop()I
24894 move-result v2
24895 @@ -7451,18 +7433,18 @@
24897 move-result-object v23
24899 - goto/16 :goto_1b0
24900 + goto/16 :goto_1ab
24902 - :cond_23c
24903 + :cond_232
24904 move-object/from16 v0, p0
24906 invoke-direct {v0, v6, v7}, Landroid/widget/ListView;->fillFromMiddle(II)Landroid/view/View;
24908 move-result-object v23
24910 - goto/16 :goto_1b0
24911 + goto/16 :goto_1ab
24913 - :pswitch_244
24914 + :pswitch_23a
24915 move-object/from16 v0, p0
24917 iget v2, v0, Landroid/widget/ListView;->mSyncPosition:I
24918 @@ -7481,9 +7463,9 @@
24920 move-result-object v23
24922 - goto/16 :goto_1b0
24923 + goto/16 :goto_1ab
24925 - :pswitch_258
24926 + :pswitch_24e
24927 move-object/from16 v0, p0
24929 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24930 @@ -7498,9 +7480,9 @@
24932 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24934 - goto/16 :goto_1b0
24935 + goto/16 :goto_1ab
24937 - :pswitch_269
24938 + :pswitch_25f
24939 const/4 v2, 0x0
24941 move-object/from16 v0, p0
24942 @@ -7515,9 +7497,9 @@
24944 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24946 - goto/16 :goto_1b0
24947 + goto/16 :goto_1ab
24949 - :pswitch_279
24950 + :pswitch_26f
24951 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->reconcileSelectedPosition()I
24953 move-result v2
24954 @@ -7536,18 +7518,18 @@
24956 move-result-object v23
24958 - goto/16 :goto_1b0
24959 + goto/16 :goto_1ab
24961 - :pswitch_28d
24962 + :pswitch_283
24963 move-object/from16 v2, p0
24965 invoke-direct/range {v2 .. v7}, Landroid/widget/ListView;->moveSelection(Landroid/view/View;Landroid/view/View;III)Landroid/view/View;
24967 move-result-object v23
24969 - goto/16 :goto_1b0
24970 + goto/16 :goto_1ab
24972 - :cond_295
24973 + :cond_28b
24974 move-object/from16 v0, p0
24976 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24977 @@ -7582,14 +7564,14 @@
24979 move-result-object v23
24981 - goto/16 :goto_1b0
24982 + goto/16 :goto_1ab
24984 - :cond_2ba
24985 + :cond_2b0
24986 move-object/from16 v0, p0
24988 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24990 - if-ltz v2, :cond_2e1
24991 + if-ltz v2, :cond_2d7
24993 move-object/from16 v0, p0
24995 @@ -7603,31 +7585,31 @@
24997 move/from16 v0, v24
24999 - if-ge v2, v0, :cond_2e1
25000 + if-ge v2, v0, :cond_2d7
25002 move-object/from16 v0, p0
25004 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
25006 - if-nez v3, :cond_2dc
25007 + if-nez v3, :cond_2d2
25009 - :goto_2d4
25010 + :goto_2ca
25011 move-object/from16 v0, p0
25013 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25015 move-result-object v23
25017 - goto/16 :goto_1b0
25018 + goto/16 :goto_1ab
25020 - :cond_2dc
25021 + :cond_2d2
25022 invoke-virtual {v3}, Landroid/view/View;->getTop()I
25024 move-result v6
25026 - goto :goto_2d4
25027 + goto :goto_2ca
25029 - :cond_2e1
25030 + :cond_2d7
25031 move-object/from16 v0, p0
25033 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25034 @@ -7640,31 +7622,31 @@
25036 move/from16 v0, v24
25038 - if-ge v2, v0, :cond_302
25039 + if-ge v2, v0, :cond_2f8
25041 move-object/from16 v0, p0
25043 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25045 - if-nez v20, :cond_2fd
25046 + if-nez v20, :cond_2f3
25048 - :goto_2f5
25049 + :goto_2eb
25050 move-object/from16 v0, p0
25052 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25054 move-result-object v23
25056 - goto/16 :goto_1b0
25057 + goto/16 :goto_1ab
25059 - :cond_2fd
25060 + :cond_2f3
25061 invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getTop()I
25063 move-result v6
25065 - goto :goto_2f5
25066 + goto :goto_2eb
25068 - :cond_302
25069 + :cond_2f8
25070 const/4 v2, 0x0
25072 move-object/from16 v0, p0
25073 @@ -7673,14 +7655,14 @@
25075 move-result-object v23
25077 - goto/16 :goto_1b0
25078 + goto/16 :goto_1ab
25080 - :cond_30b
25081 + :cond_301
25082 const/4 v15, 0x0
25084 - goto/16 :goto_1d8
25085 + goto/16 :goto_1d3
25087 - :cond_30e
25088 + :cond_304
25089 const/4 v2, 0x0
25091 move-object/from16 v0, v23
25092 @@ -7693,9 +7675,9 @@
25094 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25096 - goto/16 :goto_1eb
25097 + goto/16 :goto_1e6
25099 - :cond_31d
25100 + :cond_313
25101 const/4 v2, -0x1
25103 move-object/from16 v0, p0
25104 @@ -7704,14 +7686,14 @@
25106 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25108 - goto/16 :goto_1eb
25109 + goto/16 :goto_1e6
25111 - :cond_327
25112 + :cond_31d
25113 move-object/from16 v0, p0
25115 iget v2, v0, Landroid/widget/ListView;->mTouchMode:I
25117 - if-lez v2, :cond_361
25118 + if-lez v2, :cond_357
25120 move-object/from16 v0, p0
25122 @@ -7721,7 +7703,7 @@
25124 move/from16 v0, v24
25126 - if-ge v2, v0, :cond_361
25127 + if-ge v2, v0, :cond_357
25129 move-object/from16 v0, p0
25131 @@ -7741,7 +7723,7 @@
25133 move-result-object v9
25135 - if-eqz v9, :cond_354
25136 + if-eqz v9, :cond_34a
25138 move-object/from16 v0, p0
25140 @@ -7751,21 +7733,21 @@
25142 invoke-virtual {v0, v2, v9}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25144 - :cond_354
25145 - :goto_354
25146 + :cond_34a
25147 + :goto_34a
25148 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25150 move-result v2
25152 - if-eqz v2, :cond_1f3
25153 + if-eqz v2, :cond_1ee
25155 - if-eqz v14, :cond_1f3
25156 + if-eqz v14, :cond_1ee
25158 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25160 - goto/16 :goto_1f3
25161 + goto/16 :goto_1ee
25163 - :cond_361
25164 + :cond_357
25165 const/4 v2, 0x0
25167 move-object/from16 v0, p0
25168 @@ -7777,28 +7759,28 @@
25169 iget-object v2, v0, Landroid/widget/ListView;->mSelectorRect:Landroid/graphics/Rect;
25171 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25172 - :try_end_36d
25173 - .catchall {:try_start_230 .. :try_end_36d} :catchall_125
25174 + :try_end_363
25175 + .catchall {:try_start_12c .. :try_end_363} :catchall_120
25177 - goto :goto_354
25178 + goto :goto_34a
25180 - :pswitch_data_36e
25181 + :pswitch_data_364
25182 .packed-switch 0x1
25183 :pswitch_93
25184 - :pswitch_b1
25185 + :pswitch_ac
25186 :pswitch_93
25187 :pswitch_93
25188 :pswitch_93
25189 .end packed-switch
25191 - :pswitch_data_37c
25192 + :pswitch_data_372
25193 .packed-switch 0x1
25194 - :pswitch_269
25195 - :pswitch_22e
25196 - :pswitch_258
25197 - :pswitch_279
25198 - :pswitch_244
25199 - :pswitch_28d
25200 + :pswitch_25f
25201 + :pswitch_224
25202 + :pswitch_24e
25203 + :pswitch_26f
25204 + :pswitch_23a
25205 + :pswitch_283
25206 .end packed-switch
25207 .end method
25209 diff -Npru stock-framework/smali/android/widget/TextView.smali pdroid-framework/smali/android/widget/TextView.smali
25210 --- stock-framework/smali/android/widget/TextView.smali 2012-05-06 11:56:50.774694508 -0500
25211 +++ pdroid-framework/smali/android/widget/TextView.smali 2012-05-06 12:13:38.823693159 -0500
25212 @@ -5274,18 +5274,18 @@
25213 return v2
25215 :cond_b
25216 - sparse-switch p1, :sswitch_data_ec
25217 + sparse-switch p1, :sswitch_data_e8
25219 :cond_e
25220 iget-object v2, p0, Landroid/widget/TextView;->mInput:Landroid/text/method/KeyListener;
25222 - if-eqz v2, :cond_bb
25223 + if-eqz v2, :cond_b7
25225 invoke-virtual {p0}, Landroid/widget/TextView;->resetErrorChangedFlag()V
25227 const/4 v0, 0x1
25229 - if-eqz p3, :cond_97
25230 + if-eqz p3, :cond_9d
25232 :try_start_18
25233 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25234 @@ -5302,12 +5302,12 @@
25236 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25237 :try_end_28
25238 - .catchall {:try_start_18 .. :try_end_28} :catchall_b6
25239 - .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_b1
25240 + .catchall {:try_start_18 .. :try_end_28} :catchall_94
25241 + .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_99
25243 const/4 v0, 0x0
25245 - if-eqz v1, :cond_94
25246 + if-eqz v1, :cond_9a
25248 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25250 @@ -5433,12 +5433,21 @@
25252 goto/16 :goto_a
25254 - :cond_94
25255 + :catchall_94
25256 + move-exception v2
25258 + invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25260 + throw v2
25262 + :catch_99
25263 + move-exception v2
25265 + :cond_9a
25266 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25268 - :cond_97
25269 - :goto_97
25270 - if-eqz v0, :cond_bb
25271 + :cond_9d
25272 + if-eqz v0, :cond_b7
25274 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25276 @@ -5456,40 +5465,26 @@
25278 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25280 - if-eqz v1, :cond_bb
25281 + if-eqz v1, :cond_b7
25283 move v2, v5
25285 goto/16 :goto_a
25287 - :catch_b1
25288 - move-exception v2
25290 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25292 - goto :goto_97
25294 - :catchall_b6
25295 - move-exception v2
25297 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25299 - throw v2
25301 - :cond_bb
25302 + :cond_b7
25303 iget-object v2, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25305 - if-eqz v2, :cond_e8
25306 + if-eqz v2, :cond_e4
25308 iget-object v2, p0, Landroid/widget/TextView;->mLayout:Landroid/text/Layout;
25310 - if-eqz v2, :cond_e8
25311 + if-eqz v2, :cond_e4
25313 const/4 v0, 0x1
25315 - if-eqz p3, :cond_d7
25316 + if-eqz p3, :cond_d3
25318 - :try_start_c6
25319 + :try_start_c2
25320 iget-object v5, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25322 iget-object v2, p0, Landroid/widget/TextView;->mText:Ljava/lang/CharSequence;
25323 @@ -5497,24 +5492,24 @@
25324 check-cast v2, Landroid/text/Spannable;
25326 invoke-interface {v5, p0, v2, p3}, Landroid/text/method/MovementMethod;->onKeyOther(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
25327 - :try_end_cf
25328 - .catch Ljava/lang/AbstractMethodError; {:try_start_c6 .. :try_end_cf} :catch_d6
25329 + :try_end_cb
25330 + .catch Ljava/lang/AbstractMethodError; {:try_start_c2 .. :try_end_cb} :catch_d2
25332 move-result v1
25334 const/4 v0, 0x0
25336 - if-eqz v1, :cond_d7
25337 + if-eqz v1, :cond_d3
25339 move v2, v4
25341 goto/16 :goto_a
25343 - :catch_d6
25344 + :catch_d2
25345 move-exception v2
25347 - :cond_d7
25348 - if-eqz v0, :cond_e8
25349 + :cond_d3
25350 + if-eqz v0, :cond_e4
25352 iget-object v4, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25354 @@ -5526,20 +5521,20 @@
25356 move-result v2
25358 - if-eqz v2, :cond_e8
25359 + if-eqz v2, :cond_e4
25361 const/4 v2, 0x2
25363 goto/16 :goto_a
25365 - :cond_e8
25366 + :cond_e4
25367 move v2, v3
25369 goto/16 :goto_a
25373 - :sswitch_data_ec
25374 + :sswitch_data_e8
25375 .sparse-switch
25376 0x4 -> :sswitch_8a
25377 0x17 -> :sswitch_68
25378 diff -Npru stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali
25379 --- stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-05-06 11:56:52.906705078 -0500
25380 +++ pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-05-06 12:13:40.987703883 -0500
25381 @@ -4343,13 +4343,14 @@
25383 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->commit()V
25384 :try_end_30
25385 - .catchall {:try_start_10 .. :try_end_30} :catchall_52
25386 + .catchall {:try_start_10 .. :try_end_30} :catchall_4f
25387 .catch Ljava/io/IOException; {:try_start_10 .. :try_end_30} :catch_3c
25389 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25391 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25393 + :goto_35
25394 invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25396 goto :goto_9
25397 @@ -4378,17 +4379,15 @@
25399 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->rollback()V
25400 :try_end_49
25401 - .catchall {:try_start_3d .. :try_end_49} :catchall_52
25402 + .catchall {:try_start_3d .. :try_end_49} :catchall_4f
25404 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25406 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25408 - invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25410 - goto :goto_9
25411 + goto :goto_35
25413 - :catchall_52
25414 + :catchall_4f
25415 move-exception v3
25417 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25418 diff -Npru stock-framework/smali/com/android/internal/telephony/BaseCommands.smali pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali
25419 --- stock-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-05-06 11:56:52.946705275 -0500
25420 +++ pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-05-06 12:13:41.047704178 -0500
25421 @@ -541,8 +541,8 @@
25423 invoke-direct {v6, v7}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
25424 :try_end_a
25425 - .catchall {:try_start_3 .. :try_end_a} :catchall_5e
25426 - .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3d
25427 + .catchall {:try_start_3 .. :try_end_a} :catchall_5b
25428 + .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3a
25430 const/16 v7, 0x800
25432 @@ -561,19 +561,21 @@
25434 invoke-direct {v2, v0, v7, v3}, Ljava/lang/String;-><init>([BII)V
25435 :try_end_1a
25436 - .catchall {:try_start_c .. :try_end_1a} :catchall_67
25437 - .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_6a
25438 + .catchall {:try_start_c .. :try_end_1a} :catchall_66
25439 + .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_69
25441 move-object v1, v2
25443 :cond_1b
25444 - if-eqz v6, :cond_6d
25445 + if-eqz v6, :cond_20
25447 :try_start_1d
25448 invoke-virtual {v6}, Ljava/io/FileInputStream;->close()V
25449 :try_end_20
25450 - .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_3a
25451 + .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_64
25453 + :cond_20
25454 + :goto_20
25455 move-object v5, v6
25457 :cond_21
25458 @@ -603,17 +605,10 @@
25459 return-object v1
25461 :catch_3a
25462 - move-exception v7
25464 - move-object v5, v6
25466 - goto :goto_21
25468 - :catch_3d
25469 move-exception v4
25471 - :goto_3e
25472 - :try_start_3e
25473 + :goto_3b
25474 + :try_start_3b
25475 const-string v7, "RILB"
25477 new-instance v8, Ljava/lang/StringBuilder;
25478 @@ -635,61 +630,61 @@
25479 move-result-object v8
25481 invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25482 - :try_end_56
25483 - .catchall {:try_start_3e .. :try_end_56} :catchall_5e
25484 + :try_end_53
25485 + .catchall {:try_start_3b .. :try_end_53} :catchall_5b
25487 if-eqz v5, :cond_21
25489 - :try_start_58
25490 + :try_start_55
25491 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25492 - :try_end_5b
25493 - .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c
25494 + :try_end_58
25495 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_59
25497 goto :goto_21
25499 - :catch_5c
25500 + :catch_59
25501 move-exception v7
25503 goto :goto_21
25505 - :catchall_5e
25506 + :catchall_5b
25507 move-exception v7
25509 - :goto_5f
25510 - if-eqz v5, :cond_64
25511 + :goto_5c
25512 + if-eqz v5, :cond_61
25514 - :try_start_61
25515 + :try_start_5e
25516 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25517 - :try_end_64
25518 - .catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
25519 + :try_end_61
25520 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
25522 - :cond_64
25523 - :goto_64
25524 + :cond_61
25525 + :goto_61
25526 throw v7
25528 - :catch_65
25529 + :catch_62
25530 move-exception v8
25532 - goto :goto_64
25533 + goto :goto_61
25535 - :catchall_67
25536 + :catch_64
25537 move-exception v7
25539 - move-object v5, v6
25540 + goto :goto_20
25542 - goto :goto_5f
25544 - :catch_6a
25545 - move-exception v4
25546 + :catchall_66
25547 + move-exception v7
25549 move-object v5, v6
25551 - goto :goto_3e
25552 + goto :goto_5c
25554 + :catch_69
25555 + move-exception v4
25557 - :cond_6d
25558 move-object v5, v6
25560 - goto :goto_21
25561 + goto :goto_3b
25562 .end method
25565 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali
25566 --- stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-05-06 11:56:53.202706557 -0500
25567 +++ pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-05-06 12:13:41.355705706 -0500
25568 @@ -666,8 +666,8 @@
25570 invoke-static {v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25571 :try_end_34
25572 - .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_20c
25573 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_207
25574 + .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_209
25575 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_204
25577 move-object/from16 v15, v16
25579 @@ -872,7 +872,7 @@
25580 :try_start_f8
25581 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25582 :try_end_fb
25583 - .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_202
25584 + .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_15c
25586 :cond_fb
25587 :goto_fb
25588 @@ -1058,7 +1058,7 @@
25589 :try_start_190
25590 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25591 :try_end_193
25592 - .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_205
25593 + .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_202
25595 :cond_193
25596 :goto_193
25597 @@ -1184,23 +1184,18 @@
25598 goto/16 :goto_96
25600 :catch_202
25601 - move-exception v2
25603 - goto/16 :goto_fb
25605 - :catch_205
25606 move-exception v18
25608 goto :goto_193
25610 - :catch_207
25611 + :catch_204
25612 move-exception v9
25614 move-object/from16 v15, v16
25616 goto/16 :goto_10a
25618 - :catch_20c
25619 + :catch_209
25620 move-exception v9
25622 move-object/from16 v15, v16
25623 diff -Npru stock-framework/smali/com/android/internal/telephony/IccRecords.smali pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali
25624 --- stock-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-05-06 11:56:53.034705716 -0500
25625 +++ pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-05-06 12:13:41.131704598 -0500
25626 @@ -260,7 +260,7 @@
25628 iget v3, p1, Landroid/os/Message;->what:I
25630 - packed-switch v3, :pswitch_data_70
25631 + packed-switch v3, :pswitch_data_6c
25633 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V
25635 @@ -327,7 +327,7 @@
25637 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25638 :try_end_47
25639 - .catchall {:try_start_9 .. :try_end_47} :catchall_6a
25640 + .catchall {:try_start_9 .. :try_end_47} :catchall_67
25641 .catch Ljava/lang/RuntimeException; {:try_start_9 .. :try_end_47} :catch_4f
25643 :goto_47
25644 @@ -339,7 +339,7 @@
25645 :try_start_4b
25646 invoke-interface {v2, v0}, Lcom/android/internal/telephony/IccRecords$IccRecordLoaded;->onRecordLoaded(Landroid/os/AsyncResult;)V
25647 :try_end_4e
25648 - .catchall {:try_start_4b .. :try_end_4e} :catchall_6a
25649 + .catchall {:try_start_4b .. :try_end_4e} :catchall_67
25650 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_4e} :catch_4f
25652 goto :goto_47
25653 @@ -368,22 +368,18 @@
25655 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25656 :try_end_66
25657 - .catchall {:try_start_50 .. :try_end_66} :catchall_6a
25658 + .catchall {:try_start_50 .. :try_end_66} :catchall_67
25660 - invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25662 - goto :goto_8
25663 + goto :goto_47
25665 - :catchall_6a
25666 + :catchall_67
25667 move-exception v3
25669 invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25671 throw v3
25673 - nop
25675 - :pswitch_data_70
25676 + :pswitch_data_6c
25677 .packed-switch 0x64
25678 :pswitch_9
25679 .end packed-switch
25680 diff -Npru stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali
25681 --- stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-05-06 11:56:53.086705980 -0500
25682 +++ pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-05-06 12:13:41.183704854 -0500
25683 @@ -1777,14 +1777,15 @@
25685 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
25686 :try_end_9b
25687 - .catchall {:try_start_5 .. :try_end_9b} :catchall_1a2
25688 - .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_192
25689 + .catchall {:try_start_5 .. :try_end_9b} :catchall_19c
25690 + .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_18f
25692 :cond_9b
25693 const/4 v3, 0x1
25695 if-eqz v9, :cond_a1
25697 + :goto_9e
25698 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25700 :cond_a1
25701 @@ -1829,7 +1830,7 @@
25703 add-int/lit8 v3, p5, -0x1
25705 - if-eq v10, v3, :cond_130
25706 + if-eq v10, v3, :cond_12d
25708 new-instance v23, Landroid/content/ContentValues;
25710 @@ -1919,20 +1920,14 @@
25711 move-object/from16 v0, v23
25713 invoke-virtual {v3, v4, v0}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
25714 - :try_end_128
25715 - .catchall {:try_start_a2 .. :try_end_128} :catchall_1a2
25716 - .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_128} :catch_192
25718 const/4 v3, 0x1
25720 if-eqz v9, :cond_a1
25722 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
25724 - goto/16 :goto_a1
25725 + goto/16 :goto_9e
25727 - :cond_130
25728 - :try_start_130
25729 + :cond_12d
25730 move/from16 v0, p5
25732 new-array v0, v0, [[B
25733 @@ -1941,8 +1936,8 @@
25735 const/4 v15, 0x0
25737 - :goto_137
25738 - if-ge v15, v10, :cond_161
25739 + :goto_134
25740 + if-ge v15, v10, :cond_15e
25742 invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
25744 @@ -1952,11 +1947,11 @@
25746 move-result v11
25748 - if-nez p9, :cond_145
25749 + if-nez p9, :cond_142
25751 add-int/lit8 v11, v11, -0x1
25753 - :cond_145
25754 + :cond_142
25755 const/4 v3, 0x0
25757 invoke-interface {v9, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
25758 @@ -1969,7 +1964,7 @@
25760 aput-object v3, v20, v11
25762 - if-nez v11, :cond_15e
25763 + if-nez v11, :cond_15b
25765 const/4 v3, 0x2
25767 @@ -1977,7 +1972,7 @@
25769 move-result v3
25771 - if-nez v3, :cond_15e
25772 + if-nez v3, :cond_15b
25774 const/4 v3, 0x2
25776 @@ -1985,17 +1980,17 @@
25778 move-result p8
25780 - :cond_15e
25781 + :cond_15b
25782 add-int/lit8 v15, v15, 0x1
25784 - goto :goto_137
25785 + goto :goto_134
25787 - :cond_161
25788 - if-eqz p9, :cond_18d
25789 + :cond_15e
25790 + if-eqz p9, :cond_18a
25792 aput-object p1, v20, p4
25794 - :goto_165
25795 + :goto_162
25796 move-object/from16 v0, p0
25798 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mResolver:Landroid/content/ContentResolver;
25799 @@ -2003,16 +1998,16 @@
25800 sget-object v4, Lcom/android/internal/telephony/SMSDispatcher;->mRawUri:Landroid/net/Uri;
25802 invoke-virtual {v3, v4, v6, v7}, Landroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
25803 - :try_end_16e
25804 - .catchall {:try_start_130 .. :try_end_16e} :catchall_1a2
25805 - .catch Landroid/database/SQLException; {:try_start_130 .. :try_end_16e} :catch_192
25806 + :try_end_16b
25807 + .catchall {:try_start_a2 .. :try_end_16b} :catchall_19c
25808 + .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_16b} :catch_18f
25810 - if-eqz v9, :cond_173
25811 + if-eqz v9, :cond_170
25813 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25815 - :cond_173
25816 - if-eqz p9, :cond_1d1
25817 + :cond_170
25818 + if-eqz p9, :cond_1cb
25820 new-instance v19, Ljava/io/ByteArrayOutputStream;
25822 @@ -2020,10 +2015,10 @@
25824 const/4 v15, 0x0
25826 - :goto_17b
25827 + :goto_178
25828 move/from16 v0, p5
25830 - if-ge v15, v0, :cond_1a9
25831 + if-ge v15, v0, :cond_1a3
25833 aget-object v3, v20, v15
25835 @@ -2039,50 +2034,48 @@
25837 add-int/lit8 v15, v15, 0x1
25839 - goto :goto_17b
25840 + goto :goto_178
25842 - :cond_18d
25843 + :cond_18a
25844 add-int/lit8 v3, p4, -0x1
25846 - :try_start_18f
25847 + :try_start_18c
25848 aput-object p1, v20, v3
25849 - :try_end_191
25850 - .catchall {:try_start_18f .. :try_end_191} :catchall_1a2
25851 - .catch Landroid/database/SQLException; {:try_start_18f .. :try_end_191} :catch_192
25852 + :try_end_18e
25853 + .catchall {:try_start_18c .. :try_end_18e} :catchall_19c
25854 + .catch Landroid/database/SQLException; {:try_start_18c .. :try_end_18e} :catch_18f
25856 - goto :goto_165
25857 + goto :goto_162
25859 - :catch_192
25860 + :catch_18f
25861 move-exception v14
25863 - :try_start_193
25864 + :try_start_190
25865 const-string v3, "SMS"
25867 const-string v4, "Can\'t access multipart SMS database"
25869 invoke-static {v3, v4, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
25870 - :try_end_19a
25871 - .catchall {:try_start_193 .. :try_end_19a} :catchall_1a2
25872 + :try_end_197
25873 + .catchall {:try_start_190 .. :try_end_197} :catchall_19c
25875 const/4 v3, 0x2
25877 if-eqz v9, :cond_a1
25879 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
25881 - goto/16 :goto_a1
25882 + goto/16 :goto_9e
25884 - :catchall_1a2
25885 + :catchall_19c
25886 move-exception v3
25888 - if-eqz v9, :cond_1a8
25889 + if-eqz v9, :cond_1a2
25891 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25893 - :cond_1a8
25894 + :cond_1a2
25895 throw v3
25897 - :cond_1a9
25898 + :cond_1a3
25899 invoke-virtual/range {v19 .. v19}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
25901 move-result-object v13
25902 @@ -2091,7 +2084,7 @@
25904 move/from16 v0, p8
25906 - if-ne v0, v3, :cond_1bd
25907 + if-ne v0, v3, :cond_1b7
25909 move-object/from16 v0, p0
25911 @@ -2103,7 +2096,7 @@
25913 goto/16 :goto_a1
25915 - :cond_1bd
25916 + :cond_1b7
25917 const/4 v3, 0x1
25919 new-array v0, v3, [[B
25920 @@ -2126,18 +2119,18 @@
25922 goto/16 :goto_a1
25924 - :cond_1d1
25925 + :cond_1cb
25926 const/4 v3, -0x1
25928 move/from16 v0, p8
25930 - if-eq v0, v3, :cond_218
25931 + if-eq v0, v3, :cond_212
25933 const/16 v3, 0xb84
25935 move/from16 v0, p8
25937 - if-ne v0, v3, :cond_20c
25938 + if-ne v0, v3, :cond_206
25940 new-instance v19, Ljava/io/ByteArrayOutputStream;
25942 @@ -2145,10 +2138,10 @@
25944 const/4 v15, 0x0
25946 - :goto_1e2
25947 + :goto_1dc
25948 move/from16 v0, p5
25950 - if-ge v15, v0, :cond_1fe
25951 + if-ge v15, v0, :cond_1f8
25953 aget-object v3, v20, v15
25955 @@ -2174,9 +2167,9 @@
25957 add-int/lit8 v15, v15, 0x1
25959 - goto :goto_1e2
25960 + goto :goto_1dc
25962 - :cond_1fe
25963 + :cond_1f8
25964 move-object/from16 v0, p0
25966 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
25967 @@ -2191,7 +2184,7 @@
25969 goto/16 :goto_a1
25971 - :cond_20c
25972 + :cond_206
25973 move-object/from16 v0, p0
25975 move-object/from16 v1, v20
25976 @@ -2200,19 +2193,19 @@
25978 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPortAddressedPdus([[BI)V
25980 - :goto_215
25981 + :goto_20f
25982 const/4 v3, -0x1
25984 goto/16 :goto_a1
25986 - :cond_218
25987 + :cond_212
25988 move-object/from16 v0, p0
25990 move-object/from16 v1, v20
25992 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPdus([[B)V
25994 - goto :goto_215
25995 + goto :goto_20f
25996 .end method
25998 .method protected abstract sendData(Ljava/lang/String;Ljava/lang/String;I[BLandroid/app/PendingIntent;Landroid/app/PendingIntent;)V