Fixed pdroid security hole (ported from OpenPDroid)
[auto-patcher.git] / patches / pdroid / 4.0 / aokp / 20120702 / framework.patch
blob09efefecd77176bea996689de8942742a2313950
1 diff -Npru stock_framework/smali/android/accounts/AccountAuthenticatorCache.smali pdroid_framework/smali/android/accounts/AccountAuthenticatorCache.smali
2 --- stock_framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-07-02 10:16:11.401578064 -0700
3 +++ pdroid_framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-07-02 10:16:44.874550679 -0700
4 @@ -136,7 +136,7 @@
6 invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
7 :try_end_2c
8 - .catchall {:try_start_7 .. :try_end_2c} :catchall_3e
9 + .catchall {:try_start_7 .. :try_end_2c} :catchall_3b
11 move-result v0
13 @@ -144,9 +144,9 @@
15 const/4 v0, 0x0
17 + :goto_30
18 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
20 - :goto_33
21 return-object v0
23 :cond_34
24 @@ -157,13 +157,11 @@
26 invoke-direct/range {v0 .. v7}, Landroid/accounts/AuthenticatorDescription;-><init>(Ljava/lang/String;Ljava/lang/String;IIIIZ)V
27 :try_end_3a
28 - .catchall {:try_start_34 .. :try_end_3a} :catchall_3e
29 + .catchall {:try_start_34 .. :try_end_3a} :catchall_3b
31 - invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
33 - goto :goto_33
34 + goto :goto_30
36 - :catchall_3e
37 + :catchall_3b
38 move-exception v0
40 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
41 diff -Npru stock_framework/smali/android/accounts/AccountManager$AmsTask.smali pdroid_framework/smali/android/accounts/AccountManager$AmsTask.smali
42 --- stock_framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-07-02 10:16:11.467593787 -0700
43 +++ pdroid_framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-07-02 10:16:44.931564259 -0700
44 @@ -133,102 +133,102 @@
46 :try_start_e
47 invoke-virtual {p0}, Landroid/accounts/AccountManager$AmsTask;->get()Ljava/lang/Object;
48 + :try_end_11
49 + .catchall {:try_start_e .. :try_end_11} :catchall_2a
50 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_23
51 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_72
52 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_60
53 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_2f
55 move-result-object v2
57 + :try_start_12
58 check-cast v2, Landroid/os/Bundle;
59 :try_end_14
60 - .catchall {:try_start_e .. :try_end_14} :catchall_2d
61 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_14} :catch_26
62 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_14} :catch_32
63 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_14} :catch_3c
64 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_14} :catch_41
65 + .catchall {:try_start_12 .. :try_end_14} :catchall_2a
66 + .catch Ljava/util/concurrent/CancellationException; {:try_start_12 .. :try_end_14} :catch_23
67 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_12 .. :try_end_14} :catch_72
68 + .catch Ljava/lang/InterruptedException; {:try_start_12 .. :try_end_14} :catch_6a
69 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_12 .. :try_end_14} :catch_2f
71 + :goto_14
72 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
74 - :goto_17
75 return-object v2
77 :cond_18
78 :try_start_18
79 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
80 + :try_end_1b
81 + .catchall {:try_start_18 .. :try_end_1b} :catchall_2a
82 + .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_1b} :catch_23
83 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_1b} :catch_72
84 + .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_1b} :catch_6c
85 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_1b} :catch_2f
87 move-result-wide v2
89 + :try_start_1c
90 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$AmsTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
91 + :try_end_1f
92 + .catchall {:try_start_1c .. :try_end_1f} :catchall_2a
93 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1c .. :try_end_1f} :catch_23
94 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1c .. :try_end_1f} :catch_72
95 + .catch Ljava/lang/InterruptedException; {:try_start_1c .. :try_end_1f} :catch_6e
96 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1c .. :try_end_1f} :catch_2f
98 move-result-object v2
100 + :try_start_20
101 check-cast v2, Landroid/os/Bundle;
102 :try_end_22
103 - .catchall {:try_start_18 .. :try_end_22} :catchall_2d
104 - .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_22} :catch_26
105 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_22} :catch_32
106 - .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_22} :catch_3c
107 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_22} :catch_41
108 + .catchall {:try_start_20 .. :try_end_22} :catchall_2a
109 + .catch Ljava/util/concurrent/CancellationException; {:try_start_20 .. :try_end_22} :catch_23
110 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_20 .. :try_end_22} :catch_72
111 + .catch Ljava/lang/InterruptedException; {:try_start_20 .. :try_end_22} :catch_70
112 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_20 .. :try_end_22} :catch_2f
114 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
116 - goto :goto_17
117 + goto :goto_14
119 - :catch_26
120 + :catch_23
121 move-exception v1
123 - :try_start_27
124 + :try_start_24
125 new-instance v2, Landroid/accounts/OperationCanceledException;
127 invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
129 throw v2
130 - :try_end_2d
131 - .catchall {:try_start_27 .. :try_end_2d} :catchall_2d
132 + :try_end_2a
133 + .catchall {:try_start_24 .. :try_end_2a} :catchall_2a
135 - :catchall_2d
136 + :catchall_2a
137 move-exception v2
139 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
141 throw v2
143 - :catch_32
144 - move-exception v2
146 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
148 - :goto_36
149 - new-instance v2, Landroid/accounts/OperationCanceledException;
151 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
153 - throw v2
155 - :catch_3c
156 - move-exception v2
158 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
160 - goto :goto_36
162 - :catch_41
163 + :catch_2f
164 move-exception v1
166 - :try_start_42
167 + :try_start_30
168 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
170 move-result-object v0
172 instance-of v2, v0, Ljava/io/IOException;
174 - if-eqz v2, :cond_4d
175 + if-eqz v2, :cond_3b
177 check-cast v0, Ljava/io/IOException;
179 throw v0
181 - :cond_4d
182 + :cond_3b
183 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
185 - if-eqz v2, :cond_57
186 + if-eqz v2, :cond_45
188 new-instance v2, Landroid/accounts/AuthenticatorException;
190 @@ -236,41 +236,78 @@
192 throw v2
194 - :cond_57
195 + :cond_45
196 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
198 - if-eqz v2, :cond_5e
199 + if-eqz v2, :cond_4c
201 check-cast v0, Landroid/accounts/AuthenticatorException;
203 throw v0
205 - :cond_5e
206 + :cond_4c
207 instance-of v2, v0, Ljava/lang/RuntimeException;
209 - if-eqz v2, :cond_65
210 + if-eqz v2, :cond_53
212 check-cast v0, Ljava/lang/RuntimeException;
214 throw v0
216 - :cond_65
217 + :cond_53
218 instance-of v2, v0, Ljava/lang/Error;
220 - if-eqz v2, :cond_6c
221 + if-eqz v2, :cond_5a
223 check-cast v0, Ljava/lang/Error;
225 throw v0
227 - :cond_6c
228 + :cond_5a
229 new-instance v2, Ljava/lang/IllegalStateException;
231 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
233 throw v2
234 - :try_end_72
235 - .catchall {:try_start_42 .. :try_end_72} :catchall_2d
236 + :try_end_60
237 + .catchall {:try_start_30 .. :try_end_60} :catchall_2a
239 + :catch_60
240 + move-exception v2
242 + :goto_61
243 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
245 + new-instance v2, Landroid/accounts/OperationCanceledException;
247 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
249 + throw v2
251 + :catch_6a
252 + move-exception v2
254 + goto :goto_61
256 + :catch_6c
257 + move-exception v2
259 + goto :goto_61
261 + :catch_6e
262 + move-exception v2
264 + goto :goto_61
266 + :catch_70
267 + move-exception v2
269 + goto :goto_61
271 + :catch_72
272 + move-exception v2
274 + goto :goto_61
275 .end method
278 diff -Npru stock_framework/smali/android/accounts/AccountManager$Future2Task.smali pdroid_framework/smali/android/accounts/AccountManager$Future2Task.smali
279 --- stock_framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-07-02 10:16:11.443588070 -0700
280 +++ pdroid_framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-07-02 10:16:44.911559494 -0700
281 @@ -101,95 +101,74 @@
282 :try_start_e
283 invoke-virtual {p0}, Landroid/accounts/AccountManager$Future2Task;->get()Ljava/lang/Object;
284 :try_end_11
285 - .catchall {:try_start_e .. :try_end_11} :catchall_42
286 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_22
287 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_2c
288 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_31
289 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_36
290 + .catchall {:try_start_e .. :try_end_11} :catchall_2b
291 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_69
292 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_63
293 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_55
294 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_1f
296 move-result-object v2
298 + :goto_12
299 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
301 - :goto_15
302 return-object v2
304 :cond_16
305 :try_start_16
306 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
307 + :try_end_19
308 + .catchall {:try_start_16 .. :try_end_19} :catchall_2b
309 + .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_19} :catch_69
310 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_19} :catch_65
311 + .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_19} :catch_5f
312 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_19} :catch_1f
314 move-result-wide v2
316 + :try_start_1a
317 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$Future2Task;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
318 :try_end_1d
319 - .catchall {:try_start_16 .. :try_end_1d} :catchall_42
320 - .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_1d} :catch_22
321 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_1d} :catch_2c
322 - .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_1d} :catch_31
323 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_1d} :catch_36
324 + .catchall {:try_start_1a .. :try_end_1d} :catchall_2b
325 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_69
326 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1a .. :try_end_1d} :catch_67
327 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1a .. :try_end_1d} :catch_61
328 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1a .. :try_end_1d} :catch_1f
330 move-result-object v2
332 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
334 - goto :goto_15
336 - :catch_22
337 - move-exception v2
338 + goto :goto_12
340 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
342 - :goto_26
343 - new-instance v2, Landroid/accounts/OperationCanceledException;
345 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
347 - throw v2
349 - :catch_2c
350 - move-exception v2
352 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
354 - goto :goto_26
356 - :catch_31
357 - move-exception v2
359 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
361 - goto :goto_26
363 - :catch_36
364 + :catch_1f
365 move-exception v1
367 - :try_start_37
368 + :try_start_20
369 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
371 move-result-object v0
373 instance-of v2, v0, Ljava/io/IOException;
375 - if-eqz v2, :cond_47
376 + if-eqz v2, :cond_30
378 check-cast v0, Ljava/io/IOException;
380 throw v0
381 - :try_end_42
382 - .catchall {:try_start_37 .. :try_end_42} :catchall_42
383 + :try_end_2b
384 + .catchall {:try_start_20 .. :try_end_2b} :catchall_2b
386 - :catchall_42
387 + :catchall_2b
388 move-exception v2
390 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
392 throw v2
394 - :cond_47
395 - :try_start_47
396 + :cond_30
397 + :try_start_30
398 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
400 - if-eqz v2, :cond_51
401 + if-eqz v2, :cond_3a
403 new-instance v2, Landroid/accounts/AuthenticatorException;
405 @@ -197,41 +176,83 @@
407 throw v2
409 - :cond_51
410 + :cond_3a
411 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
413 - if-eqz v2, :cond_58
414 + if-eqz v2, :cond_41
416 check-cast v0, Landroid/accounts/AuthenticatorException;
418 throw v0
420 - :cond_58
421 + :cond_41
422 instance-of v2, v0, Ljava/lang/RuntimeException;
424 - if-eqz v2, :cond_5f
425 + if-eqz v2, :cond_48
427 check-cast v0, Ljava/lang/RuntimeException;
429 throw v0
431 - :cond_5f
432 + :cond_48
433 instance-of v2, v0, Ljava/lang/Error;
435 - if-eqz v2, :cond_66
436 + if-eqz v2, :cond_4f
438 check-cast v0, Ljava/lang/Error;
440 throw v0
442 - :cond_66
443 + :cond_4f
444 new-instance v2, Ljava/lang/IllegalStateException;
446 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
448 throw v2
449 - :try_end_6c
450 - .catchall {:try_start_47 .. :try_end_6c} :catchall_42
451 + :try_end_55
452 + .catchall {:try_start_30 .. :try_end_55} :catchall_2b
454 + :catch_55
455 + move-exception v2
457 + :goto_56
458 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
460 + new-instance v2, Landroid/accounts/OperationCanceledException;
462 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
464 + throw v2
466 + :catch_5f
467 + move-exception v2
469 + goto :goto_56
471 + :catch_61
472 + move-exception v2
474 + goto :goto_56
476 + :catch_63
477 + move-exception v2
479 + goto :goto_56
481 + :catch_65
482 + move-exception v2
484 + goto :goto_56
486 + :catch_67
487 + move-exception v2
489 + goto :goto_56
491 + :catch_69
492 + move-exception v2
494 + goto :goto_56
495 .end method
498 diff -Npru stock_framework/smali/android/accounts/AccountManagerService.smali pdroid_framework/smali/android/accounts/AccountManagerService.smali
499 --- stock_framework/smali/android/accounts/AccountManagerService.smali 2012-07-02 10:16:11.824678837 -0700
500 +++ pdroid_framework/smali/android/accounts/AccountManagerService.smali 2012-07-02 10:16:45.302652646 -0700
501 @@ -1502,23 +1502,21 @@
503 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
504 :try_end_2a
505 - .catchall {:try_start_20 .. :try_end_2a} :catchall_35
506 + .catchall {:try_start_20 .. :try_end_2a} :catchall_32
508 move-result-wide v0
510 + :goto_2b
511 invoke-interface {v8}, Landroid/database/Cursor;->close()V
513 - :goto_2e
514 return-wide v0
516 :cond_2f
517 const-wide/16 v0, -0x1
519 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
521 - goto :goto_2e
522 + goto :goto_2b
524 - :catchall_35
525 + :catchall_32
526 move-exception v0
528 invoke-interface {v8}, Landroid/database/Cursor;->close()V
529 @@ -1713,23 +1711,21 @@
531 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
532 :try_end_45
533 - .catchall {:try_start_3b .. :try_end_45} :catchall_50
534 + .catchall {:try_start_3b .. :try_end_45} :catchall_4d
536 move-result-wide v0
538 + :goto_46
539 invoke-interface {v8}, Landroid/database/Cursor;->close()V
541 - :goto_49
542 return-wide v0
544 :cond_4a
545 const-wide/16 v0, -0x1
547 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
549 - goto :goto_49
550 + goto :goto_46
552 - :catchall_50
553 + :catchall_4d
554 move-exception v0
556 invoke-interface {v8}, Landroid/database/Cursor;->close()V
557 @@ -4581,7 +4577,7 @@
558 const/16 v16, 0x1
560 :goto_68
561 - if-eqz v16, :cond_ba
562 + if-eqz v16, :cond_b3
564 const-string v4, "accounts"
566 @@ -4609,7 +4605,7 @@
568 move-result v4
570 - if-eqz v4, :cond_b3
571 + if-eqz v4, :cond_175
573 new-instance v4, Ljava/lang/StringBuilder;
575 @@ -4679,20 +4675,9 @@
576 goto :goto_68
578 :cond_b3
579 - if-eqz v14, :cond_b8
581 - :try_start_b5
582 - invoke-interface {v14}, Landroid/database/Cursor;->close()V
584 - :cond_b8
585 - :goto_b8
586 - monitor-exit v21
588 - goto :goto_42
590 - :cond_ba
591 const/4 v4, 0x0
593 + :try_start_b4
594 move-object/from16 v0, p0
596 invoke-virtual {v0, v4}, Landroid/accounts/AccountManagerService;->getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
597 @@ -4731,10 +4716,10 @@
599 const/4 v15, 0x0
601 - :goto_df
602 + :goto_d8
603 move/from16 v0, v17
605 - if-ge v15, v0, :cond_100
606 + if-ge v15, v0, :cond_f9
608 aget-object v11, v13, v15
610 @@ -4762,9 +4747,9 @@
612 add-int/lit8 v15, v15, 0x1
614 - goto :goto_df
615 + goto :goto_d8
617 - :cond_100
618 + :cond_f9
619 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
621 move-object/from16 v0, p0
622 @@ -4772,10 +4757,10 @@
623 iget-object v5, v0, Landroid/accounts/AccountManagerService;->mSessions:Ljava/util/LinkedHashMap;
625 monitor-enter v5
626 - :try_end_108
627 - .catchall {:try_start_b5 .. :try_end_108} :catchall_ad
628 + :try_end_101
629 + .catchall {:try_start_b4 .. :try_end_101} :catchall_ad
631 - :try_start_108
632 + :try_start_101
633 invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
635 move-result-wide v18
636 @@ -4822,12 +4807,12 @@
638 move-result-object v15
640 - :goto_138
641 + :goto_131
642 invoke-interface {v15}, Ljava/util/Iterator;->hasNext()Z
644 move-result v4
646 - if-eqz v4, :cond_168
647 + if-eqz v4, :cond_161
649 invoke-interface {v15}, Ljava/util/Iterator;->next()Ljava/lang/Object;
651 @@ -4865,27 +4850,27 @@
653 invoke-virtual {v0, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
655 - goto :goto_138
656 + goto :goto_131
658 - :catchall_165
659 + :catchall_15e
660 move-exception v4
662 monitor-exit v5
663 - :try_end_167
664 - .catchall {:try_start_108 .. :try_end_167} :catchall_165
665 + :try_end_160
666 + .catchall {:try_start_101 .. :try_end_160} :catchall_15e
668 - :try_start_167
669 + :try_start_160
670 throw v4
671 - :try_end_168
672 - .catchall {:try_start_167 .. :try_end_168} :catchall_ad
673 + :try_end_161
674 + .catchall {:try_start_160 .. :try_end_161} :catchall_ad
676 - :cond_168
677 - :try_start_168
678 + :cond_161
679 + :try_start_161
680 monitor-exit v5
681 - :try_end_169
682 - .catchall {:try_start_168 .. :try_end_169} :catchall_165
683 + :try_end_162
684 + .catchall {:try_start_161 .. :try_end_162} :catchall_15e
686 - :try_start_169
687 + :try_start_162
688 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
690 move-object/from16 v0, p0
691 @@ -4899,10 +4884,21 @@
692 move-object/from16 v2, p3
694 invoke-interface {v4, v0, v1, v2}, Landroid/accounts/IAccountAuthenticatorCache;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
695 - :try_end_179
696 - .catchall {:try_start_169 .. :try_end_179} :catchall_ad
698 - goto/16 :goto_b8
699 + :cond_172
700 + :goto_172
701 + monitor-exit v21
703 + goto/16 :goto_42
705 + :cond_175
706 + if-eqz v14, :cond_172
708 + invoke-interface {v14}, Landroid/database/Cursor;->close()V
709 + :try_end_17a
710 + .catchall {:try_start_162 .. :try_end_17a} :catchall_ad
712 + goto :goto_172
713 .end method
715 .method public editProperties(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;Z)V
716 @@ -5440,9 +5436,9 @@
717 :try_end_8b
718 .catchall {:try_start_7e .. :try_end_8b} :catchall_92
720 + :goto_8b
721 invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
723 - :goto_8e
724 return-void
726 :catchall_8f
727 @@ -5475,9 +5471,7 @@
728 :try_end_9f
729 .catchall {:try_start_97 .. :try_end_9f} :catchall_92
731 - invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
733 - goto :goto_8e
734 + goto :goto_8b
735 .end method
737 .method protected getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
738 @@ -5899,11 +5893,11 @@
740 invoke-direct {v0, v1, v2}, Landroid/accounts/AccountManagerService;->onResult(Landroid/accounts/IAccountManagerResponse;Landroid/os/Bundle;)V
741 :try_end_12a
742 - .catchall {:try_start_f1 .. :try_end_12a} :catchall_152
743 + .catchall {:try_start_f1 .. :try_end_12a} :catchall_14f
745 + :goto_12a
746 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
748 - :goto_12d
749 return-void
751 :cond_12e
752 @@ -5947,13 +5941,11 @@
754 invoke-virtual {v3}, Landroid/accounts/AccountManagerService$3;->bind()V
755 :try_end_14e
756 - .catchall {:try_start_135 .. :try_end_14e} :catchall_152
757 + .catchall {:try_start_135 .. :try_end_14e} :catchall_14f
759 - invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
761 - goto :goto_12d
762 + goto :goto_12a
764 - :catchall_152
765 + :catchall_14f
766 move-exception v3
768 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
769 @@ -6119,7 +6111,7 @@
771 move-result v7
773 - if-eqz v7, :cond_5d
774 + if-eqz v7, :cond_62
776 invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
778 @@ -6133,23 +6125,23 @@
780 aput-object v7, v6, v2
781 :try_end_5a
782 - .catchall {:try_start_37 .. :try_end_5a} :catchall_61
783 + .catchall {:try_start_37 .. :try_end_5a} :catchall_5d
785 add-int/lit8 v2, v2, 0x1
787 goto :goto_48
789 - :cond_5d
790 - invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
792 - return-object v6
794 - :catchall_61
795 + :catchall_5d
796 move-exception v7
798 invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
800 throw v7
802 + :cond_62
803 + invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
805 + return-object v6
806 .end method
808 .method public getPassword(Landroid/accounts/Account;)Ljava/lang/String;
809 diff -Npru stock_framework/smali/android/app/ActivityThread.smali pdroid_framework/smali/android/app/ActivityThread.smali
810 --- stock_framework/smali/android/app/ActivityThread.smali 2012-07-02 10:16:12.677882052 -0700
811 +++ pdroid_framework/smali/android/app/ActivityThread.smali 2012-07-02 10:16:46.051831088 -0700
812 @@ -4082,9 +4082,9 @@
814 sget-object v8, Landroid/app/ActivityThread;->sCurrentBroadcastIntent:Ljava/lang/ThreadLocal;
816 + :goto_54
817 invoke-virtual {v8, v11}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
819 - :goto_57
820 invoke-virtual {v7}, Landroid/content/BroadcastReceiver;->getPendingResult()Landroid/content/BroadcastReceiver$PendingResult;
822 move-result-object v8
823 @@ -4205,9 +4205,7 @@
824 :cond_c6
825 sget-object v8, Landroid/app/ActivityThread;->sCurrentBroadcastIntent:Ljava/lang/ThreadLocal;
827 - invoke-virtual {v8, v11}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
829 - goto :goto_57
830 + goto :goto_54
831 .end method
833 .method private handleRelaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;)V
834 @@ -10122,7 +10120,7 @@
835 .method final handleDumpHeap(ZLandroid/app/ActivityThread$DumpHeapData;)V
836 .registers 7
838 - if-eqz p1, :cond_5c
839 + if-eqz p1, :cond_4a
841 :try_start_2
842 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->path:Ljava/lang/String;
843 @@ -10135,15 +10133,15 @@
845 invoke-static {v1, v2}, Landroid/os/Debug;->dumpHprofData(Ljava/lang/String;Ljava/io/FileDescriptor;)V
846 :try_end_d
847 - .catchall {:try_start_2 .. :try_end_d} :catchall_4c
848 - .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_1c
849 + .catchall {:try_start_2 .. :try_end_d} :catchall_43
850 + .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_13
852 :try_start_d
853 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
855 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
856 :try_end_12
857 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_13
858 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_5d
860 :goto_12
861 return-void
862 @@ -10151,18 +10149,7 @@
863 :catch_13
864 move-exception v0
866 - const-string v1, "ActivityThread"
868 - const-string v2, "Failure closing profile fd"
870 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
872 - goto :goto_12
874 - :catch_1c
875 - move-exception v0
877 - :try_start_1d
878 + :try_start_14
879 const-string v1, "ActivityThread"
881 new-instance v2, Ljava/lang/StringBuilder;
882 @@ -10192,43 +10179,55 @@
883 move-result-object v2
885 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
886 - :try_end_3d
887 - .catchall {:try_start_1d .. :try_end_3d} :catchall_4c
888 + :try_end_34
889 + .catchall {:try_start_14 .. :try_end_34} :catchall_43
891 - :try_start_3d
892 + :try_start_34
893 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
895 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
896 - :try_end_42
897 - .catch Ljava/io/IOException; {:try_start_3d .. :try_end_42} :catch_43
898 + :try_end_39
899 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_39} :catch_3a
901 goto :goto_12
903 - :catch_43
904 + :catch_3a
905 move-exception v0
907 const-string v1, "ActivityThread"
909 const-string v2, "Failure closing profile fd"
911 + :goto_3f
912 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
914 goto :goto_12
916 - :catchall_4c
917 + :catchall_43
918 move-exception v1
920 - :try_start_4d
921 + :try_start_44
922 iget-object v2, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
924 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
925 - :try_end_52
926 - .catch Ljava/io/IOException; {:try_start_4d .. :try_end_52} :catch_53
927 + :try_end_49
928 + .catch Ljava/io/IOException; {:try_start_44 .. :try_end_49} :catch_54
930 - :goto_52
931 + :goto_49
932 throw v1
934 - :catch_53
935 + :cond_4a
936 + iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
938 + invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
940 + move-result-object v1
942 + invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
944 + goto :goto_12
946 + :catch_54
947 move-exception v0
949 const-string v2, "ActivityThread"
950 @@ -10237,18 +10236,16 @@
952 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
954 - goto :goto_52
956 - :cond_5c
957 - iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
958 + goto :goto_49
960 - invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
961 + :catch_5d
962 + move-exception v0
964 - move-result-object v1
965 + const-string v1, "ActivityThread"
967 - invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
968 + const-string v2, "Failure closing profile fd"
970 - goto :goto_12
971 + goto :goto_3f
972 .end method
974 .method final handleLowMemory()V
975 @@ -10332,9 +10329,9 @@
976 .method final handleProfilerControl(ZLandroid/app/ActivityThread$ProfilerControlData;I)V
977 .registers 8
979 - if-eqz p1, :cond_73
980 + if-eqz p1, :cond_61
982 - packed-switch p3, :pswitch_data_80
983 + packed-switch p3, :pswitch_data_7e
985 :try_start_5
986 iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
987 @@ -10355,7 +10352,7 @@
989 invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->startProfiling()V
990 :try_end_18
991 - .catchall {:try_start_5 .. :try_end_18} :catchall_63
992 + .catchall {:try_start_5 .. :try_end_18} :catchall_5a
993 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_18} :catch_2a
995 :goto_18
996 @@ -10364,7 +10361,7 @@
998 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
999 :try_end_1d
1000 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_5a
1001 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_77
1003 :goto_1d
1004 return-void
1005 @@ -10381,7 +10378,7 @@
1007 invoke-static {v1, v2}, Landroid/view/ViewDebug;->startLooperProfiling(Ljava/lang/String;Ljava/io/FileDescriptor;)V
1008 :try_end_29
1009 - .catchall {:try_start_1e .. :try_end_29} :catchall_63
1010 + .catchall {:try_start_1e .. :try_end_29} :catchall_5a
1011 .catch Ljava/lang/RuntimeException; {:try_start_1e .. :try_end_29} :catch_2a
1013 goto :goto_18
1014 @@ -10420,7 +10417,7 @@
1016 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
1017 :try_end_4b
1018 - .catchall {:try_start_2b .. :try_end_4b} :catchall_63
1019 + .catchall {:try_start_2b .. :try_end_4b} :catchall_5a
1021 :try_start_4b
1022 iget-object v1, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1023 @@ -10438,35 +10435,39 @@
1025 const-string v2, "Failure closing profile fd"
1027 + :goto_56
1028 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1030 goto :goto_1d
1032 - :catch_5a
1033 - move-exception v0
1034 + :catchall_5a
1035 + move-exception v1
1037 - const-string v1, "ActivityThread"
1038 + :try_start_5b
1039 + iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1041 - const-string v2, "Failure closing profile fd"
1042 + invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1043 + :try_end_60
1044 + .catch Ljava/io/IOException; {:try_start_5b .. :try_end_60} :catch_6e
1046 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1047 + :goto_60
1048 + throw v1
1050 - goto :goto_1d
1051 + :cond_61
1052 + packed-switch p3, :pswitch_data_84
1054 - :catchall_63
1055 - move-exception v1
1056 + iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1058 - :try_start_64
1059 - iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1060 + invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1062 - invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1063 - :try_end_69
1064 - .catch Ljava/io/IOException; {:try_start_64 .. :try_end_69} :catch_6a
1065 + goto :goto_1d
1067 - :goto_69
1068 - throw v1
1069 + :pswitch_6a
1070 + invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1072 - :catch_6a
1073 + goto :goto_1d
1075 + :catch_6e
1076 move-exception v0
1078 const-string v2, "ActivityThread"
1079 @@ -10475,30 +10476,27 @@
1081 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1083 - goto :goto_69
1085 - :cond_73
1086 - packed-switch p3, :pswitch_data_86
1087 + goto :goto_60
1089 - iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1090 + :catch_77
1091 + move-exception v0
1093 - invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1094 + const-string v1, "ActivityThread"
1096 - goto :goto_1d
1097 + const-string v2, "Failure closing profile fd"
1099 - :pswitch_7c
1100 - invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1101 + goto :goto_56
1103 - goto :goto_1d
1104 + nop
1106 - :pswitch_data_80
1107 + :pswitch_data_7e
1108 .packed-switch 0x1
1109 :pswitch_1e
1110 .end packed-switch
1112 - :pswitch_data_86
1113 + :pswitch_data_84
1114 .packed-switch 0x1
1115 - :pswitch_7c
1116 + :pswitch_6a
1117 .end packed-switch
1118 .end method
1120 diff -Npru stock_framework/smali/android/app/BackStackRecord.smali pdroid_framework/smali/android/app/BackStackRecord.smali
1121 --- stock_framework/smali/android/app/BackStackRecord.smali 2012-07-02 10:16:12.881930652 -0700
1122 +++ pdroid_framework/smali/android/app/BackStackRecord.smali 2012-07-02 10:16:46.204867539 -0700
1123 @@ -790,12 +790,12 @@
1125 iget v4, p0, Landroid/app/BackStackRecord;->mPopExitAnim:I
1127 - if-eqz v4, :cond_93
1128 + if-eqz v4, :cond_94
1130 :cond_74
1131 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1133 - const-string v4, "mPopEnterAnim=#"
1134 + const-string/jumbo v4, "mPopEnterAnim=#"
1136 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1138 @@ -819,16 +819,16 @@
1140 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1142 - :cond_93
1143 + :cond_94
1144 iget v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbTitleRes:I
1146 - if-nez v4, :cond_9b
1147 + if-nez v4, :cond_9c
1149 iget-object v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbTitleText:Ljava/lang/CharSequence;
1151 - if-eqz v4, :cond_b6
1152 + if-eqz v4, :cond_b7
1154 - :cond_9b
1155 + :cond_9c
1156 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1158 const-string v4, "mBreadCrumbTitleRes=#"
1159 @@ -851,16 +851,16 @@
1161 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1163 - :cond_b6
1164 + :cond_b7
1165 iget v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbShortTitleRes:I
1167 - if-nez v4, :cond_be
1168 + if-nez v4, :cond_bf
1170 iget-object v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbShortTitleText:Ljava/lang/CharSequence;
1172 - if-eqz v4, :cond_d9
1173 + if-eqz v4, :cond_da
1175 - :cond_be
1176 + :cond_bf
1177 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1179 const-string v4, "mBreadCrumbShortTitleRes=#"
1180 @@ -883,10 +883,10 @@
1182 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1184 - :cond_d9
1185 + :cond_da
1186 iget-object v4, p0, Landroid/app/BackStackRecord;->mHead:Landroid/app/BackStackRecord$Op;
1188 - if-eqz v4, :cond_1bf
1189 + if-eqz v4, :cond_1c0
1191 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1193 @@ -916,8 +916,8 @@
1195 const/4 v2, 0x0
1197 - :goto_fb
1198 - if-eqz v3, :cond_1bf
1199 + :goto_fc
1200 + if-eqz v3, :cond_1c0
1202 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1204 @@ -951,13 +951,13 @@
1206 iget v4, v3, Landroid/app/BackStackRecord$Op;->enterAnim:I
1208 - if-nez v4, :cond_12c
1209 + if-nez v4, :cond_12d
1211 iget v4, v3, Landroid/app/BackStackRecord$Op;->exitAnim:I
1213 - if-eqz v4, :cond_14b
1214 + if-eqz v4, :cond_14c
1216 - :cond_12c
1217 + :cond_12d
1218 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1220 const-string v4, "enterAnim=#"
1221 @@ -984,16 +984,16 @@
1223 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1225 - :cond_14b
1226 + :cond_14c
1227 iget v4, v3, Landroid/app/BackStackRecord$Op;->popEnterAnim:I
1229 - if-nez v4, :cond_153
1230 + if-nez v4, :cond_154
1232 iget v4, v3, Landroid/app/BackStackRecord$Op;->popExitAnim:I
1234 - if-eqz v4, :cond_173
1235 + if-eqz v4, :cond_174
1237 - :cond_153
1238 + :cond_154
1239 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1241 const-string/jumbo v4, "popEnterAnim=#"
1242 @@ -1020,10 +1020,10 @@
1244 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1246 - :cond_173
1247 + :cond_174
1248 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1250 - if-eqz v4, :cond_1bb
1251 + if-eqz v4, :cond_1bc
1253 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1255 @@ -1031,18 +1031,18 @@
1257 move-result v4
1259 - if-lez v4, :cond_1bb
1260 + if-lez v4, :cond_1bc
1262 const/4 v0, 0x0
1264 - :goto_180
1265 + :goto_181
1266 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1268 invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
1270 move-result v4
1272 - if-ge v0, v4, :cond_1bb
1273 + if-ge v0, v4, :cond_1bc
1275 invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1277 @@ -1054,13 +1054,13 @@
1279 const/4 v5, 0x1
1281 - if-ne v4, v5, :cond_1a5
1282 + if-ne v4, v5, :cond_1a6
1284 const-string v4, "Removed: "
1286 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1288 - :goto_199
1289 + :goto_19a
1290 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1292 invoke-virtual {v4, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
1293 @@ -1071,9 +1071,9 @@
1295 add-int/lit8 v0, v0, 0x1
1297 - goto :goto_180
1298 + goto :goto_181
1300 - :cond_1a5
1301 + :cond_1a6
1302 const-string v4, "Removed:"
1304 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1305 @@ -1090,14 +1090,14 @@
1307 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1309 - goto :goto_199
1310 + goto :goto_19a
1312 - :cond_1bb
1313 + :cond_1bc
1314 iget-object v3, v3, Landroid/app/BackStackRecord$Op;->next:Landroid/app/BackStackRecord$Op;
1316 - goto/16 :goto_fb
1317 + goto/16 :goto_fc
1319 - :cond_1bf
1320 + :cond_1c0
1321 return-void
1322 .end method
1324 diff -Npru stock_framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali pdroid_framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali
1325 --- stock_framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-07-02 10:16:15.228489552 -0700
1326 +++ pdroid_framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-07-02 10:16:47.550187971 -0700
1327 @@ -83,7 +83,7 @@
1328 :try_start_1c
1329 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1330 :try_end_1f
1331 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1332 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1334 :goto_1f
1335 return-void
1336 @@ -146,7 +146,7 @@
1337 :try_start_54
1338 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1339 :try_end_57
1340 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1341 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1343 :goto_57
1344 throw v4
1345 @@ -198,14 +198,14 @@
1346 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1348 :catch_83
1349 - move-exception v4
1350 + move-exception v5
1352 - goto :goto_1f
1353 + goto :goto_57
1355 :catch_85
1356 - move-exception v5
1357 + move-exception v4
1359 - goto :goto_57
1360 + goto :goto_1f
1361 .end method
1363 .method public doFullBackup(Landroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1364 @@ -230,9 +230,9 @@
1366 invoke-virtual {v6, v7}, Landroid/app/backup/BackupAgent;->onFullBackup(Landroid/app/backup/FullBackupDataOutput;)V
1367 :try_end_15
1368 - .catchall {:try_start_b .. :try_end_15} :catchall_64
1369 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_34
1370 - .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_7b
1371 + .catchall {:try_start_b .. :try_end_15} :catchall_5b
1372 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_2b
1373 + .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_72
1375 :try_start_15
1376 new-instance v5, Ljava/io/FileOutputStream;
1377 @@ -249,7 +249,7 @@
1379 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1380 :try_end_24
1381 - .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_2b
1382 + .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_a8
1384 :goto_24
1385 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1386 @@ -257,26 +257,15 @@
1387 :try_start_27
1388 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1389 :try_end_2a
1390 - .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_af
1391 + .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_b2
1393 :goto_2a
1394 return-void
1396 :catch_2b
1397 - move-exception v1
1399 - const-string v6, "BackupServiceBinder"
1401 - const-string v7, "Unable to finalize backup stream!"
1403 - invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1405 - goto :goto_24
1407 - :catch_34
1408 move-exception v2
1410 - :try_start_35
1411 + :try_start_2c
1412 const-string v6, "BackupServiceBinder"
1414 new-instance v7, Ljava/lang/StringBuilder;
1415 @@ -320,13 +309,13 @@
1416 invoke-direct {v6, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
1418 throw v6
1419 - :try_end_64
1420 - .catchall {:try_start_35 .. :try_end_64} :catchall_64
1421 + :try_end_5b
1422 + .catchall {:try_start_2c .. :try_end_5b} :catchall_5b
1424 - :catchall_64
1425 + :catchall_5b
1426 move-exception v6
1428 - :try_start_65
1429 + :try_start_5c
1430 new-instance v5, Ljava/io/FileOutputStream;
1432 invoke-virtual {p1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
1433 @@ -340,24 +329,24 @@
1434 new-array v0, v7, [B
1436 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1437 - :try_end_74
1438 - .catch Ljava/io/IOException; {:try_start_65 .. :try_end_74} :catch_a6
1439 + :try_end_6b
1440 + .catch Ljava/io/IOException; {:try_start_5c .. :try_end_6b} :catch_9d
1442 - :goto_74
1443 + :goto_6b
1444 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1446 - :try_start_77
1447 + :try_start_6e
1448 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1449 - :try_end_7a
1450 - .catch Landroid/os/RemoteException; {:try_start_77 .. :try_end_7a} :catch_b2
1451 + :try_end_71
1452 + .catch Landroid/os/RemoteException; {:try_start_6e .. :try_end_71} :catch_a6
1454 - :goto_7a
1455 + :goto_71
1456 throw v6
1458 - :catch_7b
1459 + :catch_72
1460 move-exception v2
1462 - :try_start_7c
1463 + :try_start_73
1464 const-string v6, "BackupServiceBinder"
1466 new-instance v7, Ljava/lang/StringBuilder;
1467 @@ -397,10 +386,10 @@
1468 invoke-static {v6, v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1470 throw v2
1471 - :try_end_a6
1472 - .catchall {:try_start_7c .. :try_end_a6} :catchall_64
1473 + :try_end_9d
1474 + .catchall {:try_start_73 .. :try_end_9d} :catchall_5b
1476 - :catch_a6
1477 + :catch_9d
1478 move-exception v1
1480 const-string v7, "BackupServiceBinder"
1481 @@ -409,17 +398,28 @@
1483 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1485 - goto :goto_74
1486 + goto :goto_6b
1488 - :catch_af
1489 - move-exception v6
1490 + :catch_a6
1491 + move-exception v7
1493 - goto/16 :goto_2a
1494 + goto :goto_71
1496 + :catch_a8
1497 + move-exception v1
1499 + const-string v6, "BackupServiceBinder"
1501 + const-string v7, "Unable to finalize backup stream!"
1503 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1505 + goto/16 :goto_24
1507 :catch_b2
1508 - move-exception v7
1509 + move-exception v6
1511 - goto :goto_7a
1512 + goto/16 :goto_2a
1513 .end method
1515 .method public doRestore(Landroid/os/ParcelFileDescriptor;ILandroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1516 @@ -462,7 +462,7 @@
1517 :try_start_1c
1518 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1519 :try_end_1f
1520 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1521 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1523 :goto_1f
1524 return-void
1525 @@ -525,7 +525,7 @@
1526 :try_start_54
1527 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1528 :try_end_57
1529 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1530 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1532 :goto_57
1533 throw v4
1534 @@ -577,14 +577,14 @@
1535 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1537 :catch_83
1538 - move-exception v4
1539 + move-exception v5
1541 - goto :goto_1f
1542 + goto :goto_57
1544 :catch_85
1545 - move-exception v5
1546 + move-exception v4
1548 - goto :goto_57
1549 + goto :goto_1f
1550 .end method
1552 .method public doRestoreFile(Landroid/os/ParcelFileDescriptor;JILjava/lang/String;Ljava/lang/String;JJILandroid/app/backup/IBackupManager;)V
1553 @@ -632,7 +632,7 @@
1555 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1556 :try_end_23
1557 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_37
1558 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_39
1560 :goto_23
1561 return-void
1562 @@ -661,18 +661,18 @@
1564 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1565 :try_end_36
1566 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_39
1567 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_37
1569 :goto_36
1570 throw v2
1572 :catch_37
1573 - move-exception v2
1574 + move-exception v3
1576 - goto :goto_23
1577 + goto :goto_36
1579 :catch_39
1580 - move-exception v3
1581 + move-exception v2
1583 - goto :goto_36
1584 + goto :goto_23
1585 .end method
1586 diff -Npru stock_framework/smali/android/app/backup/RestoreSession.smali pdroid_framework/smali/android/app/backup/RestoreSession.smali
1587 --- stock_framework/smali/android/app/backup/RestoreSession.smali 2012-07-02 10:16:15.274500511 -0700
1588 +++ pdroid_framework/smali/android/app/backup/RestoreSession.smali 2012-07-02 10:16:47.597199171 -0700
1589 @@ -52,12 +52,12 @@
1591 invoke-interface {v1}, Landroid/app/backup/IRestoreSession;->endRestoreSession()V
1592 :try_end_6
1593 - .catchall {:try_start_1 .. :try_end_6} :catchall_14
1594 + .catchall {:try_start_1 .. :try_end_6} :catchall_12
1595 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_6} :catch_9
1597 + :goto_6
1598 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1600 - :goto_8
1601 return-void
1603 :catch_9
1604 @@ -70,13 +70,11 @@
1606 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
1607 :try_end_11
1608 - .catchall {:try_start_a .. :try_end_11} :catchall_14
1609 + .catchall {:try_start_a .. :try_end_11} :catchall_12
1611 - iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1613 - goto :goto_8
1614 + goto :goto_6
1616 - :catchall_14
1617 + :catchall_12
1618 move-exception v1
1620 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1621 diff -Npru stock_framework/smali/android/app/ContextImpl$18.smali pdroid_framework/smali/android/app/ContextImpl$18.smali
1622 --- stock_framework/smali/android/app/ContextImpl$18.smali 2012-07-02 10:16:12.903935893 -0700
1623 +++ pdroid_framework/smali/android/app/ContextImpl$18.smali 2012-07-02 10:16:46.209868730 -0700
1624 @@ -26,21 +26,25 @@
1626 # virtual methods
1627 .method public createStaticService()Ljava/lang/Object;
1628 - .registers 4
1629 + .registers 5
1631 - const-string v1, "location"
1632 + const-string v2, "location"
1634 - invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1635 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1637 move-result-object v0
1639 - new-instance v1, Landroid/location/LocationManager;
1641 invoke-static {v0}, Landroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;
1643 - move-result-object v2
1644 + move-result-object v1
1646 + new-instance v2, Landroid/privacy/surrogate/PrivacyLocationManager;
1648 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1650 + move-result-object v3
1652 - invoke-direct {v1, v2}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
1653 + invoke-direct {v2, v1, v3}, Landroid/privacy/surrogate/PrivacyLocationManager;-><init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
1655 - return-object v1
1656 + return-object v2
1657 .end method
1658 diff -Npru stock_framework/smali/android/app/ContextImpl$26.smali pdroid_framework/smali/android/app/ContextImpl$26.smali
1659 --- stock_framework/smali/android/app/ContextImpl$26.smali 2012-07-02 10:16:12.929942087 -0700
1660 +++ pdroid_framework/smali/android/app/ContextImpl$26.smali 2012-07-02 10:16:46.242876592 -0700
1661 @@ -28,13 +28,13 @@
1662 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
1663 .registers 4
1665 - new-instance v0, Landroid/telephony/TelephonyManager;
1666 + new-instance v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;
1668 invoke-virtual {p1}, Landroid/app/ContextImpl;->getOuterContext()Landroid/content/Context;
1670 move-result-object v1
1672 - invoke-direct {v0, v1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
1673 + invoke-direct {v0, v1}, Landroid/privacy/surrogate/PrivacyTelephonyManager;-><init>(Landroid/content/Context;)V
1675 return-object v0
1676 .end method
1677 diff -Npru stock_framework/smali/android/app/ContextImpl$34.smali pdroid_framework/smali/android/app/ContextImpl$34.smali
1678 --- stock_framework/smali/android/app/ContextImpl$34.smali 1969-12-31 16:00:00.000000000 -0800
1679 +++ pdroid_framework/smali/android/app/ContextImpl$34.smali 2012-07-02 10:16:46.718989994 -0700
1680 @@ -0,0 +1,50 @@
1681 +.class final Landroid/app/ContextImpl$34;
1682 +.super Landroid/app/ContextImpl$StaticServiceFetcher;
1683 +.source "ContextImpl.java"
1686 +# annotations
1687 +.annotation system Ldalvik/annotation/EnclosingClass;
1688 + value = Landroid/app/ContextImpl;
1689 +.end annotation
1691 +.annotation system Ldalvik/annotation/InnerClass;
1692 + accessFlags = 0x8
1693 + name = null
1694 +.end annotation
1697 +# direct methods
1698 +.method constructor <init>()V
1699 + .registers 1
1701 + invoke-direct {p0}, Landroid/app/ContextImpl$StaticServiceFetcher;-><init>()V
1703 + return-void
1704 +.end method
1707 +# virtual methods
1708 +.method public createStaticService()Ljava/lang/Object;
1709 + .registers 5
1711 + const-string/jumbo v2, "privacy"
1713 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1715 + move-result-object v0
1717 + invoke-static {v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1719 + move-result-object v1
1721 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
1723 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1725 + move-result-object v3
1727 + invoke-direct {v2, v3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1729 + return-object v2
1730 +.end method
1731 diff -Npru stock_framework/smali/android/app/ContextImpl$3.smali pdroid_framework/smali/android/app/ContextImpl$3.smali
1732 --- stock_framework/smali/android/app/ContextImpl$3.smali 2012-07-02 10:16:12.944945660 -0700
1733 +++ pdroid_framework/smali/android/app/ContextImpl$3.smali 2012-07-02 10:16:46.718989994 -0700
1734 @@ -38,9 +38,9 @@
1736 move-result-object v1
1738 - new-instance v2, Landroid/accounts/AccountManager;
1739 + new-instance v2, Landroid/privacy/surrogate/PrivacyAccountManager;
1741 - invoke-direct {v2, p1, v1}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1742 + invoke-direct {v2, p1, v1}, Landroid/privacy/surrogate/PrivacyAccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1744 return-object v2
1745 .end method
1746 diff -Npru stock_framework/smali/android/app/ContextImpl.smali pdroid_framework/smali/android/app/ContextImpl.smali
1747 --- stock_framework/smali/android/app/ContextImpl.smali 2012-07-02 10:16:14.281263943 -0700
1748 +++ pdroid_framework/smali/android/app/ContextImpl.smali 2012-07-02 10:16:46.764000715 -0700
1749 @@ -36,6 +36,8 @@
1751 .field private static sNextPerContextServiceCacheIndex:I
1753 +.field private static sOuterContext:Landroid/content/Context;
1755 .field private static final sSharedPrefs:Ljava/util/HashMap;
1756 .annotation system Ldalvik/annotation/Signature;
1757 value = {
1758 @@ -394,6 +396,14 @@
1760 invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1762 + const-string/jumbo v0, "privacy"
1764 + new-instance v1, Landroid/app/ContextImpl$34;
1766 + invoke-direct {v1}, Landroid/app/ContextImpl$34;-><init>()V
1768 + invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1770 return-void
1771 .end method
1773 @@ -428,6 +438,8 @@
1775 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1777 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1779 return-void
1780 .end method
1782 @@ -482,6 +494,8 @@
1784 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1786 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1788 return-void
1789 .end method
1791 @@ -951,6 +965,14 @@
1792 throw v0
1793 .end method
1795 +.method static final getStaticOuterContext()Landroid/content/Context;
1796 + .registers 1
1798 + sget-object v0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1800 + return-object v0
1801 +.end method
1803 .method private getWallpaperManager()Landroid/app/WallpaperManager;
1804 .registers 2
1806 @@ -4116,6 +4138,8 @@
1808 iput-object p1, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1810 + sput-object p1, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1812 return-void
1813 .end method
1815 diff -Npru stock_framework/smali/android/app/DownloadManager.smali pdroid_framework/smali/android/app/DownloadManager.smali
1816 --- stock_framework/smali/android/app/DownloadManager.smali 2012-07-02 10:16:14.360282762 -0700
1817 +++ pdroid_framework/smali/android/app/DownloadManager.smali 2012-07-02 10:16:46.829016200 -0700
1818 @@ -618,7 +618,7 @@
1819 :try_start_11
1820 invoke-virtual {p0, v1}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1821 :try_end_14
1822 - .catchall {:try_start_11 .. :try_end_14} :catchall_3a
1823 + .catchall {:try_start_11 .. :try_end_14} :catchall_31
1825 move-result-object v0
1827 @@ -626,10 +626,10 @@
1829 if-eqz v0, :cond_1c
1831 + :goto_19
1832 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1834 :cond_1c
1835 - :goto_1c
1836 return-object v2
1838 :cond_1d
1839 @@ -638,7 +638,7 @@
1841 move-result v3
1843 - if-eqz v3, :cond_34
1844 + if-eqz v3, :cond_38
1846 const-string/jumbo v2, "media_type"
1848 @@ -648,32 +648,28 @@
1850 invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
1851 :try_end_2d
1852 - .catchall {:try_start_1d .. :try_end_2d} :catchall_3a
1853 + .catchall {:try_start_1d .. :try_end_2d} :catchall_31
1855 move-result-object v2
1857 if-eqz v0, :cond_1c
1859 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1861 - goto :goto_1c
1863 - :cond_34
1864 - if-eqz v0, :cond_1c
1866 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1868 - goto :goto_1c
1869 + goto :goto_19
1871 - :catchall_3a
1872 + :catchall_31
1873 move-exception v2
1875 - if-eqz v0, :cond_40
1876 + if-eqz v0, :cond_37
1878 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1880 - :cond_40
1881 + :cond_37
1882 throw v2
1884 + :cond_38
1885 + if-eqz v0, :cond_1c
1887 + goto :goto_19
1888 .end method
1890 .method public getUriForDownloadedFile(J)Landroid/net/Uri;
1891 @@ -702,7 +698,7 @@
1892 :try_start_11
1893 invoke-virtual {p0, v4}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1894 :try_end_14
1895 - .catchall {:try_start_11 .. :try_end_14} :catchall_72
1896 + .catchall {:try_start_11 .. :try_end_14} :catchall_66
1898 move-result-object v0
1900 @@ -710,10 +706,10 @@
1902 if-eqz v0, :cond_1c
1904 + :goto_19
1905 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1907 :cond_1c
1908 - :goto_1c
1909 return-object v6
1911 :cond_1d
1912 @@ -722,7 +718,7 @@
1914 move-result v7
1916 - if-eqz v7, :cond_6c
1917 + if-eqz v7, :cond_6d
1919 const-string/jumbo v7, "status"
1921 @@ -736,7 +732,7 @@
1923 const/16 v7, 0x8
1925 - if-ne v7, v5, :cond_6c
1926 + if-ne v7, v5, :cond_6d
1928 const-string v6, "destination"
1930 @@ -760,25 +756,20 @@
1932 const/4 v6, 0x2
1934 - if-ne v1, v6, :cond_53
1935 + if-ne v1, v6, :cond_50
1937 :cond_47
1938 sget-object v6, Landroid/provider/Downloads$Impl;->CONTENT_URI:Landroid/net/Uri;
1940 invoke-static {v6, p1, p2}, Landroid/content/ContentUris;->withAppendedId(Landroid/net/Uri;J)Landroid/net/Uri;
1941 - :try_end_4c
1942 - .catchall {:try_start_1d .. :try_end_4c} :catchall_72
1944 move-result-object v6
1946 if-eqz v0, :cond_1c
1948 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1950 - goto :goto_1c
1951 + goto :goto_19
1953 - :cond_53
1954 - :try_start_53
1955 + :cond_50
1956 const-string v6, "local_filename"
1958 invoke-interface {v0, v6}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
1959 @@ -794,33 +785,29 @@
1960 invoke-direct {v6, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
1962 invoke-static {v6}, Landroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri;
1963 - :try_end_65
1964 - .catchall {:try_start_53 .. :try_end_65} :catchall_72
1965 + :try_end_62
1966 + .catchall {:try_start_1d .. :try_end_62} :catchall_66
1968 move-result-object v6
1970 if-eqz v0, :cond_1c
1972 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1974 - goto :goto_1c
1976 - :cond_6c
1977 - if-eqz v0, :cond_1c
1979 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1981 - goto :goto_1c
1982 + goto :goto_19
1984 - :catchall_72
1985 + :catchall_66
1986 move-exception v6
1988 - if-eqz v0, :cond_78
1989 + if-eqz v0, :cond_6c
1991 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1993 - :cond_78
1994 + :cond_6c
1995 throw v6
1997 + :cond_6d
1998 + if-eqz v0, :cond_1c
2000 + goto :goto_19
2001 .end method
2003 .method public varargs markRowDeleted([J)I
2004 diff -Npru stock_framework/smali/android/app/WallpaperManager$Globals.smali pdroid_framework/smali/android/app/WallpaperManager$Globals.smali
2005 --- stock_framework/smali/android/app/WallpaperManager$Globals.smali 2012-07-02 10:16:15.152471446 -0700
2006 +++ pdroid_framework/smali/android/app/WallpaperManager$Globals.smali 2012-07-02 10:16:47.498175583 -0700
2007 @@ -140,7 +140,7 @@
2008 :try_start_2f
2009 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2010 :try_end_32
2011 - .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_49
2012 + .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_4d
2013 .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_47
2015 :goto_32
2016 @@ -178,7 +178,7 @@
2017 :try_start_43
2018 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2019 :try_end_46
2020 - .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_4d
2021 + .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_49
2022 .catch Landroid/os/RemoteException; {:try_start_43 .. :try_end_46} :catch_47
2024 :goto_46
2025 @@ -193,9 +193,9 @@
2026 goto :goto_40
2028 :catch_49
2029 - move-exception v8
2030 + move-exception v9
2032 - goto :goto_32
2033 + goto :goto_46
2035 :catch_4b
2036 move-exception v7
2037 @@ -203,9 +203,9 @@
2038 goto :goto_40
2040 :catch_4d
2041 - move-exception v9
2042 + move-exception v8
2044 - goto :goto_46
2045 + goto :goto_32
2046 .end method
2048 .method private getDefaultWallpaperLocked(Landroid/content/Context;)Landroid/graphics/Bitmap;
2049 @@ -261,7 +261,7 @@
2050 :try_start_28
2051 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2052 :try_end_2b
2053 - .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_42
2054 + .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_46
2055 .catch Landroid/os/RemoteException; {:try_start_28 .. :try_end_2b} :catch_40
2057 :goto_2b
2058 @@ -299,7 +299,7 @@
2059 :try_start_3c
2060 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2061 :try_end_3f
2062 - .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_46
2063 + .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_42
2064 .catch Landroid/os/RemoteException; {:try_start_3c .. :try_end_3f} :catch_40
2066 :goto_3f
2067 @@ -314,9 +314,9 @@
2068 goto :goto_39
2070 :catch_42
2071 - move-exception v7
2072 + move-exception v8
2074 - goto :goto_2b
2075 + goto :goto_3f
2077 :catch_44
2078 move-exception v6
2079 @@ -324,9 +324,9 @@
2080 goto :goto_39
2082 :catch_46
2083 - move-exception v8
2084 + move-exception v7
2086 - goto :goto_3f
2087 + goto :goto_2b
2088 .end method
2091 diff -Npru stock_framework/smali/android/bluetooth/BluetoothSocket.smali pdroid_framework/smali/android/bluetooth/BluetoothSocket.smali
2092 --- stock_framework/smali/android/bluetooth/BluetoothSocket.smali 2012-07-02 10:16:15.488551493 -0700
2093 +++ pdroid_framework/smali/android/bluetooth/BluetoothSocket.smali 2012-07-02 10:16:47.765239193 -0700
2094 @@ -445,7 +445,7 @@
2096 sget-object v1, Landroid/bluetooth/BluetoothSocket$SocketState;->CLOSED:Landroid/bluetooth/BluetoothSocket$SocketState;
2097 :try_end_d
2098 - .catchall {:try_start_9 .. :try_end_d} :catchall_29
2099 + .catchall {:try_start_9 .. :try_end_d} :catchall_26
2101 if-ne v0, v1, :cond_1b
2103 @@ -457,16 +457,16 @@
2105 move-result-object v1
2107 + :goto_17
2108 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2110 - :goto_1a
2111 return v0
2113 :cond_1b
2114 :try_start_1b
2115 invoke-direct {p0}, Landroid/bluetooth/BluetoothSocket;->bindListenNative()I
2116 :try_end_1e
2117 - .catchall {:try_start_1b .. :try_end_1e} :catchall_29
2118 + .catchall {:try_start_1b .. :try_end_1e} :catchall_26
2120 move-result v0
2122 @@ -476,11 +476,9 @@
2124 move-result-object v1
2126 - invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2128 - goto :goto_1a
2129 + goto :goto_17
2131 - :catchall_29
2132 + :catchall_26
2133 move-exception v0
2135 iget-object v1, p0, Landroid/bluetooth/BluetoothSocket;->mLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
2136 diff -Npru stock_framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali pdroid_framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali
2137 --- stock_framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-07-02 10:16:15.573571743 -0700
2138 +++ pdroid_framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-07-02 10:16:47.838256585 -0700
2139 @@ -102,11 +102,11 @@
2140 :try_start_b
2141 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2142 :try_end_e
2143 - .catchall {:try_start_b .. :try_end_e} :catchall_80
2144 + .catchall {:try_start_b .. :try_end_e} :catchall_7d
2146 move-result v0
2148 - if-eqz v0, :cond_38
2149 + if-eqz v0, :cond_35
2151 if-eqz v4, :cond_16
2153 @@ -146,21 +146,14 @@
2154 invoke-virtual {v0, v2}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2156 monitor-exit v1
2157 + :try_end_34
2158 + .catchall {:try_start_28 .. :try_end_34} :catchall_a5
2160 :goto_34
2161 return-void
2163 - :catchall_35
2164 - move-exception v0
2166 - monitor-exit v1
2167 - :try_end_37
2168 - .catchall {:try_start_28 .. :try_end_37} :catchall_35
2170 - throw v0
2172 - :cond_38
2173 - :try_start_38
2174 + :cond_35
2175 + :try_start_35
2176 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2178 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mContext:Landroid/content/Context;
2179 @@ -178,7 +171,7 @@
2181 move-result-object v4
2183 - if-eqz v4, :cond_7c
2184 + if-eqz v4, :cond_79
2186 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2188 @@ -189,26 +182,26 @@
2189 iget-object v3, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mAuthority:Ljava/lang/String;
2191 invoke-virtual/range {v0 .. v5}, Landroid/content/AbstractThreadedSyncAdapter;->onPerformSync(Landroid/accounts/Account;Landroid/os/Bundle;Ljava/lang/String;Landroid/content/ContentProviderClient;Landroid/content/SyncResult;)V
2192 - :try_end_55
2193 - .catchall {:try_start_38 .. :try_end_55} :catchall_80
2194 + :try_end_52
2195 + .catchall {:try_start_35 .. :try_end_52} :catchall_7d
2197 - :goto_55
2198 - if-eqz v4, :cond_5a
2199 + :goto_52
2200 + if-eqz v4, :cond_57
2202 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2204 - :cond_5a
2205 + :cond_57
2206 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2208 move-result v0
2210 - if-nez v0, :cond_65
2211 + if-nez v0, :cond_62
2213 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2215 invoke-virtual {v0, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2217 - :cond_65
2218 + :cond_62
2219 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2221 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2222 @@ -218,7 +211,7 @@
2224 monitor-enter v1
2226 - :try_start_6c
2227 + :try_start_69
2228 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2230 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2231 @@ -234,44 +227,44 @@
2233 goto :goto_34
2235 - :catchall_79
2236 + :catchall_76
2237 move-exception v0
2239 monitor-exit v1
2240 - :try_end_7b
2241 - .catchall {:try_start_6c .. :try_end_7b} :catchall_79
2242 + :try_end_78
2243 + .catchall {:try_start_69 .. :try_end_78} :catchall_76
2245 throw v0
2247 - :cond_7c
2248 + :cond_79
2249 const/4 v0, 0x1
2251 - :try_start_7d
2252 + :try_start_7a
2253 iput-boolean v0, v5, Landroid/content/SyncResult;->databaseError:Z
2254 - :try_end_7f
2255 - .catchall {:try_start_7d .. :try_end_7f} :catchall_80
2256 + :try_end_7c
2257 + .catchall {:try_start_7a .. :try_end_7c} :catchall_7d
2259 - goto :goto_55
2260 + goto :goto_52
2262 - :catchall_80
2263 + :catchall_7d
2264 move-exception v0
2266 - if-eqz v4, :cond_86
2267 + if-eqz v4, :cond_83
2269 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2271 - :cond_86
2272 + :cond_83
2273 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2275 move-result v1
2277 - if-nez v1, :cond_91
2278 + if-nez v1, :cond_8e
2280 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2282 invoke-virtual {v1, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2284 - :cond_91
2285 + :cond_8e
2286 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2288 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2289 @@ -281,7 +274,7 @@
2291 monitor-enter v1
2293 - :try_start_98
2294 + :try_start_95
2295 iget-object v2, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2297 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2298 @@ -294,8 +287,18 @@
2299 invoke-virtual {v2, v3}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2301 monitor-exit v1
2302 + :try_end_a1
2303 + .catchall {:try_start_95 .. :try_end_a1} :catchall_a2
2305 + throw v0
2307 + :catchall_a2
2308 + move-exception v0
2310 + :try_start_a3
2311 + monitor-exit v1
2312 :try_end_a4
2313 - .catchall {:try_start_98 .. :try_end_a4} :catchall_a5
2314 + .catchall {:try_start_a3 .. :try_end_a4} :catchall_a2
2316 throw v0
2318 diff -Npru stock_framework/smali/android/content/ContentResolver.smali pdroid_framework/smali/android/content/ContentResolver.smali
2319 --- stock_framework/smali/android/content/ContentResolver.smali 2012-07-02 10:16:12.983954952 -0700
2320 +++ pdroid_framework/smali/android/content/ContentResolver.smali 2012-07-02 10:16:46.735994044 -0700
2321 @@ -1662,12 +1662,12 @@
2323 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2324 :try_end_35
2325 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2326 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2327 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2329 + :goto_35
2330 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2332 - :goto_38
2333 return v8
2335 :catch_39
2336 @@ -1675,11 +1675,9 @@
2338 const/4 v8, 0x0
2340 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2342 - goto :goto_38
2343 + goto :goto_35
2345 - :catchall_3f
2346 + :catchall_3c
2347 move-exception v0
2349 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2350 @@ -1746,14 +1744,14 @@
2351 :try_start_35
2352 invoke-interface {v1, p2, p3, p4}, Landroid/content/IContentProvider;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
2353 :try_end_38
2354 - .catchall {:try_start_35 .. :try_end_38} :catchall_43
2355 + .catchall {:try_start_35 .. :try_end_38} :catchall_40
2356 .catch Landroid/os/RemoteException; {:try_start_35 .. :try_end_38} :catch_3d
2358 move-result-object v2
2360 + :goto_39
2361 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2363 - :goto_3c
2364 return-object v2
2366 :catch_3d
2367 @@ -1761,11 +1759,9 @@
2369 const/4 v2, 0x0
2371 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2373 - goto :goto_3c
2374 + goto :goto_39
2376 - :catchall_43
2377 + :catchall_40
2378 move-exception v2
2380 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2381 @@ -1856,12 +1852,12 @@
2383 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2384 :try_end_35
2385 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2386 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2387 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2389 + :goto_35
2390 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2392 - :goto_38
2393 return v8
2395 :catch_39
2396 @@ -1869,11 +1865,9 @@
2398 const/4 v8, -0x1
2400 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2402 - goto :goto_38
2403 + goto :goto_35
2405 - :catchall_3f
2406 + :catchall_3c
2407 move-exception v0
2409 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2410 @@ -2160,11 +2154,12 @@
2411 :try_start_8
2412 invoke-interface {v1, p1, p2}, Landroid/content/IContentProvider;->getStreamTypes(Landroid/net/Uri;Ljava/lang/String;)[Ljava/lang/String;
2413 :try_end_b
2414 - .catchall {:try_start_8 .. :try_end_b} :catchall_15
2415 + .catchall {:try_start_8 .. :try_end_b} :catchall_12
2416 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_b} :catch_10
2418 move-result-object v2
2420 + :goto_c
2421 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2423 goto :goto_7
2424 @@ -2172,11 +2167,9 @@
2425 :catch_10
2426 move-exception v0
2428 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2429 + goto :goto_c
2431 - goto :goto_7
2433 - :catchall_15
2434 + :catchall_12
2435 move-exception v2
2437 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2438 @@ -2193,17 +2186,18 @@
2440 move-result-object v1
2442 - if-eqz v1, :cond_4a
2443 + if-eqz v1, :cond_44
2445 :try_start_7
2446 invoke-interface {v1, p1}, Landroid/content/IContentProvider;->getType(Landroid/net/Uri;)Ljava/lang/String;
2447 :try_end_a
2448 - .catchall {:try_start_7 .. :try_end_a} :catchall_45
2449 + .catchall {:try_start_7 .. :try_end_a} :catchall_3f
2450 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_a} :catch_f
2451 - .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_14
2452 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_11
2454 move-result-object v2
2456 + :goto_b
2457 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2459 :cond_e
2460 @@ -2213,14 +2207,12 @@
2461 :catch_f
2462 move-exception v0
2464 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2466 - goto :goto_e
2467 + goto :goto_b
2469 - :catch_14
2470 + :catch_11
2471 move-exception v0
2473 - :try_start_15
2474 + :try_start_12
2475 const-string v3, "ContentResolver"
2477 new-instance v4, Ljava/lang/StringBuilder;
2478 @@ -2262,21 +2254,19 @@
2479 move-result-object v4
2481 invoke-static {v3, v4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
2482 - :try_end_41
2483 - .catchall {:try_start_15 .. :try_end_41} :catchall_45
2485 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2486 + :try_end_3e
2487 + .catchall {:try_start_12 .. :try_end_3e} :catchall_3f
2489 - goto :goto_e
2490 + goto :goto_b
2492 - :catchall_45
2493 + :catchall_3f
2494 move-exception v3
2496 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2498 throw v3
2500 - :cond_4a
2501 + :cond_44
2502 const-string v3, "content"
2504 invoke-virtual {p1}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
2505 @@ -2289,26 +2279,26 @@
2507 if-eqz v3, :cond_e
2509 - :try_start_56
2510 + :try_start_50
2511 invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
2513 move-result-object v3
2515 invoke-interface {v3, p1}, Landroid/app/IActivityManager;->getProviderMimeType(Landroid/net/Uri;)Ljava/lang/String;
2516 - :try_end_5d
2517 - .catch Landroid/os/RemoteException; {:try_start_56 .. :try_end_5d} :catch_5f
2518 - .catch Ljava/lang/Exception; {:try_start_56 .. :try_end_5d} :catch_61
2519 + :try_end_57
2520 + .catch Landroid/os/RemoteException; {:try_start_50 .. :try_end_57} :catch_59
2521 + .catch Ljava/lang/Exception; {:try_start_50 .. :try_end_57} :catch_5b
2523 move-result-object v2
2525 goto :goto_e
2527 - :catch_5f
2528 + :catch_59
2529 move-exception v0
2531 goto :goto_e
2533 - :catch_61
2534 + :catch_5b
2535 move-exception v0
2537 const-string v3, "ContentResolver"
2538 @@ -2693,9 +2683,9 @@
2539 :try_start_a8
2540 invoke-interface {v9, p1, p2}, Landroid/content/IContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
2541 :try_end_ab
2542 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_ec
2543 - .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_d2
2544 - .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_f3
2545 + .catchall {:try_start_a8 .. :try_end_ab} :catchall_e8
2546 + .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_ce
2547 + .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_ef
2549 move-result-object v8
2551 @@ -2703,6 +2693,7 @@
2553 if-eqz v9, :cond_3b
2555 + :goto_b0
2556 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2558 goto :goto_3b
2559 @@ -2731,20 +2722,18 @@
2561 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2562 :try_end_cb
2563 - .catchall {:try_start_b4 .. :try_end_cb} :catchall_ec
2564 - .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_d2
2565 - .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_f3
2566 + .catchall {:try_start_b4 .. :try_end_cb} :catchall_e8
2567 + .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_ce
2568 + .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_ef
2570 if-eqz v9, :cond_3b
2572 - invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2574 - goto/16 :goto_3b
2575 + goto :goto_b0
2577 - :catch_d2
2578 + :catch_ce
2579 move-exception v6
2581 - :try_start_d3
2582 + :try_start_cf
2583 new-instance v0, Ljava/io/FileNotFoundException;
2585 new-instance v2, Ljava/lang/StringBuilder;
2586 @@ -2768,26 +2757,26 @@
2587 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2589 throw v0
2590 - :try_end_ec
2591 - .catchall {:try_start_d3 .. :try_end_ec} :catchall_ec
2592 + :try_end_e8
2593 + .catchall {:try_start_cf .. :try_end_e8} :catchall_e8
2595 - :catchall_ec
2596 + :catchall_e8
2597 move-exception v0
2599 - if-eqz v9, :cond_f2
2600 + if-eqz v9, :cond_ee
2602 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2604 - :cond_f2
2605 + :cond_ee
2606 throw v0
2608 - :catch_f3
2609 + :catch_ef
2610 move-exception v6
2612 - :try_start_f4
2613 + :try_start_f0
2614 throw v6
2615 - :try_end_f5
2616 - .catchall {:try_start_f4 .. :try_end_f5} :catchall_ec
2617 + :try_end_f1
2618 + .catchall {:try_start_f0 .. :try_end_f1} :catchall_e8
2619 .end method
2621 .method public final openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;
2622 @@ -3069,9 +3058,9 @@
2623 :try_start_1f
2624 invoke-interface {v8, p1, p2, p3}, Landroid/content/IContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor;
2625 :try_end_22
2626 - .catchall {:try_start_1f .. :try_end_22} :catchall_63
2627 - .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_49
2628 - .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_6a
2629 + .catchall {:try_start_1f .. :try_end_22} :catchall_60
2630 + .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_46
2631 + .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_67
2633 move-result-object v7
2635 @@ -3081,10 +3070,10 @@
2637 if-eqz v8, :cond_2b
2639 + :goto_28
2640 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2642 :cond_2b
2643 - :goto_2b
2644 return-object v0
2646 :cond_2c
2647 @@ -3111,20 +3100,18 @@
2649 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2650 :try_end_43
2651 - .catchall {:try_start_2c .. :try_end_43} :catchall_63
2652 - .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_49
2653 - .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_6a
2654 + .catchall {:try_start_2c .. :try_end_43} :catchall_60
2655 + .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_46
2656 + .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_67
2658 if-eqz v8, :cond_2b
2660 - invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2662 - goto :goto_2b
2663 + goto :goto_28
2665 - :catch_49
2666 + :catch_46
2667 move-exception v6
2669 - :try_start_4a
2670 + :try_start_47
2671 new-instance v0, Ljava/io/FileNotFoundException;
2673 new-instance v2, Ljava/lang/StringBuilder;
2674 @@ -3148,26 +3135,26 @@
2675 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2677 throw v0
2678 - :try_end_63
2679 - .catchall {:try_start_4a .. :try_end_63} :catchall_63
2680 + :try_end_60
2681 + .catchall {:try_start_47 .. :try_end_60} :catchall_60
2683 - :catchall_63
2684 + :catchall_60
2685 move-exception v0
2687 - if-eqz v8, :cond_69
2688 + if-eqz v8, :cond_66
2690 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2692 - :cond_69
2693 + :cond_66
2694 throw v0
2696 - :catch_6a
2697 + :catch_67
2698 move-exception v6
2700 - :try_start_6b
2701 + :try_start_68
2702 throw v6
2703 - :try_end_6c
2704 - .catchall {:try_start_6b .. :try_end_6c} :catchall_63
2705 + :try_end_69
2706 + .catchall {:try_start_68 .. :try_end_69} :catchall_60
2707 .end method
2709 .method public final query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
2710 @@ -3204,7 +3191,13 @@
2712 move-result-object v9
2714 - if-nez v9, :cond_1e
2715 + iget-object v1, p0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2717 + invoke-static {p1, p2, v1, v9}, Landroid/privacy/surrogate/PrivacyContentResolver;->enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
2719 + move-result-object v9
2721 + if-nez v9, :cond_24
2723 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2725 @@ -3212,7 +3205,7 @@
2727 goto :goto_7
2729 - :cond_1e
2730 + :cond_24
2731 invoke-interface {v9}, Landroid/database/Cursor;->getCount()I
2733 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2734 @@ -3236,13 +3229,13 @@
2735 new-instance v1, Landroid/content/ContentResolver$CursorWrapperInner;
2737 invoke-direct {v1, p0, v9, v0}, Landroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V
2738 - :try_end_35
2739 - .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_35} :catch_36
2740 - .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_35} :catch_3c
2741 + :try_end_3b
2742 + .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_3b} :catch_3c
2743 + .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_3b} :catch_42
2745 goto :goto_7
2747 - :catch_36
2748 + :catch_3c
2749 move-exception v8
2751 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2752 @@ -3251,7 +3244,7 @@
2754 goto :goto_7
2756 - :catch_3c
2757 + :catch_42
2758 move-exception v8
2760 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2761 @@ -3424,12 +3417,12 @@
2763 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2764 :try_end_36
2765 - .catchall {:try_start_1f .. :try_end_36} :catchall_40
2766 + .catchall {:try_start_1f .. :try_end_36} :catchall_3d
2767 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_36} :catch_3a
2769 + :goto_36
2770 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2772 - :goto_39
2773 return v8
2775 :catch_3a
2776 @@ -3437,11 +3430,9 @@
2778 const/4 v8, -0x1
2780 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2781 + goto :goto_36
2783 - goto :goto_39
2785 - :catchall_40
2786 + :catchall_3d
2787 move-exception v0
2789 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2790 diff -Npru stock_framework/smali/android/content/CursorLoader.smali pdroid_framework/smali/android/content/CursorLoader.smali
2791 --- stock_framework/smali/android/content/CursorLoader.smali 2012-07-02 10:16:15.700601999 -0700
2792 +++ pdroid_framework/smali/android/content/CursorLoader.smali 2012-07-02 10:16:48.004296133 -0700
2793 @@ -154,7 +154,7 @@
2795 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2797 - const-string v0, "mProjection="
2798 + const-string/jumbo v0, "mProjection="
2800 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2802 diff -Npru stock_framework/smali/android/content/IntentFilter.smali pdroid_framework/smali/android/content/IntentFilter.smali
2803 --- stock_framework/smali/android/content/IntentFilter.smali 2012-07-02 10:16:15.788622964 -0700
2804 +++ pdroid_framework/smali/android/content/IntentFilter.smali 2012-07-02 10:16:48.103319718 -0700
2805 @@ -1705,14 +1705,14 @@
2807 iget-boolean v6, p0, Landroid/content/IntentFilter;->mHasPartialTypes:Z
2809 - if-eqz v6, :cond_171
2810 + if-eqz v6, :cond_172
2812 :cond_150
2813 invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->setLength(I)V
2815 invoke-virtual {v5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2817 - const-string v6, "mPriority="
2818 + const-string/jumbo v6, "mPriority="
2820 invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2822 @@ -1734,7 +1734,7 @@
2824 invoke-interface {p1, v6}, Landroid/util/Printer;->println(Ljava/lang/String;)V
2826 - :cond_171
2827 + :cond_172
2828 return-void
2829 .end method
2831 diff -Npru stock_framework/smali/android/content/SyncManager$InitializerServiceConnection.smali pdroid_framework/smali/android/content/SyncManager$InitializerServiceConnection.smali
2832 --- stock_framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-07-02 10:16:15.842635828 -0700
2833 +++ pdroid_framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-07-02 10:16:48.173336394 -0700
2834 @@ -139,7 +139,7 @@
2836 invoke-interface {v1, v2, v3}, Landroid/content/ISyncAdapter;->initialize(Landroid/accounts/Account;Ljava/lang/String;)V
2837 :try_end_43
2838 - .catchall {:try_start_2 .. :try_end_43} :catchall_80
2839 + .catchall {:try_start_2 .. :try_end_43} :catchall_7d
2840 .catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_43} :catch_4e
2842 :cond_43
2843 @@ -149,9 +149,9 @@
2845 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2847 + :goto_4a
2848 invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2850 - :goto_4d
2851 return-void
2853 :catch_4e
2854 @@ -194,7 +194,7 @@
2856 invoke-static {v1, v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2857 :try_end_75
2858 - .catchall {:try_start_4f .. :try_end_75} :catchall_80
2859 + .catchall {:try_start_4f .. :try_end_75} :catchall_7d
2861 iget-object v1, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2863 @@ -202,11 +202,9 @@
2865 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2867 - invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2869 - goto :goto_4d
2870 + goto :goto_4a
2872 - :catchall_80
2873 + :catchall_7d
2874 move-exception v1
2876 iget-object v2, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2877 diff -Npru stock_framework/smali/android/content/SyncStorageEngine.smali pdroid_framework/smali/android/content/SyncStorageEngine.smali
2878 --- stock_framework/smali/android/content/SyncStorageEngine.smali 2012-07-02 10:16:15.945660367 -0700
2879 +++ pdroid_framework/smali/android/content/SyncStorageEngine.smali 2012-07-02 10:16:48.272359981 -0700
2880 @@ -487,7 +487,7 @@
2881 :try_start_18
2882 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2883 :try_end_1b
2884 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_34
2885 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_2d
2887 :goto_1b
2888 return-void
2889 @@ -529,17 +529,12 @@
2890 :try_start_30
2891 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2892 :try_end_33
2893 - .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_36
2894 + .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34
2896 :goto_33
2897 throw v4
2899 :catch_34
2900 - move-exception v4
2902 - goto :goto_1b
2904 - :catch_36
2905 move-exception v5
2907 goto :goto_33
2908 @@ -1750,7 +1745,7 @@
2910 invoke-interface {v9, v14, v15}, Lorg/xmlpull/v1/XmlPullParser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
2911 :try_end_43
2912 - .catchall {:try_start_2 .. :try_end_43} :catchall_12c
2913 + .catchall {:try_start_2 .. :try_end_43} :catchall_12a
2914 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_2 .. :try_end_43} :catch_e6
2915 .catch Ljava/io/IOException; {:try_start_2 .. :try_end_43} :catch_104
2917 @@ -1774,8 +1769,8 @@
2919 iput v14, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2920 :try_end_53
2921 - .catchall {:try_start_47 .. :try_end_53} :catchall_12c
2922 - .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_148
2923 + .catchall {:try_start_47 .. :try_end_53} :catchall_12a
2924 + .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_146
2925 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_47 .. :try_end_53} :catch_e6
2926 .catch Ljava/io/IOException; {:try_start_47 .. :try_end_53} :catch_104
2928 @@ -1848,7 +1843,7 @@
2929 :goto_89
2930 invoke-interface {v9}, Lorg/xmlpull/v1/XmlPullParser;->next()I
2931 :try_end_8c
2932 - .catchall {:try_start_55 .. :try_end_8c} :catchall_12c
2933 + .catchall {:try_start_55 .. :try_end_8c} :catchall_12a
2934 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_55 .. :try_end_8c} :catch_e6
2935 .catch Ljava/io/IOException; {:try_start_55 .. :try_end_8c} :catch_104
2937 @@ -1892,7 +1887,7 @@
2938 :try_start_a7
2939 invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2940 :try_end_aa
2941 - .catchall {:try_start_a7 .. :try_end_aa} :catchall_12c
2942 + .catchall {:try_start_a7 .. :try_end_aa} :catchall_12a
2943 .catch Ljava/lang/NumberFormatException; {:try_start_a7 .. :try_end_aa} :catch_ac
2944 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_a7 .. :try_end_aa} :catch_e6
2945 .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_aa} :catch_104
2946 @@ -1912,8 +1907,8 @@
2947 :try_start_af
2948 invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2949 :try_end_b2
2950 - .catchall {:try_start_af .. :try_end_b2} :catchall_12c
2951 - .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_148
2952 + .catchall {:try_start_af .. :try_end_b2} :catchall_12a
2953 + .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_146
2954 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_af .. :try_end_b2} :catch_e6
2955 .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_104
2957 @@ -1977,7 +1972,7 @@
2959 invoke-direct {v0, v9, v10}, Landroid/content/SyncStorageEngine;->parseExtra(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/Pair;)V
2960 :try_end_e5
2961 - .catchall {:try_start_b6 .. :try_end_e5} :catchall_12c
2962 + .catchall {:try_start_b6 .. :try_end_e5} :catchall_12a
2963 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_b6 .. :try_end_e5} :catch_e6
2964 .catch Ljava/io/IOException; {:try_start_b6 .. :try_end_e5} :catch_104
2966 @@ -1993,7 +1988,7 @@
2968 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2969 :try_end_ee
2970 - .catchall {:try_start_e7 .. :try_end_ee} :catchall_12c
2971 + .catchall {:try_start_e7 .. :try_end_ee} :catchall_12a
2973 add-int/lit8 v14, v5, 0x1
2975 @@ -2026,7 +2021,7 @@
2976 :catch_104
2977 move-exception v2
2979 - if-nez v4, :cond_124
2980 + if-nez v4, :cond_122
2982 :try_start_107
2983 const-string v14, "SyncManager"
2984 @@ -2035,7 +2030,7 @@
2986 invoke-static {v14, v15}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2987 :try_end_10e
2988 - .catchall {:try_start_107 .. :try_end_10e} :catchall_12c
2989 + .catchall {:try_start_107 .. :try_end_10e} :catchall_12a
2991 :goto_10e
2992 add-int/lit8 v14, v5, 0x1
2993 @@ -2057,28 +2052,23 @@
2994 :try_start_11e
2995 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2996 :try_end_121
2997 - .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_122
2999 - goto :goto_a6
3001 - :catch_122
3002 - move-exception v14
3003 + .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_102
3005 goto :goto_a6
3007 - :cond_124
3008 - :try_start_124
3009 + :cond_122
3010 + :try_start_122
3011 const-string v14, "SyncManager"
3013 const-string v15, "Error reading accounts"
3015 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3016 - :try_end_12b
3017 - .catchall {:try_start_124 .. :try_end_12b} :catchall_12c
3018 + :try_end_129
3019 + .catchall {:try_start_122 .. :try_end_129} :catchall_12a
3021 goto :goto_10e
3023 - :catchall_12c
3024 + :catchall_12a
3025 move-exception v14
3027 add-int/lit8 v15, v5, 0x1
3028 @@ -2097,28 +2087,28 @@
3030 iput v15, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
3032 - if-eqz v4, :cond_142
3033 + if-eqz v4, :cond_140
3035 - :try_start_13f
3036 + :try_start_13d
3037 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
3038 - :try_end_142
3039 - .catch Ljava/io/IOException; {:try_start_13f .. :try_end_142} :catch_146
3040 + :try_end_140
3041 + .catch Ljava/io/IOException; {:try_start_13d .. :try_end_140} :catch_141
3043 - :cond_142
3044 - :goto_142
3045 + :cond_140
3046 + :goto_140
3047 throw v14
3049 + :catch_141
3050 + move-exception v15
3052 + goto :goto_140
3054 :catch_143
3055 move-exception v14
3057 goto/16 :goto_a3
3059 :catch_146
3060 - move-exception v15
3062 - goto :goto_142
3064 - :catch_148
3065 move-exception v14
3067 goto/16 :goto_53
3068 @@ -3473,14 +3463,14 @@
3070 invoke-virtual {v2}, Landroid/os/Parcel;->readBundle()Landroid/os/Bundle;
3071 :try_end_10
3072 - .catchall {:try_start_5 .. :try_end_10} :catchall_1f
3073 + .catchall {:try_start_5 .. :try_end_10} :catchall_1c
3074 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_10} :catch_15
3076 move-result-object v0
3078 + :goto_11
3079 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3081 - :goto_14
3082 return-object v0
3084 :catch_15
3085 @@ -3491,13 +3481,11 @@
3087 invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
3088 :try_end_1b
3089 - .catchall {:try_start_16 .. :try_end_1b} :catchall_1f
3090 + .catchall {:try_start_16 .. :try_end_1b} :catchall_1c
3092 - invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3093 + goto :goto_11
3095 - goto :goto_14
3097 - :catchall_1f
3098 + :catchall_1c
3099 move-exception v3
3101 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3102 diff -Npru stock_framework/smali/android/database/BulkCursorToCursorAdaptor.smali pdroid_framework/smali/android/database/BulkCursorToCursorAdaptor.smali
3103 --- stock_framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-07-02 10:16:16.217725167 -0700
3104 +++ pdroid_framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-07-02 10:16:48.549425974 -0700
3105 @@ -105,13 +105,13 @@
3107 invoke-interface {v1}, Landroid/database/IBulkCursor;->close()V
3108 :try_end_d
3109 - .catchall {:try_start_8 .. :try_end_d} :catchall_1b
3110 + .catchall {:try_start_8 .. :try_end_d} :catchall_19
3111 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_d} :catch_10
3113 + :goto_d
3114 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3116 :cond_f
3117 - :goto_f
3118 return-void
3120 :catch_10
3121 @@ -124,13 +124,11 @@
3123 invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
3124 :try_end_18
3125 - .catchall {:try_start_11 .. :try_end_18} :catchall_1b
3126 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
3128 - iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3130 - goto :goto_f
3131 + goto :goto_d
3133 - :catchall_1b
3134 + :catchall_19
3135 move-exception v1
3137 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3138 diff -Npru stock_framework/smali/android/database/sqlite/SQLiteCursor.smali pdroid_framework/smali/android/database/sqlite/SQLiteCursor.smali
3139 --- stock_framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-07-02 10:16:16.281740414 -0700
3140 +++ pdroid_framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-07-02 10:16:48.624443842 -0700
3141 @@ -116,7 +116,7 @@
3142 const/4 v2, 0x0
3144 :goto_4a
3145 - if-ge v2, v0, :cond_66
3146 + if-ge v2, v0, :cond_6d
3148 iget-object v3, p0, Landroid/database/sqlite/SQLiteCursor;->mQuery:Landroid/database/sqlite/SQLiteQuery;
3150 @@ -138,7 +138,7 @@
3152 iput v2, p0, Landroid/database/sqlite/SQLiteCursor;->mRowIdColumnIndex:I
3153 :try_end_60
3154 - .catchall {:try_start_3f .. :try_end_60} :catchall_6c
3155 + .catchall {:try_start_3f .. :try_end_60} :catchall_66
3157 :cond_60
3158 add-int/lit8 v2, v2, 0x1
3159 @@ -150,14 +150,7 @@
3161 goto :goto_30
3163 - :cond_66
3164 - iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3166 - invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3168 - return-void
3170 - :catchall_6c
3171 + :catchall_66
3172 move-exception v3
3174 iget-object v4, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3175 @@ -165,6 +158,13 @@
3176 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3178 throw v3
3180 + :cond_6d
3181 + iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3183 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3185 + return-void
3186 .end method
3188 .method public constructor <init>(Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
3189 diff -Npru stock_framework/smali/android/database/sqlite/SQLiteDatabase.smali pdroid_framework/smali/android/database/sqlite/SQLiteDatabase.smali
3190 --- stock_framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-07-02 10:16:16.300744940 -0700
3191 +++ pdroid_framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-07-02 10:16:48.650450036 -0700
3192 @@ -459,19 +459,19 @@
3194 if-nez v2, :cond_32
3196 + :goto_2f
3197 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3199 :cond_32
3200 - :goto_32
3201 return-void
3203 :cond_33
3204 - if-eqz p2, :cond_58
3205 + if-eqz p2, :cond_55
3207 :try_start_35
3208 iget-object v3, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3210 - if-nez v3, :cond_58
3211 + if-nez v3, :cond_55
3213 const-string v3, "BEGIN EXCLUSIVE;"
3215 @@ -502,26 +502,24 @@
3216 invoke-interface {p1}, Landroid/database/sqlite/SQLiteTransactionListener;->onBegin()V
3217 :try_end_51
3218 .catchall {:try_start_4e .. :try_end_51} :catchall_25
3219 - .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5e
3220 + .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5b
3222 :cond_51
3223 const/4 v2, 0x1
3225 if-nez v2, :cond_32
3227 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3229 - goto :goto_32
3230 + goto :goto_2f
3232 - :cond_58
3233 - :try_start_58
3234 + :cond_55
3235 + :try_start_55
3236 const-string v3, "BEGIN IMMEDIATE;"
3238 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3240 goto :goto_3e
3242 - :catch_5e
3243 + :catch_5b
3244 move-exception v0
3246 const-string v3, "ROLLBACK;"
3247 @@ -529,8 +527,8 @@
3248 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3250 throw v0
3251 - :try_end_65
3252 - .catchall {:try_start_58 .. :try_end_65} :catchall_25
3253 + :try_end_62
3254 + .catchall {:try_start_55 .. :try_end_62} :catchall_25
3255 .end method
3257 .method private checkLockHoldTime()V
3258 @@ -2993,6 +2991,8 @@
3260 if-nez v0, :cond_43
3262 + :cond_3f
3263 + :goto_3f
3264 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3266 goto :goto_7
3267 @@ -3009,7 +3009,7 @@
3269 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3271 - if-eqz v0, :cond_7f
3272 + if-eqz v0, :cond_3f
3274 const-string v0, "SQLiteDatabase"
3276 @@ -3063,10 +3063,7 @@
3277 :try_end_7f
3278 .catchall {:try_start_6f .. :try_end_7f} :catchall_6a
3280 - :cond_7f
3281 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3283 - goto :goto_7
3284 + goto :goto_3f
3285 .end method
3287 .method closeDatabase()V
3288 @@ -3507,13 +3504,13 @@
3289 :try_start_3
3290 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3291 :try_end_5
3292 - .catchall {:try_start_3 .. :try_end_5} :catchall_1e
3293 + .catchall {:try_start_3 .. :try_end_5} :catchall_1b
3295 if-nez v0, :cond_b
3297 + :goto_7
3298 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3300 - :goto_a
3301 return-void
3303 :cond_b
3304 @@ -3532,13 +3529,11 @@
3306 iput-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3307 :try_end_1a
3308 - .catchall {:try_start_b .. :try_end_1a} :catchall_1e
3309 + .catchall {:try_start_b .. :try_end_1a} :catchall_1b
3311 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3313 - goto :goto_a
3314 + goto :goto_7
3316 - :catchall_1e
3317 + :catchall_1b
3318 move-exception v0
3320 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3321 @@ -3568,7 +3563,7 @@
3322 :try_start_c
3323 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3324 :try_end_e
3325 - .catchall {:try_start_c .. :try_end_e} :catchall_6f
3326 + .catchall {:try_start_c .. :try_end_e} :catchall_59
3328 if-eqz v2, :cond_15
3330 @@ -3596,8 +3591,10 @@
3332 invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
3333 :try_end_26
3334 - .catchall {:try_start_15 .. :try_end_26} :catchall_6f
3335 + .catchall {:try_start_15 .. :try_end_26} :catchall_59
3337 + :cond_26
3338 + :goto_26
3339 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3341 goto :goto_8
3342 @@ -3606,7 +3603,7 @@
3343 :try_start_2a
3344 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mHasAttachedDbs:Z
3346 - if-eqz v2, :cond_5c
3347 + if-eqz v2, :cond_5e
3349 const-string v1, "SQLiteDatabase"
3351 @@ -3616,7 +3613,7 @@
3353 move-result v1
3355 - if-eqz v1, :cond_58
3356 + if-eqz v1, :cond_26
3358 const-string v1, "SQLiteDatabase"
3360 @@ -3648,15 +3645,19 @@
3362 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
3363 :try_end_58
3364 - .catchall {:try_start_2a .. :try_end_58} :catchall_6f
3365 + .catchall {:try_start_2a .. :try_end_58} :catchall_59
3367 + goto :goto_26
3369 + :catchall_59
3370 + move-exception v0
3372 - :cond_58
3373 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3375 - goto :goto_8
3376 + throw v0
3378 - :cond_5c
3379 - :try_start_5c
3380 + :cond_5e
3381 + :try_start_5e
3382 new-instance v0, Landroid/database/sqlite/DatabaseConnectionPool;
3384 invoke-direct {v0, p0}, Landroid/database/sqlite/DatabaseConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V
3385 @@ -3668,21 +3669,14 @@
3386 const-string v2, "WAL"
3388 invoke-direct {p0, v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->setJournalMode(Ljava/lang/String;Ljava/lang/String;)V
3389 - :try_end_6a
3390 - .catchall {:try_start_5c .. :try_end_6a} :catchall_6f
3391 + :try_end_6c
3392 + .catchall {:try_start_5e .. :try_end_6c} :catchall_59
3394 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3396 move v0, v1
3398 goto :goto_8
3400 - :catchall_6f
3401 - move-exception v0
3403 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3405 - throw v0
3406 .end method
3408 .method public endTransaction()V
3409 @@ -3716,9 +3710,9 @@
3411 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3413 + :goto_16
3414 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3416 - :goto_19
3417 return-void
3419 :cond_1a
3420 @@ -3753,21 +3747,21 @@
3421 :try_start_2a
3422 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3424 - if-eqz v2, :cond_56
3425 + if-eqz v2, :cond_53
3427 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3429 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onCommit()V
3430 :try_end_33
3431 .catchall {:try_start_2a .. :try_end_33} :catchall_1e
3432 - .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_5c
3433 + .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_59
3435 :cond_33
3436 :goto_33
3437 :try_start_33
3438 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3440 - if-eqz v2, :cond_62
3441 + if-eqz v2, :cond_5f
3443 const-string v2, "COMMIT;"
3445 @@ -3797,37 +3791,35 @@
3446 :goto_50
3447 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3449 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3451 - goto :goto_19
3452 + goto :goto_16
3454 - :cond_56
3455 - :try_start_56
3456 + :cond_53
3457 + :try_start_53
3458 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3460 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onRollback()V
3461 - :try_end_5b
3462 - .catchall {:try_start_56 .. :try_end_5b} :catchall_1e
3463 - .catch Ljava/lang/RuntimeException; {:try_start_56 .. :try_end_5b} :catch_5c
3464 + :try_end_58
3465 + .catchall {:try_start_53 .. :try_end_58} :catchall_1e
3466 + .catch Ljava/lang/RuntimeException; {:try_start_53 .. :try_end_58} :catch_59
3468 goto :goto_33
3470 - :catch_5c
3471 + :catch_59
3472 move-exception v0
3474 move-object v1, v0
3476 const/4 v2, 0x0
3478 - :try_start_5f
3479 + :try_start_5c
3480 iput-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3481 - :try_end_61
3482 - .catchall {:try_start_5f .. :try_end_61} :catchall_1e
3483 + :try_end_5e
3484 + .catchall {:try_start_5c .. :try_end_5e} :catchall_1e
3486 goto :goto_33
3488 - :cond_62
3489 - :try_start_62
3490 + :cond_5f
3491 + :try_start_5f
3492 const-string v2, "ROLLBACK;"
3494 invoke-virtual {p0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3495 @@ -3835,11 +3827,11 @@
3496 if-eqz v1, :cond_50
3498 throw v1
3499 - :try_end_6a
3500 - .catchall {:try_start_62 .. :try_end_6a} :catchall_1e
3501 - .catch Landroid/database/SQLException; {:try_start_62 .. :try_end_6a} :catch_6a
3502 + :try_end_67
3503 + .catchall {:try_start_5f .. :try_end_67} :catchall_1e
3504 + .catch Landroid/database/SQLException; {:try_start_5f .. :try_end_67} :catch_67
3506 - :catch_6a
3507 + :catch_67
3508 move-exception v2
3510 goto :goto_50
3511 @@ -4806,7 +4798,7 @@
3513 move-result v6
3515 - if-nez v6, :cond_af
3516 + if-nez v6, :cond_b6
3518 const-string v7, "SQLiteDatabase"
3520 @@ -4844,7 +4836,7 @@
3522 invoke-static {v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3523 :try_end_a8
3524 - .catchall {:try_start_54 .. :try_end_a8} :catchall_b7
3525 + .catchall {:try_start_54 .. :try_end_a8} :catchall_af
3527 const/4 v6, 0x0
3529 @@ -4856,25 +4848,25 @@
3530 :goto_ae
3531 return v6
3533 - :cond_af
3534 - if-eqz v4, :cond_b4
3536 - invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3537 + :catchall_af
3538 + move-exception v6
3540 - :cond_b4
3541 - add-int/lit8 v2, v2, 0x1
3542 + if-eqz v4, :cond_b5
3544 - goto :goto_47
3545 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3547 - :catchall_b7
3548 - move-exception v6
3549 + :cond_b5
3550 + throw v6
3552 - if-eqz v4, :cond_bd
3553 + :cond_b6
3554 + if-eqz v4, :cond_bb
3556 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3558 - :cond_bd
3559 - throw v6
3560 + :cond_bb
3561 + add-int/lit8 v2, v2, 0x1
3563 + goto :goto_47
3565 :cond_be
3566 const/4 v6, 0x1
3567 diff -Npru stock_framework/smali/android/database/sqlite/SQLiteStatement.smali pdroid_framework/smali/android/database/sqlite/SQLiteStatement.smali
3568 --- stock_framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-07-02 10:16:16.322750181 -0700
3569 +++ pdroid_framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-07-02 10:16:48.666453848 -0700
3570 @@ -417,13 +417,13 @@
3572 invoke-virtual {v5, v6, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->logTimeStat(Ljava/lang/String;J)V
3573 :try_end_10
3574 - .catchall {:try_start_1 .. :try_end_10} :catchall_3e
3575 + .catchall {:try_start_1 .. :try_end_10} :catchall_3b
3576 .catch Ljava/io/IOException; {:try_start_1 .. :try_end_10} :catch_14
3577 - .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_22
3578 + .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_1f
3580 + :goto_10
3581 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3583 - :goto_13
3584 return-object v2
3586 :catch_14
3587 @@ -435,19 +435,14 @@
3588 const-string/jumbo v6, "simpleQueryForBlobFileDescriptor() failed"
3590 invoke-static {v5, v6, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3591 - :try_end_1d
3592 - .catchall {:try_start_15 .. :try_end_1d} :catchall_3e
3594 const/4 v2, 0x0
3596 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3598 - goto :goto_13
3599 + goto :goto_10
3601 - :catch_22
3602 + :catch_1f
3603 move-exception v0
3605 - :try_start_23
3606 new-instance v5, Landroid/database/sqlite/SQLiteDoneException;
3608 new-instance v6, Ljava/lang/StringBuilder;
3609 @@ -473,10 +468,10 @@
3610 invoke-direct {v5, v6}, Landroid/database/sqlite/SQLiteDoneException;-><init>(Ljava/lang/String;)V
3612 throw v5
3613 - :try_end_3e
3614 - .catchall {:try_start_23 .. :try_end_3e} :catchall_3e
3615 + :try_end_3b
3616 + .catchall {:try_start_15 .. :try_end_3b} :catchall_3b
3618 - :catchall_3e
3619 + :catchall_3b
3620 move-exception v5
3622 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3623 diff -Npru stock_framework/smali/android/media/MediaPlayer.smali pdroid_framework/smali/android/media/MediaPlayer.smali
3624 --- stock_framework/smali/android/media/MediaPlayer.smali 2012-07-02 10:16:17.187956255 -0700
3625 +++ pdroid_framework/smali/android/media/MediaPlayer.smali 2012-07-02 10:16:49.507654208 -0700
3626 @@ -985,9 +985,9 @@
3628 invoke-virtual {v7, p2, v0}, Landroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
3629 :try_end_21
3630 - .catchall {:try_start_17 .. :try_end_21} :catchall_6e
3631 - .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_52
3632 - .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_67
3633 + .catchall {:try_start_17 .. :try_end_21} :catchall_64
3634 + .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_4f
3635 + .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_6b
3637 move-result-object v6
3639 @@ -995,6 +995,7 @@
3641 if-eqz v6, :cond_15
3643 + :goto_26
3644 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3646 goto :goto_15
3647 @@ -1009,27 +1010,20 @@
3649 cmp-long v0, v0, v2
3651 - if-gez v0, :cond_41
3652 + if-gez v0, :cond_3e
3654 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3656 move-result-object v0
3658 invoke-virtual {p0, v0}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V
3659 - :try_end_3b
3660 - .catchall {:try_start_2a .. :try_end_3b} :catchall_6e
3661 - .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_3b} :catch_52
3662 - .catch Ljava/io/IOException; {:try_start_2a .. :try_end_3b} :catch_67
3664 :goto_3b
3665 if-eqz v6, :cond_15
3667 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3669 - goto :goto_15
3670 + goto :goto_26
3672 - :cond_41
3673 - :try_start_41
3674 + :cond_3e
3675 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3677 move-result-object v1
3678 @@ -1045,22 +1039,22 @@
3679 move-object v0, p0
3681 invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V
3682 - :try_end_51
3683 - .catchall {:try_start_41 .. :try_end_51} :catchall_6e
3684 - .catch Ljava/lang/SecurityException; {:try_start_41 .. :try_end_51} :catch_52
3685 - .catch Ljava/io/IOException; {:try_start_41 .. :try_end_51} :catch_67
3686 + :try_end_4e
3687 + .catchall {:try_start_2a .. :try_end_4e} :catchall_64
3688 + .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_4e} :catch_4f
3689 + .catch Ljava/io/IOException; {:try_start_2a .. :try_end_4e} :catch_6b
3691 goto :goto_3b
3693 - :catch_52
3694 + :catch_4f
3695 move-exception v0
3697 - if-eqz v6, :cond_58
3698 + if-eqz v6, :cond_55
3700 + :goto_52
3701 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3703 - :cond_58
3704 - :goto_58
3705 + :cond_55
3706 const-string v0, "MediaPlayer"
3708 const-string v1, "Couldn\'t open file on client side, trying server side"
3709 @@ -1075,24 +1069,22 @@
3711 goto :goto_15
3713 - :catch_67
3714 + :catchall_64
3715 move-exception v0
3717 - if-eqz v6, :cond_58
3718 + if-eqz v6, :cond_6a
3720 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3722 - goto :goto_58
3723 + :cond_6a
3724 + throw v0
3726 - :catchall_6e
3727 + :catch_6b
3728 move-exception v0
3730 - if-eqz v6, :cond_74
3732 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3733 + if-eqz v6, :cond_55
3735 - :cond_74
3736 - throw v0
3737 + goto :goto_52
3738 .end method
3740 .method public setDataSource(Ljava/io/FileDescriptor;)V
3741 diff -Npru stock_framework/smali/android/net/VpnService.smali pdroid_framework/smali/android/net/VpnService.smali
3742 --- stock_framework/smali/android/net/VpnService.smali 2012-07-02 10:16:17.657067988 -0700
3743 +++ pdroid_framework/smali/android/net/VpnService.smali 2012-07-02 10:16:49.886744501 -0700
3744 @@ -155,8 +155,6 @@
3746 :try_start_d
3747 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3748 - :try_end_10
3749 - .catch Ljava/lang/Exception; {:try_start_d .. :try_end_10} :catch_1e
3751 :goto_10
3752 return v2
3753 @@ -166,10 +164,9 @@
3755 const/4 v2, 0x0
3757 - :try_start_13
3758 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3759 :try_end_16
3760 - .catch Ljava/lang/Exception; {:try_start_13 .. :try_end_16} :catch_17
3761 + .catch Ljava/lang/Exception; {:try_start_d .. :try_end_16} :catch_17
3763 goto :goto_10
3765 @@ -184,7 +181,7 @@
3766 :try_start_1a
3767 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3768 :try_end_1d
3769 - .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_20
3770 + .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_1e
3772 :goto_1d
3773 throw v2
3774 @@ -192,11 +189,6 @@
3775 :catch_1e
3776 move-exception v3
3778 - goto :goto_10
3780 - :catch_20
3781 - move-exception v3
3783 goto :goto_1d
3784 .end method
3786 diff -Npru stock_framework/smali/android/net/wifi/WifiConfigStore.smali pdroid_framework/smali/android/net/wifi/WifiConfigStore.smali
3787 --- stock_framework/smali/android/net/wifi/WifiConfigStore.smali 2012-07-02 10:16:17.838111109 -0700
3788 +++ pdroid_framework/smali/android/net/wifi/WifiConfigStore.smali 2012-07-02 10:16:50.052784049 -0700
3789 @@ -2904,9 +2904,9 @@
3791 invoke-direct {v9, v0}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
3792 :try_end_14
3793 - .catchall {:try_start_1 .. :try_end_14} :catchall_23d
3794 - .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_243
3795 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_240
3796 + .catchall {:try_start_1 .. :try_end_14} :catchall_23a
3797 + .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_240
3798 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_23d
3800 :try_start_14
3801 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3802 @@ -2933,7 +2933,7 @@
3804 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3805 :try_end_2d
3806 - .catchall {:try_start_14 .. :try_end_2d} :catchall_17e
3807 + .catchall {:try_start_14 .. :try_end_2d} :catchall_17b
3808 .catch Ljava/io/EOFException; {:try_start_14 .. :try_end_2d} :catch_d5
3809 .catch Ljava/io/IOException; {:try_start_14 .. :try_end_2d} :catch_10b
3811 @@ -2960,27 +2960,27 @@
3813 invoke-virtual {v11, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
3814 :try_end_3b
3815 - .catchall {:try_start_34 .. :try_end_3b} :catchall_17e
3816 + .catchall {:try_start_34 .. :try_end_3b} :catchall_17b
3817 .catch Ljava/lang/IllegalArgumentException; {:try_start_34 .. :try_end_3b} :catch_bb
3818 .catch Ljava/io/EOFException; {:try_start_34 .. :try_end_3b} :catch_d5
3819 .catch Ljava/io/IOException; {:try_start_34 .. :try_end_3b} :catch_10b
3821 move-result v19
3823 - if-eqz v19, :cond_1cd
3824 + if-eqz v19, :cond_1ca
3826 const/16 v19, -0x1
3828 move/from16 v0, v19
3830 - if-eq v7, v0, :cond_230
3831 + if-eq v7, v0, :cond_22d
3833 :try_start_44
3834 sget-object v20, Landroid/net/wifi/WifiConfigStore;->sConfiguredNetworks:Ljava/util/HashMap;
3836 monitor-enter v20
3837 :try_end_47
3838 - .catchall {:try_start_44 .. :try_end_47} :catchall_17e
3839 + .catchall {:try_start_44 .. :try_end_47} :catchall_17b
3840 .catch Ljava/io/EOFException; {:try_start_44 .. :try_end_47} :catch_d5
3841 .catch Ljava/io/IOException; {:try_start_44 .. :try_end_47} :catch_10b
3843 @@ -3007,7 +3007,7 @@
3845 check-cast v2, Landroid/net/wifi/WifiConfiguration;
3847 - if-nez v2, :cond_1ee
3848 + if-nez v2, :cond_1eb
3850 const-string v19, "configuration found for missing network, ignored"
3852 @@ -3017,7 +3017,7 @@
3853 :pswitch_64
3854 monitor-exit v20
3855 :try_end_65
3856 - .catchall {:try_start_47 .. :try_end_65} :catchall_212
3857 + .catchall {:try_start_47 .. :try_end_65} :catchall_20f
3859 :cond_65
3860 :goto_65
3861 @@ -3041,7 +3041,7 @@
3862 :goto_72
3863 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3864 :try_end_75
3865 - .catchall {:try_start_66 .. :try_end_75} :catchall_17e
3866 + .catchall {:try_start_66 .. :try_end_75} :catchall_17b
3867 .catch Ljava/io/EOFException; {:try_start_66 .. :try_end_75} :catch_d5
3868 .catch Ljava/io/IOException; {:try_start_66 .. :try_end_75} :catch_10b
3870 @@ -3118,7 +3118,7 @@
3872 invoke-virtual {v13, v12}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)V
3873 :try_end_ba
3874 - .catchall {:try_start_76 .. :try_end_ba} :catchall_17e
3875 + .catchall {:try_start_76 .. :try_end_ba} :catchall_17b
3876 .catch Ljava/lang/IllegalArgumentException; {:try_start_76 .. :try_end_ba} :catch_bb
3877 .catch Ljava/io/EOFException; {:try_start_76 .. :try_end_ba} :catch_d5
3878 .catch Ljava/io/IOException; {:try_start_76 .. :try_end_ba} :catch_10b
3879 @@ -3151,7 +3151,7 @@
3881 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3882 :try_end_d4
3883 - .catchall {:try_start_bc .. :try_end_d4} :catchall_17e
3884 + .catchall {:try_start_bc .. :try_end_d4} :catchall_17b
3885 .catch Ljava/io/EOFException; {:try_start_bc .. :try_end_d4} :catch_d5
3886 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_d4} :catch_10b
3888 @@ -3187,7 +3187,7 @@
3890 move-result v19
3892 - if-eqz v19, :cond_165
3893 + if-eqz v19, :cond_162
3895 const/4 v3, 0x0
3897 @@ -3199,7 +3199,7 @@
3899 move/from16 v1, v19
3901 - if-ne v0, v1, :cond_12f
3902 + if-ne v0, v1, :cond_12c
3904 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3906 @@ -3221,7 +3221,7 @@
3908 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)V
3909 :try_end_109
3910 - .catchall {:try_start_e1 .. :try_end_109} :catchall_17e
3911 + .catchall {:try_start_e1 .. :try_end_109} :catchall_17b
3912 .catch Ljava/lang/IllegalArgumentException; {:try_start_e1 .. :try_end_109} :catch_bb
3913 .catch Ljava/io/EOFException; {:try_start_e1 .. :try_end_109} :catch_d5
3914 .catch Ljava/io/IOException; {:try_start_e1 .. :try_end_109} :catch_10b
3915 @@ -3257,24 +3257,19 @@
3917 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3918 :try_end_125
3919 - .catchall {:try_start_10d .. :try_end_125} :catchall_23d
3920 + .catchall {:try_start_10d .. :try_end_125} :catchall_23a
3922 if-eqz v8, :cond_33
3924 :try_start_127
3925 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
3926 :try_end_12a
3927 - .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_12c
3928 + .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_de
3930 goto/16 :goto_33
3932 - :catch_12c
3933 - move-exception v19
3935 - goto/16 :goto_33
3937 - :cond_12f
3938 - :try_start_12f
3939 + :cond_12c
3940 + :try_start_12c
3941 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3943 move-result v19
3944 @@ -3285,7 +3280,7 @@
3946 move/from16 v1, v20
3948 - if-ne v0, v1, :cond_150
3949 + if-ne v0, v1, :cond_14d
3951 new-instance v3, Landroid/net/LinkAddress;
3953 @@ -3307,7 +3302,7 @@
3955 invoke-direct {v3, v0, v1}, Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
3957 - :cond_150
3958 + :cond_14d
3959 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3961 move-result v19
3962 @@ -3330,7 +3325,7 @@
3964 goto :goto_fd
3966 - :cond_165
3967 + :cond_162
3968 const-string v19, "dns"
3970 move-object/from16 v0, v19
3971 @@ -3339,7 +3334,7 @@
3973 move-result v19
3975 - if-eqz v19, :cond_186
3976 + if-eqz v19, :cond_183
3978 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3980 @@ -3352,33 +3347,33 @@
3981 move-object/from16 v0, v19
3983 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addDns(Ljava/net/InetAddress;)V
3984 - :try_end_17c
3985 - .catchall {:try_start_12f .. :try_end_17c} :catchall_17e
3986 - .catch Ljava/lang/IllegalArgumentException; {:try_start_12f .. :try_end_17c} :catch_bb
3987 - .catch Ljava/io/EOFException; {:try_start_12f .. :try_end_17c} :catch_d5
3988 - .catch Ljava/io/IOException; {:try_start_12f .. :try_end_17c} :catch_10b
3989 + :try_end_179
3990 + .catchall {:try_start_12c .. :try_end_179} :catchall_17b
3991 + .catch Ljava/lang/IllegalArgumentException; {:try_start_12c .. :try_end_179} :catch_bb
3992 + .catch Ljava/io/EOFException; {:try_start_12c .. :try_end_179} :catch_d5
3993 + .catch Ljava/io/IOException; {:try_start_12c .. :try_end_179} :catch_10b
3995 goto/16 :goto_72
3997 - :catchall_17e
3998 + :catchall_17b
3999 move-exception v19
4001 move-object v8, v9
4003 - :goto_180
4004 - if-eqz v8, :cond_185
4005 + :goto_17d
4006 + if-eqz v8, :cond_182
4008 - :try_start_182
4009 + :try_start_17f
4010 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
4011 - :try_end_185
4012 - .catch Ljava/lang/Exception; {:try_start_182 .. :try_end_185} :catch_23a
4013 + :try_end_182
4014 + .catch Ljava/lang/Exception; {:try_start_17f .. :try_end_182} :catch_234
4016 - :cond_185
4017 - :goto_185
4018 + :cond_182
4019 + :goto_182
4020 throw v19
4022 - :cond_186
4023 - :try_start_186
4024 + :cond_183
4025 + :try_start_183
4026 const-string/jumbo v19, "proxySettings"
4028 move-object/from16 v0, v19
4029 @@ -3387,7 +3382,7 @@
4031 move-result v19
4033 - if-eqz v19, :cond_19b
4034 + if-eqz v19, :cond_198
4036 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4038 @@ -3399,7 +3394,7 @@
4040 goto/16 :goto_72
4042 - :cond_19b
4043 + :cond_198
4044 const-string/jumbo v19, "proxyHost"
4046 move-object/from16 v0, v19
4047 @@ -3408,7 +3403,7 @@
4049 move-result v19
4051 - if-eqz v19, :cond_1ac
4052 + if-eqz v19, :cond_1a9
4054 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4056 @@ -3416,7 +3411,7 @@
4058 goto/16 :goto_72
4060 - :cond_1ac
4061 + :cond_1a9
4062 const-string/jumbo v19, "proxyPort"
4064 move-object/from16 v0, v19
4065 @@ -3425,7 +3420,7 @@
4067 move-result v19
4069 - if-eqz v19, :cond_1bd
4070 + if-eqz v19, :cond_1ba
4072 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4074 @@ -3433,7 +3428,7 @@
4076 goto/16 :goto_72
4078 - :cond_1bd
4079 + :cond_1ba
4080 const-string v19, "exclusionList"
4082 move-object/from16 v0, v19
4083 @@ -3450,7 +3445,7 @@
4085 goto/16 :goto_72
4087 - :cond_1cd
4088 + :cond_1ca
4089 new-instance v19, Ljava/lang/StringBuilder;
4091 invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
4092 @@ -3478,16 +3473,16 @@
4093 move-result-object v19
4095 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4096 - :try_end_1ec
4097 - .catchall {:try_start_186 .. :try_end_1ec} :catchall_17e
4098 - .catch Ljava/lang/IllegalArgumentException; {:try_start_186 .. :try_end_1ec} :catch_bb
4099 - .catch Ljava/io/EOFException; {:try_start_186 .. :try_end_1ec} :catch_d5
4100 - .catch Ljava/io/IOException; {:try_start_186 .. :try_end_1ec} :catch_10b
4101 + :try_end_1e9
4102 + .catchall {:try_start_183 .. :try_end_1e9} :catchall_17b
4103 + .catch Ljava/lang/IllegalArgumentException; {:try_start_183 .. :try_end_1e9} :catch_bb
4104 + .catch Ljava/io/EOFException; {:try_start_183 .. :try_end_1e9} :catch_d5
4105 + .catch Ljava/io/IOException; {:try_start_183 .. :try_end_1e9} :catch_10b
4107 goto/16 :goto_72
4109 - :cond_1ee
4110 - :try_start_1ee
4111 + :cond_1eb
4112 + :try_start_1eb
4113 iput-object v13, v2, Landroid/net/wifi/WifiConfiguration;->linkProperties:Landroid/net/LinkProperties;
4115 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$IpAssignment:[I
4116 @@ -3498,14 +3493,14 @@
4118 aget v19, v19, v21
4120 - packed-switch v19, :pswitch_data_246
4121 + packed-switch v19, :pswitch_data_244
4123 const-string v19, "Ignore invalid ip assignment while reading"
4125 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4127 - :goto_200
4128 - :pswitch_200
4129 + :goto_1fd
4130 + :pswitch_1fd
4131 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$ProxySettings:[I
4133 invoke-virtual/range {v17 .. v17}, Landroid/net/wifi/WifiConfiguration$ProxySettings;->ordinal()I
4134 @@ -3514,7 +3509,7 @@
4136 aget v19, v19, v21
4138 - packed-switch v19, :pswitch_data_250
4139 + packed-switch v19, :pswitch_data_24e
4141 const-string v19, "Ignore invalid proxy settings while reading"
4143 @@ -3522,27 +3517,27 @@
4145 goto/16 :goto_64
4147 - :catchall_212
4148 + :catchall_20f
4149 move-exception v19
4151 monitor-exit v20
4152 - :try_end_214
4153 - .catchall {:try_start_1ee .. :try_end_214} :catchall_212
4154 + :try_end_211
4155 + .catchall {:try_start_1eb .. :try_end_211} :catchall_20f
4157 - :try_start_214
4158 + :try_start_211
4159 throw v19
4160 - :try_end_215
4161 - .catchall {:try_start_214 .. :try_end_215} :catchall_17e
4162 - .catch Ljava/io/EOFException; {:try_start_214 .. :try_end_215} :catch_d5
4163 - .catch Ljava/io/IOException; {:try_start_214 .. :try_end_215} :catch_10b
4164 + :try_end_212
4165 + .catchall {:try_start_211 .. :try_end_212} :catchall_17b
4166 + .catch Ljava/io/EOFException; {:try_start_211 .. :try_end_212} :catch_d5
4167 + .catch Ljava/io/IOException; {:try_start_211 .. :try_end_212} :catch_10b
4169 - :pswitch_215
4170 - :try_start_215
4171 + :pswitch_212
4172 + :try_start_212
4173 iput-object v10, v2, Landroid/net/wifi/WifiConfiguration;->ipAssignment:Landroid/net/wifi/WifiConfiguration$IpAssignment;
4175 - goto :goto_200
4176 + goto :goto_1fd
4178 - :pswitch_218
4179 + :pswitch_215
4180 move-object/from16 v0, v17
4182 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4183 @@ -3559,63 +3554,65 @@
4185 goto/16 :goto_64
4187 - :pswitch_22a
4188 + :pswitch_227
4189 move-object/from16 v0, v17
4191 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4192 - :try_end_22e
4193 - .catchall {:try_start_215 .. :try_end_22e} :catchall_212
4194 + :try_end_22b
4195 + .catchall {:try_start_212 .. :try_end_22b} :catchall_20f
4197 goto/16 :goto_64
4199 - :cond_230
4200 - :try_start_230
4201 + :cond_22d
4202 + :try_start_22d
4203 const-string v19, "Missing id while parsing configuration"
4205 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4206 - :try_end_235
4207 - .catchall {:try_start_230 .. :try_end_235} :catchall_17e
4208 - .catch Ljava/io/EOFException; {:try_start_230 .. :try_end_235} :catch_d5
4209 - .catch Ljava/io/IOException; {:try_start_230 .. :try_end_235} :catch_10b
4210 + :try_end_232
4211 + .catchall {:try_start_22d .. :try_end_232} :catchall_17b
4212 + .catch Ljava/io/EOFException; {:try_start_22d .. :try_end_232} :catch_d5
4213 + .catch Ljava/io/IOException; {:try_start_22d .. :try_end_232} :catch_10b
4215 goto/16 :goto_65
4217 + :catch_234
4218 + move-exception v20
4220 + goto/16 :goto_182
4222 :catch_237
4223 move-exception v19
4225 goto/16 :goto_32
4227 - :catch_23a
4228 - move-exception v20
4230 - goto/16 :goto_185
4232 - :catchall_23d
4233 + :catchall_23a
4234 move-exception v19
4236 - goto/16 :goto_180
4237 + goto/16 :goto_17d
4239 - :catch_240
4240 + :catch_23d
4241 move-exception v4
4243 goto/16 :goto_10d
4245 - :catch_243
4246 + :catch_240
4247 move-exception v19
4249 goto/16 :goto_d7
4251 - :pswitch_data_246
4252 + nop
4254 + :pswitch_data_244
4255 .packed-switch 0x1
4256 - :pswitch_215
4257 - :pswitch_215
4258 - :pswitch_200
4259 + :pswitch_212
4260 + :pswitch_212
4261 + :pswitch_1fd
4262 .end packed-switch
4264 - :pswitch_data_250
4265 + :pswitch_data_24e
4266 .packed-switch 0x1
4267 - :pswitch_218
4268 - :pswitch_22a
4269 + :pswitch_215
4270 + :pswitch_227
4271 :pswitch_64
4272 .end packed-switch
4273 .end method
4274 @@ -4756,8 +4753,8 @@
4276 invoke-direct {v11, v15}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
4277 :try_end_12
4278 - .catchall {:try_start_1 .. :try_end_12} :catchall_1c1
4279 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1d0
4280 + .catchall {:try_start_1 .. :try_end_12} :catchall_1bd
4281 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1ce
4283 const/4 v15, 0x2
4285 @@ -4768,7 +4765,7 @@
4287 monitor-enter v16
4288 :try_end_19
4289 - .catchall {:try_start_13 .. :try_end_19} :catchall_1cd
4290 + .catchall {:try_start_13 .. :try_end_19} :catchall_1cb
4291 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_19} :catch_71
4293 :try_start_19
4294 @@ -4814,7 +4811,7 @@
4296 aget v15, v15, v17
4298 - packed-switch v15, :pswitch_data_1d6
4299 + packed-switch v15, :pswitch_data_1d2
4301 const-string v15, "Ignore invalid ip assignment while writing"
4303 @@ -4834,7 +4831,7 @@
4305 aget v15, v15, v17
4307 - packed-switch v15, :pswitch_data_1e0
4308 + packed-switch v15, :pswitch_data_1dc
4310 const-string v15, "Ignore invalid proxy settings while writing"
4312 @@ -4876,7 +4873,7 @@
4313 :try_start_70
4314 throw v15
4315 :try_end_71
4316 - .catchall {:try_start_70 .. :try_end_71} :catchall_1cd
4317 + .catchall {:try_start_70 .. :try_end_71} :catchall_1cb
4318 .catch Ljava/io/IOException; {:try_start_70 .. :try_end_71} :catch_71
4320 :catch_71
4321 @@ -4890,14 +4887,14 @@
4323 invoke-static {v15}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4324 :try_end_78
4325 - .catchall {:try_start_73 .. :try_end_78} :catchall_1c1
4326 + .catchall {:try_start_73 .. :try_end_78} :catchall_1bd
4328 if-eqz v10, :cond_7d
4330 :try_start_7a
4331 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4332 :try_end_7d
4333 - .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c8
4334 + .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c6
4336 :cond_7d
4337 :goto_7d
4338 @@ -5226,74 +5223,71 @@
4339 :try_end_1b5
4340 .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_6e
4342 - if-eqz v11, :cond_1d3
4343 + if-eqz v11, :cond_1ba
4345 :try_start_1b7
4346 invoke-virtual {v11}, Ljava/io/DataOutputStream;->close()V
4347 :try_end_1ba
4348 - .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1bd
4350 - move-object v10, v11
4352 - goto/16 :goto_7d
4354 - :catch_1bd
4355 - move-exception v15
4356 + .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1c9
4358 + :cond_1ba
4359 + :goto_1ba
4360 move-object v10, v11
4362 goto/16 :goto_7d
4364 - :catchall_1c1
4365 + :catchall_1bd
4366 move-exception v15
4368 - :goto_1c2
4369 - if-eqz v10, :cond_1c7
4370 + :goto_1be
4371 + if-eqz v10, :cond_1c3
4373 - :try_start_1c4
4374 + :try_start_1c0
4375 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4376 - :try_end_1c7
4377 - .catch Ljava/lang/Exception; {:try_start_1c4 .. :try_end_1c7} :catch_1cb
4378 + :try_end_1c3
4379 + .catch Ljava/lang/Exception; {:try_start_1c0 .. :try_end_1c3} :catch_1c4
4381 - :cond_1c7
4382 - :goto_1c7
4383 + :cond_1c3
4384 + :goto_1c3
4385 throw v15
4387 - :catch_1c8
4388 + :catch_1c4
4389 + move-exception v16
4391 + goto :goto_1c3
4393 + :catch_1c6
4394 move-exception v15
4396 goto/16 :goto_7d
4398 - :catch_1cb
4399 - move-exception v16
4400 + :catch_1c9
4401 + move-exception v15
4403 - goto :goto_1c7
4404 + goto :goto_1ba
4406 - :catchall_1cd
4407 + :catchall_1cb
4408 move-exception v15
4410 move-object v10, v11
4412 - goto :goto_1c2
4413 + goto :goto_1be
4415 - :catch_1d0
4416 + :catch_1ce
4417 move-exception v3
4419 goto/16 :goto_73
4421 - :cond_1d3
4422 - move-object v10, v11
4424 - goto/16 :goto_7d
4425 + nop
4427 - :pswitch_data_1d6
4428 + :pswitch_data_1d2
4429 .packed-switch 0x1
4430 :pswitch_7e
4431 :pswitch_155
4432 :pswitch_46
4433 .end packed-switch
4435 - :pswitch_data_1e0
4436 + :pswitch_data_1dc
4437 .packed-switch 0x1
4438 :pswitch_166
4439 :pswitch_1a2
4440 diff -Npru stock_framework/smali/android/opengl/GLSurfaceView$GLThread.smali pdroid_framework/smali/android/opengl/GLSurfaceView$GLThread.smali
4441 --- stock_framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-07-02 10:16:18.196196398 -0700
4442 +++ pdroid_framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-07-02 10:16:50.432874581 -0700
4443 @@ -161,7 +161,7 @@
4445 monitor-enter v14
4446 :try_end_26
4447 - .catchall {:try_start_21 .. :try_end_26} :catchall_160
4448 + .catchall {:try_start_21 .. :try_end_26} :catchall_15d
4450 :goto_26
4451 :try_start_26
4452 @@ -169,11 +169,11 @@
4454 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldExit:Z
4456 - if-eqz v13, :cond_3d
4457 + if-eqz v13, :cond_3a
4459 monitor-exit v14
4460 :try_end_2d
4461 - .catchall {:try_start_26 .. :try_end_2d} :catchall_15d
4462 + .catchall {:try_start_26 .. :try_end_2d} :catchall_15a
4464 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4466 @@ -187,21 +187,14 @@
4467 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4469 monitor-exit v14
4470 + :try_end_39
4471 + .catchall {:try_start_32 .. :try_end_39} :catchall_212
4473 :goto_39
4474 return-void
4476 - :catchall_3a
4477 - move-exception v13
4479 - monitor-exit v14
4480 - :try_end_3c
4481 - .catchall {:try_start_32 .. :try_end_3c} :catchall_3a
4483 - throw v13
4485 - :cond_3d
4486 - :try_start_3d
4487 + :cond_3a
4488 + :try_start_3a
4489 move-object/from16 v0, p0
4491 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEventQueue:Ljava/util/ArrayList;
4492 @@ -210,7 +203,7 @@
4494 move-result v13
4496 - if-nez v13, :cond_5c
4497 + if-nez v13, :cond_59
4499 move-object/from16 v0, p0
4501 @@ -228,24 +221,24 @@
4503 move-object v5, v0
4505 - :goto_54
4506 + :goto_51
4507 monitor-exit v14
4508 - :try_end_55
4509 - .catchall {:try_start_3d .. :try_end_55} :catchall_15d
4510 + :try_end_52
4511 + .catchall {:try_start_3a .. :try_end_52} :catchall_15a
4513 - if-eqz v5, :cond_1a9
4514 + if-eqz v5, :cond_1a6
4516 - :try_start_57
4517 + :try_start_54
4518 invoke-interface {v5}, Ljava/lang/Runnable;->run()V
4519 - :try_end_5a
4520 - .catchall {:try_start_57 .. :try_end_5a} :catchall_160
4521 + :try_end_57
4522 + .catchall {:try_start_54 .. :try_end_57} :catchall_15d
4524 const/4 v5, 0x0
4526 goto :goto_21
4528 - :cond_5c
4529 - :try_start_5c
4530 + :cond_59
4531 + :try_start_59
4532 move-object/from16 v0, p0
4534 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4535 @@ -254,7 +247,7 @@
4537 iget-boolean v15, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestPaused:Z
4539 - if-eq v13, v15, :cond_75
4540 + if-eq v13, v15, :cond_72
4542 move-object/from16 v0, p0
4544 @@ -270,12 +263,12 @@
4546 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4548 - :cond_75
4549 + :cond_72
4550 move-object/from16 v0, p0
4552 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldReleaseEglContext:Z
4554 - if-eqz v13, :cond_87
4555 + if-eqz v13, :cond_84
4557 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4559 @@ -289,8 +282,8 @@
4561 const/4 v1, 0x1
4563 - :cond_87
4564 - if-eqz v8, :cond_90
4565 + :cond_84
4566 + if-eqz v8, :cond_8d
4568 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4570 @@ -298,18 +291,18 @@
4572 const/4 v8, 0x0
4574 - :cond_90
4575 + :cond_8d
4576 move-object/from16 v0, p0
4578 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4580 - if-eqz v13, :cond_c7
4581 + if-eqz v13, :cond_c4
4583 move-object/from16 v0, p0
4585 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4587 - if-eqz v13, :cond_c7
4588 + if-eqz v13, :cond_c4
4590 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4592 @@ -322,7 +315,7 @@
4594 move-result v13
4596 - if-eqz v13, :cond_b3
4597 + if-eqz v13, :cond_b0
4599 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4601 @@ -332,12 +325,12 @@
4603 move-result v13
4605 - if-eqz v13, :cond_b6
4606 + if-eqz v13, :cond_b3
4608 - :cond_b3
4609 + :cond_b0
4610 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4612 - :cond_b6
4613 + :cond_b3
4614 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4616 move-result-object v13
4617 @@ -346,7 +339,7 @@
4619 move-result v13
4621 - if-eqz v13, :cond_c7
4622 + if-eqz v13, :cond_c4
4624 move-object/from16 v0, p0
4626 @@ -354,28 +347,28 @@
4628 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->finish()V
4630 - :cond_c7
4631 + :cond_c4
4632 move-object/from16 v0, p0
4634 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4636 - if-nez v13, :cond_e8
4637 + if-nez v13, :cond_e5
4639 move-object/from16 v0, p0
4641 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4643 - if-nez v13, :cond_e8
4644 + if-nez v13, :cond_e5
4646 move-object/from16 v0, p0
4648 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4650 - if-eqz v13, :cond_dc
4651 + if-eqz v13, :cond_d9
4653 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4655 - :cond_dc
4656 + :cond_d9
4657 const/4 v13, 0x1
4659 move-object/from16 v0, p0
4660 @@ -388,18 +381,18 @@
4662 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4664 - :cond_e8
4665 + :cond_e5
4666 move-object/from16 v0, p0
4668 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4670 - if-eqz v13, :cond_100
4671 + if-eqz v13, :cond_fd
4673 move-object/from16 v0, p0
4675 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4677 - if-eqz v13, :cond_100
4678 + if-eqz v13, :cond_fd
4680 const/4 v13, 0x0
4682 @@ -413,8 +406,8 @@
4684 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4686 - :cond_100
4687 - if-eqz v4, :cond_110
4688 + :cond_fd
4689 + if-eqz v4, :cond_10d
4691 const/4 v12, 0x0
4693 @@ -432,36 +425,36 @@
4695 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4697 - :cond_110
4698 + :cond_10d
4699 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->readyToDraw()Z
4701 move-result v13
4703 - if-eqz v13, :cond_1a0
4704 + if-eqz v13, :cond_19d
4706 move-object/from16 v0, p0
4708 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4710 - if-nez v13, :cond_11f
4711 + if-nez v13, :cond_11c
4713 - if-eqz v1, :cond_16e
4714 + if-eqz v1, :cond_16b
4716 const/4 v1, 0x0
4718 - :cond_11f
4719 - :goto_11f
4720 + :cond_11c
4721 + :goto_11c
4722 move-object/from16 v0, p0
4724 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4726 - if-eqz v13, :cond_132
4727 + if-eqz v13, :cond_12f
4729 move-object/from16 v0, p0
4731 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4733 - if-nez v13, :cond_132
4734 + if-nez v13, :cond_12f
4736 const/4 v13, 0x1
4738 @@ -473,12 +466,12 @@
4740 const/4 v9, 0x1
4742 - :cond_132
4743 + :cond_12f
4744 move-object/from16 v0, p0
4746 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4748 - if-eqz v13, :cond_1a0
4749 + if-eqz v13, :cond_19d
4751 move-object/from16 v0, p0
4753 @@ -489,7 +482,7 @@
4755 move-result v13
4757 - if-eqz v13, :cond_19a
4758 + if-eqz v13, :cond_197
4760 const/4 v9, 0x1
4762 @@ -512,28 +505,28 @@
4763 #setter for: Landroid/opengl/GLSurfaceView;->mSizeChanged:Z
4764 invoke-static {v13, v15}, Landroid/opengl/GLSurfaceView;->access$1002(Landroid/opengl/GLSurfaceView;Z)Z
4766 - :goto_154
4767 + :goto_151
4768 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4770 move-result-object v13
4772 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4774 - goto/16 :goto_54
4775 + goto/16 :goto_51
4777 - :catchall_15d
4778 + :catchall_15a
4779 move-exception v13
4781 monitor-exit v14
4782 - :try_end_15f
4783 - .catchall {:try_start_5c .. :try_end_15f} :catchall_15d
4784 + :try_end_15c
4785 + .catchall {:try_start_59 .. :try_end_15c} :catchall_15a
4787 - :try_start_15f
4788 + :try_start_15c
4789 throw v13
4790 - :try_end_160
4791 - .catchall {:try_start_15f .. :try_end_160} :catchall_160
4792 + :try_end_15d
4793 + .catchall {:try_start_15c .. :try_end_15d} :catchall_15d
4795 - :catchall_160
4796 + :catchall_15d
4797 move-exception v13
4799 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4800 @@ -542,19 +535,19 @@
4802 monitor-enter v14
4804 - :try_start_166
4805 + :try_start_163
4806 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4808 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4810 monitor-exit v14
4811 - :try_end_16d
4812 - .catchall {:try_start_166 .. :try_end_16d} :catchall_212
4813 + :try_end_16a
4814 + .catchall {:try_start_163 .. :try_end_16a} :catchall_20f
4816 throw v13
4818 - :cond_16e
4819 - :try_start_16e
4820 + :cond_16b
4821 + :try_start_16b
4822 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4824 move-result-object v13
4825 @@ -562,26 +555,26 @@
4826 move-object/from16 v0, p0
4828 invoke-virtual {v13, v0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->tryAcquireEglContextLocked(Landroid/opengl/GLSurfaceView$GLThread;)Z
4829 - :try_end_177
4830 - .catchall {:try_start_16e .. :try_end_177} :catchall_15d
4831 + :try_end_174
4832 + .catchall {:try_start_16b .. :try_end_174} :catchall_15a
4834 move-result v13
4836 - if-eqz v13, :cond_11f
4837 + if-eqz v13, :cond_11c
4839 - :try_start_17a
4840 + :try_start_177
4841 move-object/from16 v0, p0
4843 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4845 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->start()V
4846 - :try_end_181
4847 - .catchall {:try_start_17a .. :try_end_181} :catchall_15d
4848 - .catch Ljava/lang/RuntimeException; {:try_start_17a .. :try_end_181} :catch_18f
4849 + :try_end_17e
4850 + .catchall {:try_start_177 .. :try_end_17e} :catchall_15a
4851 + .catch Ljava/lang/RuntimeException; {:try_start_177 .. :try_end_17e} :catch_18c
4853 const/4 v13, 0x1
4855 - :try_start_182
4856 + :try_start_17f
4857 move-object/from16 v0, p0
4859 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4860 @@ -594,9 +587,9 @@
4862 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4864 - goto :goto_11f
4865 + goto :goto_11c
4867 - :catch_18f
4868 + :catch_18c
4869 move-exception v10
4871 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4872 @@ -609,30 +602,30 @@
4874 throw v10
4876 - :cond_19a
4877 + :cond_197
4878 const/4 v13, 0x0
4880 move-object/from16 v0, p0
4882 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestRender:Z
4884 - goto :goto_154
4885 + goto :goto_151
4887 - :cond_1a0
4888 + :cond_19d
4889 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4891 move-result-object v13
4893 invoke-virtual {v13}, Ljava/lang/Object;->wait()V
4894 - :try_end_1a7
4895 - .catchall {:try_start_182 .. :try_end_1a7} :catchall_15d
4896 + :try_end_1a4
4897 + .catchall {:try_start_17f .. :try_end_1a4} :catchall_15a
4899 goto/16 :goto_26
4901 - :cond_1a9
4902 - if-eqz v3, :cond_1da
4903 + :cond_1a6
4904 + if-eqz v3, :cond_1d7
4906 - :try_start_1ab
4907 + :try_start_1a8
4908 move-object/from16 v0, p0
4910 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4911 @@ -654,10 +647,10 @@
4912 check-cast v0, Ljavax/microedition/khronos/opengles/GL10;
4914 move-object v6, v0
4915 - :try_end_1bf
4916 - .catchall {:try_start_1ab .. :try_end_1bf} :catchall_160
4917 + :try_end_1bc
4918 + .catchall {:try_start_1a8 .. :try_end_1bc} :catchall_15d
4920 - if-nez v6, :cond_1d2
4921 + if-nez v6, :cond_1cf
4923 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4925 @@ -665,7 +658,7 @@
4927 monitor-enter v14
4929 - :try_start_1c6
4930 + :try_start_1c3
4931 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4933 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4934 @@ -674,17 +667,17 @@
4936 goto/16 :goto_39
4938 - :catchall_1cf
4939 + :catchall_1cc
4940 move-exception v13
4942 monitor-exit v14
4943 - :try_end_1d1
4944 - .catchall {:try_start_1c6 .. :try_end_1d1} :catchall_1cf
4945 + :try_end_1ce
4946 + .catchall {:try_start_1c3 .. :try_end_1ce} :catchall_1cc
4948 throw v13
4950 - :cond_1d2
4951 - :try_start_1d2
4952 + :cond_1cf
4953 + :try_start_1cf
4954 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4956 move-result-object v13
4957 @@ -693,8 +686,8 @@
4959 const/4 v3, 0x0
4961 - :cond_1da
4962 - if-eqz v2, :cond_1ea
4963 + :cond_1d7
4964 + if-eqz v2, :cond_1e7
4966 move-object/from16 v0, p0
4968 @@ -710,8 +703,8 @@
4970 const/4 v2, 0x0
4972 - :cond_1ea
4973 - if-eqz v9, :cond_1fb
4974 + :cond_1e7
4975 + if-eqz v9, :cond_1f8
4977 move-object/from16 v0, p0
4979 @@ -727,7 +720,7 @@
4981 const/4 v9, 0x0
4983 - :cond_1fb
4984 + :cond_1f8
4985 move-object/from16 v0, p0
4987 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRenderer:Landroid/opengl/GLSurfaceView$Renderer;
4988 @@ -739,22 +732,32 @@
4989 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4991 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->swap()Z
4992 - :try_end_209
4993 - .catchall {:try_start_1d2 .. :try_end_209} :catchall_160
4994 + :try_end_206
4995 + .catchall {:try_start_1cf .. :try_end_206} :catchall_15d
4997 move-result v13
4999 - if-nez v13, :cond_20d
5000 + if-nez v13, :cond_20a
5002 const/4 v8, 0x1
5004 - :cond_20d
5005 + :cond_20a
5006 if-eqz v12, :cond_21
5008 const/4 v4, 0x1
5010 goto/16 :goto_21
5012 + :catchall_20f
5013 + move-exception v13
5015 + :try_start_210
5016 + monitor-exit v14
5017 + :try_end_211
5018 + .catchall {:try_start_210 .. :try_end_211} :catchall_20f
5020 + throw v13
5022 :catchall_212
5023 move-exception v13
5025 @@ -1371,39 +1374,37 @@
5026 :try_start_1a
5027 invoke-direct {p0}, Landroid/opengl/GLSurfaceView$GLThread;->guardedRun()V
5028 :try_end_1d
5029 - .catchall {:try_start_1a .. :try_end_1d} :catchall_2e
5030 - .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_25
5031 + .catchall {:try_start_1a .. :try_end_1d} :catchall_25
5032 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_2e
5034 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5036 move-result-object v0
5038 + :goto_21
5039 invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5041 - :goto_24
5042 return-void
5044 - :catch_25
5045 + :catchall_25
5046 move-exception v0
5048 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5050 - move-result-object v0
5051 + move-result-object v1
5053 - invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5054 + invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5056 - goto :goto_24
5057 + throw v0
5059 - :catchall_2e
5060 + :catch_2e
5061 move-exception v0
5063 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5065 - move-result-object v1
5067 - invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5068 + move-result-object v0
5070 - throw v0
5071 + goto :goto_21
5072 .end method
5074 .method public setRenderMode(I)V
5075 diff -Npru stock_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali pdroid_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali
5076 --- stock_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-07-02 10:16:18.452257384 -0700
5077 +++ pdroid_framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-07-02 10:16:50.752950818 -0700
5078 @@ -582,14 +582,14 @@
5080 invoke-interface {v0, v1, v2, v3}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5081 :try_end_1fb
5082 - .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21d
5083 + .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21a
5084 .catch Landroid/os/RemoteException; {:try_start_1e5 .. :try_end_1fb} :catch_20d
5086 + :goto_1fb
5087 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5088 invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5090 :cond_1fe
5091 - :goto_1fe
5092 move-object/from16 v0, p1
5094 iget v0, v0, Landroid/os/StrictMode$ViolationInfo;->policy:I
5095 @@ -619,14 +619,11 @@
5097 invoke-static {v0, v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5098 :try_end_219
5099 - .catchall {:try_start_20e .. :try_end_219} :catchall_21d
5100 + .catchall {:try_start_20e .. :try_end_219} :catchall_21a
5102 - #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5103 - invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5105 - goto :goto_1fe
5106 + goto :goto_1fb
5108 - :catchall_21d
5109 + :catchall_21a
5110 move-exception v19
5112 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5113 diff -Npru stock_framework/smali/android/os/StrictMode.smali pdroid_framework/smali/android/os/StrictMode.smali
5114 --- stock_framework/smali/android/os/StrictMode.smali 2012-07-02 10:16:18.466260721 -0700
5115 +++ pdroid_framework/smali/android/os/StrictMode.smali 2012-07-02 10:16:50.774956059 -0700
5116 @@ -1686,13 +1686,13 @@
5118 invoke-interface {v0, v1, v2, v5}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5119 :try_end_d3
5120 - .catchall {:try_start_bf .. :try_end_d3} :catchall_fc
5121 + .catchall {:try_start_bf .. :try_end_d3} :catchall_f9
5122 .catch Landroid/os/RemoteException; {:try_start_bf .. :try_end_d3} :catch_ec
5124 + :goto_d3
5125 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5127 :cond_d6
5128 - :goto_d6
5129 if-eqz v10, :cond_a4
5131 sget-object v17, Ljava/lang/System;->err:Ljava/io/PrintStream;
5132 @@ -1727,13 +1727,11 @@
5134 invoke-static {v0, v1, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5135 :try_end_f8
5136 - .catchall {:try_start_ed .. :try_end_f8} :catchall_fc
5137 + .catchall {:try_start_ed .. :try_end_f8} :catchall_f9
5139 - invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5141 - goto :goto_d6
5142 + goto :goto_d3
5144 - :catchall_fc
5145 + :catchall_f9
5146 move-exception v17
5148 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5149 diff -Npru stock_framework/smali/android/privacy/IPrivacySettingsManager.smali pdroid_framework/smali/android/privacy/IPrivacySettingsManager.smali
5150 --- stock_framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 16:00:00.000000000 -0800
5151 +++ pdroid_framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-07-02 10:16:50.997008949 -0700
5152 @@ -0,0 +1,104 @@
5153 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
5154 +.super Ljava/lang/Object;
5155 +.source "IPrivacySettingsManager.java"
5157 +# interfaces
5158 +.implements Landroid/os/IInterface;
5161 +# annotations
5162 +.annotation system Ldalvik/annotation/MemberClasses;
5163 + value = {
5164 + Landroid/privacy/IPrivacySettingsManager$Stub;
5166 +.end annotation
5169 +# virtual methods
5170 +.method public abstract addObserver(Ljava/lang/String;)V
5171 + .annotation system Ldalvik/annotation/Throws;
5172 + value = {
5173 + Landroid/os/RemoteException;
5175 + .end annotation
5176 +.end method
5178 +.method public abstract deleteSettings(Ljava/lang/String;)Z
5179 + .annotation system Ldalvik/annotation/Throws;
5180 + value = {
5181 + Landroid/os/RemoteException;
5183 + .end annotation
5184 +.end method
5186 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5187 + .annotation system Ldalvik/annotation/Throws;
5188 + value = {
5189 + Landroid/os/RemoteException;
5191 + .end annotation
5192 +.end method
5194 +.method public abstract getVersion()D
5195 + .annotation system Ldalvik/annotation/Throws;
5196 + value = {
5197 + Landroid/os/RemoteException;
5199 + .end annotation
5200 +.end method
5202 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5203 + .annotation system Ldalvik/annotation/Throws;
5204 + value = {
5205 + Landroid/os/RemoteException;
5207 + .end annotation
5208 +.end method
5210 +.method public abstract purgeSettings()Z
5211 + .annotation system Ldalvik/annotation/Throws;
5212 + value = {
5213 + Landroid/os/RemoteException;
5215 + .end annotation
5216 +.end method
5218 +.method public abstract registerObservers()V
5219 + .annotation system Ldalvik/annotation/Throws;
5220 + value = {
5221 + Landroid/os/RemoteException;
5223 + .end annotation
5224 +.end method
5226 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
5227 + .annotation system Ldalvik/annotation/Throws;
5228 + value = {
5229 + Landroid/os/RemoteException;
5231 + .end annotation
5232 +.end method
5234 +.method public abstract setBootCompleted()V
5235 + .annotation system Ldalvik/annotation/Throws;
5236 + value = {
5237 + Landroid/os/RemoteException;
5239 + .end annotation
5240 +.end method
5242 +.method public abstract setEnabled(Z)Z
5243 + .annotation system Ldalvik/annotation/Throws;
5244 + value = {
5245 + Landroid/os/RemoteException;
5247 + .end annotation
5248 +.end method
5250 +.method public abstract setNotificationsEnabled(Z)Z
5251 + .annotation system Ldalvik/annotation/Throws;
5252 + value = {
5253 + Landroid/os/RemoteException;
5255 + .end annotation
5256 +.end method
5257 diff -Npru stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
5258 --- stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 16:00:00.000000000 -0800
5259 +++ pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-07-02 10:16:50.997008949 -0700
5260 @@ -0,0 +1,743 @@
5261 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5262 +.super Ljava/lang/Object;
5263 +.source "IPrivacySettingsManager.java"
5265 +# interfaces
5266 +.implements Landroid/privacy/IPrivacySettingsManager;
5269 +# annotations
5270 +.annotation system Ldalvik/annotation/EnclosingClass;
5271 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
5272 +.end annotation
5274 +.annotation system Ldalvik/annotation/InnerClass;
5275 + accessFlags = 0xa
5276 + name = "Proxy"
5277 +.end annotation
5280 +# instance fields
5281 +.field private mRemote:Landroid/os/IBinder;
5284 +# direct methods
5285 +.method constructor <init>(Landroid/os/IBinder;)V
5286 + .registers 2
5288 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5290 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5292 + return-void
5293 +.end method
5296 +# virtual methods
5297 +.method public addObserver(Ljava/lang/String;)V
5298 + .registers 7
5299 + .annotation system Ldalvik/annotation/Throws;
5300 + value = {
5301 + Landroid/os/RemoteException;
5303 + .end annotation
5305 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5307 + move-result-object v0
5309 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5311 + move-result-object v1
5313 + :try_start_8
5314 + const-string v2, "android.privacy.IPrivacySettingsManager"
5316 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5318 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5320 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5322 + const/4 v3, 0x6
5324 + const/4 v4, 0x0
5326 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5328 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5329 + :try_end_1a
5330 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
5332 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5334 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5336 + return-void
5338 + :catchall_21
5339 + move-exception v2
5341 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5343 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5345 + throw v2
5346 +.end method
5348 +.method public asBinder()Landroid/os/IBinder;
5349 + .registers 2
5351 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5353 + return-object v0
5354 +.end method
5356 +.method public deleteSettings(Ljava/lang/String;)Z
5357 + .registers 8
5358 + .annotation system Ldalvik/annotation/Throws;
5359 + value = {
5360 + Landroid/os/RemoteException;
5362 + .end annotation
5364 + const/4 v2, 0x0
5366 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5368 + move-result-object v0
5370 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5372 + move-result-object v1
5374 + :try_start_9
5375 + const-string v3, "android.privacy.IPrivacySettingsManager"
5377 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5379 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5381 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5383 + const/4 v4, 0x3
5385 + const/4 v5, 0x0
5387 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5389 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5391 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5392 + :try_end_1e
5393 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
5395 + move-result v3
5397 + if-eqz v3, :cond_22
5399 + const/4 v2, 0x1
5401 + :cond_22
5402 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5404 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5406 + return v2
5408 + :catchall_29
5409 + move-exception v3
5411 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5413 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5415 + throw v3
5416 +.end method
5418 +.method public getInterfaceDescriptor()Ljava/lang/String;
5419 + .registers 2
5421 + const-string v0, "android.privacy.IPrivacySettingsManager"
5423 + return-object v0
5424 +.end method
5426 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5427 + .registers 8
5428 + .annotation system Ldalvik/annotation/Throws;
5429 + value = {
5430 + Landroid/os/RemoteException;
5432 + .end annotation
5434 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5436 + move-result-object v0
5438 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5440 + move-result-object v1
5442 + :try_start_8
5443 + const-string v3, "android.privacy.IPrivacySettingsManager"
5445 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5447 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5449 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5451 + const/4 v4, 0x1
5453 + const/4 v5, 0x0
5455 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5457 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5459 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5461 + move-result v3
5463 + if-eqz v3, :cond_2f
5465 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
5467 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
5469 + move-result-object v2
5471 + check-cast v2, Landroid/privacy/PrivacySettings;
5472 + :try_end_28
5473 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
5475 + :goto_28
5476 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5478 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5480 + return-object v2
5482 + :cond_2f
5483 + const/4 v2, 0x0
5485 + goto :goto_28
5487 + :catchall_31
5488 + move-exception v3
5490 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5492 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5494 + throw v3
5495 +.end method
5497 +.method public getVersion()D
5498 + .registers 8
5499 + .annotation system Ldalvik/annotation/Throws;
5500 + value = {
5501 + Landroid/os/RemoteException;
5503 + .end annotation
5505 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5507 + move-result-object v0
5509 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5511 + move-result-object v1
5513 + :try_start_8
5514 + const-string v4, "android.privacy.IPrivacySettingsManager"
5516 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5518 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5520 + const/16 v5, 0x8
5522 + const/4 v6, 0x0
5524 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5526 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5528 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
5529 + :try_end_1b
5530 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
5532 + move-result-wide v2
5534 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5536 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5538 + return-wide v2
5540 + :catchall_23
5541 + move-exception v4
5543 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5545 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5547 + throw v4
5548 +.end method
5550 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5551 + .registers 10
5552 + .annotation system Ldalvik/annotation/Throws;
5553 + value = {
5554 + Landroid/os/RemoteException;
5556 + .end annotation
5558 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5560 + move-result-object v0
5562 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5564 + move-result-object v1
5566 + :try_start_8
5567 + const-string v2, "android.privacy.IPrivacySettingsManager"
5569 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5571 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5573 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
5575 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5577 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5579 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5581 + const/4 v3, 0x4
5583 + const/4 v4, 0x0
5585 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5587 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5588 + :try_end_23
5589 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
5591 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5593 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5595 + return-void
5597 + :catchall_2a
5598 + move-exception v2
5600 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5602 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5604 + throw v2
5605 +.end method
5607 +.method public purgeSettings()Z
5608 + .registers 7
5609 + .annotation system Ldalvik/annotation/Throws;
5610 + value = {
5611 + Landroid/os/RemoteException;
5613 + .end annotation
5615 + const/4 v2, 0x0
5617 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5619 + move-result-object v0
5621 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5623 + move-result-object v1
5625 + :try_start_9
5626 + const-string v3, "android.privacy.IPrivacySettingsManager"
5628 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5630 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5632 + const/4 v4, 0x7
5634 + const/4 v5, 0x0
5636 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5638 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5640 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5641 + :try_end_1b
5642 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
5644 + move-result v3
5646 + if-eqz v3, :cond_1f
5648 + const/4 v2, 0x1
5650 + :cond_1f
5651 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5653 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5655 + return v2
5657 + :catchall_26
5658 + move-exception v3
5660 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5662 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5664 + throw v3
5665 +.end method
5667 +.method public registerObservers()V
5668 + .registers 6
5669 + .annotation system Ldalvik/annotation/Throws;
5670 + value = {
5671 + Landroid/os/RemoteException;
5673 + .end annotation
5675 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5677 + move-result-object v0
5679 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5681 + move-result-object v1
5683 + :try_start_8
5684 + const-string v2, "android.privacy.IPrivacySettingsManager"
5686 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5688 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5690 + const/4 v3, 0x5
5692 + const/4 v4, 0x0
5694 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5696 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5697 + :try_end_17
5698 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
5700 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5702 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5704 + return-void
5706 + :catchall_1e
5707 + move-exception v2
5709 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5711 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5713 + throw v2
5714 +.end method
5716 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
5717 + .registers 9
5718 + .annotation system Ldalvik/annotation/Throws;
5719 + value = {
5720 + Landroid/os/RemoteException;
5722 + .end annotation
5724 + const/4 v2, 0x1
5726 + const/4 v3, 0x0
5728 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5730 + move-result-object v0
5732 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5734 + move-result-object v1
5736 + :try_start_a
5737 + const-string v4, "android.privacy.IPrivacySettingsManager"
5739 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5741 + if-eqz p1, :cond_30
5743 + const/4 v4, 0x1
5745 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5747 + const/4 v4, 0x0
5749 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
5751 + :goto_19
5752 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5754 + const/4 v5, 0x2
5756 + const/4 v6, 0x0
5758 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5760 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5762 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5763 + :try_end_26
5764 + .catchall {:try_start_a .. :try_end_26} :catchall_35
5766 + move-result v4
5768 + if-eqz v4, :cond_3d
5770 + :goto_29
5771 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5773 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5775 + return v2
5777 + :cond_30
5778 + const/4 v4, 0x0
5780 + :try_start_31
5781 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5782 + :try_end_34
5783 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
5785 + goto :goto_19
5787 + :catchall_35
5788 + move-exception v3
5790 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5792 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5794 + throw v3
5796 + :cond_3d
5797 + move v2, v3
5799 + goto :goto_29
5800 +.end method
5802 +.method public setBootCompleted()V
5803 + .registers 6
5804 + .annotation system Ldalvik/annotation/Throws;
5805 + value = {
5806 + Landroid/os/RemoteException;
5808 + .end annotation
5810 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5812 + move-result-object v0
5814 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5816 + move-result-object v1
5818 + :try_start_8
5819 + const-string v2, "android.privacy.IPrivacySettingsManager"
5821 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5823 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5825 + const/16 v3, 0xb
5827 + const/4 v4, 0x0
5829 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5831 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5832 + :try_end_18
5833 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
5835 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5837 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5839 + return-void
5841 + :catchall_1f
5842 + move-exception v2
5844 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5846 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5848 + throw v2
5849 +.end method
5851 +.method public setEnabled(Z)Z
5852 + .registers 9
5853 + .annotation system Ldalvik/annotation/Throws;
5854 + value = {
5855 + Landroid/os/RemoteException;
5857 + .end annotation
5859 + const/4 v2, 0x1
5861 + const/4 v3, 0x0
5863 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5865 + move-result-object v0
5867 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5869 + move-result-object v1
5871 + :try_start_a
5872 + const-string v4, "android.privacy.IPrivacySettingsManager"
5874 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5876 + if-eqz p1, :cond_2d
5878 + move v4, v2
5880 + :goto_12
5881 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5883 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5885 + const/16 v5, 0x9
5887 + const/4 v6, 0x0
5889 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5891 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5893 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5894 + :try_end_23
5895 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5897 + move-result v4
5899 + if-eqz v4, :cond_2f
5901 + :goto_26
5902 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5904 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5906 + return v2
5908 + :cond_2d
5909 + move v4, v3
5911 + goto :goto_12
5913 + :cond_2f
5914 + move v2, v3
5916 + goto :goto_26
5918 + :catchall_31
5919 + move-exception v3
5921 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5923 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5925 + throw v3
5926 +.end method
5928 +.method public setNotificationsEnabled(Z)Z
5929 + .registers 9
5930 + .annotation system Ldalvik/annotation/Throws;
5931 + value = {
5932 + Landroid/os/RemoteException;
5934 + .end annotation
5936 + const/4 v2, 0x1
5938 + const/4 v3, 0x0
5940 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5942 + move-result-object v0
5944 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5946 + move-result-object v1
5948 + :try_start_a
5949 + const-string v4, "android.privacy.IPrivacySettingsManager"
5951 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5953 + if-eqz p1, :cond_2d
5955 + move v4, v2
5957 + :goto_12
5958 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5960 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5962 + const/16 v5, 0xa
5964 + const/4 v6, 0x0
5966 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5968 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5970 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5971 + :try_end_23
5972 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5974 + move-result v4
5976 + if-eqz v4, :cond_2f
5978 + :goto_26
5979 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5981 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5983 + return v2
5985 + :cond_2d
5986 + move v4, v3
5988 + goto :goto_12
5990 + :cond_2f
5991 + move v2, v3
5993 + goto :goto_26
5995 + :catchall_31
5996 + move-exception v3
5998 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6000 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6002 + throw v3
6003 +.end method
6004 diff -Npru stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
6005 --- stock_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 16:00:00.000000000 -0800
6006 +++ pdroid_framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-07-02 10:16:50.998009187 -0700
6007 @@ -0,0 +1,412 @@
6008 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
6009 +.super Landroid/os/Binder;
6010 +.source "IPrivacySettingsManager.java"
6012 +# interfaces
6013 +.implements Landroid/privacy/IPrivacySettingsManager;
6016 +# annotations
6017 +.annotation system Ldalvik/annotation/EnclosingClass;
6018 + value = Landroid/privacy/IPrivacySettingsManager;
6019 +.end annotation
6021 +.annotation system Ldalvik/annotation/InnerClass;
6022 + accessFlags = 0x409
6023 + name = "Stub"
6024 +.end annotation
6026 +.annotation system Ldalvik/annotation/MemberClasses;
6027 + value = {
6028 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6030 +.end annotation
6033 +# static fields
6034 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
6036 +.field static final TRANSACTION_addObserver:I = 0x6
6038 +.field static final TRANSACTION_deleteSettings:I = 0x3
6040 +.field static final TRANSACTION_getSettings:I = 0x1
6042 +.field static final TRANSACTION_getVersion:I = 0x8
6044 +.field static final TRANSACTION_notification:I = 0x4
6046 +.field static final TRANSACTION_purgeSettings:I = 0x7
6048 +.field static final TRANSACTION_registerObservers:I = 0x5
6050 +.field static final TRANSACTION_saveSettings:I = 0x2
6052 +.field static final TRANSACTION_setBootCompleted:I = 0xb
6054 +.field static final TRANSACTION_setEnabled:I = 0x9
6056 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
6059 +# direct methods
6060 +.method public constructor <init>()V
6061 + .registers 2
6063 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
6065 + const-string v0, "android.privacy.IPrivacySettingsManager"
6067 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
6069 + return-void
6070 +.end method
6072 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
6073 + .registers 3
6075 + if-nez p0, :cond_4
6077 + const/4 v0, 0x0
6079 + :goto_3
6080 + return-object v0
6082 + :cond_4
6083 + const-string v1, "android.privacy.IPrivacySettingsManager"
6085 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
6087 + move-result-object v0
6089 + if-eqz v0, :cond_13
6091 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
6093 + if-eqz v1, :cond_13
6095 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
6097 + goto :goto_3
6099 + :cond_13
6100 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6102 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
6104 + goto :goto_3
6105 +.end method
6108 +# virtual methods
6109 +.method public asBinder()Landroid/os/IBinder;
6110 + .registers 1
6112 + return-object p0
6113 +.end method
6115 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6116 + .registers 14
6117 + .annotation system Ldalvik/annotation/Throws;
6118 + value = {
6119 + Landroid/os/RemoteException;
6121 + .end annotation
6123 + const/4 v6, 0x0
6125 + const/4 v7, 0x1
6127 + sparse-switch p1, :sswitch_data_10e
6129 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6131 + move-result v7
6133 + :goto_9
6134 + return v7
6136 + :sswitch_a
6137 + const-string v6, "android.privacy.IPrivacySettingsManager"
6139 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
6141 + goto :goto_9
6143 + :sswitch_10
6144 + const-string v8, "android.privacy.IPrivacySettingsManager"
6146 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6148 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6150 + move-result-object v0
6152 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6154 + move-result-object v4
6156 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6158 + if-eqz v4, :cond_29
6160 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
6162 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6164 + goto :goto_9
6166 + :cond_29
6167 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6169 + goto :goto_9
6171 + :sswitch_2d
6172 + const-string v8, "android.privacy.IPrivacySettingsManager"
6174 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6176 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6178 + move-result v8
6180 + if-eqz v8, :cond_4e
6182 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
6184 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
6186 + move-result-object v0
6188 + check-cast v0, Landroid/privacy/PrivacySettings;
6190 + :goto_40
6191 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
6193 + move-result v4
6195 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6197 + if-eqz v4, :cond_4a
6199 + move v6, v7
6201 + :cond_4a
6202 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6204 + goto :goto_9
6206 + :cond_4e
6207 + const/4 v0, 0x0
6209 + goto :goto_40
6211 + :sswitch_50
6212 + const-string v8, "android.privacy.IPrivacySettingsManager"
6214 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6216 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6218 + move-result-object v0
6220 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
6222 + move-result v4
6224 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6226 + if-eqz v4, :cond_63
6228 + move v6, v7
6230 + :cond_63
6231 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6233 + goto :goto_9
6235 + :sswitch_67
6236 + const-string v6, "android.privacy.IPrivacySettingsManager"
6238 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6240 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6242 + move-result-object v0
6244 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
6246 + move-result v1
6248 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6250 + move-result-object v2
6252 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6254 + move-result-object v3
6256 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6258 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6260 + goto :goto_9
6262 + :sswitch_83
6263 + const-string v6, "android.privacy.IPrivacySettingsManager"
6265 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6267 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
6269 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6271 + goto/16 :goto_9
6273 + :sswitch_90
6274 + const-string v6, "android.privacy.IPrivacySettingsManager"
6276 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6278 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6280 + move-result-object v0
6282 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
6284 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6286 + goto/16 :goto_9
6288 + :sswitch_a1
6289 + const-string v8, "android.privacy.IPrivacySettingsManager"
6291 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6293 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
6295 + move-result v4
6297 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6299 + if-eqz v4, :cond_b0
6301 + move v6, v7
6303 + :cond_b0
6304 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6306 + goto/16 :goto_9
6308 + :sswitch_b5
6309 + const-string v6, "android.privacy.IPrivacySettingsManager"
6311 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6313 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
6315 + move-result-wide v4
6317 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6319 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
6321 + goto/16 :goto_9
6323 + :sswitch_c6
6324 + const-string v8, "android.privacy.IPrivacySettingsManager"
6326 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6328 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6330 + move-result v8
6332 + if-eqz v8, :cond_e1
6334 + move v0, v7
6336 + :goto_d2
6337 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
6339 + move-result v4
6341 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6343 + if-eqz v4, :cond_dc
6345 + move v6, v7
6347 + :cond_dc
6348 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6350 + goto/16 :goto_9
6352 + :cond_e1
6353 + move v0, v6
6355 + goto :goto_d2
6357 + :sswitch_e3
6358 + const-string v8, "android.privacy.IPrivacySettingsManager"
6360 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6362 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6364 + move-result v8
6366 + if-eqz v8, :cond_fe
6368 + move v0, v7
6370 + :goto_ef
6371 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
6373 + move-result v4
6375 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6377 + if-eqz v4, :cond_f9
6379 + move v6, v7
6381 + :cond_f9
6382 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6384 + goto/16 :goto_9
6386 + :cond_fe
6387 + move v0, v6
6389 + goto :goto_ef
6391 + :sswitch_100
6392 + const-string v6, "android.privacy.IPrivacySettingsManager"
6394 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6396 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
6398 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6400 + goto/16 :goto_9
6402 + nop
6404 + :sswitch_data_10e
6405 + .sparse-switch
6406 + 0x1 -> :sswitch_10
6407 + 0x2 -> :sswitch_2d
6408 + 0x3 -> :sswitch_50
6409 + 0x4 -> :sswitch_67
6410 + 0x5 -> :sswitch_83
6411 + 0x6 -> :sswitch_90
6412 + 0x7 -> :sswitch_a1
6413 + 0x8 -> :sswitch_b5
6414 + 0x9 -> :sswitch_c6
6415 + 0xa -> :sswitch_e3
6416 + 0xb -> :sswitch_100
6417 + 0x5f4e5446 -> :sswitch_a
6418 + .end sparse-switch
6419 +.end method
6420 diff -Npru stock_framework/smali/android/privacy/PrivacyFileObserver.smali pdroid_framework/smali/android/privacy/PrivacyFileObserver.smali
6421 --- stock_framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 16:00:00.000000000 -0800
6422 +++ pdroid_framework/smali/android/privacy/PrivacyFileObserver.smali 2012-07-02 10:16:50.998009187 -0700
6423 @@ -0,0 +1,217 @@
6424 +.class public Landroid/privacy/PrivacyFileObserver;
6425 +.super Landroid/os/FileObserver;
6426 +.source "PrivacyFileObserver.java"
6429 +# static fields
6430 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
6432 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
6435 +# instance fields
6436 +.field public absolutePath:Ljava/lang/String;
6438 +.field public children:Ljava/util/HashMap;
6439 + .annotation system Ldalvik/annotation/Signature;
6440 + value = {
6441 + "Ljava/util/HashMap",
6442 + "<",
6443 + "Ljava/lang/String;",
6444 + "Landroid/privacy/PrivacyFileObserver;",
6445 + ">;"
6447 + .end annotation
6448 +.end field
6450 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6453 +# direct methods
6454 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6455 + .registers 12
6457 + const/16 v8, 0xfff
6459 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
6461 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6463 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6465 + new-instance v8, Ljava/util/HashMap;
6467 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
6469 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6471 + new-instance v7, Ljava/io/File;
6473 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6475 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6477 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
6479 + move-result v8
6481 + if-eqz v8, :cond_42
6483 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
6485 + move-result-object v6
6487 + move-object v0, v6
6489 + array-length v4, v0
6491 + const/4 v3, 0x0
6493 + :goto_24
6494 + if-ge v3, v4, :cond_42
6496 + aget-object v2, v0, v3
6498 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6500 + move-result-object v5
6502 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
6504 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6506 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6508 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6510 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
6512 + move-result v8
6514 + if-eqz v8, :cond_3f
6516 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
6518 + :cond_3f
6519 + add-int/lit8 v3, v3, 0x1
6521 + goto :goto_24
6523 + :cond_42
6524 + return-void
6525 +.end method
6528 +# virtual methods
6529 +.method public addObserver(Ljava/lang/String;)V
6530 + .registers 6
6532 + new-instance v2, Ljava/lang/StringBuilder;
6534 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
6536 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6538 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6540 + move-result-object v2
6542 + const-string v3, "/"
6544 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6546 + move-result-object v2
6548 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6550 + move-result-object v2
6552 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6554 + move-result-object v1
6556 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6558 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
6560 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
6562 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6564 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6566 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6568 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6570 + return-void
6571 +.end method
6573 +.method public onEvent(ILjava/lang/String;)V
6574 + .registers 11
6576 + and-int/lit8 v4, p1, 0x1
6578 + if-eqz v4, :cond_34
6580 + new-instance v3, Ljava/util/StringTokenizer;
6582 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6584 + const-string v5, "/"
6586 + invoke-direct {v3, v4, v5}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
6588 + const/4 v0, 0x0
6590 + :goto_e
6591 + const/4 v4, 0x3
6593 + if-ge v0, v4, :cond_1d
6595 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->hasMoreElements()Z
6597 + move-result v4
6599 + if-eqz v4, :cond_1d
6601 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6603 + add-int/lit8 v0, v0, 0x1
6605 + goto :goto_e
6607 + :cond_1d
6608 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6610 + move-result-object v2
6612 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6614 + invoke-virtual {v4, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6616 + move-result-object v1
6618 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6620 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
6622 + move-result v5
6624 + const-string/jumbo v6, "systemLogs"
6626 + const/4 v7, 0x0
6628 + invoke-virtual {v4, v2, v5, v6, v7}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6630 + :cond_34
6631 + return-void
6632 +.end method
6634 +.method public startWatching()V
6635 + .registers 1
6637 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
6639 + return-void
6640 +.end method
6641 diff -Npru stock_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali pdroid_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
6642 --- stock_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 16:00:00.000000000 -0800
6643 +++ pdroid_framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-07-02 10:16:51.024015381 -0700
6644 @@ -0,0 +1,4581 @@
6645 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
6646 +.super Ljava/lang/Object;
6647 +.source "PrivacyPersistenceAdapter.java"
6650 +# static fields
6651 +.field private static final CREATE_TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
6653 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6655 +.field private static final CREATE_TABLE_SETTINGS:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS settings ( _id INTEGER PRIMARY KEY AUTOINCREMENT, packageName TEXT, uid INTEGER, deviceIdSetting INTEGER, deviceId TEXT, line1NumberSetting INTEGER, line1Number TEXT, locationGpsSetting INTEGER, locationGpsLat TEXT, locationGpsLon TEXT, locationNetworkSetting INTEGER, locationNetworkLat TEXT, locationNetworkLon TEXT, networkInfoSetting INTEGER, simInfoSetting INTEGER, simSerialNumberSetting INTEGER, simSerialNumber TEXT, subscriberIdSetting INTEGER, subscriberId TEXT, accountsSetting INTEGER, accountsAuthTokensSetting INTEGER, outgoingCallsSetting INTEGER, incomingCallsSetting INTEGER, contactsSetting INTEGER, calendarSetting INTEGER, mmsSetting INTEGER, smsSetting INTEGER, callLogSetting INTEGER, bookmarksSetting INTEGER, systemLogsSetting INTEGER, externalStorageSetting INTEGER, cameraSetting INTEGER, recordAudioSetting INTEGER, notificationSetting INTEGER, intentBootCompletedSetting INTEGER);"
6657 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
6659 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
6661 +.field private static final DATABASE_VERSION:I = 0x3
6663 +.field public static final DUMMY_UID:I = -0x1
6665 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6667 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6669 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6671 +.field private static final RETRY_QUERY_COUNT:I = 0x5
6673 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
6675 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
6677 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
6679 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
6681 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
6683 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
6685 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
6687 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
6689 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
6691 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
6693 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
6695 +.field public static readingThreads:Ljava/lang/Integer;
6698 +# instance fields
6699 +.field private context:Landroid/content/Context;
6701 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
6704 +# direct methods
6705 +.method static constructor <clinit>()V
6706 + .registers 3
6708 + const/4 v2, 0x0
6710 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
6712 + move-result-object v0
6714 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
6716 + const/16 v0, 0x23
6718 + new-array v0, v0, [Ljava/lang/String;
6720 + const-string v1, "_id"
6722 + aput-object v1, v0, v2
6724 + const/4 v1, 0x1
6726 + const-string/jumbo v2, "packageName"
6728 + aput-object v2, v0, v1
6730 + const/4 v1, 0x2
6732 + const-string/jumbo v2, "uid"
6734 + aput-object v2, v0, v1
6736 + const/4 v1, 0x3
6738 + const-string v2, "deviceIdSetting"
6740 + aput-object v2, v0, v1
6742 + const/4 v1, 0x4
6744 + const-string v2, "deviceId"
6746 + aput-object v2, v0, v1
6748 + const/4 v1, 0x5
6750 + const-string v2, "line1NumberSetting"
6752 + aput-object v2, v0, v1
6754 + const/4 v1, 0x6
6756 + const-string v2, "line1Number"
6758 + aput-object v2, v0, v1
6760 + const/4 v1, 0x7
6762 + const-string v2, "locationGpsSetting"
6764 + aput-object v2, v0, v1
6766 + const/16 v1, 0x8
6768 + const-string v2, "locationGpsLat"
6770 + aput-object v2, v0, v1
6772 + const/16 v1, 0x9
6774 + const-string v2, "locationGpsLon"
6776 + aput-object v2, v0, v1
6778 + const/16 v1, 0xa
6780 + const-string v2, "locationNetworkSetting"
6782 + aput-object v2, v0, v1
6784 + const/16 v1, 0xb
6786 + const-string v2, "locationNetworkLat"
6788 + aput-object v2, v0, v1
6790 + const/16 v1, 0xc
6792 + const-string v2, "locationNetworkLon"
6794 + aput-object v2, v0, v1
6796 + const/16 v1, 0xd
6798 + const-string/jumbo v2, "networkInfoSetting"
6800 + aput-object v2, v0, v1
6802 + const/16 v1, 0xe
6804 + const-string/jumbo v2, "simInfoSetting"
6806 + aput-object v2, v0, v1
6808 + const/16 v1, 0xf
6810 + const-string/jumbo v2, "simSerialNumberSetting"
6812 + aput-object v2, v0, v1
6814 + const/16 v1, 0x10
6816 + const-string/jumbo v2, "simSerialNumber"
6818 + aput-object v2, v0, v1
6820 + const/16 v1, 0x11
6822 + const-string/jumbo v2, "subscriberIdSetting"
6824 + aput-object v2, v0, v1
6826 + const/16 v1, 0x12
6828 + const-string/jumbo v2, "subscriberId"
6830 + aput-object v2, v0, v1
6832 + const/16 v1, 0x13
6834 + const-string v2, "accountsSetting"
6836 + aput-object v2, v0, v1
6838 + const/16 v1, 0x14
6840 + const-string v2, "accountsAuthTokensSetting"
6842 + aput-object v2, v0, v1
6844 + const/16 v1, 0x15
6846 + const-string/jumbo v2, "outgoingCallsSetting"
6848 + aput-object v2, v0, v1
6850 + const/16 v1, 0x16
6852 + const-string v2, "incomingCallsSetting"
6854 + aput-object v2, v0, v1
6856 + const/16 v1, 0x17
6858 + const-string v2, "contactsSetting"
6860 + aput-object v2, v0, v1
6862 + const/16 v1, 0x18
6864 + const-string v2, "calendarSetting"
6866 + aput-object v2, v0, v1
6868 + const/16 v1, 0x19
6870 + const-string/jumbo v2, "mmsSetting"
6872 + aput-object v2, v0, v1
6874 + const/16 v1, 0x1a
6876 + const-string/jumbo v2, "smsSetting"
6878 + aput-object v2, v0, v1
6880 + const/16 v1, 0x1b
6882 + const-string v2, "callLogSetting"
6884 + aput-object v2, v0, v1
6886 + const/16 v1, 0x1c
6888 + const-string v2, "bookmarksSetting"
6890 + aput-object v2, v0, v1
6892 + const/16 v1, 0x1d
6894 + const-string/jumbo v2, "systemLogsSetting"
6896 + aput-object v2, v0, v1
6898 + const/16 v1, 0x1e
6900 + const-string v2, "externalStorageSetting"
6902 + aput-object v2, v0, v1
6904 + const/16 v1, 0x1f
6906 + const-string v2, "cameraSetting"
6908 + aput-object v2, v0, v1
6910 + const/16 v1, 0x20
6912 + const-string/jumbo v2, "recordAudioSetting"
6914 + aput-object v2, v0, v1
6916 + const/16 v1, 0x21
6918 + const-string/jumbo v2, "notificationSetting"
6920 + aput-object v2, v0, v1
6922 + const/16 v1, 0x22
6924 + const-string v2, "intentBootCompletedSetting"
6926 + aput-object v2, v0, v1
6928 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
6930 + return-void
6931 +.end method
6933 +.method public constructor <init>(Landroid/content/Context;)V
6934 + .registers 6
6936 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
6938 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
6940 + new-instance v2, Ljava/io/File;
6942 + const-string v3, "/data/system/"
6944 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6946 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
6948 + move-result v0
6950 + if-eqz v0, :cond_3c
6952 + new-instance v2, Ljava/io/File;
6954 + const-string v3, "/data/system/privacy.db"
6956 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6958 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6960 + move-result v2
6962 + if-nez v2, :cond_22
6964 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
6966 + :cond_22
6967 + new-instance v2, Ljava/io/File;
6969 + const-string v3, "/data/system/privacy"
6971 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6973 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6975 + move-result v2
6977 + if-nez v2, :cond_32
6979 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
6981 + :cond_32
6982 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
6984 + move-result v1
6986 + const/4 v2, 0x3
6988 + if-ge v1, v2, :cond_3c
6990 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
6992 + :cond_3c
6993 + return-void
6994 +.end method
6996 +.method private declared-synchronized createDatabase()V
6997 + .registers 6
6999 + monitor-enter p0
7001 + :try_start_1
7002 + const-string v2, "PrivacyPersistenceAdapter"
7004 + const-string v3, "createDatabase - creating privacy database file"
7006 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7007 + :try_end_8
7008 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
7010 + :try_start_8
7011 + const-string v2, "/data/system/privacy.db"
7013 + const/4 v3, 0x0
7015 + const/high16 v4, 0x1000
7017 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7019 + move-result-object v0
7021 + const-string v2, "PrivacyPersistenceAdapter"
7023 + const-string v3, "createDatabase - creating privacy database"
7025 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7027 + const-string v2, "CREATE TABLE IF NOT EXISTS settings ( _id INTEGER PRIMARY KEY AUTOINCREMENT, packageName TEXT, uid INTEGER, deviceIdSetting INTEGER, deviceId TEXT, line1NumberSetting INTEGER, line1Number TEXT, locationGpsSetting INTEGER, locationGpsLat TEXT, locationGpsLon TEXT, locationNetworkSetting INTEGER, locationNetworkLat TEXT, locationNetworkLon TEXT, networkInfoSetting INTEGER, simInfoSetting INTEGER, simSerialNumberSetting INTEGER, simSerialNumber TEXT, subscriberIdSetting INTEGER, subscriberId TEXT, accountsSetting INTEGER, accountsAuthTokensSetting INTEGER, outgoingCallsSetting INTEGER, incomingCallsSetting INTEGER, contactsSetting INTEGER, calendarSetting INTEGER, mmsSetting INTEGER, smsSetting INTEGER, callLogSetting INTEGER, bookmarksSetting INTEGER, systemLogsSetting INTEGER, externalStorageSetting INTEGER, cameraSetting INTEGER, recordAudioSetting INTEGER, notificationSetting INTEGER, intentBootCompletedSetting INTEGER);"
7029 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7031 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7033 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7035 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7037 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7039 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7041 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7043 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7045 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7047 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7049 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7051 + if-eqz v0, :cond_41
7053 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7055 + move-result v2
7057 + if-eqz v2, :cond_41
7059 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7060 + :try_end_41
7061 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
7062 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
7064 + :cond_41
7065 + :goto_41
7066 + monitor-exit p0
7068 + return-void
7070 + :catch_43
7071 + move-exception v1
7073 + :try_start_44
7074 + const-string v2, "PrivacyPersistenceAdapter"
7076 + const-string v3, "createDatabase - failed to create privacy database"
7078 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7079 + :try_end_4b
7080 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
7082 + goto :goto_41
7084 + :catchall_4c
7085 + move-exception v2
7087 + monitor-exit p0
7089 + throw v2
7090 +.end method
7092 +.method private declared-synchronized createSettingsDir()V
7093 + .registers 4
7095 + monitor-enter p0
7097 + :try_start_1
7098 + new-instance v0, Ljava/io/File;
7100 + const-string v1, "/data/system/privacy/"
7102 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7104 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
7106 + const/4 v1, 0x1
7108 + const/4 v2, 0x0
7110 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
7112 + const/4 v1, 0x1
7114 + const/4 v2, 0x0
7116 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
7117 + :try_end_15
7118 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
7120 + monitor-exit p0
7122 + return-void
7124 + :catchall_17
7125 + move-exception v1
7127 + monitor-exit p0
7129 + throw v1
7130 +.end method
7132 +.method private deleteRecursive(Ljava/io/File;)V
7133 + .registers 7
7135 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
7137 + move-result v4
7139 + if-eqz v4, :cond_16
7141 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
7143 + move-result-object v0
7145 + array-length v3, v0
7147 + const/4 v2, 0x0
7149 + :goto_c
7150 + if-ge v2, v3, :cond_16
7152 + aget-object v1, v0, v2
7154 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7156 + add-int/lit8 v2, v2, 0x1
7158 + goto :goto_c
7160 + :cond_16
7161 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
7163 + return-void
7164 +.end method
7166 +.method private getDbVersion()I
7167 + .registers 9
7169 + const/4 v4, 0x1
7171 + const/4 v3, -0x1
7173 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7175 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7177 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7179 + move-result v6
7181 + add-int/lit8 v6, v6, 0x1
7183 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7185 + move-result-object v6
7187 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7189 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7191 + move-result-object v1
7193 + :try_start_16
7194 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
7196 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7198 + move-result-object v0
7200 + if-eqz v0, :cond_5e
7202 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
7204 + move-result v6
7206 + if-nez v6, :cond_25
7208 + const/4 v3, 0x1
7210 + :cond_25
7211 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7213 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7215 + monitor-enter v7
7216 + :try_end_2b
7217 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
7219 + :try_start_2b
7220 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7222 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7224 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7226 + move-result v6
7228 + add-int/lit8 v6, v6, -0x1
7230 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7232 + move-result-object v6
7234 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7236 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7238 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7240 + move-result v6
7242 + if-nez v6, :cond_4e
7244 + if-eqz v1, :cond_4e
7246 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7248 + move-result v6
7250 + if-eqz v6, :cond_4e
7252 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7254 + :cond_4e
7255 + monitor-exit v7
7257 + :goto_4f
7258 + if-ne v3, v4, :cond_66
7260 + :goto_51
7261 + return v3
7263 + :catchall_52
7264 + move-exception v6
7266 + monitor-exit v7
7267 + :try_end_54
7268 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
7270 + :try_start_54
7271 + throw v6
7272 + :try_end_55
7273 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
7275 + :catch_55
7276 + move-exception v2
7278 + const-string v6, "PrivacyPersistenceAdapter"
7280 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
7282 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7284 + goto :goto_4f
7286 + :cond_5e
7287 + :try_start_5e
7288 + const-string v6, "PrivacyPersistenceAdapter"
7290 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
7292 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7293 + :try_end_65
7294 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
7296 + goto :goto_4f
7298 + :cond_66
7299 + const-string v6, "db_version"
7301 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
7303 + move-result-object v5
7305 + if-nez v5, :cond_70
7307 + move v3, v4
7309 + goto :goto_51
7311 + :cond_70
7312 + :try_start_70
7313 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7314 + :try_end_73
7315 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
7317 + move-result v4
7319 + move v3, v4
7321 + goto :goto_51
7323 + :catch_76
7324 + move-exception v2
7326 + const-string v6, "PrivacyPersistenceAdapter"
7328 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
7330 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7332 + move v3, v4
7334 + goto :goto_51
7335 +.end method
7337 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7338 + .registers 4
7340 + monitor-enter p0
7342 + :try_start_1
7343 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7345 + if-eqz v0, :cond_11
7347 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7349 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7351 + move-result v0
7353 + if-eqz v0, :cond_11
7355 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7356 + :try_end_f
7357 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
7359 + :goto_f
7360 + monitor-exit p0
7362 + return-object v0
7364 + :cond_11
7365 + :try_start_11
7366 + const-string v0, "/data/system/privacy.db"
7368 + const/4 v1, 0x0
7370 + const/4 v2, 0x1
7372 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7374 + move-result-object v0
7376 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7378 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7379 + :try_end_1d
7380 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
7382 + goto :goto_f
7384 + :catchall_1e
7385 + move-exception v0
7387 + monitor-exit p0
7389 + throw v0
7390 +.end method
7392 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7393 + .registers 4
7395 + monitor-enter p0
7397 + :try_start_1
7398 + new-instance v0, Ljava/io/File;
7400 + const-string v1, "/data/system/privacy.db"
7402 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7404 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
7406 + move-result v0
7408 + if-nez v0, :cond_11
7410 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7412 + :cond_11
7413 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7415 + if-eqz v0, :cond_29
7417 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7419 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7421 + move-result v0
7423 + if-eqz v0, :cond_29
7425 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7427 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
7429 + move-result v0
7431 + if-nez v0, :cond_29
7433 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7434 + :try_end_27
7435 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
7437 + :goto_27
7438 + monitor-exit p0
7440 + return-object v0
7442 + :cond_29
7443 + :try_start_29
7444 + const-string v0, "/data/system/privacy.db"
7446 + const/4 v1, 0x0
7448 + const/4 v2, 0x0
7450 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7452 + move-result-object v0
7454 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7456 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7457 + :try_end_35
7458 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
7460 + goto :goto_27
7462 + :catchall_36
7463 + move-exception v0
7465 + monitor-exit p0
7467 + throw v0
7468 +.end method
7470 +.method private query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
7471 + .registers 16
7472 + .annotation system Ldalvik/annotation/Throws;
7473 + value = {
7474 + Ljava/lang/Exception;
7476 + .end annotation
7478 + const/4 v0, 0x0
7480 + const/4 v3, 0x0
7482 + const/4 v2, 0x0
7484 + :goto_3
7485 + if-nez v3, :cond_27
7487 + const/4 v4, 0x5
7489 + if-ge v2, v4, :cond_27
7491 + if-eqz v0, :cond_d
7493 + :try_start_a
7494 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7496 + :cond_d
7497 + invoke-virtual/range {p1 .. p9}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
7498 + :try_end_10
7499 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
7501 + move-result-object v0
7503 + const/4 v3, 0x1
7505 + :goto_12
7506 + add-int/lit8 v2, v2, 0x1
7508 + goto :goto_3
7510 + :catch_15
7511 + move-exception v1
7513 + const/4 v3, 0x0
7515 + if-eqz p1, :cond_22
7517 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7519 + move-result v4
7521 + if-eqz v4, :cond_22
7523 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7525 + :cond_22
7526 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7528 + move-result-object p1
7530 + goto :goto_12
7532 + :cond_27
7533 + if-nez v3, :cond_32
7535 + new-instance v4, Ljava/lang/Exception;
7537 + const-string/jumbo v5, "query - failed to execute query on the DB"
7539 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7541 + throw v4
7543 + :cond_32
7544 + return-object v0
7545 +.end method
7547 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7548 + .registers 9
7549 + .annotation system Ldalvik/annotation/Throws;
7550 + value = {
7551 + Ljava/lang/Exception;
7553 + .end annotation
7555 + const/4 v0, 0x0
7557 + const/4 v3, 0x0
7559 + const/4 v2, 0x0
7561 + :goto_3
7562 + if-nez v3, :cond_28
7564 + const/4 v4, 0x5
7566 + if-ge v2, v4, :cond_28
7568 + if-eqz v0, :cond_d
7570 + :try_start_a
7571 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7573 + :cond_d
7574 + const/4 v4, 0x0
7576 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
7577 + :try_end_11
7578 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
7580 + move-result-object v0
7582 + const/4 v3, 0x1
7584 + :goto_13
7585 + add-int/lit8 v2, v2, 0x1
7587 + goto :goto_3
7589 + :catch_16
7590 + move-exception v1
7592 + const/4 v3, 0x0
7594 + if-eqz p1, :cond_23
7596 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7598 + move-result v4
7600 + if-eqz v4, :cond_23
7602 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7604 + :cond_23
7605 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7607 + move-result-object p1
7609 + goto :goto_13
7611 + :cond_28
7612 + if-nez v3, :cond_33
7614 + new-instance v4, Ljava/lang/Exception;
7616 + const-string/jumbo v5, "query - failed to execute query on the DB"
7618 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7620 + throw v4
7622 + :cond_33
7623 + return-object v0
7624 +.end method
7626 +.method private declared-synchronized upgradeDatabase(I)V
7627 + .registers 23
7629 + monitor-enter p0
7631 + :try_start_1
7632 + const-string v17, "PrivacyPersistenceAdapter"
7634 + new-instance v18, Ljava/lang/StringBuilder;
7636 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
7638 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
7640 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7642 + move-result-object v18
7644 + move-object/from16 v0, v18
7646 + move/from16 v1, p1
7648 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7650 + move-result-object v18
7652 + const-string v19, " to "
7654 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7656 + move-result-object v18
7658 + const/16 v19, 0x3
7660 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7662 + move-result-object v18
7664 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7666 + move-result-object v18
7668 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7670 + new-instance v6, Ljava/io/File;
7672 + const-string v17, "/data/system/privacy.db"
7674 + move-object/from16 v0, v17
7676 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7678 + new-instance v5, Ljava/io/File;
7680 + const-string v17, "/data/system/privacy.db.bak"
7682 + move-object/from16 v0, v17
7684 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7685 + :try_end_3c
7686 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
7688 + :try_start_3c
7689 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7690 + :try_end_3f
7691 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
7692 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
7694 + :goto_3f
7695 + :try_start_3f
7696 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7698 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
7700 + move-result-wide v17
7702 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
7704 + move-result-wide v19
7706 + sub-long v17, v17, v19
7708 + const-wide/16 v19, 0x7d0
7710 + cmp-long v17, v17, v19
7712 + if-lez v17, :cond_69
7714 + const-string v17, "PrivacyPersistenceAdapter"
7716 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
7718 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7719 + :try_end_5a
7720 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
7722 + :goto_5a
7723 + monitor-exit p0
7725 + return-void
7727 + :catch_5c
7728 + move-exception v7
7730 + :try_start_5d
7731 + const-string v17, "PrivacyPersistenceAdapter"
7733 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
7735 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7736 + :try_end_65
7737 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
7739 + goto :goto_3f
7741 + :catchall_66
7742 + move-exception v17
7744 + monitor-exit p0
7746 + throw v17
7748 + :cond_69
7749 + :try_start_69
7750 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7752 + move-result-object v4
7754 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
7756 + packed-switch p1, :pswitch_data_164
7758 + :cond_73
7759 + :goto_73
7760 + if-eqz v4, :cond_159
7762 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7764 + move-result v17
7766 + if-eqz v17, :cond_159
7768 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7770 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7772 + :goto_81
7773 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
7774 + :try_end_84
7775 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
7777 + goto :goto_5a
7779 + :pswitch_85
7780 + if-eqz v4, :cond_73
7782 + :try_start_87
7783 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7785 + move-result v17
7787 + if-eqz v17, :cond_73
7789 + const-string v17, "DROP TABLE IF EXISTS version;"
7791 + move-object/from16 v0, v17
7793 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7795 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7797 + move-object/from16 v0, v17
7799 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7801 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7803 + move-object/from16 v0, v17
7805 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7807 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7809 + move-object/from16 v0, v17
7811 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7813 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7815 + move-object/from16 v0, v17
7817 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7819 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7821 + move-object/from16 v0, v17
7823 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7825 + new-instance v14, Ljava/io/File;
7827 + const-string v17, "/data/system/privacy"
7829 + move-object/from16 v0, v17
7831 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7833 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
7835 + move-result-object v2
7837 + array-length v10, v2
7839 + const/4 v8, 0x0
7841 + move v9, v8
7843 + :goto_c7
7844 + if-ge v9, v10, :cond_127
7846 + aget-object v13, v2, v9
7848 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
7850 + move-result-object v3
7852 + array-length v11, v3
7854 + const/4 v8, 0x0
7856 + :goto_d1
7857 + if-ge v8, v11, :cond_123
7859 + aget-object v16, v3, v8
7861 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
7863 + move-result v17
7865 + if-eqz v17, :cond_120
7867 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
7869 + move-result-object v15
7871 + const/16 v17, 0x0
7873 + aget-object v17, v15, v17
7875 + if-eqz v17, :cond_120
7877 + new-instance v12, Ljava/io/File;
7879 + new-instance v17, Ljava/lang/StringBuilder;
7881 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7883 + move-object/from16 v0, v17
7885 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7887 + move-result-object v17
7889 + const-string v18, "/"
7891 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7893 + move-result-object v17
7895 + const/16 v18, 0x0
7897 + aget-object v18, v15, v18
7899 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
7901 + move-result-object v18
7903 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7905 + move-result-object v17
7907 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7909 + move-result-object v17
7911 + move-object/from16 v0, v17
7913 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7915 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
7917 + const/16 v17, 0x0
7919 + aget-object v17, v15, v17
7921 + move-object/from16 v0, v17
7923 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
7925 + move-object/from16 v0, p0
7927 + move-object/from16 v1, v16
7929 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7931 + :cond_120
7932 + add-int/lit8 v8, v8, 0x1
7934 + goto :goto_d1
7936 + :cond_123
7937 + add-int/lit8 v8, v9, 0x1
7939 + move v9, v8
7941 + goto :goto_c7
7943 + :cond_127
7944 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
7945 + :try_end_12a
7946 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
7947 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
7949 + goto/16 :goto_73
7951 + :catch_12c
7952 + move-exception v7
7954 + if-eqz v4, :cond_13b
7956 + :try_start_12f
7957 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7959 + move-result v17
7961 + if-eqz v17, :cond_13b
7963 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7965 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7967 + :cond_13b
7968 + const-string v17, "PrivacyPersistenceAdapter"
7970 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
7972 + move-object/from16 v0, v17
7974 + move-object/from16 v1, v18
7976 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7978 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7980 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7982 + goto/16 :goto_73
7984 + :pswitch_14f
7985 + const-string v17, "PrivacyPersistenceAdapter"
7987 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
7989 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7991 + goto/16 :goto_73
7993 + :cond_159
7994 + const-string v17, "PrivacyPersistenceAdapter"
7996 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
7998 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7999 + :try_end_161
8000 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
8002 + goto/16 :goto_81
8004 + nop
8006 + :pswitch_data_164
8007 + .packed-switch 0x1
8008 + :pswitch_85
8009 + :pswitch_85
8010 + :pswitch_14f
8011 + .end packed-switch
8012 +.end method
8015 +# virtual methods
8016 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
8017 + .registers 16
8019 + monitor-enter p0
8021 + const/4 v11, 0x1
8023 + :try_start_2
8024 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8026 + move-result-object v0
8028 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
8029 + :try_end_9
8030 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
8032 + :try_start_9
8033 + const-string/jumbo v1, "settings"
8035 + const/4 v2, 0x1
8037 + new-array v2, v2, [Ljava/lang/String;
8039 + const/4 v3, 0x0
8041 + const-string v4, "_id"
8043 + aput-object v4, v2, v3
8045 + const-string/jumbo v3, "packageName=?"
8047 + const/4 v4, 0x1
8049 + new-array v4, v4, [Ljava/lang/String;
8051 + const/4 v5, 0x0
8053 + aput-object p1, v4, v5
8055 + const/4 v5, 0x0
8057 + const/4 v6, 0x0
8059 + const/4 v7, 0x0
8061 + invoke-virtual/range {v0 .. v7}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
8063 + move-result-object v8
8065 + if-eqz v8, :cond_4c
8067 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
8069 + move-result v1
8071 + if-lez v1, :cond_4c
8073 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
8075 + move-result v1
8077 + if-eqz v1, :cond_4c
8079 + const/4 v1, 0x0
8081 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
8083 + move-result v10
8085 + const-string v1, "allowed_contacts"
8087 + const-string/jumbo v2, "settings_id=?"
8089 + const/4 v3, 0x1
8091 + new-array v3, v3, [Ljava/lang/String;
8093 + const/4 v4, 0x0
8095 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8097 + move-result-object v5
8099 + aput-object v5, v3, v4
8101 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8103 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
8105 + :cond_4c
8106 + const-string/jumbo v1, "settings"
8108 + const-string/jumbo v2, "packageName=?"
8110 + const/4 v3, 0x1
8112 + new-array v3, v3, [Ljava/lang/String;
8114 + const/4 v4, 0x0
8116 + aput-object p1, v3, v4
8118 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8120 + move-result v1
8122 + if-nez v1, :cond_8d
8124 + const-string v1, "PrivacyPersistenceAdapter"
8126 + new-instance v2, Ljava/lang/StringBuilder;
8128 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
8130 + const-string v3, "deleteSettings - database entry for "
8132 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8134 + move-result-object v2
8136 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8138 + move-result-object v2
8140 + const-string v3, " not found"
8142 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8144 + move-result-object v2
8146 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8148 + move-result-object v2
8150 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8151 + :try_end_7c
8152 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
8153 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
8155 + const/4 v1, 0x0
8157 + :try_start_7d
8158 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8160 + if-eqz v0, :cond_8b
8162 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8164 + move-result v2
8166 + if-eqz v2, :cond_8b
8168 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8169 + :try_end_8b
8170 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
8172 + :cond_8b
8173 + :goto_8b
8174 + monitor-exit p0
8176 + return v1
8178 + :cond_8d
8179 + :try_start_8d
8180 + new-instance v12, Ljava/io/File;
8182 + new-instance v1, Ljava/lang/StringBuilder;
8184 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8186 + const-string v2, "/data/system/privacy/"
8188 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8190 + move-result-object v1
8192 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8194 + move-result-object v1
8196 + const-string v2, "/"
8198 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8200 + move-result-object v1
8202 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8204 + move-result-object v1
8206 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8208 + new-instance v13, Ljava/io/File;
8210 + new-instance v1, Ljava/lang/StringBuilder;
8212 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8214 + const-string v2, "/data/system/privacy/"
8216 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8218 + move-result-object v1
8220 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8222 + move-result-object v1
8224 + const-string v2, "/systemLogsSetting"
8226 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8228 + move-result-object v1
8230 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8232 + move-result-object v1
8234 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8236 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
8238 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8240 + move-result-object v1
8242 + if-eqz v1, :cond_d9
8244 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8246 + move-result-object v1
8248 + array-length v1, v1
8250 + if-nez v1, :cond_dc
8252 + :cond_d9
8253 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8255 + :cond_dc
8256 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8257 + :try_end_df
8258 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
8259 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
8261 + :try_start_df
8262 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8264 + if-eqz v0, :cond_ed
8266 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8268 + move-result v1
8270 + if-eqz v1, :cond_ed
8272 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8273 + :try_end_ed
8274 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
8276 + :cond_ed
8277 + :goto_ed
8278 + move v1, v11
8280 + goto :goto_8b
8282 + :catch_ef
8283 + move-exception v9
8285 + const/4 v11, 0x0
8287 + :try_start_f1
8288 + const-string v1, "PrivacyPersistenceAdapter"
8290 + const-string v2, "deleteSettings - could not delete settings"
8292 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8293 + :try_end_f8
8294 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
8296 + :try_start_f8
8297 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8299 + if-eqz v0, :cond_ed
8301 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8303 + move-result v1
8305 + if-eqz v1, :cond_ed
8307 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8308 + :try_end_106
8309 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
8311 + goto :goto_ed
8313 + :catchall_107
8314 + move-exception v1
8316 + monitor-exit p0
8318 + throw v1
8320 + :catchall_10a
8321 + move-exception v1
8323 + :try_start_10b
8324 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8326 + if-eqz v0, :cond_119
8328 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8330 + move-result v2
8332 + if-eqz v2, :cond_119
8334 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8336 + :cond_119
8337 + throw v1
8338 + :try_end_11a
8339 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
8340 +.end method
8342 +.method public getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
8343 + .registers 47
8345 + const/16 v43, 0x0
8347 + if-nez p1, :cond_e
8349 + const-string v1, "PrivacyPersistenceAdapter"
8351 + const-string v4, "getSettings - insufficient application identifier - package name is required"
8353 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8355 + move-object/from16 v3, v43
8357 + :goto_d
8358 + return-object v43
8360 + :cond_e
8361 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8363 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8365 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8367 + move-result v1
8369 + add-int/lit8 v1, v1, 0x1
8371 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8373 + move-result-object v1
8375 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8377 + :try_start_1e
8378 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8379 + :try_end_21
8380 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_1e .. :try_end_21} :catch_243
8382 + move-result-object v2
8384 + const/16 v41, 0x0
8386 + :try_start_24
8387 + const-string/jumbo v3, "settings"
8389 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
8391 + const-string/jumbo v5, "packageName=?"
8393 + const/4 v1, 0x1
8395 + new-array v6, v1, [Ljava/lang/String;
8397 + const/4 v1, 0x0
8399 + aput-object p1, v6, v1
8401 + const/4 v7, 0x0
8403 + const/4 v8, 0x0
8405 + const/4 v9, 0x0
8407 + const/4 v10, 0x0
8409 + move-object/from16 v1, p0
8411 + invoke-direct/range {v1 .. v10}, Landroid/privacy/PrivacyPersistenceAdapter;->query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
8413 + move-result-object v41
8415 + if-eqz v41, :cond_2d3
8417 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToFirst()Z
8419 + move-result v1
8421 + if-eqz v1, :cond_2d3
8423 + new-instance v3, Landroid/privacy/PrivacySettings;
8425 + const/4 v1, 0x0
8427 + move-object/from16 v0, v41
8429 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8431 + move-result v1
8433 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8435 + move-result-object v4
8437 + const/4 v1, 0x1
8439 + move-object/from16 v0, v41
8441 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8443 + move-result-object v5
8445 + const/4 v1, 0x2
8447 + move-object/from16 v0, v41
8449 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8451 + move-result v6
8453 + const/4 v1, 0x3
8455 + move-object/from16 v0, v41
8457 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8459 + move-result v1
8461 + int-to-byte v7, v1
8463 + const/4 v1, 0x4
8465 + move-object/from16 v0, v41
8467 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8469 + move-result-object v8
8471 + const/4 v1, 0x5
8473 + move-object/from16 v0, v41
8475 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8477 + move-result v1
8479 + int-to-byte v9, v1
8481 + const/4 v1, 0x6
8483 + move-object/from16 v0, v41
8485 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8487 + move-result-object v10
8489 + const/4 v1, 0x7
8491 + move-object/from16 v0, v41
8493 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8495 + move-result v1
8497 + int-to-byte v11, v1
8499 + const/16 v1, 0x8
8501 + move-object/from16 v0, v41
8503 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8505 + move-result-object v12
8507 + const/16 v1, 0x9
8509 + move-object/from16 v0, v41
8511 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8513 + move-result-object v13
8515 + const/16 v1, 0xa
8517 + move-object/from16 v0, v41
8519 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8521 + move-result v1
8523 + int-to-byte v14, v1
8525 + const/16 v1, 0xb
8527 + move-object/from16 v0, v41
8529 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8531 + move-result-object v15
8533 + const/16 v1, 0xc
8535 + move-object/from16 v0, v41
8537 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8539 + move-result-object v16
8541 + const/16 v1, 0xd
8543 + move-object/from16 v0, v41
8545 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8547 + move-result v1
8549 + int-to-byte v0, v1
8551 + move/from16 v17, v0
8553 + const/16 v1, 0xe
8555 + move-object/from16 v0, v41
8557 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8559 + move-result v1
8561 + int-to-byte v0, v1
8563 + move/from16 v18, v0
8565 + const/16 v1, 0xf
8567 + move-object/from16 v0, v41
8569 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8571 + move-result v1
8573 + int-to-byte v0, v1
8575 + move/from16 v19, v0
8577 + const/16 v1, 0x10
8579 + move-object/from16 v0, v41
8581 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8583 + move-result-object v20
8585 + const/16 v1, 0x11
8587 + move-object/from16 v0, v41
8589 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8591 + move-result v1
8593 + int-to-byte v0, v1
8595 + move/from16 v21, v0
8597 + const/16 v1, 0x12
8599 + move-object/from16 v0, v41
8601 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8603 + move-result-object v22
8605 + const/16 v1, 0x13
8607 + move-object/from16 v0, v41
8609 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8611 + move-result v1
8613 + int-to-byte v0, v1
8615 + move/from16 v23, v0
8617 + const/16 v1, 0x14
8619 + move-object/from16 v0, v41
8621 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8623 + move-result v1
8625 + int-to-byte v0, v1
8627 + move/from16 v24, v0
8629 + const/16 v1, 0x15
8631 + move-object/from16 v0, v41
8633 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8635 + move-result v1
8637 + int-to-byte v0, v1
8639 + move/from16 v25, v0
8641 + const/16 v1, 0x16
8643 + move-object/from16 v0, v41
8645 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8647 + move-result v1
8649 + int-to-byte v0, v1
8651 + move/from16 v26, v0
8653 + const/16 v1, 0x17
8655 + move-object/from16 v0, v41
8657 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8659 + move-result v1
8661 + int-to-byte v0, v1
8663 + move/from16 v27, v0
8665 + const/16 v1, 0x18
8667 + move-object/from16 v0, v41
8669 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8671 + move-result v1
8673 + int-to-byte v0, v1
8675 + move/from16 v28, v0
8677 + const/16 v1, 0x19
8679 + move-object/from16 v0, v41
8681 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8683 + move-result v1
8685 + int-to-byte v0, v1
8687 + move/from16 v29, v0
8689 + const/16 v1, 0x1a
8691 + move-object/from16 v0, v41
8693 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8695 + move-result v1
8697 + int-to-byte v0, v1
8699 + move/from16 v30, v0
8701 + const/16 v1, 0x1b
8703 + move-object/from16 v0, v41
8705 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8707 + move-result v1
8709 + int-to-byte v0, v1
8711 + move/from16 v31, v0
8713 + const/16 v1, 0x1c
8715 + move-object/from16 v0, v41
8717 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8719 + move-result v1
8721 + int-to-byte v0, v1
8723 + move/from16 v32, v0
8725 + const/16 v1, 0x1d
8727 + move-object/from16 v0, v41
8729 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8731 + move-result v1
8733 + int-to-byte v0, v1
8735 + move/from16 v33, v0
8737 + const/16 v1, 0x1e
8739 + move-object/from16 v0, v41
8741 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8743 + move-result v1
8745 + int-to-byte v0, v1
8747 + move/from16 v34, v0
8749 + const/16 v1, 0x1f
8751 + move-object/from16 v0, v41
8753 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8755 + move-result v1
8757 + int-to-byte v0, v1
8759 + move/from16 v35, v0
8761 + const/16 v1, 0x20
8763 + move-object/from16 v0, v41
8765 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8767 + move-result v1
8769 + int-to-byte v0, v1
8771 + move/from16 v36, v0
8773 + const/16 v1, 0x21
8775 + move-object/from16 v0, v41
8777 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8779 + move-result v1
8781 + int-to-byte v0, v1
8783 + move/from16 v37, v0
8785 + const/16 v1, 0x22
8787 + move-object/from16 v0, v41
8789 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8791 + move-result v1
8793 + int-to-byte v0, v1
8795 + move/from16 v38, v0
8797 + const/16 v39, 0x0
8799 + invoke-direct/range {v3 .. v39}, Landroid/privacy/PrivacySettings;-><init>(Ljava/lang/Integer;Ljava/lang/String;IBLjava/lang/String;BLjava/lang/String;BLjava/lang/String;Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;BBBLjava/lang/String;BLjava/lang/String;BBBBBBBBBBBBBBBB[I)V
8800 + :try_end_19f
8801 + .catchall {:try_start_24 .. :try_end_19f} :catchall_299
8802 + .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_19f} :catch_2ce
8804 + :try_start_19f
8805 + new-instance v1, Ljava/lang/StringBuilder;
8807 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8809 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
8811 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8813 + move-result-object v1
8815 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
8817 + move-result-object v4
8819 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
8821 + move-result v4
8823 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8825 + move-result-object v4
8827 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8829 + move-result-object v1
8831 + const-string v4, ";"
8833 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8835 + move-result-object v1
8837 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8839 + move-result-object v1
8841 + move-object/from16 v0, p0
8843 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
8845 + move-result-object v41
8847 + if-eqz v41, :cond_266
8849 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8851 + move-result v1
8853 + if-lez v1, :cond_266
8855 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8857 + move-result v1
8859 + new-array v0, v1, [I
8861 + move-object/from16 v40, v0
8863 + :goto_1da
8864 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToNext()Z
8866 + move-result v1
8868 + if-eqz v1, :cond_261
8870 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getPosition()I
8872 + move-result v1
8874 + const/4 v4, 0x1
8876 + move-object/from16 v0, v41
8878 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
8880 + move-result v4
8882 + aput v4, v40, v1
8883 + :try_end_1ed
8884 + .catchall {:try_start_19f .. :try_end_1ed} :catchall_2cc
8885 + .catch Ljava/lang/Exception; {:try_start_19f .. :try_end_1ed} :catch_1ee
8887 + goto :goto_1da
8889 + :catch_1ee
8890 + move-exception v42
8892 + :goto_1ef
8893 + :try_start_1ef
8894 + const-string v1, "PrivacyPersistenceAdapter"
8896 + new-instance v4, Ljava/lang/StringBuilder;
8898 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
8900 + const-string v5, "getSettings - failed to get settings for package: "
8902 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8904 + move-result-object v4
8906 + move-object/from16 v0, p1
8908 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8910 + move-result-object v4
8912 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8914 + move-result-object v4
8916 + move-object/from16 v0, v42
8918 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8920 + invoke-virtual/range {v42 .. v42}, Ljava/lang/Exception;->printStackTrace()V
8922 + if-eqz v41, :cond_213
8924 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8925 + :try_end_213
8926 + .catchall {:try_start_1ef .. :try_end_213} :catchall_2cc
8928 + :cond_213
8929 + if-eqz v41, :cond_218
8931 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8933 + :cond_218
8934 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8936 + monitor-enter v4
8938 + :try_start_21b
8939 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8941 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8943 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8945 + move-result v1
8947 + add-int/lit8 v1, v1, -0x1
8949 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8951 + move-result-object v1
8953 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8955 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8957 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8959 + move-result v1
8961 + if-nez v1, :cond_23e
8963 + if-eqz v2, :cond_23e
8965 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8967 + move-result v1
8969 + if-eqz v1, :cond_23e
8971 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8973 + :cond_23e
8974 + monitor-exit v4
8975 + :try_end_23f
8976 + .catchall {:try_start_21b .. :try_end_23f} :catchall_296
8978 + :goto_23f
8979 + move-object/from16 v43, v3
8981 + goto/16 :goto_d
8983 + :catch_243
8984 + move-exception v42
8986 + const-string v1, "PrivacyPersistenceAdapter"
8988 + const-string v4, "getSettings - database could not be opened"
8990 + move-object/from16 v0, v42
8992 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8994 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8996 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8998 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9000 + move-result v1
9002 + add-int/lit8 v1, v1, -0x1
9004 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9006 + move-result-object v1
9008 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9010 + move-object/from16 v3, v43
9012 + goto/16 :goto_d
9014 + :cond_261
9015 + :try_start_261
9016 + move-object/from16 v0, v40
9018 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
9019 + :try_end_266
9020 + .catchall {:try_start_261 .. :try_end_266} :catchall_2cc
9021 + .catch Ljava/lang/Exception; {:try_start_261 .. :try_end_266} :catch_1ee
9023 + :cond_266
9024 + :goto_266
9025 + if-eqz v41, :cond_26b
9027 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9029 + :cond_26b
9030 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9032 + monitor-enter v4
9034 + :try_start_26e
9035 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9037 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9039 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9041 + move-result v1
9043 + add-int/lit8 v1, v1, -0x1
9045 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9047 + move-result-object v1
9049 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9051 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9053 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9055 + move-result v1
9057 + if-nez v1, :cond_291
9059 + if-eqz v2, :cond_291
9061 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9063 + move-result v1
9065 + if-eqz v1, :cond_291
9067 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9069 + :cond_291
9070 + monitor-exit v4
9072 + goto :goto_23f
9074 + :catchall_293
9075 + move-exception v1
9077 + monitor-exit v4
9078 + :try_end_295
9079 + .catchall {:try_start_26e .. :try_end_295} :catchall_293
9081 + throw v1
9083 + :catchall_296
9084 + move-exception v1
9086 + :try_start_297
9087 + monitor-exit v4
9088 + :try_end_298
9089 + .catchall {:try_start_297 .. :try_end_298} :catchall_296
9091 + throw v1
9093 + :catchall_299
9094 + move-exception v1
9096 + move-object/from16 v3, v43
9098 + :goto_29c
9099 + if-eqz v41, :cond_2a1
9101 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9103 + :cond_2a1
9104 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9106 + monitor-enter v4
9108 + :try_start_2a4
9109 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9111 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9113 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9115 + move-result v5
9117 + add-int/lit8 v5, v5, -0x1
9119 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9121 + move-result-object v5
9123 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9125 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9127 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9129 + move-result v5
9131 + if-nez v5, :cond_2c7
9133 + if-eqz v2, :cond_2c7
9135 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9137 + move-result v5
9139 + if-eqz v5, :cond_2c7
9141 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9143 + :cond_2c7
9144 + monitor-exit v4
9145 + :try_end_2c8
9146 + .catchall {:try_start_2a4 .. :try_end_2c8} :catchall_2c9
9148 + throw v1
9150 + :catchall_2c9
9151 + move-exception v1
9153 + :try_start_2ca
9154 + monitor-exit v4
9155 + :try_end_2cb
9156 + .catchall {:try_start_2ca .. :try_end_2cb} :catchall_2c9
9158 + throw v1
9160 + :catchall_2cc
9161 + move-exception v1
9163 + goto :goto_29c
9165 + :catch_2ce
9166 + move-exception v42
9168 + move-object/from16 v3, v43
9170 + goto/16 :goto_1ef
9172 + :cond_2d3
9173 + move-object/from16 v3, v43
9175 + goto :goto_266
9176 +.end method
9178 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
9179 + .registers 15
9181 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9183 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9185 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9187 + move-result v0
9189 + add-int/lit8 v0, v0, 0x1
9191 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9193 + move-result-object v0
9195 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9197 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9199 + move-result-object v1
9201 + const/4 v12, 0x0
9203 + :try_start_15
9204 + const-string/jumbo v2, "map"
9206 + const/4 v0, 0x1
9208 + new-array v3, v0, [Ljava/lang/String;
9210 + const/4 v0, 0x0
9212 + const-string/jumbo v4, "value"
9214 + aput-object v4, v3, v0
9216 + const-string/jumbo v4, "name=?"
9218 + const/4 v0, 0x1
9220 + new-array v5, v0, [Ljava/lang/String;
9222 + const/4 v0, 0x0
9224 + aput-object p1, v5, v0
9226 + const/4 v6, 0x0
9228 + const/4 v7, 0x0
9230 + const/4 v8, 0x0
9232 + const/4 v9, 0x0
9234 + move-object v0, p0
9236 + invoke-direct/range {v0 .. v9}, Landroid/privacy/PrivacyPersistenceAdapter;->query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
9238 + move-result-object v10
9240 + if-eqz v10, :cond_77
9242 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
9244 + move-result v0
9246 + if-lez v0, :cond_77
9248 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
9250 + move-result v0
9252 + if-eqz v0, :cond_77
9254 + const-string/jumbo v0, "value"
9256 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
9258 + move-result v0
9260 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9262 + move-result-object v12
9264 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
9265 + :try_end_4f
9266 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
9268 + :goto_4f
9269 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9271 + monitor-enter v2
9273 + :try_start_52
9274 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9276 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9278 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9280 + move-result v0
9282 + add-int/lit8 v0, v0, -0x1
9284 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9286 + move-result-object v0
9288 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9290 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9292 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9294 + move-result v0
9296 + if-nez v0, :cond_75
9298 + if-eqz v1, :cond_75
9300 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9302 + move-result v0
9304 + if-eqz v0, :cond_75
9306 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9308 + :cond_75
9309 + monitor-exit v2
9310 + :try_end_76
9311 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
9313 + return-object v12
9315 + :cond_77
9316 + :try_start_77
9317 + const-string v0, "PrivacyPersistenceAdapter"
9319 + new-instance v2, Ljava/lang/StringBuilder;
9321 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9323 + const-string v3, "getValue - could not get value for name: "
9325 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9327 + move-result-object v2
9329 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9331 + move-result-object v2
9333 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9335 + move-result-object v2
9337 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
9338 + :try_end_8f
9339 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
9341 + goto :goto_4f
9343 + :catch_90
9344 + move-exception v11
9346 + const-string v0, "PrivacyPersistenceAdapter"
9348 + new-instance v2, Ljava/lang/StringBuilder;
9350 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9352 + const-string v3, "getValue - could not get value for name: "
9354 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9356 + move-result-object v2
9358 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9360 + move-result-object v2
9362 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9364 + move-result-object v2
9366 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9368 + goto :goto_4f
9370 + :catchall_aa
9371 + move-exception v0
9373 + :try_start_ab
9374 + monitor-exit v2
9375 + :try_end_ac
9376 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
9378 + throw v0
9379 +.end method
9381 +.method public purgeSettings()Z
9382 + .registers 28
9384 + const/16 v25, 0x1
9386 + new-instance v13, Ljava/util/ArrayList;
9388 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
9390 + move-object/from16 v0, p0
9392 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
9394 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
9396 + move-result-object v21
9398 + const/16 v2, 0x80
9400 + move-object/from16 v0, v21
9402 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
9404 + move-result-object v19
9406 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
9408 + move-result-object v18
9410 + :goto_1b
9411 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
9413 + move-result v2
9415 + if-eqz v2, :cond_2d
9417 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
9419 + move-result-object v12
9421 + check-cast v12, Landroid/content/pm/ApplicationInfo;
9423 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
9425 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9427 + goto :goto_1b
9429 + :cond_2d
9430 + new-instance v26, Ljava/io/File;
9432 + const-string v2, "/data/system/privacy"
9434 + move-object/from16 v0, v26
9436 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9438 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
9440 + move-result-object v15
9442 + array-length v0, v15
9444 + move/from16 v20, v0
9446 + const/16 v18, 0x0
9448 + :goto_3f
9449 + move/from16 v0, v18
9451 + move/from16 v1, v20
9453 + if-ge v0, v1, :cond_5d
9455 + aget-object v23, v15, v18
9457 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
9459 + move-result-object v24
9461 + move-object/from16 v0, v24
9463 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9465 + move-result v2
9467 + if-nez v2, :cond_5a
9469 + move-object/from16 v0, p0
9471 + move-object/from16 v1, v23
9473 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
9475 + :cond_5a
9476 + add-int/lit8 v18, v18, 0x1
9478 + goto :goto_3f
9480 + :cond_5d
9481 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9483 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9485 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9487 + move-result v2
9489 + add-int/lit8 v2, v2, 0x1
9491 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9493 + move-result-object v2
9495 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9497 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9499 + move-result-object v3
9501 + const/16 v16, 0x0
9503 + :try_start_73
9504 + const-string/jumbo v4, "settings"
9506 + const/4 v2, 0x1
9508 + new-array v5, v2, [Ljava/lang/String;
9510 + const/4 v2, 0x0
9512 + const-string/jumbo v6, "packageName"
9514 + aput-object v6, v5, v2
9516 + const/4 v6, 0x0
9518 + const/4 v7, 0x0
9520 + const/4 v8, 0x0
9522 + const/4 v9, 0x0
9524 + const/4 v10, 0x0
9526 + const/4 v11, 0x0
9528 + move-object/from16 v2, p0
9530 + invoke-direct/range {v2 .. v11}, Landroid/privacy/PrivacyPersistenceAdapter;->query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
9532 + move-result-object v16
9534 + new-instance v14, Ljava/util/ArrayList;
9536 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
9538 + :goto_90
9539 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
9541 + move-result v2
9543 + if-eqz v2, :cond_142
9545 + const/4 v2, 0x0
9547 + move-object/from16 v0, v16
9549 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9551 + move-result-object v24
9553 + move-object/from16 v0, v24
9555 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9557 + move-result v2
9559 + if-nez v2, :cond_e7
9561 + move-object/from16 v0, p0
9563 + move-object/from16 v1, v24
9565 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9566 + :try_end_ac
9567 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
9568 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
9570 + goto :goto_90
9572 + :catch_ad
9573 + move-exception v17
9575 + :try_start_ae
9576 + const-string v2, "PrivacyPersistenceAdapter"
9578 + const-string/jumbo v4, "purgeSettings - purging DB failed"
9580 + move-object/from16 v0, v17
9582 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9583 + :try_end_b8
9584 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
9586 + const/16 v25, 0x0
9588 + if-eqz v16, :cond_bf
9590 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9592 + :cond_bf
9593 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9595 + monitor-enter v4
9597 + :try_start_c2
9598 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9600 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9602 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9604 + move-result v2
9606 + add-int/lit8 v2, v2, -0x1
9608 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9610 + move-result-object v2
9612 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9614 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9616 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9618 + move-result v2
9620 + if-nez v2, :cond_e5
9622 + if-eqz v3, :cond_e5
9624 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9626 + move-result v2
9628 + if-eqz v2, :cond_e5
9630 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9632 + :cond_e5
9633 + monitor-exit v4
9634 + :try_end_e6
9635 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
9637 + :goto_e6
9638 + return v25
9640 + :cond_e7
9641 + :try_start_e7
9642 + move-object/from16 v0, v24
9644 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9646 + move-result v2
9648 + if-eqz v2, :cond_135
9650 + const/4 v2, 0x0
9652 + move-object/from16 v0, p0
9654 + move-object/from16 v1, v24
9656 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
9658 + move-result-object v22
9660 + move-object/from16 v0, p0
9662 + move-object/from16 v1, v24
9664 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9666 + move-object/from16 v0, p0
9668 + move-object/from16 v1, v22
9670 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9671 + :try_end_106
9672 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
9673 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
9675 + goto :goto_90
9677 + :catchall_107
9678 + move-exception v2
9680 + if-eqz v16, :cond_10d
9682 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9684 + :cond_10d
9685 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9687 + monitor-enter v4
9689 + :try_start_110
9690 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9692 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9694 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9696 + move-result v5
9698 + add-int/lit8 v5, v5, -0x1
9700 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9702 + move-result-object v5
9704 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9706 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9708 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9710 + move-result v5
9712 + if-nez v5, :cond_133
9714 + if-eqz v3, :cond_133
9716 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9718 + move-result v5
9720 + if-eqz v5, :cond_133
9722 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9724 + :cond_133
9725 + monitor-exit v4
9726 + :try_end_134
9727 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
9729 + throw v2
9731 + :cond_135
9732 + :try_start_135
9733 + move-object/from16 v0, v24
9735 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9736 + :try_end_13a
9737 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
9738 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
9740 + goto/16 :goto_90
9742 + :catchall_13c
9743 + move-exception v2
9745 + :try_start_13d
9746 + monitor-exit v4
9747 + :try_end_13e
9748 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
9750 + throw v2
9752 + :catchall_13f
9753 + move-exception v2
9755 + :try_start_140
9756 + monitor-exit v4
9757 + :try_end_141
9758 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
9760 + throw v2
9762 + :cond_142
9763 + if-eqz v16, :cond_147
9765 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9767 + :cond_147
9768 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9770 + monitor-enter v4
9772 + :try_start_14a
9773 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9775 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9777 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9779 + move-result v2
9781 + add-int/lit8 v2, v2, -0x1
9783 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9785 + move-result-object v2
9787 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9789 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9791 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9793 + move-result v2
9795 + if-nez v2, :cond_16d
9797 + if-eqz v3, :cond_16d
9799 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9801 + move-result v2
9803 + if-eqz v2, :cond_16d
9805 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9807 + :cond_16d
9808 + monitor-exit v4
9810 + goto/16 :goto_e6
9812 + :catchall_170
9813 + move-exception v2
9815 + monitor-exit v4
9816 + :try_end_172
9817 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
9819 + throw v2
9820 +.end method
9822 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
9823 + .registers 27
9825 + monitor-enter p0
9827 + const/16 v18, 0x1
9829 + :try_start_3
9830 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
9832 + move-result-object v17
9834 + if-eqz v17, :cond_f
9836 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->isEmpty()Z
9838 + move-result v3
9840 + if-eqz v3, :cond_1a
9842 + :cond_f
9843 + const-string v3, "PrivacyPersistenceAdapter"
9845 + const-string/jumbo v4, "saveSettings - either package name, UID or both is missing"
9847 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
9848 + :try_end_17
9849 + .catchall {:try_start_3 .. :try_end_17} :catchall_2c2
9851 + const/4 v3, 0x0
9853 + :goto_18
9854 + monitor-exit p0
9856 + return v3
9858 + :cond_1a
9859 + :try_start_1a
9860 + new-instance v23, Landroid/content/ContentValues;
9862 + invoke-direct/range {v23 .. v23}, Landroid/content/ContentValues;-><init>()V
9864 + const-string/jumbo v3, "packageName"
9866 + move-object/from16 v0, v23
9868 + move-object/from16 v1, v17
9870 + invoke-virtual {v0, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9872 + const-string/jumbo v3, "uid"
9874 + const/4 v4, -0x1
9876 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9878 + move-result-object v4
9880 + move-object/from16 v0, v23
9882 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
9884 + const-string v3, "deviceIdSetting"
9886 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
9888 + move-result v4
9890 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9892 + move-result-object v4
9894 + move-object/from16 v0, v23
9896 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9898 + const-string v3, "deviceId"
9900 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
9902 + move-result-object v4
9904 + move-object/from16 v0, v23
9906 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9908 + const-string v3, "line1NumberSetting"
9910 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
9912 + move-result v4
9914 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9916 + move-result-object v4
9918 + move-object/from16 v0, v23
9920 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9922 + const-string v3, "line1Number"
9924 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
9926 + move-result-object v4
9928 + move-object/from16 v0, v23
9930 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9932 + const-string v3, "locationGpsSetting"
9934 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
9936 + move-result v4
9938 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9940 + move-result-object v4
9942 + move-object/from16 v0, v23
9944 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9946 + const-string v3, "locationGpsLat"
9948 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
9950 + move-result-object v4
9952 + move-object/from16 v0, v23
9954 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9956 + const-string v3, "locationGpsLon"
9958 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
9960 + move-result-object v4
9962 + move-object/from16 v0, v23
9964 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9966 + const-string v3, "locationNetworkSetting"
9968 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
9970 + move-result v4
9972 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9974 + move-result-object v4
9976 + move-object/from16 v0, v23
9978 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9980 + const-string v3, "locationNetworkLat"
9982 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
9984 + move-result-object v4
9986 + move-object/from16 v0, v23
9988 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9990 + const-string v3, "locationNetworkLon"
9992 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
9994 + move-result-object v4
9996 + move-object/from16 v0, v23
9998 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10000 + const-string/jumbo v3, "networkInfoSetting"
10002 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
10004 + move-result v4
10006 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10008 + move-result-object v4
10010 + move-object/from16 v0, v23
10012 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10014 + const-string/jumbo v3, "simInfoSetting"
10016 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
10018 + move-result v4
10020 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10022 + move-result-object v4
10024 + move-object/from16 v0, v23
10026 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10028 + const-string/jumbo v3, "simSerialNumberSetting"
10030 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
10032 + move-result v4
10034 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10036 + move-result-object v4
10038 + move-object/from16 v0, v23
10040 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10042 + const-string/jumbo v3, "simSerialNumber"
10044 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
10046 + move-result-object v4
10048 + move-object/from16 v0, v23
10050 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10052 + const-string/jumbo v3, "subscriberIdSetting"
10054 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
10056 + move-result v4
10058 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10060 + move-result-object v4
10062 + move-object/from16 v0, v23
10064 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10066 + const-string/jumbo v3, "subscriberId"
10068 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
10070 + move-result-object v4
10072 + move-object/from16 v0, v23
10074 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10076 + const-string v3, "accountsSetting"
10078 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
10080 + move-result v4
10082 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10084 + move-result-object v4
10086 + move-object/from16 v0, v23
10088 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10090 + const-string v3, "accountsAuthTokensSetting"
10092 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
10094 + move-result v4
10096 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10098 + move-result-object v4
10100 + move-object/from16 v0, v23
10102 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10104 + const-string/jumbo v3, "outgoingCallsSetting"
10106 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
10108 + move-result v4
10110 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10112 + move-result-object v4
10114 + move-object/from16 v0, v23
10116 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10118 + const-string v3, "incomingCallsSetting"
10120 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
10122 + move-result v4
10124 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10126 + move-result-object v4
10128 + move-object/from16 v0, v23
10130 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10132 + const-string v3, "contactsSetting"
10134 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
10136 + move-result v4
10138 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10140 + move-result-object v4
10142 + move-object/from16 v0, v23
10144 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10146 + const-string v3, "calendarSetting"
10148 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
10150 + move-result v4
10152 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10154 + move-result-object v4
10156 + move-object/from16 v0, v23
10158 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10160 + const-string/jumbo v3, "mmsSetting"
10162 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
10164 + move-result v4
10166 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10168 + move-result-object v4
10170 + move-object/from16 v0, v23
10172 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10174 + const-string/jumbo v3, "smsSetting"
10176 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
10178 + move-result v4
10180 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10182 + move-result-object v4
10184 + move-object/from16 v0, v23
10186 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10188 + const-string v3, "callLogSetting"
10190 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
10192 + move-result v4
10194 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10196 + move-result-object v4
10198 + move-object/from16 v0, v23
10200 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10202 + const-string v3, "bookmarksSetting"
10204 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
10206 + move-result v4
10208 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10210 + move-result-object v4
10212 + move-object/from16 v0, v23
10214 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10216 + const-string/jumbo v3, "systemLogsSetting"
10218 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10220 + move-result v4
10222 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10224 + move-result-object v4
10226 + move-object/from16 v0, v23
10228 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10230 + const-string/jumbo v3, "notificationSetting"
10232 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
10234 + move-result v4
10236 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10238 + move-result-object v4
10240 + move-object/from16 v0, v23
10242 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10244 + const-string v3, "intentBootCompletedSetting"
10246 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
10248 + move-result v4
10250 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10252 + move-result-object v4
10254 + move-object/from16 v0, v23
10256 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10258 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10260 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10262 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10264 + move-result v3
10266 + add-int/lit8 v3, v3, 0x1
10268 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10270 + move-result-object v3
10272 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10274 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10276 + move-result-object v2
10278 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
10279 + :try_end_1eb
10280 + .catchall {:try_start_1a .. :try_end_1eb} :catchall_2c2
10282 + const/4 v11, 0x0
10284 + :try_start_1ec
10285 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
10287 + move-result-object v15
10289 + if-eqz v15, :cond_2c8
10291 + const-string/jumbo v3, "settings"
10293 + const-string v4, "_id=?"
10295 + const/4 v5, 0x1
10297 + new-array v5, v5, [Ljava/lang/String;
10299 + const/4 v6, 0x0
10301 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10303 + move-result-object v7
10305 + aput-object v7, v5, v6
10307 + move-object/from16 v0, v23
10309 + invoke-virtual {v2, v3, v0, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
10311 + move-result v3
10313 + const/4 v4, 0x1
10315 + if-ge v3, v4, :cond_249
10317 + new-instance v3, Ljava/lang/Exception;
10319 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10321 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10323 + throw v3
10324 + :try_end_213
10325 + .catchall {:try_start_1ec .. :try_end_213} :catchall_291
10326 + .catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_213} :catch_213
10328 + :catch_213
10329 + move-exception v13
10331 + const/16 v18, 0x0
10333 + :try_start_216
10334 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10336 + if-eqz v11, :cond_21e
10338 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10340 + :cond_21e
10341 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10343 + monitor-enter v4
10344 + :try_end_221
10345 + .catchall {:try_start_216 .. :try_end_221} :catchall_2c2
10347 + :try_start_221
10348 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10350 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10352 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10354 + move-result v3
10356 + add-int/lit8 v3, v3, -0x1
10358 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10360 + move-result-object v3
10362 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10364 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10366 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10368 + move-result v3
10370 + if-nez v3, :cond_244
10372 + if-eqz v2, :cond_244
10374 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10376 + move-result v3
10378 + if-eqz v3, :cond_244
10380 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10382 + :cond_244
10383 + monitor-exit v4
10384 + :try_end_245
10385 + .catchall {:try_start_221 .. :try_end_245} :catchall_4ca
10387 + :goto_245
10388 + move/from16 v3, v18
10390 + goto/16 :goto_18
10392 + :cond_249
10393 + :try_start_249
10394 + const-string v3, "allowed_contacts"
10396 + const-string/jumbo v4, "settings_id=?"
10398 + const/4 v5, 0x1
10400 + new-array v5, v5, [Ljava/lang/String;
10402 + const/4 v6, 0x0
10404 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10406 + move-result-object v7
10408 + aput-object v7, v5, v6
10410 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10412 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10414 + move-result-object v10
10416 + if-eqz v10, :cond_3f2
10418 + new-instance v12, Landroid/content/ContentValues;
10420 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10422 + const/4 v14, 0x0
10424 + :goto_267
10425 + array-length v3, v10
10427 + if-ge v14, v3, :cond_3f2
10429 + const-string/jumbo v3, "settings_id"
10431 + invoke-virtual {v12, v3, v15}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10433 + const-string v3, "contact_id"
10435 + aget v4, v10, v14
10437 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10439 + move-result-object v4
10441 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10443 + const-string v3, "allowed_contacts"
10445 + const/4 v4, 0x0
10447 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10449 + move-result-wide v3
10451 + const-wide/16 v5, -0x1
10453 + cmp-long v3, v3, v5
10455 + if-nez v3, :cond_2c5
10457 + new-instance v3, Ljava/lang/Exception;
10459 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10461 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10463 + throw v3
10464 + :try_end_291
10465 + .catchall {:try_start_249 .. :try_end_291} :catchall_291
10466 + .catch Ljava/lang/Exception; {:try_start_249 .. :try_end_291} :catch_213
10468 + :catchall_291
10469 + move-exception v3
10471 + :try_start_292
10472 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10474 + if-eqz v11, :cond_29a
10476 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10478 + :cond_29a
10479 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10481 + monitor-enter v4
10482 + :try_end_29d
10483 + .catchall {:try_start_292 .. :try_end_29d} :catchall_2c2
10485 + :try_start_29d
10486 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10488 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10490 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10492 + move-result v5
10494 + add-int/lit8 v5, v5, -0x1
10496 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10498 + move-result-object v5
10500 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10502 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10504 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10506 + move-result v5
10508 + if-nez v5, :cond_2c0
10510 + if-eqz v2, :cond_2c0
10512 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10514 + move-result v5
10516 + if-eqz v5, :cond_2c0
10518 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10520 + :cond_2c0
10521 + monitor-exit v4
10522 + :try_end_2c1
10523 + .catchall {:try_start_29d .. :try_end_2c1} :catchall_4cd
10525 + :try_start_2c1
10526 + throw v3
10527 + :try_end_2c2
10528 + .catchall {:try_start_2c1 .. :try_end_2c2} :catchall_2c2
10530 + :catchall_2c2
10531 + move-exception v3
10533 + monitor-exit p0
10535 + throw v3
10537 + :cond_2c5
10538 + add-int/lit8 v14, v14, 0x1
10540 + goto :goto_267
10542 + :cond_2c8
10543 + :try_start_2c8
10544 + const-string/jumbo v3, "settings"
10546 + const/4 v4, 0x1
10548 + new-array v4, v4, [Ljava/lang/String;
10550 + const/4 v5, 0x0
10552 + const-string v6, "_id"
10554 + aput-object v6, v4, v5
10556 + const-string/jumbo v5, "packageName=?"
10558 + const/4 v6, 0x1
10560 + new-array v6, v6, [Ljava/lang/String;
10562 + const/4 v7, 0x0
10564 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10566 + move-result-object v8
10568 + aput-object v8, v6, v7
10570 + const/4 v7, 0x0
10572 + const/4 v8, 0x0
10574 + const/4 v9, 0x0
10576 + invoke-virtual/range {v2 .. v9}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
10578 + move-result-object v11
10580 + if-eqz v11, :cond_3e7
10582 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10584 + move-result v3
10586 + const/4 v4, 0x1
10588 + if-ne v3, v4, :cond_36e
10590 + const-string/jumbo v3, "settings"
10592 + const-string/jumbo v4, "packageName=?"
10594 + const/4 v5, 0x1
10596 + new-array v5, v5, [Ljava/lang/String;
10598 + const/4 v6, 0x0
10600 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10602 + move-result-object v7
10604 + aput-object v7, v5, v6
10606 + move-object/from16 v0, v23
10608 + invoke-virtual {v2, v3, v0, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
10610 + move-result v3
10612 + const/4 v4, 0x1
10614 + if-ge v3, v4, :cond_312
10616 + new-instance v3, Ljava/lang/Exception;
10618 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10620 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10622 + throw v3
10624 + :cond_312
10625 + invoke-interface {v11}, Landroid/database/Cursor;->moveToFirst()Z
10627 + move-result v3
10629 + if-eqz v3, :cond_3f2
10631 + const/4 v3, 0x0
10633 + invoke-interface {v11, v3}, Landroid/database/Cursor;->getInt(I)I
10635 + move-result v3
10637 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10639 + move-result-object v16
10641 + const-string v3, "allowed_contacts"
10643 + const-string/jumbo v4, "settings_id=?"
10645 + const/4 v5, 0x1
10647 + new-array v5, v5, [Ljava/lang/String;
10649 + const/4 v6, 0x0
10651 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10653 + move-result-object v7
10655 + aput-object v7, v5, v6
10657 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10659 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10661 + move-result-object v10
10663 + if-eqz v10, :cond_3f2
10665 + new-instance v12, Landroid/content/ContentValues;
10667 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10669 + const/4 v14, 0x0
10671 + :goto_33f
10672 + array-length v3, v10
10674 + if-ge v14, v3, :cond_3f2
10676 + const-string/jumbo v3, "settings_id"
10678 + move-object/from16 v0, v16
10680 + invoke-virtual {v12, v3, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10682 + const-string v3, "contact_id"
10684 + aget v4, v10, v14
10686 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10688 + move-result-object v4
10690 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10692 + const-string v3, "allowed_contacts"
10694 + const/4 v4, 0x0
10696 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10698 + move-result-wide v3
10700 + const-wide/16 v5, -0x1
10702 + cmp-long v3, v3, v5
10704 + if-nez v3, :cond_36b
10706 + new-instance v3, Ljava/lang/Exception;
10708 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10710 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10712 + throw v3
10714 + :cond_36b
10715 + add-int/lit8 v14, v14, 0x1
10717 + goto :goto_33f
10719 + :cond_36e
10720 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10722 + move-result v3
10724 + if-nez v3, :cond_3dc
10726 + const-string/jumbo v3, "settings"
10728 + const/4 v4, 0x0
10730 + move-object/from16 v0, v23
10732 + invoke-virtual {v2, v3, v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10734 + move-result-wide v19
10736 + const-wide/16 v3, -0x1
10738 + cmp-long v3, v19, v3
10740 + if-nez v3, :cond_38d
10742 + new-instance v3, Ljava/lang/Exception;
10744 + const-string/jumbo v4, "saveSettings - failed to insert new record into DB"
10746 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10748 + throw v3
10750 + :cond_38d
10751 + const-string v3, "allowed_contacts"
10753 + const-string/jumbo v4, "settings_id=?"
10755 + const/4 v5, 0x1
10757 + new-array v5, v5, [Ljava/lang/String;
10759 + const/4 v6, 0x0
10761 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
10763 + move-result-object v7
10765 + aput-object v7, v5, v6
10767 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10769 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10771 + move-result-object v10
10773 + if-eqz v10, :cond_3f2
10775 + new-instance v12, Landroid/content/ContentValues;
10777 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10779 + const/4 v14, 0x0
10781 + :goto_3ab
10782 + array-length v3, v10
10784 + if-ge v14, v3, :cond_3f2
10786 + const-string/jumbo v3, "settings_id"
10788 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
10790 + move-result-object v4
10792 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
10794 + const-string v3, "contact_id"
10796 + aget v4, v10, v14
10798 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10800 + move-result-object v4
10802 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10804 + const-string v3, "allowed_contacts"
10806 + const/4 v4, 0x0
10808 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10810 + move-result-wide v3
10812 + const-wide/16 v5, -0x1
10814 + cmp-long v3, v3, v5
10816 + if-nez v3, :cond_3d9
10818 + new-instance v3, Ljava/lang/Exception;
10820 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10822 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10824 + throw v3
10826 + :cond_3d9
10827 + add-int/lit8 v14, v14, 0x1
10829 + goto :goto_3ab
10831 + :cond_3dc
10832 + const/16 v18, 0x0
10834 + new-instance v3, Ljava/lang/Exception;
10836 + const-string/jumbo v4, "saveSettings - duplicate entries in the privacy.db"
10838 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10840 + throw v3
10842 + :cond_3e7
10843 + const/16 v18, 0x0
10845 + new-instance v3, Ljava/lang/Exception;
10847 + const-string/jumbo v4, "saveSettings - cursor is null, database access failed"
10849 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10851 + throw v3
10853 + :cond_3f2
10854 + new-instance v21, Ljava/io/File;
10856 + new-instance v3, Ljava/lang/StringBuilder;
10858 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10860 + const-string v4, "/data/system/privacy/"
10862 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10864 + move-result-object v3
10866 + move-object/from16 v0, v17
10868 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10870 + move-result-object v3
10872 + const-string v4, "/"
10874 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10876 + move-result-object v3
10878 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10880 + move-result-object v3
10882 + move-object/from16 v0, v21
10884 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10886 + new-instance v22, Ljava/io/File;
10888 + new-instance v3, Ljava/lang/StringBuilder;
10890 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10892 + const-string v4, "/data/system/privacy/"
10894 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10896 + move-result-object v3
10898 + move-object/from16 v0, v17
10900 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10902 + move-result-object v3
10904 + const-string v4, "/"
10906 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10908 + move-result-object v3
10910 + const-string v4, "/systemLogsSetting"
10912 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10914 + move-result-object v3
10916 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10918 + move-result-object v3
10920 + move-object/from16 v0, v22
10922 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10923 + :try_end_43c
10924 + .catchall {:try_start_2c8 .. :try_end_43c} :catchall_291
10925 + .catch Ljava/lang/Exception; {:try_start_2c8 .. :try_end_43c} :catch_213
10927 + :try_start_43c
10928 + invoke-virtual/range {v21 .. v21}, Ljava/io/File;->mkdirs()Z
10930 + const/4 v3, 0x1
10932 + const/4 v4, 0x0
10934 + move-object/from16 v0, v21
10936 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10938 + const/4 v3, 0x1
10940 + const/4 v4, 0x0
10942 + move-object/from16 v0, v21
10944 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setExecutable(ZZ)Z
10946 + invoke-virtual/range {v22 .. v22}, Ljava/io/File;->createNewFile()Z
10948 + const/4 v3, 0x1
10950 + const/4 v4, 0x0
10952 + move-object/from16 v0, v22
10954 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10956 + new-instance v24, Ljava/io/OutputStreamWriter;
10958 + new-instance v3, Ljava/io/FileOutputStream;
10960 + move-object/from16 v0, v22
10962 + invoke-direct {v3, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
10964 + move-object/from16 v0, v24
10966 + invoke-direct {v0, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
10968 + new-instance v3, Ljava/lang/StringBuilder;
10970 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10972 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10974 + move-result v4
10976 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
10978 + move-result-object v3
10980 + const-string v4, ""
10982 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10984 + move-result-object v3
10986 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10988 + move-result-object v3
10990 + move-object/from16 v0, v24
10992 + invoke-virtual {v0, v3}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
10994 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->flush()V
10996 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->close()V
10997 + :try_end_487
10998 + .catchall {:try_start_43c .. :try_end_487} :catchall_291
10999 + .catch Ljava/io/IOException; {:try_start_43c .. :try_end_487} :catch_4be
11000 + .catch Ljava/lang/Exception; {:try_start_43c .. :try_end_487} :catch_213
11002 + :try_start_487
11003 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11004 + :try_end_48a
11005 + .catchall {:try_start_487 .. :try_end_48a} :catchall_291
11006 + .catch Ljava/lang/Exception; {:try_start_487 .. :try_end_48a} :catch_213
11008 + :try_start_48a
11009 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11011 + if-eqz v11, :cond_492
11013 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
11015 + :cond_492
11016 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11018 + monitor-enter v4
11019 + :try_end_495
11020 + .catchall {:try_start_48a .. :try_end_495} :catchall_2c2
11022 + :try_start_495
11023 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11025 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11027 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11029 + move-result v3
11031 + add-int/lit8 v3, v3, -0x1
11033 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11035 + move-result-object v3
11037 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11039 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11041 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11043 + move-result v3
11045 + if-nez v3, :cond_4b8
11047 + if-eqz v2, :cond_4b8
11049 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11051 + move-result v3
11053 + if-eqz v3, :cond_4b8
11055 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11057 + :cond_4b8
11058 + monitor-exit v4
11060 + goto/16 :goto_245
11062 + :catchall_4bb
11063 + move-exception v3
11065 + monitor-exit v4
11066 + :try_end_4bd
11067 + .catchall {:try_start_495 .. :try_end_4bd} :catchall_4bb
11069 + :try_start_4bd
11070 + throw v3
11071 + :try_end_4be
11072 + .catchall {:try_start_4bd .. :try_end_4be} :catchall_2c2
11074 + :catch_4be
11075 + move-exception v13
11077 + const/16 v18, 0x0
11079 + :try_start_4c1
11080 + new-instance v3, Ljava/lang/Exception;
11082 + const-string/jumbo v4, "saveSettings - could not write settings to file"
11084 + invoke-direct {v3, v4, v13}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
11086 + throw v3
11087 + :try_end_4ca
11088 + .catchall {:try_start_4c1 .. :try_end_4ca} :catchall_291
11089 + .catch Ljava/lang/Exception; {:try_start_4c1 .. :try_end_4ca} :catch_213
11091 + :catchall_4ca
11092 + move-exception v3
11094 + :try_start_4cb
11095 + monitor-exit v4
11096 + :try_end_4cc
11097 + .catchall {:try_start_4cb .. :try_end_4cc} :catchall_4ca
11099 + :try_start_4cc
11100 + throw v3
11101 + :try_end_4cd
11102 + .catchall {:try_start_4cc .. :try_end_4cd} :catchall_2c2
11104 + :catchall_4cd
11105 + move-exception v3
11107 + :try_start_4ce
11108 + monitor-exit v4
11109 + :try_end_4cf
11110 + .catchall {:try_start_4ce .. :try_end_4cf} :catchall_4cd
11112 + :try_start_4cf
11113 + throw v3
11114 + :try_end_4d0
11115 + .catchall {:try_start_4cf .. :try_end_4d0} :catchall_2c2
11116 +.end method
11118 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
11119 + .registers 10
11121 + monitor-enter p0
11123 + :try_start_1
11124 + const-string v3, "PrivacyPersistenceAdapter"
11126 + new-instance v4, Ljava/lang/StringBuilder;
11128 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11130 + const-string/jumbo v5, "setValue - name "
11132 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11134 + move-result-object v4
11136 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11138 + move-result-object v4
11140 + const-string v5, " value "
11142 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11144 + move-result-object v4
11146 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11148 + move-result-object v4
11150 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11152 + move-result-object v4
11154 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11156 + new-instance v2, Landroid/content/ContentValues;
11158 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
11160 + const-string/jumbo v3, "name"
11162 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11164 + const-string/jumbo v3, "value"
11166 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11168 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11170 + move-result-object v0
11172 + const-string/jumbo v3, "map"
11174 + const/4 v4, 0x0
11176 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11178 + move-result-wide v3
11180 + const-wide/16 v5, -0x1
11182 + cmp-long v3, v3, v5
11184 + if-eqz v3, :cond_5d
11186 + const/4 v1, 0x1
11188 + :goto_48
11189 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11191 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11193 + move-result v3
11195 + if-nez v3, :cond_5b
11197 + if-eqz v0, :cond_5b
11199 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11201 + move-result v3
11203 + if-eqz v3, :cond_5b
11205 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11206 + :try_end_5b
11207 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
11209 + :cond_5b
11210 + monitor-exit p0
11212 + return v1
11214 + :cond_5d
11215 + const/4 v1, 0x0
11217 + goto :goto_48
11219 + :catchall_5f
11220 + move-exception v3
11222 + monitor-exit p0
11224 + throw v3
11225 +.end method
11226 diff -Npru stock_framework/smali/android/privacy/PrivacySettings$1.smali pdroid_framework/smali/android/privacy/PrivacySettings$1.smali
11227 --- stock_framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 16:00:00.000000000 -0800
11228 +++ pdroid_framework/smali/android/privacy/PrivacySettings$1.smali 2012-07-02 10:16:51.024015381 -0700
11229 @@ -0,0 +1,77 @@
11230 +.class final Landroid/privacy/PrivacySettings$1;
11231 +.super Ljava/lang/Object;
11232 +.source "PrivacySettings.java"
11234 +# interfaces
11235 +.implements Landroid/os/Parcelable$Creator;
11238 +# annotations
11239 +.annotation system Ldalvik/annotation/EnclosingClass;
11240 + value = Landroid/privacy/PrivacySettings;
11241 +.end annotation
11243 +.annotation system Ldalvik/annotation/InnerClass;
11244 + accessFlags = 0x8
11245 + name = null
11246 +.end annotation
11248 +.annotation system Ldalvik/annotation/Signature;
11249 + value = {
11250 + "Ljava/lang/Object;",
11251 + "Landroid/os/Parcelable$Creator",
11252 + "<",
11253 + "Landroid/privacy/PrivacySettings;",
11254 + ">;"
11256 +.end annotation
11259 +# direct methods
11260 +.method constructor <init>()V
11261 + .registers 1
11263 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11265 + return-void
11266 +.end method
11269 +# virtual methods
11270 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11271 + .registers 3
11273 + new-instance v0, Landroid/privacy/PrivacySettings;
11275 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
11277 + return-object v0
11278 +.end method
11280 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
11281 + .registers 3
11283 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11285 + move-result-object v0
11287 + return-object v0
11288 +.end method
11290 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
11291 + .registers 3
11293 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
11295 + return-object v0
11296 +.end method
11298 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
11299 + .registers 3
11301 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
11303 + move-result-object v0
11305 + return-object v0
11306 +.end method
11307 diff -Npru stock_framework/smali/android/privacy/PrivacySettingsManagerService.smali pdroid_framework/smali/android/privacy/PrivacySettingsManagerService.smali
11308 --- stock_framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 16:00:00.000000000 -0800
11309 +++ pdroid_framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-07-02 10:16:51.040019193 -0700
11310 @@ -0,0 +1,535 @@
11311 +.class public final Landroid/privacy/PrivacySettingsManagerService;
11312 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
11313 +.source "PrivacySettingsManagerService.java"
11316 +# static fields
11317 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
11319 +.field private static final VERSION:D = 1.32
11321 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
11323 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
11326 +# instance fields
11327 +.field private bootCompleted:Z
11329 +.field private context:Landroid/content/Context;
11331 +.field private enabled:Z
11333 +.field private notificationsEnabled:Z
11335 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11338 +# direct methods
11339 +.method public constructor <init>(Landroid/content/Context;)V
11340 + .registers 5
11342 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
11344 + const-string v0, "PrivacySettingsManagerService"
11346 + new-instance v1, Ljava/lang/StringBuilder;
11348 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11350 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
11352 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11354 + move-result-object v1
11356 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11358 + move-result-object v2
11360 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11362 + move-result-object v1
11364 + const-string v2, " UID: "
11366 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11368 + move-result-object v1
11370 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11372 + move-result v2
11374 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11376 + move-result-object v1
11378 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11380 + move-result-object v1
11382 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11384 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11386 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
11388 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
11390 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11392 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11394 + const-string v1, "/data/system/privacy"
11396 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11398 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11400 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11402 + const-string v1, "enabled"
11404 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11406 + move-result-object v0
11408 + const-string v1, "1"
11410 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11412 + move-result v0
11414 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11416 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11418 + const-string/jumbo v1, "notifications_enabled"
11420 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11422 + move-result-object v0
11424 + const-string v1, "1"
11426 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11428 + move-result v0
11430 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11432 + const/4 v0, 0x0
11434 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11436 + return-void
11437 +.end method
11440 +# virtual methods
11441 +.method public addObserver(Ljava/lang/String;)V
11442 + .registers 5
11444 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11446 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11448 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11450 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11452 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11454 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11456 + return-void
11457 +.end method
11459 +.method public deleteSettings(Ljava/lang/String;)Z
11460 + .registers 8
11462 + const/4 v5, 0x1
11464 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11466 + move-result v2
11468 + const/16 v3, 0x3e8
11470 + if-eq v2, v3, :cond_12
11472 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11474 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
11476 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
11478 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11480 + :cond_12
11481 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11483 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
11485 + move-result v1
11487 + new-instance v2, Ljava/lang/StringBuilder;
11489 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11491 + const-string v3, "/data/system/privacy/"
11493 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11495 + move-result-object v2
11497 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11499 + move-result-object v2
11501 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11503 + move-result-object v0
11505 + new-instance v2, Ljava/io/File;
11507 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11509 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
11511 + move-result v2
11513 + if-eqz v2, :cond_3e
11515 + if-ne v1, v5, :cond_3e
11517 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11519 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11521 + :cond_3d
11522 + :goto_3d
11523 + return v1
11525 + :cond_3e
11526 + if-ne v1, v5, :cond_3d
11528 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11530 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
11532 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
11534 + goto :goto_3d
11535 +.end method
11537 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11538 + .registers 4
11540 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11542 + if-nez v0, :cond_12
11544 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11546 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11548 + move-result-object v0
11550 + const-string v1, "com.privacy.pdroid"
11552 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11554 + move-result v0
11556 + if-eqz v0, :cond_1a
11558 + :cond_12
11559 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11561 + const/4 v1, 0x0
11563 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
11565 + move-result-object v0
11567 + :goto_19
11568 + return-object v0
11570 + :cond_1a
11571 + const/4 v0, 0x0
11573 + goto :goto_19
11574 +.end method
11576 +.method public getVersion()D
11577 + .registers 3
11579 + const-wide v0, 0x3ff51eb851eb851fL
11581 + return-wide v0
11582 +.end method
11584 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11585 + .registers 8
11587 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11589 + if-eqz v1, :cond_34
11591 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11593 + if-eqz v1, :cond_34
11595 + new-instance v0, Landroid/content/Intent;
11597 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
11599 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11601 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
11603 + const-string/jumbo v1, "packageName"
11605 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11607 + const-string/jumbo v1, "uid"
11609 + const/4 v2, -0x1
11611 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
11613 + const-string v1, "accessMode"
11615 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
11617 + const-string v1, "dataType"
11619 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11621 + const-string/jumbo v1, "output"
11623 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11625 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11627 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
11629 + :cond_34
11630 + return-void
11631 +.end method
11633 +.method public purgeSettings()Z
11634 + .registers 2
11636 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11638 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11640 + move-result v0
11642 + return v0
11643 +.end method
11645 +.method public registerObservers()V
11646 + .registers 4
11648 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11650 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11652 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11654 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11656 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11658 + const-string v1, "/data/system/privacy"
11660 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11662 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11664 + return-void
11665 +.end method
11667 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
11668 + .registers 6
11670 + const-string v1, "PrivacySettingsManagerService"
11672 + new-instance v2, Ljava/lang/StringBuilder;
11674 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11676 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
11678 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11680 + move-result-object v2
11682 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11684 + move-result v3
11686 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11688 + move-result-object v2
11690 + const-string v3, ") has sufficient permissions"
11692 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11694 + move-result-object v2
11696 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11698 + move-result-object v2
11700 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11702 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11704 + move-result v1
11706 + const/16 v2, 0x3e8
11708 + if-eq v1, v2, :cond_34
11710 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11712 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
11714 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
11716 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11718 + :cond_34
11719 + const-string v1, "PrivacySettingsManagerService"
11721 + new-instance v2, Ljava/lang/StringBuilder;
11723 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11725 + const-string/jumbo v3, "saveSettings - "
11727 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11729 + move-result-object v2
11731 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11733 + move-result-object v2
11735 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11737 + move-result-object v2
11739 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11741 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11743 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
11745 + move-result v0
11747 + const/4 v1, 0x1
11749 + if-ne v0, v1, :cond_5f
11751 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11753 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
11755 + move-result-object v2
11757 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11759 + :cond_5f
11760 + return v0
11761 +.end method
11763 +.method public setBootCompleted()V
11764 + .registers 2
11766 + const/4 v0, 0x1
11768 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11770 + return-void
11771 +.end method
11773 +.method public setEnabled(Z)Z
11774 + .registers 6
11776 + const/4 v1, 0x1
11778 + if-eqz p1, :cond_12
11780 + const-string v0, "1"
11782 + :goto_5
11783 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11785 + const-string v3, "enabled"
11787 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11789 + move-result v2
11791 + if-eqz v2, :cond_15
11793 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11795 + :goto_11
11796 + return v1
11798 + :cond_12
11799 + return v1
11800 + const-string v0, "0"
11802 + goto :goto_5
11804 + :cond_15
11805 + const/4 v1, 0x0
11807 + goto :goto_11
11808 +.end method
11810 +.method public setNotificationsEnabled(Z)Z
11811 + .registers 6
11813 + const/4 v1, 0x1
11815 + if-eqz p1, :cond_15
11817 + const-string v0, "1"
11819 + :goto_5
11820 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11822 + const-string/jumbo v3, "notifications_enabled"
11824 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11826 + move-result v2
11828 + if-eqz v2, :cond_18
11830 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11832 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11834 + :goto_14
11835 + return v1
11837 + :cond_15
11838 + const-string v0, "0"
11840 + goto :goto_5
11842 + :cond_18
11843 + const/4 v1, 0x0
11845 + goto :goto_14
11846 +.end method
11847 diff -Npru stock_framework/smali/android/privacy/PrivacySettingsManager.smali pdroid_framework/smali/android/privacy/PrivacySettingsManager.smali
11848 --- stock_framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 16:00:00.000000000 -0800
11849 +++ pdroid_framework/smali/android/privacy/PrivacySettingsManager.smali 2012-07-02 10:16:51.039018955 -0700
11850 @@ -0,0 +1,531 @@
11851 +.class public final Landroid/privacy/PrivacySettingsManager;
11852 +.super Ljava/lang/Object;
11853 +.source "PrivacySettingsManager.java"
11856 +# static fields
11857 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11859 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
11862 +# instance fields
11863 +.field private service:Landroid/privacy/IPrivacySettingsManager;
11866 +# direct methods
11867 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
11868 + .registers 3
11870 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11872 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11874 + return-void
11875 +.end method
11878 +# virtual methods
11879 +.method public addObserver(Ljava/lang/String;)V
11880 + .registers 5
11882 + :try_start_0
11883 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11885 + if-eqz v1, :cond_a
11887 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11889 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
11891 + :goto_9
11892 + return-void
11894 + :cond_a
11895 + const-string v1, "PrivacySettingsManager"
11897 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
11899 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11900 + :try_end_11
11901 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
11903 + goto :goto_9
11905 + :catch_12
11906 + move-exception v0
11908 + const-string v1, "PrivacySettingsManager"
11910 + const-string v2, "RemoteException in addObserver: "
11912 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11914 + goto :goto_9
11915 +.end method
11917 +.method public deleteSettings(Ljava/lang/String;)Z
11918 + .registers 3
11920 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11922 + move-result v0
11924 + return v0
11925 +.end method
11927 +.method public deleteSettings(Ljava/lang/String;I)Z
11928 + .registers 7
11930 + const/4 v1, 0x0
11932 + :try_start_1
11933 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11935 + if-eqz v2, :cond_c
11937 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11939 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11941 + move-result v1
11943 + :goto_b
11944 + return v1
11946 + :cond_c
11947 + const-string v2, "PrivacySettingsManager"
11949 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
11951 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11952 + :try_end_13
11953 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11955 + goto :goto_b
11957 + :catch_14
11958 + move-exception v0
11960 + const-string v2, "PrivacySettingsManager"
11962 + const-string v3, "RemoteException in deleteSettings: "
11964 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11966 + goto :goto_b
11967 +.end method
11969 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11970 + .registers 6
11972 + const/4 v1, 0x0
11974 + :try_start_1
11975 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11977 + if-eqz v2, :cond_c
11979 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11981 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11983 + move-result-object v1
11985 + :goto_b
11986 + return-object v1
11988 + :cond_c
11989 + const-string v2, "PrivacySettingsManager"
11991 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
11993 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11994 + :try_end_13
11995 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11997 + goto :goto_b
11999 + :catch_14
12000 + move-exception v0
12002 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
12004 + goto :goto_b
12005 +.end method
12007 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
12008 + .registers 4
12010 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12012 + move-result-object v0
12014 + return-object v0
12015 +.end method
12017 +.method public getVersion()D
12018 + .registers 4
12020 + :try_start_0
12021 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12023 + if-eqz v1, :cond_b
12025 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12027 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
12029 + move-result-wide v1
12031 + :goto_a
12032 + return-wide v1
12034 + :cond_b
12035 + const-string v1, "PrivacySettingsManager"
12037 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
12039 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12040 + :try_end_12
12041 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
12043 + :goto_12
12044 + const-wide/16 v1, 0x0
12046 + goto :goto_a
12048 + :catch_15
12049 + move-exception v0
12051 + const-string v1, "PrivacySettingsManager"
12053 + const-string v2, "RemoteException in getVersion: "
12055 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12057 + goto :goto_12
12058 +.end method
12060 +.method public isServiceAvailable()Z
12061 + .registers 2
12063 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12065 + if-eqz v0, :cond_6
12067 + const/4 v0, 0x1
12069 + :goto_5
12070 + return v0
12072 + :cond_6
12073 + const/4 v0, 0x0
12075 + goto :goto_5
12076 +.end method
12078 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12079 + .registers 9
12081 + :try_start_0
12082 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12084 + if-eqz v1, :cond_a
12086 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12088 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
12090 + :goto_9
12091 + return-void
12093 + :cond_a
12094 + const-string v1, "PrivacySettingsManager"
12096 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12098 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12099 + :try_end_11
12100 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12102 + goto :goto_9
12104 + :catch_12
12105 + move-exception v0
12107 + const-string v1, "PrivacySettingsManager"
12109 + const-string v2, "RemoteException in notification: "
12111 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12113 + goto :goto_9
12114 +.end method
12116 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12117 + .registers 13
12119 + move-object v0, p0
12121 + move-object v1, p1
12123 + move v2, p3
12125 + move-object v3, p4
12127 + move-object v4, p5
12129 + move-object v5, p6
12131 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12133 + return-void
12134 +.end method
12136 +.method public purgeSettings()Z
12137 + .registers 4
12139 + :try_start_0
12140 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12142 + if-eqz v1, :cond_b
12144 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12146 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
12148 + move-result v1
12150 + :goto_a
12151 + return v1
12153 + :cond_b
12154 + const-string v1, "PrivacySettingsManager"
12156 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12158 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12159 + :try_end_12
12160 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
12162 + :goto_12
12163 + const/4 v1, 0x0
12165 + goto :goto_a
12167 + :catch_14
12168 + move-exception v0
12170 + const-string v1, "PrivacySettingsManager"
12172 + const-string v2, "RemoteException in purgeSettings: "
12174 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12176 + goto :goto_12
12177 +.end method
12179 +.method public registerObservers()V
12180 + .registers 4
12182 + :try_start_0
12183 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12185 + if-eqz v1, :cond_a
12187 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12189 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
12191 + :goto_9
12192 + return-void
12194 + :cond_a
12195 + const-string v1, "PrivacySettingsManager"
12197 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12199 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12200 + :try_end_11
12201 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12203 + goto :goto_9
12205 + :catch_12
12206 + move-exception v0
12208 + const-string v1, "PrivacySettingsManager"
12210 + const-string v2, "RemoteException in registerObservers: "
12212 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12214 + goto :goto_9
12215 +.end method
12217 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
12218 + .registers 6
12220 + const/4 v1, 0x0
12222 + :try_start_1
12223 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12225 + if-eqz v2, :cond_c
12227 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12229 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12231 + move-result v1
12233 + :goto_b
12234 + return v1
12236 + :cond_c
12237 + const-string v2, "PrivacySettingsManager"
12239 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
12241 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12242 + :try_end_14
12243 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
12245 + goto :goto_b
12247 + :catch_15
12248 + move-exception v0
12250 + const-string v2, "PrivacySettingsManager"
12252 + const-string v3, "RemoteException in saveSettings: "
12254 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12256 + goto :goto_b
12257 +.end method
12259 +.method public setBootCompleted()V
12260 + .registers 4
12262 + :try_start_0
12263 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12265 + if-eqz v1, :cond_a
12267 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12269 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
12271 + :goto_9
12272 + return-void
12274 + :cond_a
12275 + const-string v1, "PrivacySettingsManager"
12277 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
12279 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12280 + :try_end_12
12281 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
12283 + goto :goto_9
12285 + :catch_13
12286 + move-exception v0
12288 + const-string v1, "PrivacySettingsManager"
12290 + const-string v2, "RemoteException in setBootCompleted: "
12292 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12294 + goto :goto_9
12295 +.end method
12297 +.method public setEnabled(Z)Z
12298 + .registers 5
12300 + :try_start_0
12301 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12303 + if-eqz v1, :cond_b
12305 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12307 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
12309 + move-result v1
12311 + :goto_a
12312 + return v1
12314 + :cond_b
12315 + const-string v1, "PrivacySettingsManager"
12317 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
12319 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12320 + :try_end_13
12321 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12323 + :goto_13
12324 + const/4 v1, 0x0
12326 + goto :goto_a
12328 + :catch_15
12329 + move-exception v0
12331 + const-string v1, "PrivacySettingsManager"
12333 + const-string v2, "RemoteException in setEnabled: "
12335 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12337 + goto :goto_13
12338 +.end method
12340 +.method public setNotificationsEnabled(Z)Z
12341 + .registers 5
12343 + :try_start_0
12344 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12346 + if-eqz v1, :cond_b
12348 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12350 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
12352 + move-result v1
12354 + :goto_a
12355 + return v1
12357 + :cond_b
12358 + const-string v1, "PrivacySettingsManager"
12360 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
12362 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12363 + :try_end_13
12364 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12366 + :goto_13
12367 + const/4 v1, 0x0
12369 + goto :goto_a
12371 + :catch_15
12372 + move-exception v0
12374 + const-string v1, "PrivacySettingsManager"
12376 + const-string v2, "RemoteException in setNotificationsEnabled: "
12378 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12380 + goto :goto_13
12381 +.end method
12382 diff -Npru stock_framework/smali/android/privacy/PrivacySettings.smali pdroid_framework/smali/android/privacy/PrivacySettings.smali
12383 --- stock_framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 16:00:00.000000000 -0800
12384 +++ pdroid_framework/smali/android/privacy/PrivacySettings.smali 2012-07-02 10:16:51.025015619 -0700
12385 @@ -0,0 +1,2109 @@
12386 +.class public final Landroid/privacy/PrivacySettings;
12387 +.super Ljava/lang/Object;
12388 +.source "PrivacySettings.java"
12390 +# interfaces
12391 +.implements Landroid/os/Parcelable;
12394 +# static fields
12395 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
12396 + .annotation system Ldalvik/annotation/Signature;
12397 + value = {
12398 + "Landroid/os/Parcelable$Creator",
12399 + "<",
12400 + "Landroid/privacy/PrivacySettings;",
12401 + ">;"
12403 + .end annotation
12404 +.end field
12406 +.field public static final CUSTOM:B = 0x2t
12408 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
12410 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
12412 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
12414 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
12416 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
12418 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
12420 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
12422 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
12424 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
12426 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
12428 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
12430 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
12432 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
12434 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
12436 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
12438 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
12440 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
12442 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
12444 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
12446 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
12448 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
12450 +.field public static final EMPTY:B = 0x1t
12452 +.field public static final RANDOM:B = 0x3t
12454 +.field public static final REAL:B = 0x0t
12456 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
12458 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
12461 +# instance fields
12462 +.field private final _id:Ljava/lang/Integer;
12464 +.field private accountsAuthTokensSetting:B
12466 +.field private accountsSetting:B
12468 +.field private allowedContacts:[I
12470 +.field private bookmarksSetting:B
12472 +.field private calendarSetting:B
12474 +.field private callLogSetting:B
12476 +.field private contactsSetting:B
12478 +.field private deviceId:Ljava/lang/String;
12480 +.field private deviceIdSetting:B
12482 +.field private incomingCallsSetting:B
12484 +.field private intentBootCompletedSetting:B
12486 +.field private line1Number:Ljava/lang/String;
12488 +.field private line1NumberSetting:B
12490 +.field private locationGpsLat:Ljava/lang/String;
12492 +.field private locationGpsLon:Ljava/lang/String;
12494 +.field private locationGpsSetting:B
12496 +.field private locationNetworkLat:Ljava/lang/String;
12498 +.field private locationNetworkLon:Ljava/lang/String;
12500 +.field private locationNetworkSetting:B
12502 +.field private mmsSetting:B
12504 +.field private networkInfoSetting:B
12506 +.field private notificationSetting:B
12508 +.field private outgoingCallsSetting:B
12510 +.field private packageName:Ljava/lang/String;
12512 +.field private simInfoSetting:B
12514 +.field private simSerialNumber:Ljava/lang/String;
12516 +.field private simSerialNumberSetting:B
12518 +.field private smsSetting:B
12520 +.field private subscriberId:Ljava/lang/String;
12522 +.field private subscriberIdSetting:B
12524 +.field private systemLogsSetting:B
12526 +.field private uid:I
12529 +# direct methods
12530 +.method static constructor <clinit>()V
12531 + .registers 1
12533 + new-instance v0, Landroid/privacy/PrivacySettings$1;
12535 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
12537 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
12539 + return-void
12540 +.end method
12542 +.method public constructor <init>(Landroid/os/Parcel;)V
12543 + .registers 4
12545 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12547 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12549 + move-result v0
12551 + const/4 v1, -0x1
12553 + if-ne v0, v1, :cond_ce
12555 + const/4 v1, 0x0
12557 + :goto_b
12558 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12560 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12562 + move-result-object v1
12564 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12566 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12568 + move-result v1
12570 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
12572 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12574 + move-result v1
12576 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12578 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12580 + move-result-object v1
12582 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12584 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12586 + move-result v1
12588 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12590 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12592 + move-result-object v1
12594 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12596 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12598 + move-result v1
12600 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12602 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12604 + move-result-object v1
12606 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12608 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12610 + move-result-object v1
12612 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12614 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12616 + move-result v1
12618 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12620 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12622 + move-result-object v1
12624 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12626 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12628 + move-result-object v1
12630 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12632 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12634 + move-result v1
12636 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12638 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12640 + move-result v1
12642 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12644 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12646 + move-result v1
12648 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12650 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12652 + move-result-object v1
12654 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12656 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12658 + move-result v1
12660 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12662 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12664 + move-result-object v1
12666 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12668 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12670 + move-result v1
12672 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12674 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12676 + move-result v1
12678 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12680 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12682 + move-result v1
12684 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12686 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12688 + move-result v1
12690 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12692 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12694 + move-result v1
12696 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12698 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12700 + move-result v1
12702 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12704 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12706 + move-result v1
12708 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12710 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12712 + move-result v1
12714 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12716 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12718 + move-result v1
12720 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12722 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12724 + move-result v1
12726 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12728 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12730 + move-result v1
12732 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12734 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12736 + move-result v1
12738 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12740 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12742 + move-result v1
12744 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12746 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
12748 + move-result-object v1
12750 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12752 + return-void
12754 + :cond_ce
12755 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12757 + move-result-object v1
12759 + goto/16 :goto_b
12760 +.end method
12762 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
12763 + .registers 6
12765 + const/4 v1, 0x0
12767 + const/4 v0, 0x0
12769 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12771 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12773 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12775 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12777 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12779 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12781 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12783 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12785 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12787 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12789 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12791 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12793 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12795 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12797 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12799 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12801 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12803 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12805 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12807 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12809 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12811 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12813 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12815 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12817 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12819 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12821 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12823 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12825 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12827 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12829 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12831 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12833 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12835 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12837 + return-void
12838 +.end method
12840 +.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
12841 + .registers 38
12843 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12845 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12847 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12849 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12851 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12853 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12855 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12857 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12859 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12861 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12863 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12865 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12867 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12869 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12871 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12873 + move/from16 v0, p15
12875 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12877 + move/from16 v0, p16
12879 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12881 + move-object/from16 v0, p17
12883 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12885 + move/from16 v0, p18
12887 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12889 + move-object/from16 v0, p19
12891 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12893 + move/from16 v0, p20
12895 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12897 + move/from16 v0, p21
12899 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12901 + move/from16 v0, p22
12903 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12905 + move/from16 v0, p23
12907 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12909 + move/from16 v0, p24
12911 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12913 + move/from16 v0, p25
12915 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12917 + move/from16 v0, p26
12919 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12921 + move/from16 v0, p27
12923 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12925 + move/from16 v0, p28
12927 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12929 + move/from16 v0, p29
12931 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12933 + move/from16 v0, p30
12935 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12937 + move/from16 v0, p34
12939 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12941 + move/from16 v0, p35
12943 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12945 + move-object/from16 v0, p36
12947 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12949 + return-void
12950 +.end method
12952 +.method private getRandomLat()Ljava/lang/String;
12953 + .registers 10
12955 + const-wide v7, 0x4056800000000000L
12957 + invoke-static {}, Ljava/lang/Math;->random()D
12959 + move-result-wide v3
12961 + const-wide v5, 0x4066800000000000L
12963 + mul-double v0, v3, v5
12965 + cmpl-double v3, v0, v7
12967 + if-lez v3, :cond_35
12969 + new-instance v2, Ljava/math/BigDecimal;
12971 + sub-double v3, v0, v7
12973 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12975 + :goto_1b
12976 + new-instance v3, Ljava/lang/StringBuilder;
12978 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
12980 + const/4 v4, 0x6
12982 + const/4 v5, 0x4
12984 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
12986 + move-result-object v4
12988 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12990 + move-result-object v3
12992 + const-string v4, ""
12994 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12996 + move-result-object v3
12998 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13000 + move-result-object v3
13002 + return-object v3
13004 + :cond_35
13005 + new-instance v2, Ljava/math/BigDecimal;
13007 + neg-double v3, v0
13009 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13011 + goto :goto_1b
13012 +.end method
13014 +.method private getRandomLon()Ljava/lang/String;
13015 + .registers 10
13017 + const-wide v7, 0x4066800000000000L
13019 + invoke-static {}, Ljava/lang/Math;->random()D
13021 + move-result-wide v3
13023 + const-wide v5, 0x4076800000000000L
13025 + mul-double v0, v3, v5
13027 + cmpl-double v3, v0, v7
13029 + if-lez v3, :cond_35
13031 + new-instance v2, Ljava/math/BigDecimal;
13033 + sub-double v3, v0, v7
13035 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13037 + :goto_1b
13038 + new-instance v3, Ljava/lang/StringBuilder;
13040 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
13042 + const/4 v4, 0x6
13044 + const/4 v5, 0x4
13046 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
13048 + move-result-object v4
13050 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13052 + move-result-object v3
13054 + const-string v4, ""
13056 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13058 + move-result-object v3
13060 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13062 + move-result-object v3
13064 + return-object v3
13066 + :cond_35
13067 + new-instance v2, Ljava/math/BigDecimal;
13069 + neg-double v3, v0
13071 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13073 + goto :goto_1b
13074 +.end method
13077 +# virtual methods
13078 +.method public describeContents()I
13079 + .registers 2
13081 + const/4 v0, 0x0
13083 + return v0
13084 +.end method
13086 +.method public getAccountsAuthTokensSetting()B
13087 + .registers 2
13089 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13091 + return v0
13092 +.end method
13094 +.method public getAccountsSetting()B
13095 + .registers 2
13097 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13099 + return v0
13100 +.end method
13102 +.method public getAllowedContacts()[I
13103 + .registers 2
13105 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13107 + return-object v0
13108 +.end method
13110 +.method public getBookmarksSetting()B
13111 + .registers 2
13113 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13115 + return v0
13116 +.end method
13118 +.method public getCalendarSetting()B
13119 + .registers 2
13121 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13123 + return v0
13124 +.end method
13126 +.method public getCallLogSetting()B
13127 + .registers 2
13129 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13131 + return v0
13132 +.end method
13134 +.method public getContactsSetting()B
13135 + .registers 2
13137 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13139 + return v0
13140 +.end method
13142 +.method public getDeviceId()Ljava/lang/String;
13143 + .registers 6
13145 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13147 + const/4 v3, 0x1
13149 + if-ne v2, v3, :cond_8
13151 + const-string v2, ""
13153 + :goto_7
13154 + return-object v2
13156 + :cond_8
13157 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13159 + const/4 v3, 0x3
13161 + if-ne v2, v3, :cond_35
13163 + new-instance v0, Ljava/util/Random;
13165 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13167 + new-instance v2, Ljava/lang/StringBuilder;
13169 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13171 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13173 + move-result-wide v3
13175 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13177 + move-result-wide v3
13179 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13181 + move-result-object v2
13183 + const-string v3, ""
13185 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13187 + move-result-object v2
13189 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13191 + move-result-object v1
13193 + const/4 v2, 0x0
13195 + const/16 v3, 0xf
13197 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13199 + move-result-object v2
13201 + goto :goto_7
13203 + :cond_35
13204 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13206 + goto :goto_7
13207 +.end method
13209 +.method public getDeviceIdSetting()B
13210 + .registers 2
13212 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13214 + return v0
13215 +.end method
13217 +.method public getIncomingCallsSetting()B
13218 + .registers 2
13220 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13222 + return v0
13223 +.end method
13225 +.method public getIntentBootCompletedSetting()B
13226 + .registers 2
13228 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13230 + return v0
13231 +.end method
13233 +.method public getLine1Number()Ljava/lang/String;
13234 + .registers 6
13236 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13238 + const/4 v3, 0x1
13240 + if-ne v2, v3, :cond_8
13242 + const-string v2, ""
13244 + :goto_7
13245 + return-object v2
13247 + :cond_8
13248 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13250 + const/4 v3, 0x3
13252 + if-ne v2, v3, :cond_3b
13254 + new-instance v0, Ljava/util/Random;
13256 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13258 + new-instance v2, Ljava/lang/StringBuilder;
13260 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13262 + const-string v3, "+"
13264 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13266 + move-result-object v2
13268 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13270 + move-result-wide v3
13272 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13274 + move-result-wide v3
13276 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13278 + move-result-object v2
13280 + const-string v3, ""
13282 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13284 + move-result-object v2
13286 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13288 + move-result-object v1
13290 + const/4 v2, 0x0
13292 + const/16 v3, 0xd
13294 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13296 + move-result-object v2
13298 + goto :goto_7
13300 + :cond_3b
13301 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13303 + goto :goto_7
13304 +.end method
13306 +.method public getLine1NumberSetting()B
13307 + .registers 2
13309 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13311 + return v0
13312 +.end method
13314 +.method public getLocationGpsLat()Ljava/lang/String;
13315 + .registers 3
13317 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13319 + const/4 v1, 0x1
13321 + if-ne v0, v1, :cond_8
13323 + const-string v0, ""
13325 + :goto_7
13326 + return-object v0
13328 + :cond_8
13329 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13331 + const/4 v1, 0x3
13333 + if-ne v0, v1, :cond_12
13335 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13337 + move-result-object v0
13339 + goto :goto_7
13341 + :cond_12
13342 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13344 + goto :goto_7
13345 +.end method
13347 +.method public getLocationGpsLon()Ljava/lang/String;
13348 + .registers 3
13350 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13352 + const/4 v1, 0x1
13354 + if-ne v0, v1, :cond_8
13356 + const-string v0, ""
13358 + :goto_7
13359 + return-object v0
13361 + :cond_8
13362 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13364 + const/4 v1, 0x3
13366 + if-ne v0, v1, :cond_12
13368 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13370 + move-result-object v0
13372 + goto :goto_7
13374 + :cond_12
13375 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13377 + goto :goto_7
13378 +.end method
13380 +.method public getLocationGpsSetting()B
13381 + .registers 2
13383 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13385 + return v0
13386 +.end method
13388 +.method public getLocationNetworkLat()Ljava/lang/String;
13389 + .registers 3
13391 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13393 + const/4 v1, 0x1
13395 + if-ne v0, v1, :cond_8
13397 + const-string v0, ""
13399 + :goto_7
13400 + return-object v0
13402 + :cond_8
13403 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13405 + const/4 v1, 0x3
13407 + if-ne v0, v1, :cond_12
13409 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13411 + move-result-object v0
13413 + goto :goto_7
13415 + :cond_12
13416 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13418 + goto :goto_7
13419 +.end method
13421 +.method public getLocationNetworkLon()Ljava/lang/String;
13422 + .registers 3
13424 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13426 + const/4 v1, 0x1
13428 + if-ne v0, v1, :cond_8
13430 + const-string v0, ""
13432 + :goto_7
13433 + return-object v0
13435 + :cond_8
13436 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13438 + const/4 v1, 0x3
13440 + if-ne v0, v1, :cond_12
13442 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13444 + move-result-object v0
13446 + goto :goto_7
13448 + :cond_12
13449 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13451 + goto :goto_7
13452 +.end method
13454 +.method public getLocationNetworkSetting()B
13455 + .registers 2
13457 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13459 + return v0
13460 +.end method
13462 +.method public getMmsSetting()B
13463 + .registers 2
13465 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13467 + return v0
13468 +.end method
13470 +.method public getNetworkInfoSetting()B
13471 + .registers 2
13473 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13475 + return v0
13476 +.end method
13478 +.method public getNotificationSetting()B
13479 + .registers 2
13481 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13483 + return v0
13484 +.end method
13486 +.method public getOutgoingCallsSetting()B
13487 + .registers 2
13489 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13491 + return v0
13492 +.end method
13494 +.method public getPackageName()Ljava/lang/String;
13495 + .registers 2
13497 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13499 + return-object v0
13500 +.end method
13502 +.method public getSimInfoSetting()B
13503 + .registers 2
13505 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13507 + return v0
13508 +.end method
13510 +.method public getSimSerialNumber()Ljava/lang/String;
13511 + .registers 5
13513 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13515 + const/4 v2, 0x1
13517 + if-ne v1, v2, :cond_8
13519 + const-string v1, ""
13521 + :goto_7
13522 + return-object v1
13524 + :cond_8
13525 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13527 + const/4 v2, 0x3
13529 + if-ne v1, v2, :cond_2e
13531 + new-instance v0, Ljava/util/Random;
13533 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13535 + new-instance v1, Ljava/lang/StringBuilder;
13537 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
13539 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13541 + move-result-wide v2
13543 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
13545 + move-result-wide v2
13547 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13549 + move-result-object v1
13551 + const-string v2, ""
13553 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13555 + move-result-object v1
13557 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13559 + move-result-object v1
13561 + goto :goto_7
13563 + :cond_2e
13564 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13566 + goto :goto_7
13567 +.end method
13569 +.method public getSimSerialNumberSetting()B
13570 + .registers 2
13572 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13574 + return v0
13575 +.end method
13577 +.method public getSmsSetting()B
13578 + .registers 2
13580 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13582 + return v0
13583 +.end method
13585 +.method public getSubscriberId()Ljava/lang/String;
13586 + .registers 6
13588 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13590 + const/4 v3, 0x1
13592 + if-ne v2, v3, :cond_8
13594 + const-string v2, ""
13596 + :goto_7
13597 + return-object v2
13599 + :cond_8
13600 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13602 + const/4 v3, 0x3
13604 + if-ne v2, v3, :cond_35
13606 + new-instance v0, Ljava/util/Random;
13608 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13610 + new-instance v2, Ljava/lang/StringBuilder;
13612 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13614 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13616 + move-result-wide v3
13618 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13620 + move-result-wide v3
13622 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13624 + move-result-object v2
13626 + const-string v3, ""
13628 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13630 + move-result-object v2
13632 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13634 + move-result-object v1
13636 + const/4 v2, 0x0
13638 + const/16 v3, 0xf
13640 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13642 + move-result-object v2
13644 + goto :goto_7
13646 + :cond_35
13647 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13649 + goto :goto_7
13650 +.end method
13652 +.method public getSubscriberIdSetting()B
13653 + .registers 2
13655 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13657 + return v0
13658 +.end method
13660 +.method public getSystemLogsSetting()B
13661 + .registers 2
13663 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13665 + return v0
13666 +.end method
13668 +.method public getUid()I
13669 + .registers 2
13671 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
13673 + return v0
13674 +.end method
13676 +.method public get_id()Ljava/lang/Integer;
13677 + .registers 2
13679 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13681 + return-object v0
13682 +.end method
13684 +.method public setAccountsAuthTokensSetting(B)V
13685 + .registers 2
13687 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13689 + return-void
13690 +.end method
13692 +.method public setAccountsSetting(B)V
13693 + .registers 2
13695 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13697 + return-void
13698 +.end method
13700 +.method public setAllowedContacts([I)V
13701 + .registers 2
13703 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13705 + return-void
13706 +.end method
13708 +.method public setBookmarksSetting(B)V
13709 + .registers 2
13711 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13713 + return-void
13714 +.end method
13716 +.method public setCalendarSetting(B)V
13717 + .registers 2
13719 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13721 + return-void
13722 +.end method
13724 +.method public setCallLogSetting(B)V
13725 + .registers 2
13727 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13729 + return-void
13730 +.end method
13732 +.method public setContactsSetting(B)V
13733 + .registers 2
13735 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13737 + return-void
13738 +.end method
13740 +.method public setDeviceId(Ljava/lang/String;)V
13741 + .registers 2
13743 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13745 + return-void
13746 +.end method
13748 +.method public setDeviceIdSetting(B)V
13749 + .registers 2
13751 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13753 + return-void
13754 +.end method
13756 +.method public setIncomingCallsSetting(B)V
13757 + .registers 2
13759 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13761 + return-void
13762 +.end method
13764 +.method public setIntentBootCompletedSetting(B)V
13765 + .registers 2
13767 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13769 + return-void
13770 +.end method
13772 +.method public setLine1Number(Ljava/lang/String;)V
13773 + .registers 2
13775 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13777 + return-void
13778 +.end method
13780 +.method public setLine1NumberSetting(B)V
13781 + .registers 2
13783 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13785 + return-void
13786 +.end method
13788 +.method public setLocationGpsLat(Ljava/lang/String;)V
13789 + .registers 2
13791 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13793 + return-void
13794 +.end method
13796 +.method public setLocationGpsLon(Ljava/lang/String;)V
13797 + .registers 2
13799 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13801 + return-void
13802 +.end method
13804 +.method public setLocationGpsSetting(B)V
13805 + .registers 2
13807 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13809 + return-void
13810 +.end method
13812 +.method public setLocationNetworkLat(Ljava/lang/String;)V
13813 + .registers 2
13815 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13817 + return-void
13818 +.end method
13820 +.method public setLocationNetworkLon(Ljava/lang/String;)V
13821 + .registers 2
13823 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13825 + return-void
13826 +.end method
13828 +.method public setLocationNetworkSetting(B)V
13829 + .registers 2
13831 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13833 + return-void
13834 +.end method
13836 +.method public setMmsSetting(B)V
13837 + .registers 2
13839 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13841 + return-void
13842 +.end method
13844 +.method public setNetworkInfoSetting(B)V
13845 + .registers 2
13847 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13849 + return-void
13850 +.end method
13852 +.method public setNotificationSetting(B)V
13853 + .registers 2
13855 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13857 + return-void
13858 +.end method
13860 +.method public setOutgoingCallsSetting(B)V
13861 + .registers 2
13863 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13865 + return-void
13866 +.end method
13868 +.method public setPackageName(Ljava/lang/String;)V
13869 + .registers 2
13871 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13873 + return-void
13874 +.end method
13876 +.method public setSimInfoSetting(B)V
13877 + .registers 2
13879 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13881 + return-void
13882 +.end method
13884 +.method public setSimSerialNumber(Ljava/lang/String;)V
13885 + .registers 2
13887 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13889 + return-void
13890 +.end method
13892 +.method public setSimSerialNumberSetting(B)V
13893 + .registers 2
13895 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13897 + return-void
13898 +.end method
13900 +.method public setSmsSetting(B)V
13901 + .registers 2
13903 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13905 + return-void
13906 +.end method
13908 +.method public setSubscriberId(Ljava/lang/String;)V
13909 + .registers 2
13911 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13913 + return-void
13914 +.end method
13916 +.method public setSubscriberIdSetting(B)V
13917 + .registers 2
13919 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13921 + return-void
13922 +.end method
13924 +.method public setSystemLogsSetting(B)V
13925 + .registers 2
13927 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13929 + return-void
13930 +.end method
13932 +.method public setUid(I)V
13933 + .registers 2
13935 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
13937 + return-void
13938 +.end method
13940 +.method public toString()Ljava/lang/String;
13941 + .registers 3
13943 + new-instance v0, Ljava/lang/StringBuilder;
13945 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
13947 + const-string v1, "PrivacySettings [_id="
13949 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13951 + move-result-object v0
13953 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13955 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13957 + move-result-object v0
13959 + const-string v1, ", accountsAuthTokensSetting="
13961 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13963 + move-result-object v0
13965 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13967 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13969 + move-result-object v0
13971 + const-string v1, ", accountsSetting="
13973 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13975 + move-result-object v0
13977 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13979 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13981 + move-result-object v0
13983 + const-string v1, ", bookmarksSetting="
13985 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13987 + move-result-object v0
13989 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13991 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13993 + move-result-object v0
13995 + const-string v1, ", calendarSetting="
13997 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13999 + move-result-object v0
14001 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14003 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14005 + move-result-object v0
14007 + const-string v1, ", callLogSetting="
14009 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14011 + move-result-object v0
14013 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14015 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14017 + move-result-object v0
14019 + const-string v1, ", contactsSetting="
14021 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14023 + move-result-object v0
14025 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14027 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14029 + move-result-object v0
14031 + const-string v1, ", deviceId="
14033 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14035 + move-result-object v0
14037 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14039 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14041 + move-result-object v0
14043 + const-string v1, ", deviceIdSetting="
14045 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14047 + move-result-object v0
14049 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14051 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14053 + move-result-object v0
14055 + const-string v1, ", incomingCallsSetting="
14057 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14059 + move-result-object v0
14061 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14063 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14065 + move-result-object v0
14067 + const-string v1, ", intentBootCompletedSetting="
14069 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14071 + move-result-object v0
14073 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14075 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14077 + move-result-object v0
14079 + const-string v1, ", line1Number="
14081 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14083 + move-result-object v0
14085 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14087 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14089 + move-result-object v0
14091 + const-string v1, ", line1NumberSetting="
14093 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14095 + move-result-object v0
14097 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14099 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14101 + move-result-object v0
14103 + const-string v1, ", locationGpsLat="
14105 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14107 + move-result-object v0
14109 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14111 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14113 + move-result-object v0
14115 + const-string v1, ", locationGpsLon="
14117 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14119 + move-result-object v0
14121 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14123 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14125 + move-result-object v0
14127 + const-string v1, ", locationGpsSetting="
14129 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14131 + move-result-object v0
14133 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14135 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14137 + move-result-object v0
14139 + const-string v1, ", locationNetworkLat="
14141 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14143 + move-result-object v0
14145 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14147 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14149 + move-result-object v0
14151 + const-string v1, ", locationNetworkLon="
14153 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14155 + move-result-object v0
14157 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14159 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14161 + move-result-object v0
14163 + const-string v1, ", locationNetworkSetting="
14165 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14167 + move-result-object v0
14169 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14171 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14173 + move-result-object v0
14175 + const-string v1, ", mmsSetting="
14177 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14179 + move-result-object v0
14181 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14183 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14185 + move-result-object v0
14187 + const-string v1, ", networkInfoSetting="
14189 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14191 + move-result-object v0
14193 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14195 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14197 + move-result-object v0
14199 + const-string v1, ", notificationSetting="
14201 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14203 + move-result-object v0
14205 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14207 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14209 + move-result-object v0
14211 + const-string v1, ", outgoingCallsSetting="
14213 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14215 + move-result-object v0
14217 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14219 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14221 + move-result-object v0
14223 + const-string v1, ", packageName="
14225 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14227 + move-result-object v0
14229 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14231 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14233 + move-result-object v0
14235 + const-string v1, ", simInfoSetting="
14237 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14239 + move-result-object v0
14241 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14243 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14245 + move-result-object v0
14247 + const-string v1, ", simSerialNumber="
14249 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14251 + move-result-object v0
14253 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14255 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14257 + move-result-object v0
14259 + const-string v1, ", simSerialNumberSetting="
14261 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14263 + move-result-object v0
14265 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14267 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14269 + move-result-object v0
14271 + const-string v1, ", smsSetting="
14273 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14275 + move-result-object v0
14277 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14279 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14281 + move-result-object v0
14283 + const-string v1, ", subscriberId="
14285 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14287 + move-result-object v0
14289 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14291 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14293 + move-result-object v0
14295 + const-string v1, ", subscriberIdSetting="
14297 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14299 + move-result-object v0
14301 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14303 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14305 + move-result-object v0
14307 + const-string v1, ", systemLogsSetting="
14309 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14311 + move-result-object v0
14313 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14315 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14317 + move-result-object v0
14319 + const-string v1, ", uid="
14321 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14323 + move-result-object v0
14325 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
14327 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14329 + move-result-object v0
14331 + const-string v1, "]"
14333 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14335 + move-result-object v0
14337 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
14339 + move-result-object v0
14341 + return-object v0
14342 +.end method
14344 +.method public writeToParcel(Landroid/os/Parcel;I)V
14345 + .registers 4
14347 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14349 + if-nez v0, :cond_a9
14351 + const/4 v0, -0x1
14353 + :goto_5
14354 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14356 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14358 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14360 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
14362 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14364 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14366 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14368 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14370 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14372 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14374 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14376 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14378 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14380 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14382 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14384 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14386 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14388 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14390 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14392 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14394 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14396 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14398 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14400 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14402 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14404 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14406 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14408 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14410 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14412 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14414 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14416 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14418 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14420 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14422 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14424 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14426 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14428 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14430 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14432 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14434 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14436 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14438 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14440 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14442 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14444 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14446 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14448 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14450 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14452 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14454 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14456 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14458 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14460 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14462 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14464 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14466 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14468 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14470 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14472 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14474 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14476 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14478 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14480 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14482 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
14484 + return-void
14486 + :cond_a9
14487 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14489 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
14491 + move-result v0
14493 + goto/16 :goto_5
14494 +.end method
14495 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
14496 --- stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 16:00:00.000000000 -0800
14497 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-07-02 10:16:51.041019431 -0700
14498 @@ -0,0 +1,129 @@
14499 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14500 +.super Ljava/lang/Object;
14501 +.source "PrivacyAccountManager.java"
14503 +# interfaces
14504 +.implements Landroid/accounts/AccountManagerFuture;
14507 +# annotations
14508 +.annotation system Ldalvik/annotation/EnclosingClass;
14509 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
14510 +.end annotation
14512 +.annotation system Ldalvik/annotation/InnerClass;
14513 + accessFlags = 0x2
14514 + name = "PrivacyAccountManagerFuture"
14515 +.end annotation
14517 +.annotation system Ldalvik/annotation/Signature;
14518 + value = {
14519 + "<V:",
14520 + "Ljava/lang/Object;",
14521 + ">",
14522 + "Ljava/lang/Object;",
14523 + "Landroid/accounts/AccountManagerFuture",
14524 + "<TV;>;"
14526 +.end annotation
14529 +# instance fields
14530 +.field private result:Ljava/lang/Object;
14531 + .annotation system Ldalvik/annotation/Signature;
14532 + value = {
14533 + "TV;"
14535 + .end annotation
14536 +.end field
14538 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14541 +# direct methods
14542 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14543 + .registers 3
14544 + .annotation system Ldalvik/annotation/Signature;
14545 + value = {
14546 + "(TV;)V"
14548 + .end annotation
14550 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14552 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
14554 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14556 + return-void
14557 +.end method
14560 +# virtual methods
14561 +.method public cancel(Z)Z
14562 + .registers 3
14564 + const/4 v0, 0x0
14566 + return v0
14567 +.end method
14569 +.method public getResult()Ljava/lang/Object;
14570 + .registers 2
14571 + .annotation system Ldalvik/annotation/Signature;
14572 + value = {
14573 + "()TV;"
14575 + .end annotation
14577 + .annotation system Ldalvik/annotation/Throws;
14578 + value = {
14579 + Landroid/accounts/OperationCanceledException;,
14580 + Ljava/io/IOException;,
14581 + Landroid/accounts/AuthenticatorException;
14583 + .end annotation
14585 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14587 + return-object v0
14588 +.end method
14590 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
14591 + .registers 5
14592 + .annotation system Ldalvik/annotation/Signature;
14593 + value = {
14594 + "(J",
14595 + "Ljava/util/concurrent/TimeUnit;",
14596 + ")TV;"
14598 + .end annotation
14600 + .annotation system Ldalvik/annotation/Throws;
14601 + value = {
14602 + Landroid/accounts/OperationCanceledException;,
14603 + Ljava/io/IOException;,
14604 + Landroid/accounts/AuthenticatorException;
14606 + .end annotation
14608 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14610 + return-object v0
14611 +.end method
14613 +.method public isCancelled()Z
14614 + .registers 2
14616 + const/4 v0, 0x0
14618 + return v0
14619 +.end method
14621 +.method public isDone()Z
14622 + .registers 2
14624 + const/4 v0, 0x1
14626 + return v0
14627 +.end method
14628 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
14629 --- stock_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 16:00:00.000000000 -0800
14630 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-07-02 10:16:51.041019431 -0700
14631 @@ -0,0 +1,701 @@
14632 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
14633 +.super Landroid/accounts/AccountManager;
14634 +.source "PrivacyAccountManager.java"
14637 +# annotations
14638 +.annotation system Ldalvik/annotation/MemberClasses;
14639 + value = {
14640 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14642 +.end annotation
14645 +# static fields
14646 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
14649 +# instance fields
14650 +.field private context:Landroid/content/Context;
14652 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
14655 +# direct methods
14656 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14657 + .registers 5
14659 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14661 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14663 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14665 + const-string/jumbo v1, "privacy"
14667 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14669 + move-result-object v1
14671 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14673 + move-result-object v1
14675 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14677 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14679 + return-void
14680 +.end method
14682 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14683 + .registers 6
14685 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14687 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14689 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14691 + const-string/jumbo v1, "privacy"
14693 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14695 + move-result-object v1
14697 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14699 + move-result-object v1
14701 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14703 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14705 + return-void
14706 +.end method
14709 +# virtual methods
14710 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14711 + .registers 12
14712 + .annotation system Ldalvik/annotation/Throws;
14713 + value = {
14714 + Landroid/accounts/OperationCanceledException;,
14715 + Ljava/io/IOException;,
14716 + Landroid/accounts/AuthenticatorException;
14718 + .end annotation
14720 + const/4 v5, 0x0
14722 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14724 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14726 + move-result-object v1
14728 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14730 + move-result v2
14732 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14734 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14736 + move-result-object v6
14738 + if-eqz v6, :cond_23
14740 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
14742 + move-result v0
14744 + if-eqz v0, :cond_23
14746 + const/4 v7, 0x0
14748 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14750 + const/4 v3, 0x1
14752 + const-string v4, "authTokens"
14754 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14756 + :goto_22
14757 + return-object v7
14759 + :cond_23
14760 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14762 + move-result-object v7
14764 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14766 + const/4 v3, 0x0
14768 + const-string v4, "authTokens"
14770 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14772 + goto :goto_22
14773 +.end method
14775 +.method public getAccounts()[Landroid/accounts/Account;
14776 + .registers 10
14778 + const/4 v5, 0x0
14780 + const/4 v3, 0x0
14782 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14784 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14786 + move-result-object v1
14788 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14790 + move-result v2
14792 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14794 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14796 + move-result-object v6
14798 + if-eqz v6, :cond_27
14800 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14802 + move-result v0
14804 + if-eqz v0, :cond_27
14806 + const-string v8, "[empty accounts list]"
14808 + new-array v7, v3, [Landroid/accounts/Account;
14810 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14812 + const/4 v3, 0x1
14814 + const-string v4, "accountsList"
14816 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14818 + :goto_26
14819 + return-object v7
14821 + :cond_27
14822 + const-string v8, "[real value]"
14824 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
14826 + move-result-object v7
14828 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14830 + const-string v4, "accountsList"
14832 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14834 + goto :goto_26
14835 +.end method
14837 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14838 + .registers 11
14840 + const/4 v5, 0x0
14842 + const/4 v3, 0x0
14844 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14846 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14848 + move-result-object v1
14850 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14852 + move-result v2
14854 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14856 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14858 + move-result-object v6
14860 + if-eqz v6, :cond_27
14862 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14864 + move-result v0
14866 + if-eqz v0, :cond_27
14868 + const-string v8, "[empty accounts list]"
14870 + new-array v7, v3, [Landroid/accounts/Account;
14872 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14874 + const/4 v3, 0x1
14876 + const-string v4, "accountsList"
14878 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14880 + :goto_26
14881 + return-object v7
14883 + :cond_27
14884 + const-string v8, "[real value]"
14886 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14888 + move-result-object v7
14890 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14892 + const-string v4, "accountsList"
14894 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14896 + goto :goto_26
14897 +.end method
14899 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14900 + .registers 14
14901 + .annotation system Ldalvik/annotation/Signature;
14902 + value = {
14903 + "(",
14904 + "Ljava/lang/String;",
14905 + "[",
14906 + "Ljava/lang/String;",
14907 + "Landroid/accounts/AccountManagerCallback",
14908 + "<[",
14909 + "Landroid/accounts/Account;",
14910 + ">;",
14911 + "Landroid/os/Handler;",
14912 + ")",
14913 + "Landroid/accounts/AccountManagerFuture",
14914 + "<[",
14915 + "Landroid/accounts/Account;",
14916 + ">;"
14918 + .end annotation
14920 + const/4 v5, 0x0
14922 + const/4 v3, 0x0
14924 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14926 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14928 + move-result-object v1
14930 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14932 + move-result v2
14934 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14936 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14938 + move-result-object v6
14940 + if-eqz v6, :cond_2c
14942 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14944 + move-result v0
14946 + if-eqz v0, :cond_2c
14948 + const-string v8, "[false]"
14950 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14952 + new-array v0, v3, [Landroid/accounts/Account;
14954 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14956 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14958 + const/4 v3, 0x1
14960 + const-string v4, "accountsList"
14962 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14964 + :goto_2b
14965 + return-object v7
14967 + :cond_2c
14968 + const-string v8, "[real value]"
14970 + 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;
14972 + move-result-object v7
14974 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14976 + const-string v4, "accountsList"
14978 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14980 + goto :goto_2b
14981 +.end method
14983 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14984 + .registers 16
14985 + .annotation system Ldalvik/annotation/Signature;
14986 + value = {
14987 + "(",
14988 + "Landroid/accounts/Account;",
14989 + "Ljava/lang/String;",
14990 + "Landroid/os/Bundle;",
14991 + "Landroid/app/Activity;",
14992 + "Landroid/accounts/AccountManagerCallback",
14993 + "<",
14994 + "Landroid/os/Bundle;",
14995 + ">;",
14996 + "Landroid/os/Handler;",
14997 + ")",
14998 + "Landroid/accounts/AccountManagerFuture",
14999 + "<",
15000 + "Landroid/os/Bundle;",
15001 + ">;"
15003 + .end annotation
15005 + const/4 v5, 0x0
15007 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15009 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15011 + move-result-object v1
15013 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15015 + move-result v2
15017 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15019 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15021 + move-result-object v6
15023 + if-eqz v6, :cond_2e
15025 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15027 + move-result v0
15029 + if-eqz v0, :cond_2e
15031 + const-string v8, "[empty]"
15033 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15035 + new-instance v0, Landroid/os/Bundle;
15037 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15039 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15041 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15043 + const/4 v3, 0x1
15045 + const-string v4, "authTokens"
15047 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15049 + :goto_2d
15050 + return-object v7
15052 + :cond_2e
15053 + const-string v8, "[real value]"
15055 + 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;
15057 + move-result-object v7
15059 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15061 + const/4 v3, 0x0
15063 + const-string v4, "authTokens"
15065 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15067 + goto :goto_2d
15068 +.end method
15070 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15071 + .registers 15
15072 + .annotation system Ldalvik/annotation/Signature;
15073 + value = {
15074 + "(",
15075 + "Landroid/accounts/Account;",
15076 + "Ljava/lang/String;",
15077 + "Z",
15078 + "Landroid/accounts/AccountManagerCallback",
15079 + "<",
15080 + "Landroid/os/Bundle;",
15081 + ">;",
15082 + "Landroid/os/Handler;",
15083 + ")",
15084 + "Landroid/accounts/AccountManagerFuture",
15085 + "<",
15086 + "Landroid/os/Bundle;",
15087 + ">;"
15089 + .end annotation
15091 + const/4 v5, 0x0
15093 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15095 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15097 + move-result-object v1
15099 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15101 + move-result v2
15103 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15105 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15107 + move-result-object v6
15109 + if-eqz v6, :cond_2e
15111 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15113 + move-result v0
15115 + if-eqz v0, :cond_2e
15117 + const-string v8, "[empty]"
15119 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15121 + new-instance v0, Landroid/os/Bundle;
15123 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15125 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15127 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15129 + const/4 v3, 0x1
15131 + const-string v4, "authTokens"
15133 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15135 + :goto_2d
15136 + return-object v7
15138 + :cond_2e
15139 + const-string v8, "[real value]"
15141 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15143 + move-result-object v7
15145 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15147 + const/4 v3, 0x0
15149 + const-string v4, "authTokens"
15151 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15153 + goto :goto_2d
15154 +.end method
15156 +.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;
15157 + .registers 18
15158 + .annotation system Ldalvik/annotation/Signature;
15159 + value = {
15160 + "(",
15161 + "Ljava/lang/String;",
15162 + "Ljava/lang/String;",
15163 + "[",
15164 + "Ljava/lang/String;",
15165 + "Landroid/app/Activity;",
15166 + "Landroid/os/Bundle;",
15167 + "Landroid/os/Bundle;",
15168 + "Landroid/accounts/AccountManagerCallback",
15169 + "<",
15170 + "Landroid/os/Bundle;",
15171 + ">;",
15172 + "Landroid/os/Handler;",
15173 + ")",
15174 + "Landroid/accounts/AccountManagerFuture",
15175 + "<",
15176 + "Landroid/os/Bundle;",
15177 + ">;"
15179 + .end annotation
15181 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15183 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15185 + move-result-object v1
15187 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15189 + move-result v2
15191 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15193 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15195 + move-result-object v6
15197 + if-eqz v6, :cond_2e
15199 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15201 + move-result v0
15203 + if-eqz v0, :cond_2e
15205 + const-string v8, "[empty]"
15207 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15209 + new-instance v0, Landroid/os/Bundle;
15211 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15213 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15215 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15217 + const/4 v3, 0x1
15219 + const-string v4, "authTokens"
15221 + const/4 v5, 0x0
15223 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15225 + :goto_2d
15226 + return-object v7
15228 + :cond_2e
15229 + const-string v8, "[real value]"
15231 + 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;
15233 + move-result-object v7
15235 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15237 + const/4 v3, 0x0
15239 + const-string v4, "authTokens"
15241 + const/4 v5, 0x0
15243 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15245 + goto :goto_2d
15246 +.end method
15248 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15249 + .registers 14
15250 + .annotation system Ldalvik/annotation/Signature;
15251 + value = {
15252 + "(",
15253 + "Landroid/accounts/Account;",
15254 + "[",
15255 + "Ljava/lang/String;",
15256 + "Landroid/accounts/AccountManagerCallback",
15257 + "<",
15258 + "Ljava/lang/Boolean;",
15259 + ">;",
15260 + "Landroid/os/Handler;",
15261 + ")",
15262 + "Landroid/accounts/AccountManagerFuture",
15263 + "<",
15264 + "Ljava/lang/Boolean;",
15265 + ">;"
15267 + .end annotation
15269 + const/4 v5, 0x0
15271 + const/4 v3, 0x0
15273 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15275 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15277 + move-result-object v1
15279 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15281 + move-result v2
15283 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15285 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15287 + move-result-object v6
15289 + if-eqz v6, :cond_2e
15291 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15293 + move-result v0
15295 + if-eqz v0, :cond_2e
15297 + const-string v8, "[false]"
15299 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15301 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
15303 + move-result-object v0
15305 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15307 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15309 + const/4 v3, 0x1
15311 + const-string v4, "accountsList"
15313 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15315 + :goto_2d
15316 + return-object v7
15318 + :cond_2e
15319 + const-string v8, "[real value]"
15321 + 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;
15323 + move-result-object v7
15325 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15327 + const-string v4, "accountsList"
15329 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15331 + goto :goto_2d
15332 +.end method
15333 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
15334 --- stock_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 16:00:00.000000000 -0800
15335 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-07-02 10:16:51.042019670 -0700
15336 @@ -0,0 +1,1087 @@
15337 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
15338 +.super Ljava/lang/Object;
15339 +.source "PrivacyActivityManagerService.java"
15342 +# static fields
15343 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
15345 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
15347 +.field private static tmpIn:Landroid/content/Intent;
15349 +.field private static tmpInHash:J
15351 +.field private static tmpInReceivers:I
15353 +.field private static tmpMms:Landroid/content/Intent;
15355 +.field private static tmpMmsHash:J
15357 +.field private static tmpMmsReceivers:I
15359 +.field private static tmpOut:Landroid/content/Intent;
15361 +.field private static tmpOutHash:J
15363 +.field private static tmpOutReceivers:I
15365 +.field private static tmpPackageAddedHash:J
15367 +.field private static tmpSms:Landroid/content/Intent;
15369 +.field private static tmpSmsHash:J
15371 +.field private static tmpSmsReceivers:I
15374 +# direct methods
15375 +.method static constructor <clinit>()V
15376 + .registers 3
15378 + const/4 v2, 0x0
15380 + const-wide/16 v0, 0x0
15382 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15384 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15386 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15388 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15390 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15392 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15394 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15396 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
15398 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
15400 + return-void
15401 +.end method
15403 +.method public constructor <init>()V
15404 + .registers 1
15406 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15408 + return-void
15409 +.end method
15411 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
15412 + .registers 22
15414 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15416 + if-nez v2, :cond_11
15418 + const-string/jumbo v2, "privacy"
15420 + move-object/from16 v0, p3
15422 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
15424 + move-result-object v2
15426 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
15428 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15430 + :cond_11
15431 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
15433 + move-result-object v9
15435 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
15437 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15439 + move-result v2
15441 + if-eqz v2, :cond_ad
15443 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15445 + move-object/from16 v0, p0
15447 + move/from16 v1, p1
15449 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15451 + move-result-object v8
15453 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15455 + move-object/from16 v0, p2
15457 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15459 + move-result-object v16
15461 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15463 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15465 + move-result-wide v4
15467 + cmp-long v2, v2, v4
15469 + if-eqz v2, :cond_49
15471 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15473 + move-result-object v2
15475 + check-cast v2, Landroid/content/Intent;
15477 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15479 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15481 + move-result-wide v2
15483 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15485 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15487 + :cond_49
15488 + if-eqz v8, :cond_76
15490 + :try_start_4b
15491 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
15493 + move-result v2
15495 + if-eqz v2, :cond_76
15497 + const-string v16, ""
15499 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15501 + move-object/from16 v0, p2
15503 + move-object/from16 v1, v16
15505 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15507 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15509 + const/4 v5, 0x1
15511 + const-string/jumbo v6, "outgoingCall"
15513 + const/4 v7, 0x0
15515 + move-object/from16 v3, p0
15517 + move/from16 v4, p1
15519 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15520 + :try_end_6a
15521 + .catch Ljava/lang/Exception; {:try_start_4b .. :try_end_6a} :catch_a0
15523 + :cond_6a
15524 + :goto_6a
15525 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15527 + const/4 v3, 0x1
15529 + if-le v2, v3, :cond_a9
15531 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15533 + add-int/lit8 v2, v2, -0x1
15535 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15537 + :cond_75
15538 + :goto_75
15539 + return-void
15541 + :cond_76
15542 + :try_start_76
15543 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15545 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15547 + move-result-wide v4
15549 + cmp-long v2, v2, v4
15551 + if-nez v2, :cond_6a
15553 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15555 + const-string v3, "android.intent.extra.PHONE_NUMBER"
15557 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15559 + move-result-object v16
15561 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15563 + move-object/from16 v0, p2
15565 + move-object/from16 v1, v16
15567 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15569 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15571 + const/4 v5, 0x0
15573 + const-string/jumbo v6, "outgoingCall"
15575 + const/4 v7, 0x0
15577 + move-object/from16 v3, p0
15579 + move/from16 v4, p1
15581 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15582 + :try_end_9f
15583 + .catch Ljava/lang/Exception; {:try_start_76 .. :try_end_9f} :catch_a0
15585 + goto :goto_6a
15587 + :catch_a0
15588 + move-exception v13
15590 + const-string v2, "PrivacyActivityManagerService"
15592 + const-string v3, "failed to enforce intent broadcast permission"
15594 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15596 + goto :goto_6a
15598 + :cond_a9
15599 + const/4 v2, 0x0
15601 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15603 + goto :goto_75
15605 + :cond_ad
15606 + const-string v2, "android.intent.action.PHONE_STATE"
15608 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15610 + move-result v2
15612 + if-eqz v2, :cond_14d
15614 + const-string v2, "incoming_number"
15616 + move-object/from16 v0, p2
15618 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15620 + move-result-object v16
15622 + if-eqz v16, :cond_75
15624 + invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->isEmpty()Z
15626 + move-result v2
15628 + if-nez v2, :cond_75
15630 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15632 + move-object/from16 v0, p0
15634 + move/from16 v1, p1
15636 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15638 + move-result-object v8
15640 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15642 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15644 + move-result-wide v4
15646 + cmp-long v2, v2, v4
15648 + if-eqz v2, :cond_e9
15650 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15652 + move-result-object v2
15654 + check-cast v2, Landroid/content/Intent;
15656 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15658 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15660 + move-result-wide v2
15662 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15664 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15666 + :cond_e9
15667 + if-eqz v8, :cond_116
15669 + :try_start_eb
15670 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
15672 + move-result v2
15674 + if-eqz v2, :cond_116
15676 + const-string v16, ""
15678 + const-string v2, "incoming_number"
15680 + move-object/from16 v0, p2
15682 + move-object/from16 v1, v16
15684 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15686 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15688 + const/4 v5, 0x1
15690 + const-string v6, "incomingCall"
15692 + const/4 v7, 0x0
15694 + move-object/from16 v3, p0
15696 + move/from16 v4, p1
15698 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15699 + :try_end_109
15700 + .catch Ljava/lang/Exception; {:try_start_eb .. :try_end_109} :catch_13f
15702 + :cond_109
15703 + :goto_109
15704 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15706 + const/4 v3, 0x1
15708 + if-le v2, v3, :cond_148
15710 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15712 + add-int/lit8 v2, v2, -0x1
15714 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15716 + goto/16 :goto_75
15718 + :cond_116
15719 + :try_start_116
15720 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15722 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15724 + move-result-wide v4
15726 + cmp-long v2, v2, v4
15728 + if-nez v2, :cond_109
15730 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15732 + const-string v3, "incoming_number"
15734 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15736 + move-result-object v16
15738 + const-string v2, "incoming_number"
15740 + move-object/from16 v0, p2
15742 + move-object/from16 v1, v16
15744 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15746 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15748 + const/4 v5, 0x0
15750 + const-string v6, "incomingCall"
15752 + const/4 v7, 0x0
15754 + move-object/from16 v3, p0
15756 + move/from16 v4, p1
15758 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15759 + :try_end_13e
15760 + .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_13e} :catch_13f
15762 + goto :goto_109
15764 + :catch_13f
15765 + move-exception v13
15767 + const-string v2, "PrivacyActivityManagerService"
15769 + const-string v3, "failed to enforce intent broadcast permission"
15771 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15773 + goto :goto_109
15775 + :cond_148
15776 + const/4 v2, 0x0
15778 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15780 + goto/16 :goto_75
15782 + :cond_14d
15783 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
15785 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15787 + move-result v2
15789 + if-eqz v2, :cond_222
15791 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15793 + move-object/from16 v0, p0
15795 + move/from16 v1, p1
15797 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15799 + move-result-object v8
15801 + const-string v16, "[real]"
15803 + const-string/jumbo v2, "pdus"
15805 + move-object/from16 v0, p2
15807 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15809 + move-result-object v2
15811 + check-cast v2, [Ljava/lang/Object;
15813 + move-object v15, v2
15815 + check-cast v15, [Ljava/lang/Object;
15817 + if-eqz v15, :cond_1cd
15819 + const/4 v2, 0x0
15821 + aget-object v2, v15, v2
15823 + check-cast v2, [B
15825 + check-cast v2, [B
15827 + move-object v12, v2
15829 + :goto_179
15830 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15832 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15834 + move-result-wide v4
15836 + cmp-long v2, v2, v4
15838 + if-eqz v2, :cond_193
15840 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15842 + move-result-object v2
15844 + check-cast v2, Landroid/content/Intent;
15846 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15848 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15850 + move-result-wide v2
15852 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15854 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15856 + :cond_193
15857 + if-eqz v8, :cond_1cf
15859 + :try_start_195
15860 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
15862 + move-result v2
15864 + if-eqz v2, :cond_1cf
15866 + const-string v16, "[empty]"
15868 + const/4 v2, 0x1
15870 + new-array v14, v2, [Ljava/lang/Object;
15872 + const/4 v2, 0x0
15874 + const/16 v3, 0x10
15876 + new-array v3, v3, [B
15878 + fill-array-data v3, :array_350
15880 + aput-object v3, v14, v2
15882 + const-string/jumbo v2, "pdus"
15884 + move-object/from16 v0, p2
15886 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15888 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15890 + const/4 v5, 0x1
15892 + const-string/jumbo v6, "sms"
15894 + const/4 v7, 0x0
15896 + move-object/from16 v3, p0
15898 + move/from16 v4, p1
15900 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15901 + :try_end_1c0
15902 + .catch Ljava/lang/Exception; {:try_start_195 .. :try_end_1c0} :catch_212
15904 + :cond_1c0
15905 + :goto_1c0
15906 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15908 + const/4 v3, 0x1
15910 + if-le v2, v3, :cond_21d
15912 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15914 + add-int/lit8 v2, v2, -0x1
15916 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15918 + goto/16 :goto_75
15920 + :cond_1cd
15921 + const/4 v12, 0x0
15923 + goto :goto_179
15925 + :cond_1cf
15926 + :try_start_1cf
15927 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15929 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15931 + move-result-wide v4
15933 + cmp-long v2, v2, v4
15935 + if-nez v2, :cond_1c0
15937 + const-string/jumbo v2, "pdus"
15939 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15941 + const-string/jumbo v4, "pdus"
15943 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15945 + move-result-object v3
15947 + move-object/from16 v0, p2
15949 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15951 + const-string/jumbo v2, "pdus"
15953 + move-object/from16 v0, p2
15955 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15957 + move-result-object v2
15959 + check-cast v2, [Ljava/lang/Object;
15961 + move-object v0, v2
15963 + check-cast v0, [Ljava/lang/Object;
15965 + move-object v15, v0
15967 + if-eqz v15, :cond_21b
15969 + const/4 v2, 0x0
15971 + aget-object v2, v15, v2
15973 + check-cast v2, [B
15975 + check-cast v2, [B
15977 + move-object v12, v2
15979 + :goto_203
15980 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15982 + const/4 v5, 0x0
15984 + const-string/jumbo v6, "sms"
15986 + const/4 v7, 0x0
15988 + move-object/from16 v3, p0
15990 + move/from16 v4, p1
15992 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15993 + :try_end_211
15994 + .catch Ljava/lang/Exception; {:try_start_1cf .. :try_end_211} :catch_212
15996 + goto :goto_1c0
15998 + :catch_212
15999 + move-exception v13
16001 + const-string v2, "PrivacyActivityManagerService"
16003 + const-string v3, "failed to enforce intent broadcast permission"
16005 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16007 + goto :goto_1c0
16009 + :cond_21b
16010 + const/4 v12, 0x0
16012 + goto :goto_203
16014 + :cond_21d
16015 + const/4 v2, 0x0
16017 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16019 + goto/16 :goto_75
16021 + :cond_222
16022 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
16024 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16026 + move-result v2
16028 + if-nez v2, :cond_232
16030 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
16032 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16034 + move-result v2
16036 + if-eqz v2, :cond_2ff
16038 + :cond_232
16039 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16041 + move-object/from16 v0, p0
16043 + move/from16 v1, p1
16045 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16047 + move-result-object v8
16049 + const-string v16, "[real]"
16051 + const-string/jumbo v2, "pdus"
16053 + move-object/from16 v0, p2
16055 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16057 + move-result-object v2
16059 + check-cast v2, [Ljava/lang/Object;
16061 + move-object v15, v2
16063 + check-cast v15, [Ljava/lang/Object;
16065 + if-eqz v15, :cond_2aa
16067 + const/4 v2, 0x0
16069 + aget-object v2, v15, v2
16071 + check-cast v2, [B
16073 + check-cast v2, [B
16075 + move-object v12, v2
16077 + :goto_256
16078 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16080 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16082 + move-result-wide v4
16084 + cmp-long v2, v2, v4
16086 + if-eqz v2, :cond_270
16088 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
16090 + move-result-object v2
16092 + check-cast v2, Landroid/content/Intent;
16094 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16096 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16098 + move-result-wide v2
16100 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16102 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16104 + :cond_270
16105 + if-eqz v8, :cond_2ac
16107 + :try_start_272
16108 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16110 + move-result v2
16112 + if-eqz v2, :cond_2ac
16114 + const-string v16, "[empty]"
16116 + const/4 v2, 0x1
16118 + new-array v14, v2, [Ljava/lang/Object;
16120 + const/4 v2, 0x0
16122 + const/16 v3, 0x10
16124 + new-array v3, v3, [B
16126 + fill-array-data v3, :array_35c
16128 + aput-object v3, v14, v2
16130 + const-string/jumbo v2, "pdus"
16132 + move-object/from16 v0, p2
16134 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16136 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16138 + const/4 v5, 0x1
16140 + const-string/jumbo v6, "mms"
16142 + const/4 v7, 0x0
16144 + move-object/from16 v3, p0
16146 + move/from16 v4, p1
16148 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16149 + :try_end_29d
16150 + .catch Ljava/lang/Exception; {:try_start_272 .. :try_end_29d} :catch_2ef
16152 + :cond_29d
16153 + :goto_29d
16154 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16156 + const/4 v3, 0x1
16158 + if-le v2, v3, :cond_2fa
16160 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16162 + add-int/lit8 v2, v2, -0x1
16164 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16166 + goto/16 :goto_75
16168 + :cond_2aa
16169 + const/4 v12, 0x0
16171 + goto :goto_256
16173 + :cond_2ac
16174 + :try_start_2ac
16175 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16177 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16179 + move-result-wide v4
16181 + cmp-long v2, v2, v4
16183 + if-nez v2, :cond_29d
16185 + const-string/jumbo v2, "pdus"
16187 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16189 + const-string/jumbo v4, "pdus"
16191 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16193 + move-result-object v3
16195 + move-object/from16 v0, p2
16197 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16199 + const-string/jumbo v2, "pdus"
16201 + move-object/from16 v0, p2
16203 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16205 + move-result-object v2
16207 + check-cast v2, [Ljava/lang/Object;
16209 + move-object v0, v2
16211 + check-cast v0, [Ljava/lang/Object;
16213 + move-object v15, v0
16215 + if-eqz v15, :cond_2f8
16217 + const/4 v2, 0x0
16219 + aget-object v2, v15, v2
16221 + check-cast v2, [B
16223 + check-cast v2, [B
16225 + move-object v12, v2
16227 + :goto_2e0
16228 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16230 + const/4 v5, 0x0
16232 + const-string/jumbo v6, "mms"
16234 + const/4 v7, 0x0
16236 + move-object/from16 v3, p0
16238 + move/from16 v4, p1
16240 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16241 + :try_end_2ee
16242 + .catch Ljava/lang/Exception; {:try_start_2ac .. :try_end_2ee} :catch_2ef
16244 + goto :goto_29d
16246 + :catch_2ef
16247 + move-exception v13
16249 + const-string v2, "PrivacyActivityManagerService"
16251 + const-string v3, "failed to enforce intent broadcast permission"
16253 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16255 + goto :goto_29d
16257 + :cond_2f8
16258 + const/4 v12, 0x0
16260 + goto :goto_2e0
16262 + :cond_2fa
16263 + const/4 v2, 0x0
16265 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16267 + goto/16 :goto_75
16269 + :cond_2ff
16270 + const-string v2, "android.intent.action.BOOT_COMPLETED"
16272 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16274 + move-result v2
16276 + if-eqz v2, :cond_30e
16278 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16280 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
16282 + goto/16 :goto_75
16284 + :cond_30e
16285 + const-string v2, "android.intent.action.PACKAGE_ADDED"
16287 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16289 + move-result v2
16291 + if-eqz v2, :cond_75
16293 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16295 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16297 + move-result-wide v4
16299 + cmp-long v2, v2, v4
16301 + if-eqz v2, :cond_75
16303 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16305 + move-result-wide v2
16307 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16309 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
16311 + move-result-object v2
16313 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
16315 + move-result-object v10
16317 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
16319 + move-result-object v2
16321 + const-string v3, "android.intent.extra.UID"
16323 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
16325 + move-result v11
16327 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16329 + invoke-virtual {v2, v10, v11}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16331 + move-result-object v8
16333 + if-eqz v8, :cond_75
16335 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
16337 + move-result v2
16339 + if-eq v2, v11, :cond_75
16341 + invoke-virtual {v8, v11}, Landroid/privacy/PrivacySettings;->setUid(I)V
16343 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16345 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16347 + goto/16 :goto_75
16349 + :array_350
16350 + .array-data 0x1
16351 + 0x0t
16352 + 0x20t
16353 + 0x1t
16354 + 0x81t
16355 + 0xf0t
16356 + 0x0t
16357 + 0x0t
16358 + 0x11t
16359 + 0x90t
16360 + 0x1t
16361 + 0x30t
16362 + 0x22t
16363 + 0x22t
16364 + 0x80t
16365 + 0x1t
16366 + 0x20t
16367 + .end array-data
16369 + :array_35c
16370 + .array-data 0x1
16371 + 0x0t
16372 + 0x20t
16373 + 0x1t
16374 + 0x81t
16375 + 0xf0t
16376 + 0x0t
16377 + 0x0t
16378 + 0x11t
16379 + 0x90t
16380 + 0x1t
16381 + 0x30t
16382 + 0x22t
16383 + 0x22t
16384 + 0x80t
16385 + 0x1t
16386 + 0x20t
16387 + .end array-data
16388 +.end method
16390 +.method private static hashCode(Landroid/content/Intent;)J
16391 + .registers 7
16393 + const-wide/16 v3, 0x0
16395 + const-string/jumbo v2, "privacy_hash"
16397 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
16399 + move-result-wide v0
16401 + cmp-long v2, v0, v3
16403 + if-nez v2, :cond_1e
16405 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
16407 + move-result v2
16409 + int-to-long v2, v2
16411 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
16413 + move-result-wide v4
16415 + add-long v0, v2, v4
16417 + const-string/jumbo v2, "privacy_hash"
16419 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
16421 + :cond_1e
16422 + return-wide v0
16423 +.end method
16424 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
16425 --- stock_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 16:00:00.000000000 -0800
16426 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-07-02 10:16:51.042019670 -0700
16427 @@ -0,0 +1,624 @@
16428 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
16429 +.super Ljava/lang/Object;
16430 +.source "PrivacyContentResolver.java"
16433 +# static fields
16434 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
16436 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
16439 +# direct methods
16440 +.method public constructor <init>()V
16441 + .registers 1
16443 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16445 + return-void
16446 +.end method
16448 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
16449 + .registers 8
16451 + new-instance v4, Ljava/lang/StringBuffer;
16453 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
16455 + if-eqz p0, :cond_2d
16457 + move-object v0, p0
16459 + array-length v3, v0
16461 + const/4 v2, 0x0
16463 + :goto_a
16464 + if-ge v2, v3, :cond_30
16466 + aget-object v1, v0, v2
16468 + new-instance v5, Ljava/lang/StringBuilder;
16470 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
16472 + const-string v6, "["
16474 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16476 + move-result-object v5
16478 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16480 + move-result-object v5
16482 + const-string v6, "]"
16484 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16486 + move-result-object v5
16488 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
16490 + move-result-object v5
16492 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
16494 + add-int/lit8 v2, v2, 0x1
16496 + goto :goto_a
16498 + :cond_2d
16499 + const-string v5, ""
16501 + :goto_2f
16502 + return-object v5
16504 + :cond_30
16505 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
16507 + move-result-object v5
16509 + goto :goto_2f
16510 +.end method
16512 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
16513 + .registers 21
16514 + .annotation system Ldalvik/annotation/Throws;
16515 + value = {
16516 + Landroid/os/RemoteException;
16518 + .end annotation
16520 + if-eqz p0, :cond_1e4
16522 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16524 + if-nez v1, :cond_13
16526 + const-string/jumbo v1, "privacy"
16528 + move-object/from16 v0, p2
16530 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
16532 + move-result-object v1
16534 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
16536 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16538 + :cond_13
16539 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
16541 + move-result-object v2
16543 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
16545 + move-result v3
16547 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16549 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16551 + move-result-object v7
16553 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16555 + move-result-object v9
16557 + const-string v15, "[real]"
16559 + move-object/from16 v13, p3
16561 + if-eqz v9, :cond_54
16563 + const-string v1, "contacts"
16565 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16567 + move-result v1
16569 + if-nez v1, :cond_3b
16571 + const-string v1, "com.android.contacts"
16573 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16575 + move-result v1
16577 + if-eqz v1, :cond_ab
16579 + :cond_3b
16580 + if-eqz v7, :cond_54
16582 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16584 + move-result v1
16586 + const/4 v4, 0x1
16588 + if-ne v1, v4, :cond_55
16590 + const-string v15, "[empty]"
16592 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16594 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16596 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16598 + const/4 v4, 0x1
16600 + const-string v5, "contacts"
16602 + const/4 v6, 0x0
16604 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16606 + :cond_54
16607 + :goto_54
16608 + return-object v13
16610 + :cond_55
16611 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16613 + move-result v1
16615 + const/4 v4, 0x2
16617 + if-ne v1, v4, :cond_a1
16619 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
16621 + move-result-object v1
16623 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
16625 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
16627 + move-result-object v4
16629 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
16631 + move-result v1
16633 + if-eqz v1, :cond_a1
16635 + const/4 v11, 0x0
16637 + if-eqz p1, :cond_82
16639 + move-object/from16 v8, p1
16641 + array-length v12, v8
16643 + const/4 v10, 0x0
16645 + :goto_73
16646 + if-ge v10, v12, :cond_82
16648 + aget-object v16, v8, v10
16650 + const-string v1, "_id"
16652 + move-object/from16 v0, v16
16654 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16656 + move-result v1
16658 + if-eqz v1, :cond_93
16660 + const/4 v11, 0x1
16662 + :cond_82
16663 + if-nez v11, :cond_96
16665 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16667 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16669 + :goto_89
16670 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16672 + const/4 v4, 0x2
16674 + const-string v5, "contacts"
16676 + const/4 v6, 0x0
16678 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16680 + goto :goto_54
16682 + :cond_93
16683 + add-int/lit8 v10, v10, 0x1
16685 + goto :goto_73
16687 + :cond_96
16688 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
16690 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
16692 + move-result-object v1
16694 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
16696 + move-object v13, v14
16698 + goto :goto_89
16700 + :cond_a1
16701 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16703 + const/4 v4, 0x0
16705 + const-string v5, "contacts"
16707 + const/4 v6, 0x0
16709 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16711 + goto :goto_54
16713 + :cond_ab
16714 + const-string v1, "com.android.calendar"
16716 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16718 + move-result v1
16720 + if-eqz v1, :cond_d8
16722 + if-eqz v7, :cond_cd
16724 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
16726 + move-result v1
16728 + const/4 v4, 0x1
16730 + if-ne v1, v4, :cond_cd
16732 + const-string v15, "[empty]"
16734 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16736 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16738 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16740 + const/4 v4, 0x1
16742 + const-string v5, "calendar"
16744 + const/4 v6, 0x0
16746 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16748 + goto :goto_54
16750 + :cond_cd
16751 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16753 + const/4 v4, 0x0
16755 + const-string v5, "calendar"
16757 + const/4 v6, 0x0
16759 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16761 + goto/16 :goto_54
16763 + :cond_d8
16764 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
16766 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16768 + move-result-object v1
16770 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16772 + move-result v1
16774 + if-eqz v1, :cond_10c
16776 + if-eqz v7, :cond_100
16778 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16780 + move-result v1
16782 + const/4 v4, 0x1
16784 + if-ne v1, v4, :cond_100
16786 + const-string v15, "[empty]"
16788 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16790 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16792 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16794 + const/4 v4, 0x1
16796 + const-string/jumbo v5, "mms"
16798 + const/4 v6, 0x0
16800 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16802 + goto/16 :goto_54
16804 + :cond_100
16805 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16807 + const/4 v4, 0x0
16809 + const-string/jumbo v5, "mms"
16811 + const/4 v6, 0x0
16813 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16815 + goto/16 :goto_54
16817 + :cond_10c
16818 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
16820 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16822 + move-result-object v1
16824 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16826 + move-result v1
16828 + if-eqz v1, :cond_140
16830 + if-eqz v7, :cond_134
16832 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16834 + move-result v1
16836 + const/4 v4, 0x1
16838 + if-ne v1, v4, :cond_134
16840 + const-string v15, "[empty]"
16842 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16844 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16846 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16848 + const/4 v4, 0x1
16850 + const-string/jumbo v5, "sms"
16852 + const/4 v6, 0x0
16854 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16856 + goto/16 :goto_54
16858 + :cond_134
16859 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16861 + const/4 v4, 0x0
16863 + const-string/jumbo v5, "sms"
16865 + const/4 v6, 0x0
16867 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16869 + goto/16 :goto_54
16871 + :cond_140
16872 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
16874 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16876 + move-result-object v1
16878 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16880 + move-result v1
16882 + if-nez v1, :cond_155
16884 + const-string/jumbo v1, "mms-sms-v2"
16886 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16888 + move-result v1
16890 + if-eqz v1, :cond_184
16892 + :cond_155
16893 + if-eqz v7, :cond_178
16895 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16897 + move-result v1
16899 + const/4 v4, 0x1
16901 + if-eq v1, v4, :cond_165
16903 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16905 + move-result v1
16907 + const/4 v4, 0x1
16909 + if-ne v1, v4, :cond_178
16911 + :cond_165
16912 + const-string v15, "[empty]"
16914 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16916 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16918 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16920 + const/4 v4, 0x1
16922 + const-string/jumbo v5, "mmsSms"
16924 + const/4 v6, 0x0
16926 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16928 + goto/16 :goto_54
16930 + :cond_178
16931 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16933 + const/4 v4, 0x0
16935 + const-string/jumbo v5, "mmsSms"
16937 + const/4 v6, 0x0
16939 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16941 + goto/16 :goto_54
16943 + :cond_184
16944 + const-string v1, "call_log"
16946 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16948 + move-result v1
16950 + if-eqz v1, :cond_1b2
16952 + if-eqz v7, :cond_1a7
16954 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
16956 + move-result v1
16958 + const/4 v4, 0x1
16960 + if-ne v1, v4, :cond_1a7
16962 + const-string v15, "[empty]"
16964 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16966 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16968 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16970 + const/4 v4, 0x1
16972 + const-string v5, "callLog"
16974 + const/4 v6, 0x0
16976 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16978 + goto/16 :goto_54
16980 + :cond_1a7
16981 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16983 + const/4 v4, 0x0
16985 + const-string v5, "callLog"
16987 + const/4 v6, 0x0
16989 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16991 + goto/16 :goto_54
16993 + :cond_1b2
16994 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
16996 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16998 + move-result-object v1
17000 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17002 + move-result v1
17004 + if-eqz v1, :cond_54
17006 + if-eqz v7, :cond_1d9
17008 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
17010 + move-result v1
17012 + const/4 v4, 0x1
17014 + if-ne v1, v4, :cond_1d9
17016 + const-string v15, "[empty]"
17018 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17020 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17022 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17024 + const/4 v4, 0x1
17026 + const-string v5, "bookmarks"
17028 + const/4 v6, 0x0
17030 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17032 + goto/16 :goto_54
17034 + :cond_1d9
17035 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17037 + const/4 v4, 0x0
17039 + const-string v5, "bookmarks"
17041 + const/4 v6, 0x0
17043 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17045 + goto/16 :goto_54
17047 + :cond_1e4
17048 + move-object/from16 v13, p3
17050 + goto/16 :goto_54
17051 +.end method
17052 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyCursor.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyCursor.smali
17053 --- stock_framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 16:00:00.000000000 -0800
17054 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-07-02 10:16:51.043019908 -0700
17055 @@ -0,0 +1,1225 @@
17056 +.class public Landroid/privacy/surrogate/PrivacyCursor;
17057 +.super Ljava/lang/Object;
17058 +.source "PrivacyCursor.java"
17060 +# interfaces
17061 +.implements Landroid/database/Cursor;
17064 +# static fields
17065 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
17068 +# instance fields
17069 +.field private allowedIdMapping:[I
17071 +.field private allowedIds:[I
17073 +.field private realCursor:Landroid/database/Cursor;
17076 +# direct methods
17077 +.method public constructor <init>()V
17078 + .registers 1
17080 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17082 + return-void
17083 +.end method
17085 +.method public constructor <init>(Landroid/database/Cursor;[I)V
17086 + .registers 7
17088 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17090 + if-eqz p2, :cond_8
17092 + array-length v2, p2
17094 + if-nez v2, :cond_9
17096 + :cond_8
17097 + const/4 p1, 0x0
17099 + :cond_9
17100 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17102 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17104 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17106 + if-eqz v2, :cond_3f
17108 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17110 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
17112 + move-result v0
17114 + array-length v2, p2
17116 + new-array v2, v2, [I
17118 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17120 + const/4 v1, 0x0
17122 + :cond_1d
17123 + :goto_1d
17124 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17126 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
17128 + move-result v2
17130 + if-eqz v2, :cond_3a
17132 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17134 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17136 + move-result v2
17138 + if-eqz v2, :cond_1d
17140 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17142 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17144 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17146 + move-result v3
17148 + aput v3, v2, v1
17150 + add-int/lit8 v1, v1, 0x1
17152 + goto :goto_1d
17154 + :cond_3a
17155 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17157 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
17159 + :cond_3f
17160 + return-void
17161 +.end method
17163 +.method private getContactId(Landroid/database/Cursor;)I
17164 + .registers 5
17166 + const-string v2, "_id"
17168 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17170 + move-result v0
17172 + const/4 v1, -0x1
17174 + const/4 v2, -0x1
17176 + if-eq v0, v2, :cond_e
17178 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
17180 + move-result v1
17182 + :cond_e
17183 + return v1
17184 +.end method
17186 +.method private getMappedPos(I)I
17187 + .registers 4
17189 + const/4 v0, 0x0
17191 + :goto_1
17192 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17194 + array-length v1, v1
17196 + if-ge v0, v1, :cond_10
17198 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17200 + aget v1, v1, v0
17202 + if-ne v1, p1, :cond_d
17204 + :goto_c
17205 + return v0
17207 + :cond_d
17208 + add-int/lit8 v0, v0, 0x1
17210 + goto :goto_1
17212 + :cond_10
17213 + const/4 v0, -0x1
17215 + goto :goto_c
17216 +.end method
17218 +.method private isAllowed(I)Z
17219 + .registers 7
17221 + const/4 v4, 0x0
17223 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17225 + array-length v3, v0
17227 + const/4 v2, 0x0
17229 + :goto_5
17230 + if-ge v2, v3, :cond_c
17232 + aget v1, v0, v2
17234 + if-ne p1, v1, :cond_d
17236 + const/4 v4, 0x1
17238 + :cond_c
17239 + return v4
17241 + :cond_d
17242 + add-int/lit8 v2, v2, 0x1
17244 + goto :goto_5
17245 +.end method
17247 +.method private isAllowed(Landroid/database/Cursor;)Z
17248 + .registers 3
17250 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
17252 + move-result v0
17254 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
17256 + move-result v0
17258 + return v0
17259 +.end method
17262 +# virtual methods
17263 +.method public close()V
17264 + .registers 2
17266 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17268 + if-eqz v0, :cond_9
17270 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17272 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
17274 + :cond_9
17275 + return-void
17276 +.end method
17278 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17279 + .registers 4
17281 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17283 + if-eqz v0, :cond_9
17285 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17287 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17289 + :cond_9
17290 + return-void
17291 +.end method
17293 +.method public deactivate()V
17294 + .registers 2
17296 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17298 + if-eqz v0, :cond_9
17300 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17302 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
17304 + :cond_9
17305 + return-void
17306 +.end method
17308 +.method public getBlob(I)[B
17309 + .registers 3
17311 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17313 + if-eqz v0, :cond_b
17315 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17317 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
17319 + move-result-object v0
17321 + :goto_a
17322 + return-object v0
17324 + :cond_b
17325 + const/4 v0, 0x0
17327 + new-array v0, v0, [B
17329 + goto :goto_a
17330 +.end method
17332 +.method public getColumnCount()I
17333 + .registers 2
17335 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17337 + if-eqz v0, :cond_b
17339 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17341 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
17343 + move-result v0
17345 + :goto_a
17346 + return v0
17348 + :cond_b
17349 + const/4 v0, 0x0
17351 + goto :goto_a
17352 +.end method
17354 +.method public getColumnIndex(Ljava/lang/String;)I
17355 + .registers 3
17357 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17359 + if-eqz v0, :cond_b
17361 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17363 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17365 + move-result v0
17367 + :goto_a
17368 + return v0
17370 + :cond_b
17371 + const/4 v0, -0x1
17373 + goto :goto_a
17374 +.end method
17376 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
17377 + .registers 3
17378 + .annotation system Ldalvik/annotation/Throws;
17379 + value = {
17380 + Ljava/lang/IllegalArgumentException;
17382 + .end annotation
17384 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17386 + if-eqz v0, :cond_b
17388 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17390 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
17392 + move-result v0
17394 + :goto_a
17395 + return v0
17397 + :cond_b
17398 + const/4 v0, -0x1
17400 + goto :goto_a
17401 +.end method
17403 +.method public getColumnName(I)Ljava/lang/String;
17404 + .registers 3
17406 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17408 + if-eqz v0, :cond_b
17410 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17412 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
17414 + move-result-object v0
17416 + :goto_a
17417 + return-object v0
17419 + :cond_b
17420 + const-string v0, ""
17422 + goto :goto_a
17423 +.end method
17425 +.method public getColumnNames()[Ljava/lang/String;
17426 + .registers 4
17428 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17430 + if-eqz v0, :cond_b
17432 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17434 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnNames()[Ljava/lang/String;
17436 + move-result-object v0
17438 + :goto_a
17439 + return-object v0
17441 + :cond_b
17442 + const/4 v0, 0x1
17444 + new-array v0, v0, [Ljava/lang/String;
17446 + const/4 v1, 0x0
17448 + const-string v2, ""
17450 + aput-object v2, v0, v1
17452 + goto :goto_a
17453 +.end method
17455 +.method public getCount()I
17456 + .registers 4
17458 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17460 + if-eqz v0, :cond_23
17462 + const-string v0, "PrivacyCursor"
17464 + new-instance v1, Ljava/lang/StringBuilder;
17466 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17468 + const-string v2, "getCount: "
17470 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17472 + move-result-object v1
17474 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17476 + array-length v2, v2
17478 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17480 + move-result-object v1
17482 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17484 + move-result-object v1
17486 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17488 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17490 + array-length v0, v0
17492 + :goto_22
17493 + return v0
17495 + :cond_23
17496 + const/4 v0, 0x0
17498 + goto :goto_22
17499 +.end method
17501 +.method public getDouble(I)D
17502 + .registers 4
17504 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17506 + if-eqz v0, :cond_b
17508 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17510 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
17512 + move-result-wide v0
17514 + :goto_a
17515 + return-wide v0
17517 + :cond_b
17518 + const-wide/16 v0, 0x0
17520 + goto :goto_a
17521 +.end method
17523 +.method public getExtras()Landroid/os/Bundle;
17524 + .registers 2
17526 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17528 + if-eqz v0, :cond_b
17530 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17532 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
17534 + move-result-object v0
17536 + :goto_a
17537 + return-object v0
17539 + :cond_b
17540 + new-instance v0, Landroid/os/Bundle;
17542 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
17544 + goto :goto_a
17545 +.end method
17547 +.method public getFloat(I)F
17548 + .registers 3
17550 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17552 + if-eqz v0, :cond_b
17554 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17556 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
17558 + move-result v0
17560 + :goto_a
17561 + return v0
17563 + :cond_b
17564 + const/4 v0, 0x0
17566 + goto :goto_a
17567 +.end method
17569 +.method public getInt(I)I
17570 + .registers 4
17572 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17574 + if-eqz v1, :cond_b
17576 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17578 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
17580 + move-result v0
17582 + :goto_a
17583 + return v0
17585 + :cond_b
17586 + const/4 v0, 0x0
17588 + goto :goto_a
17589 +.end method
17591 +.method public getLong(I)J
17592 + .registers 4
17594 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17596 + if-eqz v0, :cond_b
17598 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17600 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
17602 + move-result-wide v0
17604 + :goto_a
17605 + return-wide v0
17607 + :cond_b
17608 + const-wide/16 v0, 0x0
17610 + goto :goto_a
17611 +.end method
17613 +.method public getPosition()I
17614 + .registers 5
17616 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17618 + if-eqz v1, :cond_37
17620 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17622 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17624 + move-result v1
17626 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17628 + move-result v0
17630 + const-string v1, "PrivacyCursor"
17632 + new-instance v2, Ljava/lang/StringBuilder;
17634 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
17636 + const-string v3, "getPosition - mapped position: "
17638 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17640 + move-result-object v2
17642 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17644 + move-result-object v2
17646 + const-string v3, " real position: "
17648 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17650 + move-result-object v2
17652 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17654 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17656 + move-result v3
17658 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17660 + move-result-object v2
17662 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17664 + move-result-object v2
17666 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17668 + :goto_36
17669 + return v0
17671 + :cond_37
17672 + const/4 v0, -0x1
17674 + goto :goto_36
17675 +.end method
17677 +.method public getShort(I)S
17678 + .registers 3
17680 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17682 + if-eqz v0, :cond_b
17684 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17686 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
17688 + move-result v0
17690 + :goto_a
17691 + return v0
17693 + :cond_b
17694 + const/4 v0, 0x0
17696 + goto :goto_a
17697 +.end method
17699 +.method public getString(I)Ljava/lang/String;
17700 + .registers 3
17702 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17704 + if-eqz v0, :cond_b
17706 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17708 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
17710 + move-result-object v0
17712 + :goto_a
17713 + return-object v0
17715 + :cond_b
17716 + const-string v0, ""
17718 + goto :goto_a
17719 +.end method
17721 +.method public getType(I)I
17722 + .registers 3
17724 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17726 + if-eqz v0, :cond_b
17728 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17730 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
17732 + move-result v0
17734 + :goto_a
17735 + return v0
17737 + :cond_b
17738 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17740 + const/4 v0, 0x0
17742 + goto :goto_a
17743 +.end method
17745 +.method public getWantsAllOnMoveCalls()Z
17746 + .registers 2
17748 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17750 + if-eqz v0, :cond_b
17752 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17754 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
17756 + move-result v0
17758 + :goto_a
17759 + return v0
17761 + :cond_b
17762 + const/4 v0, 0x0
17764 + goto :goto_a
17765 +.end method
17767 +.method public isAfterLast()Z
17768 + .registers 2
17770 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17772 + if-eqz v0, :cond_b
17774 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17776 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
17778 + move-result v0
17780 + :goto_a
17781 + return v0
17783 + :cond_b
17784 + const/4 v0, 0x0
17786 + goto :goto_a
17787 +.end method
17789 +.method public isBeforeFirst()Z
17790 + .registers 2
17792 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17794 + if-eqz v0, :cond_b
17796 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17798 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
17800 + move-result v0
17802 + :goto_a
17803 + return v0
17805 + :cond_b
17806 + const/4 v0, 0x0
17808 + goto :goto_a
17809 +.end method
17811 +.method public isClosed()Z
17812 + .registers 2
17814 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17816 + if-eqz v0, :cond_b
17818 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17820 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
17822 + move-result v0
17824 + :goto_a
17825 + return v0
17827 + :cond_b
17828 + const/4 v0, 0x0
17830 + goto :goto_a
17831 +.end method
17833 +.method public isFirst()Z
17834 + .registers 4
17836 + const/4 v0, 0x0
17838 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17840 + if-eqz v1, :cond_12
17842 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17844 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17846 + move-result v1
17848 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17850 + aget v2, v2, v0
17852 + if-ne v1, v2, :cond_12
17854 + const/4 v0, 0x1
17856 + :cond_12
17857 + return v0
17858 +.end method
17860 +.method public isLast()Z
17861 + .registers 4
17863 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17865 + if-eqz v0, :cond_17
17867 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17869 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
17871 + move-result v0
17873 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17875 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17877 + array-length v2, v2
17879 + add-int/lit8 v2, v2, -0x1
17881 + aget v1, v1, v2
17883 + if-ne v0, v1, :cond_17
17885 + const/4 v0, 0x1
17887 + :goto_16
17888 + return v0
17890 + :cond_17
17891 + const/4 v0, 0x0
17893 + goto :goto_16
17894 +.end method
17896 +.method public isNull(I)Z
17897 + .registers 3
17899 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17901 + if-eqz v0, :cond_b
17903 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17905 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
17907 + move-result v0
17909 + :goto_a
17910 + return v0
17912 + :cond_b
17913 + const/4 v0, 0x0
17915 + goto :goto_a
17916 +.end method
17918 +.method public move(I)Z
17919 + .registers 8
17921 + const/4 v2, 0x0
17923 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17925 + if-eqz v3, :cond_33
17927 + const-string v3, "PrivacyCursor"
17929 + new-instance v4, Ljava/lang/StringBuilder;
17931 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
17933 + const-string/jumbo v5, "move - offset: "
17935 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17937 + move-result-object v4
17939 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17941 + move-result-object v4
17943 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17945 + move-result-object v4
17947 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17949 + :try_start_1e
17950 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17952 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17954 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
17956 + move-result v4
17958 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17960 + move-result v4
17962 + add-int/2addr v4, p1
17964 + aget v1, v3, v4
17966 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17968 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
17969 + :try_end_32
17970 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_1e .. :try_end_32} :catch_34
17972 + move-result v2
17974 + :cond_33
17975 + :goto_33
17976 + return v2
17978 + :catch_34
17979 + move-exception v0
17981 + goto :goto_33
17982 +.end method
17984 +.method public moveToFirst()Z
17985 + .registers 4
17987 + const/4 v0, 0x0
17989 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17991 + if-eqz v1, :cond_f
17993 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17995 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17997 + aget v2, v2, v0
17999 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18001 + move-result v0
18003 + :cond_f
18004 + return v0
18005 +.end method
18007 +.method public moveToLast()Z
18008 + .registers 5
18010 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18012 + if-eqz v1, :cond_14
18014 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18016 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18018 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18020 + array-length v3, v3
18022 + add-int/lit8 v3, v3, -0x1
18024 + aget v2, v2, v3
18026 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18028 + move-result v0
18030 + :goto_13
18031 + return v0
18033 + :cond_14
18034 + const/4 v0, 0x0
18036 + goto :goto_13
18037 +.end method
18039 +.method public moveToNext()Z
18040 + .registers 3
18042 + const/4 v0, 0x0
18044 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18046 + if-eqz v1, :cond_d
18048 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18050 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18052 + move-result v1
18054 + if-nez v1, :cond_e
18056 + :cond_d
18057 + return v0
18059 + :cond_e
18060 + const/4 v0, 0x1
18062 + :goto_f
18063 + const/4 v1, 0x1
18065 + if-ne v0, v1, :cond_d
18067 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18069 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18071 + move-result v1
18073 + if-nez v1, :cond_d
18075 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18077 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18079 + move-result v0
18081 + goto :goto_f
18082 +.end method
18084 +.method public moveToPosition(I)Z
18085 + .registers 6
18087 + const/4 v1, 0x0
18089 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18091 + if-eqz v2, :cond_f
18093 + :try_start_5
18094 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18096 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18098 + aget v3, v3, p1
18100 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
18101 + :try_end_e
18102 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_5 .. :try_end_e} :catch_10
18104 + move-result v1
18106 + :cond_f
18107 + :goto_f
18108 + return v1
18110 + :catch_10
18111 + move-exception v0
18113 + goto :goto_f
18114 +.end method
18116 +.method public moveToPrevious()Z
18117 + .registers 3
18119 + const/4 v0, 0x0
18121 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18123 + if-eqz v1, :cond_d
18125 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18127 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18129 + move-result v1
18131 + if-nez v1, :cond_e
18133 + :cond_d
18134 + return v0
18136 + :cond_e
18137 + const/4 v0, 0x1
18139 + :goto_f
18140 + const/4 v1, 0x1
18142 + if-ne v0, v1, :cond_d
18144 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18146 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18148 + move-result v1
18150 + if-nez v1, :cond_d
18152 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18154 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18156 + move-result v0
18158 + goto :goto_f
18159 +.end method
18161 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
18162 + .registers 3
18164 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18166 + if-eqz v0, :cond_9
18168 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18170 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
18172 + :cond_9
18173 + return-void
18174 +.end method
18176 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
18177 + .registers 3
18179 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18181 + if-eqz v0, :cond_9
18183 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18185 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
18187 + :cond_9
18188 + return-void
18189 +.end method
18191 +.method public requery()Z
18192 + .registers 2
18194 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18196 + if-eqz v0, :cond_b
18198 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18200 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
18202 + move-result v0
18204 + :goto_a
18205 + return v0
18207 + :cond_b
18208 + const/4 v0, 0x0
18210 + goto :goto_a
18211 +.end method
18213 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18214 + .registers 3
18216 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18218 + if-eqz v0, :cond_b
18220 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18222 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18224 + move-result-object v0
18226 + :goto_a
18227 + return-object v0
18229 + :cond_b
18230 + new-instance v0, Landroid/os/Bundle;
18232 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
18234 + goto :goto_a
18235 +.end method
18237 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18238 + .registers 4
18240 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18242 + if-eqz v0, :cond_9
18244 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18246 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18248 + :cond_9
18249 + return-void
18250 +.end method
18252 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
18253 + .registers 3
18255 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18257 + if-eqz v0, :cond_9
18259 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18261 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
18263 + :cond_9
18264 + return-void
18265 +.end method
18267 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18268 + .registers 3
18270 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18272 + if-eqz v0, :cond_9
18274 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18276 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18278 + :cond_9
18279 + return-void
18280 +.end method
18281 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
18282 --- stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 16:00:00.000000000 -0800
18283 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-07-02 10:16:51.043019908 -0700
18284 @@ -0,0 +1,134 @@
18285 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18286 +.super Ljava/lang/Thread;
18287 +.source "PrivacyLocationManager.java"
18290 +# annotations
18291 +.annotation system Ldalvik/annotation/EnclosingClass;
18292 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
18293 +.end annotation
18295 +.annotation system Ldalvik/annotation/InnerClass;
18296 + accessFlags = 0x2
18297 + name = "PrivacyLocationUpdater"
18298 +.end annotation
18301 +# instance fields
18302 +.field private intent:Landroid/app/PendingIntent;
18304 +.field private latitude:D
18306 +.field private listener:Landroid/location/LocationListener;
18308 +.field private longitude:D
18310 +.field private provider:Ljava/lang/String;
18312 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18315 +# direct methods
18316 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18317 + .registers 9
18319 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18321 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
18323 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18325 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18327 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18329 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18331 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18333 + return-void
18334 +.end method
18337 +# virtual methods
18338 +.method public run()V
18339 + .registers 8
18341 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18343 + if-eqz v3, :cond_43
18345 + new-instance v2, Landroid/location/Location;
18347 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18349 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
18351 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18353 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
18355 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18357 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
18359 + const/4 v1, 0x0
18361 + :goto_16
18362 + const/4 v3, 0x5
18364 + if-ge v1, v3, :cond_43
18366 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18368 + if-eqz v3, :cond_34
18370 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18372 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
18374 + :cond_22
18375 + :goto_22
18376 + :try_start_22
18377 + invoke-static {}, Ljava/lang/Math;->random()D
18379 + move-result-wide v3
18381 + const-wide v5, 0x408f400000000000L
18383 + mul-double/2addr v3, v5
18385 + double-to-int v3, v3
18387 + int-to-long v3, v3
18389 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
18390 + :try_end_31
18391 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
18393 + :goto_31
18394 + add-int/lit8 v1, v1, 0x1
18396 + goto :goto_16
18398 + :cond_34
18399 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18401 + if-eqz v3, :cond_22
18403 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18405 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
18407 + goto :goto_22
18409 + :catch_3e
18410 + move-exception v0
18412 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
18414 + goto :goto_31
18416 + :cond_43
18417 + return-void
18418 +.end method
18419 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
18420 --- stock_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 16:00:00.000000000 -0800
18421 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-07-02 10:16:51.061024196 -0700
18422 @@ -0,0 +1,2091 @@
18423 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
18424 +.super Landroid/location/LocationManager;
18425 +.source "PrivacyLocationManager.java"
18428 +# annotations
18429 +.annotation system Ldalvik/annotation/MemberClasses;
18430 + value = {
18431 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18433 +.end annotation
18436 +# static fields
18437 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
18439 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
18442 +# instance fields
18443 +.field private context:Landroid/content/Context;
18445 +.field private lock:Ljava/lang/Object;
18447 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
18450 +# direct methods
18451 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
18452 + .registers 5
18454 + invoke-direct {p0, p1}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
18456 + new-instance v0, Ljava/lang/Object;
18458 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
18460 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18462 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18464 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
18466 + const-string/jumbo v1, "privacy"
18468 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
18470 + move-result-object v1
18472 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
18474 + move-result-object v1
18476 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
18478 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18480 + return-void
18481 +.end method
18483 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18484 + .registers 7
18486 + const/4 v2, 0x3
18488 + if-nez p1, :cond_5
18490 + const/4 v0, 0x0
18492 + :goto_4
18493 + return v0
18495 + :cond_5
18496 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
18498 + move-result v0
18500 + const/4 v1, 0x1
18502 + if-eq v0, v1, :cond_24
18504 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
18506 + move-result v0
18508 + if-eq v0, v2, :cond_24
18510 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
18512 + move-result v0
18514 + if-eq v0, v2, :cond_24
18516 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
18518 + move-result v0
18520 + if-eq v0, v2, :cond_24
18522 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
18524 + move-result v0
18526 + if-ne v0, v2, :cond_2b
18528 + :cond_24
18529 + const-string v0, "gps"
18531 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18533 + move-result v0
18535 + goto :goto_4
18537 + :cond_2b
18538 + const-string/jumbo v0, "network"
18540 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18542 + move-result v0
18544 + goto :goto_4
18545 +.end method
18547 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18548 + .registers 24
18550 + move-object/from16 v0, p0
18552 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18554 + move-object/from16 v19, v0
18556 + monitor-enter v19
18558 + :try_start_7
18559 + move-object/from16 v0, p0
18561 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18563 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
18565 + move-result-object v2
18567 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
18569 + move-result v3
18571 + move-object/from16 v0, p0
18573 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18575 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
18577 + move-result-object v7
18579 + const/16 v18, 0x0
18581 + if-eqz v7, :cond_239
18583 + const-string v1, "gps"
18585 + move-object/from16 v0, p1
18587 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18589 + move-result v1
18591 + if-eqz v1, :cond_111
18593 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
18595 + move-result v1
18597 + packed-switch v1, :pswitch_data_25e
18599 + :cond_30
18600 + :goto_30
18601 + monitor-exit v19
18603 + return v18
18605 + :pswitch_32
18606 + move-object/from16 v0, p0
18608 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18610 + const/4 v4, 0x0
18612 + const-string v5, "locationGPS"
18614 + const/4 v6, 0x0
18616 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18618 + goto :goto_30
18620 + :catchall_3e
18621 + move-exception v1
18623 + monitor-exit v19
18624 + :try_end_40
18625 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
18627 + throw v1
18629 + :pswitch_41
18630 + if-eqz p3, :cond_46
18632 + :try_start_43
18633 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18635 + :cond_46
18636 + const/16 v18, 0x1
18638 + move-object/from16 v0, p0
18640 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18642 + const/4 v4, 0x1
18644 + const-string v5, "locationGPS"
18646 + const/4 v6, 0x0
18648 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18649 + :try_end_53
18650 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
18652 + goto :goto_30
18654 + :pswitch_54
18655 + :try_start_54
18656 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18658 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18660 + move-result-object v1
18662 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18664 + move-result-wide v13
18666 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18668 + move-result-object v1
18670 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18672 + move-result-wide v15
18674 + move-object/from16 v9, p0
18676 + move-object/from16 v10, p1
18678 + move-object/from16 v11, p2
18680 + move-object/from16 v12, p3
18682 + 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
18684 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18685 + :try_end_74
18686 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
18687 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
18689 + const/16 v18, 0x1
18691 + :goto_76
18692 + :try_start_76
18693 + move-object/from16 v0, p0
18695 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18697 + const/4 v4, 0x2
18699 + const-string v5, "locationGPS"
18701 + new-instance v6, Ljava/lang/StringBuilder;
18703 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18705 + const-string v8, "Lat: "
18707 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18709 + move-result-object v6
18711 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18713 + move-result-object v8
18715 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18717 + move-result-object v6
18719 + const-string v8, " Lon: "
18721 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18723 + move-result-object v6
18725 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18727 + move-result-object v8
18729 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18731 + move-result-object v6
18733 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18735 + move-result-object v6
18737 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18739 + goto :goto_30
18741 + :catch_a6
18742 + move-exception v17
18744 + const-string v1, "PrivacyLocationManager"
18746 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18748 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18749 + :try_end_af
18750 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
18752 + const/16 v18, 0x1
18754 + goto :goto_76
18756 + :pswitch_b2
18757 + :try_start_b2
18758 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18760 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18762 + move-result-object v1
18764 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18766 + move-result-wide v13
18768 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18770 + move-result-object v1
18772 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18774 + move-result-wide v15
18776 + move-object/from16 v9, p0
18778 + move-object/from16 v10, p1
18780 + move-object/from16 v11, p2
18782 + move-object/from16 v12, p3
18784 + 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
18786 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18787 + :try_end_d2
18788 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
18789 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
18791 + const/16 v18, 0x1
18793 + :goto_d4
18794 + :try_start_d4
18795 + move-object/from16 v0, p0
18797 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18799 + const/4 v4, 0x3
18801 + const-string v5, "locationGPS"
18803 + new-instance v6, Ljava/lang/StringBuilder;
18805 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18807 + const-string v8, "Lat: "
18809 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18811 + move-result-object v6
18813 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18815 + move-result-object v8
18817 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18819 + move-result-object v6
18821 + const-string v8, " Lon: "
18823 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18825 + move-result-object v6
18827 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18829 + move-result-object v8
18831 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18833 + move-result-object v6
18835 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18837 + move-result-object v6
18839 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18841 + goto/16 :goto_30
18843 + :catch_105
18844 + move-exception v17
18846 + const-string v1, "PrivacyLocationManager"
18848 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18850 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18852 + const/16 v18, 0x1
18854 + goto :goto_d4
18856 + :cond_111
18857 + const-string/jumbo v1, "network"
18859 + move-object/from16 v0, p1
18861 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18863 + move-result v1
18865 + if-eqz v1, :cond_204
18867 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
18869 + move-result v1
18871 + packed-switch v1, :pswitch_data_26a
18873 + goto/16 :goto_30
18875 + :pswitch_125
18876 + move-object/from16 v0, p0
18878 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18880 + const/4 v4, 0x0
18882 + const-string v5, "locationNetwork"
18884 + const/4 v6, 0x0
18886 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18888 + goto/16 :goto_30
18890 + :pswitch_132
18891 + if-eqz p3, :cond_137
18893 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18895 + :cond_137
18896 + const/16 v18, 0x1
18898 + move-object/from16 v0, p0
18900 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18902 + const/4 v4, 0x1
18904 + const-string v5, "locationNetwork"
18906 + const/4 v6, 0x0
18908 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18909 + :try_end_144
18910 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
18912 + goto/16 :goto_30
18914 + :pswitch_146
18915 + :try_start_146
18916 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18918 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18920 + move-result-object v1
18922 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18924 + move-result-wide v13
18926 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18928 + move-result-object v1
18930 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18932 + move-result-wide v15
18934 + move-object/from16 v9, p0
18936 + move-object/from16 v10, p1
18938 + move-object/from16 v11, p2
18940 + move-object/from16 v12, p3
18942 + 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
18944 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18945 + :try_end_166
18946 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
18947 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
18949 + const/16 v18, 0x1
18951 + :goto_168
18952 + :try_start_168
18953 + move-object/from16 v0, p0
18955 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18957 + const/4 v4, 0x2
18959 + const-string v5, "locationNetwork"
18961 + new-instance v6, Ljava/lang/StringBuilder;
18963 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18965 + const-string v8, "Lat: "
18967 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18969 + move-result-object v6
18971 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18973 + move-result-object v8
18975 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18977 + move-result-object v6
18979 + const-string v8, " Lon: "
18981 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18983 + move-result-object v6
18985 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18987 + move-result-object v8
18989 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18991 + move-result-object v6
18993 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18995 + move-result-object v6
18997 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18999 + goto/16 :goto_30
19001 + :catch_199
19002 + move-exception v17
19004 + const-string v1, "PrivacyLocationManager"
19006 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19008 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19009 + :try_end_1a2
19010 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
19012 + const/16 v18, 0x1
19014 + goto :goto_168
19016 + :pswitch_1a5
19017 + :try_start_1a5
19018 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19020 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19022 + move-result-object v1
19024 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19026 + move-result-wide v13
19028 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19030 + move-result-object v1
19032 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19034 + move-result-wide v15
19036 + move-object/from16 v9, p0
19038 + move-object/from16 v10, p1
19040 + move-object/from16 v11, p2
19042 + move-object/from16 v12, p3
19044 + 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
19046 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19047 + :try_end_1c5
19048 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
19049 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
19051 + const/16 v18, 0x1
19053 + :goto_1c7
19054 + :try_start_1c7
19055 + move-object/from16 v0, p0
19057 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19059 + const/4 v4, 0x3
19061 + const-string v5, "locationNetwork"
19063 + new-instance v6, Ljava/lang/StringBuilder;
19065 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19067 + const-string v8, "Lat: "
19069 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19071 + move-result-object v6
19073 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19075 + move-result-object v8
19077 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19079 + move-result-object v6
19081 + const-string v8, " Lon: "
19083 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19085 + move-result-object v6
19087 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19089 + move-result-object v8
19091 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19093 + move-result-object v6
19095 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19097 + move-result-object v6
19099 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19101 + goto/16 :goto_30
19103 + :catch_1f8
19104 + move-exception v17
19106 + const-string v1, "PrivacyLocationManager"
19108 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19110 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19112 + const/16 v18, 0x1
19114 + goto :goto_1c7
19116 + :cond_204
19117 + const-string/jumbo v1, "passive"
19119 + move-object/from16 v0, p1
19121 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19123 + move-result v1
19125 + if-eqz v1, :cond_30
19127 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19129 + move-result v1
19131 + if-nez v1, :cond_22a
19133 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19135 + move-result v1
19137 + if-nez v1, :cond_22a
19139 + const/16 v18, 0x0
19141 + move-object/from16 v0, p0
19143 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19145 + const/4 v4, 0x0
19147 + const-string v5, "locationGPS"
19149 + const/4 v6, 0x0
19151 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19153 + goto/16 :goto_30
19155 + :cond_22a
19156 + const/16 v18, 0x1
19158 + move-object/from16 v0, p0
19160 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19162 + const/4 v4, 0x1
19164 + const-string v5, "locationGPS"
19166 + const/4 v6, 0x0
19168 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19170 + goto/16 :goto_30
19172 + :cond_239
19173 + const-string/jumbo v1, "network"
19175 + move-object/from16 v0, p1
19177 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19179 + move-result v1
19181 + if-eqz v1, :cond_251
19183 + move-object/from16 v0, p0
19185 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19187 + const/4 v4, 0x0
19189 + const-string v5, "locationNetwork"
19191 + const/4 v6, 0x0
19193 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19195 + goto/16 :goto_30
19197 + :cond_251
19198 + move-object/from16 v0, p0
19200 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19202 + const/4 v4, 0x0
19204 + const-string v5, "locationGPS"
19206 + const/4 v6, 0x0
19208 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19209 + :try_end_25c
19210 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
19212 + goto/16 :goto_30
19214 + :pswitch_data_25e
19215 + .packed-switch 0x0
19216 + :pswitch_32
19217 + :pswitch_41
19218 + :pswitch_54
19219 + :pswitch_b2
19220 + .end packed-switch
19222 + :pswitch_data_26a
19223 + .packed-switch 0x0
19224 + :pswitch_125
19225 + :pswitch_132
19226 + :pswitch_146
19227 + :pswitch_1a5
19228 + .end packed-switch
19229 +.end method
19232 +# virtual methods
19233 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19234 + .registers 10
19236 + const/4 v5, 0x0
19238 + const/4 v7, 0x0
19240 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19242 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19244 + move-result-object v1
19246 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19248 + move-result v2
19250 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19252 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19254 + move-result-object v6
19256 + if-eqz v6, :cond_24
19258 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19260 + move-result v0
19262 + if-eqz v0, :cond_24
19264 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19266 + const/4 v3, 0x1
19268 + const-string v4, "locationGPS"
19270 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19272 + move v0, v7
19274 + :goto_23
19275 + return v0
19277 + :cond_24
19278 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19280 + const-string v4, "locationGPS"
19282 + move v3, v7
19284 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19286 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19288 + move-result v0
19290 + goto :goto_23
19291 +.end method
19293 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19294 + .registers 14
19296 + const/4 v11, 0x3
19298 + const/4 v10, 0x2
19300 + const/4 v8, 0x1
19302 + const/4 v3, 0x0
19304 + const/4 v5, 0x0
19306 + if-nez p1, :cond_c
19308 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19310 + move-result-object v7
19312 + :cond_b
19313 + :goto_b
19314 + return-object v7
19316 + :cond_c
19317 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19319 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19321 + move-result-object v1
19323 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19325 + move-result v2
19327 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19329 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19331 + move-result-object v6
19333 + const/4 v7, 0x0
19335 + if-eqz v6, :cond_22c
19337 + const-string v0, "gps"
19339 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19341 + move-result v0
19343 + if-eqz v0, :cond_ff
19345 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19347 + move-result v0
19349 + packed-switch v0, :pswitch_data_29a
19351 + goto :goto_b
19353 + :pswitch_2f
19354 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19356 + move-result-object v7
19358 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19360 + const-string v4, "locationGPS"
19362 + if-eqz v7, :cond_5e
19364 + new-instance v5, Ljava/lang/StringBuilder;
19366 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19368 + const-string v8, "Lat: "
19370 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19372 + move-result-object v5
19374 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19376 + move-result-wide v8
19378 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19380 + move-result-object v5
19382 + const-string v8, " Lon: "
19384 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19386 + move-result-object v5
19388 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19390 + move-result-wide v8
19392 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19394 + move-result-object v5
19396 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19398 + move-result-object v5
19400 + :cond_5e
19401 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19403 + goto :goto_b
19405 + :pswitch_62
19406 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19408 + const-string v4, "locationGPS"
19410 + move v3, v8
19412 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19414 + goto :goto_b
19416 + :pswitch_6b
19417 + new-instance v7, Landroid/location/Location;
19419 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19421 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19423 + move-result-object v0
19425 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19427 + move-result-wide v3
19429 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19431 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19433 + move-result-object v0
19435 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19437 + move-result-wide v3
19439 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19441 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19443 + const-string v4, "locationGPS"
19445 + new-instance v3, Ljava/lang/StringBuilder;
19447 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19449 + const-string v5, "Lat: "
19451 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19453 + move-result-object v3
19455 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19457 + move-result-wide v8
19459 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19461 + move-result-object v3
19463 + const-string v5, " Lon: "
19465 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19467 + move-result-object v3
19469 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19471 + move-result-wide v8
19473 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19475 + move-result-object v3
19477 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19479 + move-result-object v5
19481 + move v3, v10
19483 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19485 + goto/16 :goto_b
19487 + :pswitch_b5
19488 + new-instance v7, Landroid/location/Location;
19490 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19492 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19494 + move-result-object v0
19496 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19498 + move-result-wide v3
19500 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19502 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19504 + move-result-object v0
19506 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19508 + move-result-wide v3
19510 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19512 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19514 + const-string v4, "locationGPS"
19516 + new-instance v3, Ljava/lang/StringBuilder;
19518 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19520 + const-string v5, "Lat: "
19522 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19524 + move-result-object v3
19526 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19528 + move-result-wide v8
19530 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19532 + move-result-object v3
19534 + const-string v5, " Lon: "
19536 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19538 + move-result-object v3
19540 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19542 + move-result-wide v8
19544 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19546 + move-result-object v3
19548 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19550 + move-result-object v5
19552 + move v3, v11
19554 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19556 + goto/16 :goto_b
19558 + :cond_ff
19559 + const-string/jumbo v0, "network"
19561 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19563 + move-result v0
19565 + if-eqz v0, :cond_1e3
19567 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19569 + move-result v0
19571 + packed-switch v0, :pswitch_data_2a6
19573 + goto/16 :goto_b
19575 + :pswitch_111
19576 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19578 + move-result-object v7
19580 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19582 + const-string v4, "locationNetwork"
19584 + if-eqz v7, :cond_140
19586 + new-instance v5, Ljava/lang/StringBuilder;
19588 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19590 + const-string v8, "Lat: "
19592 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19594 + move-result-object v5
19596 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19598 + move-result-wide v8
19600 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19602 + move-result-object v5
19604 + const-string v8, " Lon: "
19606 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19608 + move-result-object v5
19610 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19612 + move-result-wide v8
19614 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19616 + move-result-object v5
19618 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19620 + move-result-object v5
19622 + :cond_140
19623 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19625 + goto/16 :goto_b
19627 + :pswitch_145
19628 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19630 + const-string v4, "locationNetwork"
19632 + move v3, v8
19634 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19636 + goto/16 :goto_b
19638 + :pswitch_14f
19639 + new-instance v7, Landroid/location/Location;
19641 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19643 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19645 + move-result-object v0
19647 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19649 + move-result-wide v3
19651 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19653 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19655 + move-result-object v0
19657 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19659 + move-result-wide v3
19661 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19663 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19665 + const-string v4, "locationNetwork"
19667 + new-instance v3, Ljava/lang/StringBuilder;
19669 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19671 + const-string v5, "Lat: "
19673 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19675 + move-result-object v3
19677 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19679 + move-result-wide v8
19681 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19683 + move-result-object v3
19685 + const-string v5, " Lon: "
19687 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19689 + move-result-object v3
19691 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19693 + move-result-wide v8
19695 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19697 + move-result-object v3
19699 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19701 + move-result-object v5
19703 + move v3, v10
19705 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19707 + goto/16 :goto_b
19709 + :pswitch_199
19710 + new-instance v7, Landroid/location/Location;
19712 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19714 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19716 + move-result-object v0
19718 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19720 + move-result-wide v3
19722 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19724 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19726 + move-result-object v0
19728 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19730 + move-result-wide v3
19732 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19734 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19736 + const-string v4, "locationNetwork"
19738 + new-instance v3, Ljava/lang/StringBuilder;
19740 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19742 + const-string v5, "Lat: "
19744 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19746 + move-result-object v3
19748 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19750 + move-result-wide v8
19752 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19754 + move-result-object v3
19756 + const-string v5, " Lon: "
19758 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19760 + move-result-object v3
19762 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19764 + move-result-wide v8
19766 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19768 + move-result-object v3
19770 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19772 + move-result-object v5
19774 + move v3, v11
19776 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19778 + goto/16 :goto_b
19780 + :cond_1e3
19781 + const-string/jumbo v0, "passive"
19783 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19785 + move-result v0
19787 + if-eqz v0, :cond_b
19789 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19791 + move-result v0
19793 + if-nez v0, :cond_b
19795 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19797 + move-result v0
19799 + if-nez v0, :cond_b
19801 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19803 + move-result-object v7
19805 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19807 + const-string v4, "locationGPS"
19809 + if-eqz v7, :cond_227
19811 + new-instance v5, Ljava/lang/StringBuilder;
19813 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19815 + const-string v8, "Lat: "
19817 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19819 + move-result-object v5
19821 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19823 + move-result-wide v8
19825 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19827 + move-result-object v5
19829 + const-string v8, " Lon: "
19831 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19833 + move-result-object v5
19835 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19837 + move-result-wide v8
19839 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19841 + move-result-object v5
19843 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19845 + move-result-object v5
19847 + :cond_227
19848 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19850 + goto/16 :goto_b
19852 + :cond_22c
19853 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19855 + move-result-object v7
19857 + const-string/jumbo v0, "network"
19859 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19861 + move-result v0
19863 + if-eqz v0, :cond_269
19865 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19867 + const-string v4, "locationNetwork"
19869 + if-eqz v7, :cond_264
19871 + new-instance v5, Ljava/lang/StringBuilder;
19873 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19875 + const-string v8, "Lat: "
19877 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19879 + move-result-object v5
19881 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19883 + move-result-wide v8
19885 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19887 + move-result-object v5
19889 + const-string v8, " Lon: "
19891 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19893 + move-result-object v5
19895 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19897 + move-result-wide v8
19899 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19901 + move-result-object v5
19903 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19905 + move-result-object v5
19907 + :cond_264
19908 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19910 + goto/16 :goto_b
19912 + :cond_269
19913 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19915 + const-string v4, "locationGPS"
19917 + if-eqz v7, :cond_294
19919 + new-instance v5, Ljava/lang/StringBuilder;
19921 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19923 + const-string v8, "Lat: "
19925 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19927 + move-result-object v5
19929 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19931 + move-result-wide v8
19933 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19935 + move-result-object v5
19937 + const-string v8, " Lon: "
19939 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19941 + move-result-object v5
19943 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19945 + move-result-wide v8
19947 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19949 + move-result-object v5
19951 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19953 + move-result-object v5
19955 + :cond_294
19956 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19958 + goto/16 :goto_b
19960 + nop
19962 + :pswitch_data_29a
19963 + .packed-switch 0x0
19964 + :pswitch_2f
19965 + :pswitch_62
19966 + :pswitch_6b
19967 + :pswitch_b5
19968 + .end packed-switch
19970 + :pswitch_data_2a6
19971 + .packed-switch 0x0
19972 + :pswitch_111
19973 + :pswitch_145
19974 + :pswitch_14f
19975 + :pswitch_199
19976 + .end packed-switch
19977 +.end method
19979 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19980 + .registers 7
19982 + if-nez p1, :cond_7
19984 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19986 + move-result-object v0
19988 + :cond_6
19989 + :goto_6
19990 + return-object v0
19992 + :cond_7
19993 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19995 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19997 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19999 + move-result-object v3
20001 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20003 + move-result v4
20005 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20007 + move-result-object v1
20009 + const/4 v0, 0x0
20011 + if-eqz v1, :cond_5f
20013 + const-string v2, "gps"
20015 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20017 + move-result v2
20019 + if-eqz v2, :cond_2f
20021 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20023 + move-result v2
20025 + packed-switch v2, :pswitch_data_64
20027 + :pswitch_29
20028 + goto :goto_6
20030 + :pswitch_2a
20031 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20033 + move-result-object v0
20035 + goto :goto_6
20037 + :cond_2f
20038 + const-string/jumbo v2, "network"
20040 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20042 + move-result v2
20044 + if-eqz v2, :cond_45
20046 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20048 + move-result v2
20050 + packed-switch v2, :pswitch_data_70
20052 + :pswitch_3f
20053 + goto :goto_6
20055 + :pswitch_40
20056 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20058 + move-result-object v0
20060 + goto :goto_6
20062 + :cond_45
20063 + const-string/jumbo v2, "passive"
20065 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20067 + move-result v2
20069 + if-eqz v2, :cond_6
20071 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20073 + move-result v2
20075 + if-eqz v2, :cond_5a
20077 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20079 + move-result v2
20081 + if-nez v2, :cond_6
20083 + :cond_5a
20084 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20086 + move-result-object v0
20088 + goto :goto_6
20090 + :cond_5f
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 + :pswitch_data_64
20098 + .packed-switch 0x0
20099 + :pswitch_2a
20100 + :pswitch_29
20101 + :pswitch_2a
20102 + :pswitch_2a
20103 + .end packed-switch
20105 + :pswitch_data_70
20106 + .packed-switch 0x0
20107 + :pswitch_40
20108 + :pswitch_3f
20109 + :pswitch_40
20110 + :pswitch_40
20111 + .end packed-switch
20112 +.end method
20114 +.method public isProviderEnabled(Ljava/lang/String;)Z
20115 + .registers 7
20117 + if-nez p1, :cond_7
20119 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20121 + move-result v0
20123 + :cond_6
20124 + :goto_6
20125 + :pswitch_6
20126 + return v0
20128 + :cond_7
20129 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20131 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20133 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20135 + move-result-object v3
20137 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20139 + move-result v4
20141 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20143 + move-result-object v1
20145 + const/4 v0, 0x0
20147 + if-eqz v1, :cond_65
20149 + const-string v2, "gps"
20151 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20153 + move-result v2
20155 + if-eqz v2, :cond_31
20157 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20159 + move-result v2
20161 + packed-switch v2, :pswitch_data_6a
20163 + goto :goto_6
20165 + :pswitch_2a
20166 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20168 + move-result v0
20170 + goto :goto_6
20172 + :pswitch_2f
20173 + const/4 v0, 0x1
20175 + goto :goto_6
20177 + :cond_31
20178 + const-string/jumbo v2, "network"
20180 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20182 + move-result v2
20184 + if-eqz v2, :cond_49
20186 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20188 + move-result v2
20190 + packed-switch v2, :pswitch_data_76
20192 + goto :goto_6
20194 + :pswitch_42
20195 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20197 + move-result v0
20199 + goto :goto_6
20201 + :pswitch_47
20202 + const/4 v0, 0x1
20204 + goto :goto_6
20206 + :cond_49
20207 + const-string/jumbo v2, "passive"
20209 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20211 + move-result v2
20213 + if-eqz v2, :cond_6
20215 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20217 + move-result v2
20219 + if-eqz v2, :cond_5e
20221 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20223 + move-result v2
20225 + if-nez v2, :cond_63
20227 + :cond_5e
20228 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20230 + move-result v0
20232 + goto :goto_6
20234 + :cond_63
20235 + const/4 v0, 0x0
20237 + goto :goto_6
20239 + :cond_65
20240 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20242 + move-result v0
20244 + goto :goto_6
20246 + :pswitch_data_6a
20247 + .packed-switch 0x0
20248 + :pswitch_2a
20249 + :pswitch_6
20250 + :pswitch_2f
20251 + :pswitch_2f
20252 + .end packed-switch
20254 + :pswitch_data_76
20255 + .packed-switch 0x0
20256 + :pswitch_42
20257 + :pswitch_6
20258 + :pswitch_47
20259 + :pswitch_47
20260 + .end packed-switch
20261 +.end method
20263 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20264 + .registers 7
20266 + if-eqz p4, :cond_4
20268 + if-nez p5, :cond_8
20270 + :cond_4
20271 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20273 + :cond_7
20274 + :goto_7
20275 + return-void
20277 + :cond_8
20278 + const/4 v0, 0x0
20280 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20282 + move-result v0
20284 + if-nez v0, :cond_7
20286 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20288 + goto :goto_7
20289 +.end method
20291 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20292 + .registers 8
20294 + if-eqz p4, :cond_4
20296 + if-nez p5, :cond_8
20298 + :cond_4
20299 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20301 + :cond_7
20302 + :goto_7
20303 + return-void
20305 + :cond_8
20306 + const/4 v0, 0x0
20308 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20310 + move-result v0
20312 + if-nez v0, :cond_7
20314 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20316 + goto :goto_7
20317 +.end method
20319 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20320 + .registers 7
20322 + if-eqz p1, :cond_4
20324 + if-nez p5, :cond_8
20326 + :cond_4
20327 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20329 + :cond_7
20330 + :goto_7
20331 + return-void
20333 + :cond_8
20334 + const/4 v0, 0x0
20336 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20338 + move-result v0
20340 + if-nez v0, :cond_7
20342 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20344 + goto :goto_7
20345 +.end method
20347 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20348 + .registers 7
20350 + if-eqz p1, :cond_4
20352 + if-nez p5, :cond_8
20354 + :cond_4
20355 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20357 + :cond_7
20358 + :goto_7
20359 + return-void
20361 + :cond_8
20362 + const/4 v0, 0x0
20364 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20366 + move-result v0
20368 + if-nez v0, :cond_7
20370 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20372 + goto :goto_7
20373 +.end method
20375 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20376 + .registers 8
20378 + if-eqz p1, :cond_4
20380 + if-nez p5, :cond_8
20382 + :cond_4
20383 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20385 + :cond_7
20386 + :goto_7
20387 + return-void
20389 + :cond_8
20390 + const/4 v0, 0x0
20392 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20394 + move-result v0
20396 + if-nez v0, :cond_7
20398 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20400 + goto :goto_7
20401 +.end method
20403 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20404 + .registers 4
20406 + if-eqz p1, :cond_4
20408 + if-nez p2, :cond_8
20410 + :cond_4
20411 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20413 + :cond_7
20414 + :goto_7
20415 + return-void
20417 + :cond_8
20418 + const/4 v0, 0x0
20420 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20422 + move-result v0
20424 + if-nez v0, :cond_7
20426 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20428 + goto :goto_7
20429 +.end method
20431 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20432 + .registers 5
20434 + if-eqz p1, :cond_4
20436 + if-nez p2, :cond_8
20438 + :cond_4
20439 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20441 + :cond_7
20442 + :goto_7
20443 + return-void
20445 + :cond_8
20446 + const/4 v0, 0x0
20448 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20450 + move-result v0
20452 + if-nez v0, :cond_7
20454 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20456 + goto :goto_7
20457 +.end method
20459 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20460 + .registers 4
20462 + if-eqz p1, :cond_4
20464 + if-nez p2, :cond_8
20466 + :cond_4
20467 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20469 + :cond_7
20470 + :goto_7
20471 + return-void
20473 + :cond_8
20474 + const/4 v0, 0x0
20476 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20478 + move-result v0
20480 + if-nez v0, :cond_7
20482 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20484 + goto :goto_7
20485 +.end method
20487 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20488 + .registers 5
20490 + if-eqz p1, :cond_4
20492 + if-nez p2, :cond_8
20494 + :cond_4
20495 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20497 + :cond_7
20498 + :goto_7
20499 + return-void
20501 + :cond_8
20502 + const/4 v0, 0x0
20504 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20506 + move-result v0
20508 + if-nez v0, :cond_7
20510 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20512 + goto :goto_7
20513 +.end method
20514 diff -Npru stock_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali pdroid_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
20515 --- stock_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 16:00:00.000000000 -0800
20516 +++ pdroid_framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-07-02 10:16:51.063024673 -0700
20517 @@ -0,0 +1,731 @@
20518 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
20519 +.super Landroid/telephony/TelephonyManager;
20520 +.source "PrivacyTelephonyManager.java"
20523 +# static fields
20524 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
20527 +# instance fields
20528 +.field private context:Landroid/content/Context;
20530 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
20533 +# direct methods
20534 +.method public constructor <init>(Landroid/content/Context;)V
20535 + .registers 4
20537 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
20539 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20541 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
20543 + const-string/jumbo v1, "privacy"
20545 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20547 + move-result-object v1
20549 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20551 + move-result-object v1
20553 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20555 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20557 + return-void
20558 +.end method
20560 +.method private getNetworkInfo()Ljava/lang/String;
20561 + .registers 8
20563 + const/4 v5, 0x0
20565 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20567 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20569 + move-result-object v1
20571 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20573 + move-result v2
20575 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20577 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20579 + move-result-object v6
20581 + if-eqz v6, :cond_25
20583 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
20585 + move-result v0
20587 + if-eqz v0, :cond_25
20589 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20591 + const/4 v3, 0x1
20593 + const-string/jumbo v4, "networkInfoCurrent"
20595 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20597 + const-string v5, ""
20599 + :goto_24
20600 + return-object v5
20602 + :cond_25
20603 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20605 + const/4 v3, 0x0
20607 + const-string/jumbo v4, "networkInfoCurrent"
20609 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20611 + goto :goto_24
20612 +.end method
20614 +.method private getSimInfo()Ljava/lang/String;
20615 + .registers 8
20617 + const/4 v5, 0x0
20619 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20621 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20623 + move-result-object v1
20625 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20627 + move-result v2
20629 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20631 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20633 + move-result-object v6
20635 + if-eqz v6, :cond_25
20637 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
20639 + move-result v0
20641 + if-eqz v0, :cond_25
20643 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20645 + const/4 v3, 0x1
20647 + const-string/jumbo v4, "networkInfoSIM"
20649 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20651 + const-string v5, ""
20653 + :goto_24
20654 + return-object v5
20656 + :cond_25
20657 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20659 + const/4 v3, 0x0
20661 + const-string/jumbo v4, "networkInfoSIM"
20663 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20665 + goto :goto_24
20666 +.end method
20669 +# virtual methods
20670 +.method public getDeviceId()Ljava/lang/String;
20671 + .registers 8
20673 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20675 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20677 + move-result-object v1
20679 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20681 + move-result v2
20683 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20685 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20687 + move-result-object v6
20689 + if-eqz v6, :cond_28
20691 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20693 + move-result v0
20695 + if-eqz v0, :cond_28
20697 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
20699 + move-result-object v5
20701 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20703 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20705 + move-result v3
20707 + const-string v4, "deviceID"
20709 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20711 + :goto_27
20712 + return-object v5
20714 + :cond_28
20715 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
20717 + move-result-object v5
20719 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20721 + const/4 v3, 0x0
20723 + const-string v4, "deviceID"
20725 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20727 + goto :goto_27
20728 +.end method
20730 +.method public getLine1Number()Ljava/lang/String;
20731 + .registers 8
20733 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20735 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20737 + move-result-object v1
20739 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20741 + move-result v2
20743 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20745 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20747 + move-result-object v6
20749 + if-eqz v6, :cond_28
20751 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20753 + move-result v0
20755 + if-eqz v0, :cond_28
20757 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
20759 + move-result-object v5
20761 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20763 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20765 + move-result v3
20767 + const-string v4, "line1Number"
20769 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20771 + :goto_27
20772 + return-object v5
20774 + :cond_28
20775 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
20777 + move-result-object v5
20779 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20781 + const/4 v3, 0x0
20783 + const-string v4, "line1Number"
20785 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20787 + goto :goto_27
20788 +.end method
20790 +.method public getNeighboringCellInfo()Ljava/util/List;
20791 + .registers 10
20792 + .annotation system Ldalvik/annotation/Signature;
20793 + value = {
20794 + "()",
20795 + "Ljava/util/List",
20796 + "<",
20797 + "Landroid/telephony/NeighboringCellInfo;",
20798 + ">;"
20800 + .end annotation
20802 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20804 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20806 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20808 + move-result-object v7
20810 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20812 + move-result v8
20814 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20816 + move-result-object v5
20818 + const/4 v3, 0x0
20820 + const-string v4, "[null]"
20822 + if-eqz v5, :cond_1c
20824 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20826 + move-result v6
20828 + const/4 v7, 0x1
20830 + if-ne v6, v7, :cond_1d
20832 + :cond_1c
20833 + :goto_1c
20834 + return-object v3
20836 + :cond_1d
20837 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20839 + move-result v6
20841 + if-eqz v6, :cond_2b
20843 + new-instance v3, Ljava/util/ArrayList;
20845 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
20847 + const-string v4, "[empty list of cells]"
20849 + goto :goto_1c
20851 + :cond_2b
20852 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
20854 + move-result-object v3
20856 + const-string v0, ""
20858 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
20860 + move-result-object v2
20862 + :goto_35
20863 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
20865 + move-result v6
20867 + if-eqz v6, :cond_5f
20869 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
20871 + move-result-object v1
20873 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
20875 + new-instance v6, Ljava/lang/StringBuilder;
20877 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20879 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20881 + move-result-object v6
20883 + const-string v7, "\t"
20885 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20887 + move-result-object v6
20889 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
20891 + move-result-object v6
20893 + const-string v7, "\n"
20895 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20897 + move-result-object v6
20899 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20901 + move-result-object v0
20903 + goto :goto_35
20905 + :cond_5f
20906 + new-instance v6, Ljava/lang/StringBuilder;
20908 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20910 + const-string v7, "[real value]:\n"
20912 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20914 + move-result-object v6
20916 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20918 + move-result-object v6
20920 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20922 + move-result-object v4
20924 + goto :goto_1c
20925 +.end method
20927 +.method public getNetworkCountryIso()Ljava/lang/String;
20928 + .registers 2
20930 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20932 + move-result-object v0
20934 + if-nez v0, :cond_a
20936 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
20938 + move-result-object v0
20940 + :cond_a
20941 + return-object v0
20942 +.end method
20944 +.method public getNetworkOperator()Ljava/lang/String;
20945 + .registers 2
20947 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20949 + move-result-object v0
20951 + if-nez v0, :cond_a
20953 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
20955 + move-result-object v0
20957 + :cond_a
20958 + return-object v0
20959 +.end method
20961 +.method public getNetworkOperatorName()Ljava/lang/String;
20962 + .registers 2
20964 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20966 + move-result-object v0
20968 + if-nez v0, :cond_a
20970 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
20972 + move-result-object v0
20974 + :cond_a
20975 + return-object v0
20976 +.end method
20978 +.method public getSimCountryIso()Ljava/lang/String;
20979 + .registers 2
20981 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20983 + move-result-object v0
20985 + if-nez v0, :cond_a
20987 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
20989 + move-result-object v0
20991 + :cond_a
20992 + return-object v0
20993 +.end method
20995 +.method public getSimOperator()Ljava/lang/String;
20996 + .registers 2
20998 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21000 + move-result-object v0
21002 + if-nez v0, :cond_a
21004 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
21006 + move-result-object v0
21008 + :cond_a
21009 + return-object v0
21010 +.end method
21012 +.method public getSimOperatorName()Ljava/lang/String;
21013 + .registers 2
21015 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21017 + move-result-object v0
21019 + if-nez v0, :cond_a
21021 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
21023 + move-result-object v0
21025 + :cond_a
21026 + return-object v0
21027 +.end method
21029 +.method public getSimSerialNumber()Ljava/lang/String;
21030 + .registers 8
21032 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21034 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21036 + move-result-object v1
21038 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21040 + move-result v2
21042 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21044 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21046 + move-result-object v6
21048 + if-eqz v6, :cond_29
21050 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21052 + move-result v0
21054 + if-eqz v0, :cond_29
21056 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
21058 + move-result-object v5
21060 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21062 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21064 + move-result v3
21066 + const-string/jumbo v4, "simSerial"
21068 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21070 + :goto_28
21071 + return-object v5
21073 + :cond_29
21074 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
21076 + move-result-object v5
21078 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21080 + const/4 v3, 0x0
21082 + const-string/jumbo v4, "simSerial"
21084 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21086 + goto :goto_28
21087 +.end method
21089 +.method public getSubscriberId()Ljava/lang/String;
21090 + .registers 8
21092 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21094 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21096 + move-result-object v1
21098 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21100 + move-result v2
21102 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21104 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21106 + move-result-object v6
21108 + if-eqz v6, :cond_29
21110 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21112 + move-result v0
21114 + if-eqz v0, :cond_29
21116 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
21118 + move-result-object v5
21120 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21122 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21124 + move-result v3
21126 + const-string/jumbo v4, "subscriberID"
21128 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21130 + :goto_28
21131 + return-object v5
21133 + :cond_29
21134 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
21136 + move-result-object v5
21138 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21140 + const/4 v3, 0x0
21142 + const-string/jumbo v4, "subscriberID"
21144 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21146 + goto :goto_28
21147 +.end method
21149 +.method public getVoiceMailNumber()Ljava/lang/String;
21150 + .registers 8
21152 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21154 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21156 + move-result-object v1
21158 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21160 + move-result v2
21162 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21164 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21166 + move-result-object v6
21168 + if-eqz v6, :cond_28
21170 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21172 + move-result v0
21174 + if-eqz v0, :cond_28
21176 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21178 + move-result-object v5
21180 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21182 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21184 + move-result v3
21186 + const-string v4, "line1Number"
21188 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21190 + :goto_27
21191 + return-object v5
21193 + :cond_28
21194 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
21196 + move-result-object v5
21198 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21200 + const/4 v3, 0x0
21202 + const-string v4, "line1Number"
21204 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21206 + goto :goto_27
21207 +.end method
21209 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
21210 + .registers 4
21212 + and-int/lit8 v0, p2, 0x10
21214 + if-nez v0, :cond_8
21216 + and-int/lit8 v0, p2, 0x20
21218 + if-eqz v0, :cond_21
21220 + :cond_8
21221 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21223 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
21225 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21227 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21229 + move-result-object v0
21231 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
21233 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21235 + move-result v0
21237 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setUid(I)V
21239 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21241 + :goto_20
21242 + return-void
21244 + :cond_21
21245 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21247 + goto :goto_20
21248 +.end method
21249 diff -Npru stock_framework/smali/android/server/BluetoothService.smali pdroid_framework/smali/android/server/BluetoothService.smali
21250 --- stock_framework/smali/android/server/BluetoothService.smali 2012-07-02 10:16:19.135420101 -0700
21251 +++ pdroid_framework/smali/android/server/BluetoothService.smali 2012-07-02 10:16:51.447116157 -0700
21252 @@ -2367,9 +2367,9 @@
21254 invoke-direct {v4, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
21255 :try_end_19
21256 - .catchall {:try_start_d .. :try_end_19} :catchall_83
21257 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_63
21258 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_73
21259 + .catchall {:try_start_d .. :try_end_19} :catchall_7e
21260 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_60
21261 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_70
21263 const/16 v7, 0x11
21265 @@ -2396,9 +2396,9 @@
21267 sget-object v5, Landroid/server/BluetoothService;->mDockAddress:Ljava/lang/String;
21268 :try_end_33
21269 - .catchall {:try_start_1b .. :try_end_33} :catchall_8c
21270 - .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_92
21271 - .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8f
21272 + .catchall {:try_start_1b .. :try_end_33} :catchall_89
21273 + .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_8f
21274 + .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8c
21276 if-eqz v4, :cond_a
21278 @@ -2439,18 +2439,20 @@
21280 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21281 :try_end_53
21282 - .catchall {:try_start_3b .. :try_end_53} :catchall_8c
21283 - .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_92
21284 - .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8f
21285 + .catchall {:try_start_3b .. :try_end_53} :catchall_89
21286 + .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_8f
21287 + .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8c
21289 - if-eqz v4, :cond_95
21290 + if-eqz v4, :cond_58
21292 :try_start_55
21293 invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
21294 :try_end_58
21295 .catchall {:try_start_55 .. :try_end_58} :catchall_5d
21296 - .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_60
21297 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_87
21299 + :cond_58
21300 + :goto_58
21301 move-object v3, v4
21303 :cond_59
21304 @@ -2472,117 +2474,105 @@
21305 throw v5
21307 :catch_60
21308 - move-exception v7
21310 - move-object v3, v4
21312 - goto :goto_59
21314 - :catch_63
21315 move-exception v2
21317 - :goto_64
21318 - :try_start_64
21319 + :goto_61
21320 + :try_start_61
21321 const-string v7, "BluetoothService"
21323 const-string v8, "FileNotFoundException while trying to read dock address"
21325 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21326 - :try_end_6b
21327 - .catchall {:try_start_64 .. :try_end_6b} :catchall_83
21328 + :try_end_68
21329 + .catchall {:try_start_61 .. :try_end_68} :catchall_7e
21331 if-eqz v3, :cond_59
21333 - :try_start_6d
21334 + :try_start_6a
21335 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21336 - :try_end_70
21337 - .catchall {:try_start_6d .. :try_end_70} :catchall_5d
21338 - .catch Ljava/io/IOException; {:try_start_6d .. :try_end_70} :catch_71
21339 + :try_end_6d
21340 + .catchall {:try_start_6a .. :try_end_6d} :catchall_5d
21341 + .catch Ljava/io/IOException; {:try_start_6a .. :try_end_6d} :catch_6e
21343 goto :goto_59
21345 - :catch_71
21346 + :catch_6e
21347 move-exception v7
21349 goto :goto_59
21351 - :catch_73
21352 + :catch_70
21353 move-exception v2
21355 - :goto_74
21356 - :try_start_74
21357 + :goto_71
21358 + :try_start_71
21359 const-string v7, "BluetoothService"
21361 const-string v8, "IOException while trying to read dock address"
21363 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21364 - :try_end_7b
21365 - .catchall {:try_start_74 .. :try_end_7b} :catchall_83
21366 + :try_end_78
21367 + .catchall {:try_start_71 .. :try_end_78} :catchall_7e
21369 if-eqz v3, :cond_59
21371 - :try_start_7d
21372 + :try_start_7a
21373 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21374 - :try_end_80
21375 - .catchall {:try_start_7d .. :try_end_80} :catchall_5d
21376 - .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81
21378 - goto :goto_59
21380 - :catch_81
21381 - move-exception v7
21382 + :try_end_7d
21383 + .catchall {:try_start_7a .. :try_end_7d} :catchall_5d
21384 + .catch Ljava/io/IOException; {:try_start_7a .. :try_end_7d} :catch_6e
21386 goto :goto_59
21388 - :catchall_83
21389 + :catchall_7e
21390 move-exception v5
21392 - :goto_84
21393 - if-eqz v3, :cond_89
21394 + :goto_7f
21395 + if-eqz v3, :cond_84
21397 - :try_start_86
21398 + :try_start_81
21399 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21400 - :try_end_89
21401 - .catchall {:try_start_86 .. :try_end_89} :catchall_5d
21402 - .catch Ljava/io/IOException; {:try_start_86 .. :try_end_89} :catch_8a
21404 - :cond_89
21405 - :goto_89
21406 - :try_start_89
21407 + :try_end_84
21408 + .catchall {:try_start_81 .. :try_end_84} :catchall_5d
21409 + .catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
21411 + :cond_84
21412 + :goto_84
21413 + :try_start_84
21414 throw v5
21415 - :try_end_8a
21416 - .catchall {:try_start_89 .. :try_end_8a} :catchall_5d
21417 + :try_end_85
21418 + .catchall {:try_start_84 .. :try_end_85} :catchall_5d
21420 - :catch_8a
21421 + :catch_85
21422 move-exception v7
21424 - goto :goto_89
21425 + goto :goto_84
21427 + :catch_87
21428 + move-exception v7
21430 - :catchall_8c
21431 + goto :goto_58
21433 + :catchall_89
21434 move-exception v5
21436 move-object v3, v4
21438 - goto :goto_84
21439 + goto :goto_7f
21441 - :catch_8f
21442 + :catch_8c
21443 move-exception v2
21445 move-object v3, v4
21447 - goto :goto_74
21448 + goto :goto_71
21450 - :catch_92
21451 + :catch_8f
21452 move-exception v2
21454 move-object v3, v4
21456 - goto :goto_64
21458 - :cond_95
21459 - move-object v3, v4
21461 - goto :goto_59
21462 + goto :goto_61
21463 .end method
21465 .method private readIncomingConnectionState()V
21466 @@ -2601,9 +2591,9 @@
21468 invoke-direct {v3, v9}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
21469 :try_end_b
21470 - .catchall {:try_start_4 .. :try_end_b} :catchall_a2
21471 - .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b9
21472 - .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7f
21473 + .catchall {:try_start_4 .. :try_end_b} :catchall_9f
21474 + .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b6
21475 + .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7c
21477 :try_start_b
21478 new-instance v4, Ljava/io/DataInputStream;
21479 @@ -2678,9 +2668,9 @@
21481 invoke-virtual {v9, v11, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
21482 :try_end_51
21483 - .catchall {:try_start_b .. :try_end_51} :catchall_b3
21484 + .catchall {:try_start_b .. :try_end_51} :catchall_b0
21485 .catch Ljava/io/FileNotFoundException; {:try_start_b .. :try_end_51} :catch_52
21486 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b6
21487 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b3
21489 goto :goto_1a
21491 @@ -2715,50 +2705,45 @@
21493 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21494 :try_end_6e
21495 - .catchall {:try_start_54 .. :try_end_6e} :catchall_a2
21496 + .catchall {:try_start_54 .. :try_end_6e} :catchall_9f
21498 if-eqz v2, :cond_73
21500 :try_start_70
21501 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21502 :try_end_73
21503 - .catchall {:try_start_70 .. :try_end_73} :catchall_a9
21504 - .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_ac
21505 + .catchall {:try_start_70 .. :try_end_73} :catchall_a6
21506 + .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_9d
21508 :cond_73
21509 :goto_73
21510 :try_start_73
21511 monitor-exit v10
21512 :try_end_74
21513 - .catchall {:try_start_73 .. :try_end_74} :catchall_a9
21514 + .catchall {:try_start_73 .. :try_end_74} :catchall_a6
21516 return-void
21518 :cond_75
21519 - if-eqz v3, :cond_bb
21520 + if-eqz v3, :cond_7a
21522 :try_start_77
21523 invoke-virtual {v3}, Ljava/io/FileInputStream;->close()V
21524 :try_end_7a
21525 - .catchall {:try_start_77 .. :try_end_7a} :catchall_b0
21526 - .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_7c
21527 + .catchall {:try_start_77 .. :try_end_7a} :catchall_ad
21528 + .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_ab
21530 + :cond_7a
21531 + :goto_7a
21532 move-object v2, v3
21534 goto :goto_73
21536 :catch_7c
21537 - move-exception v9
21539 - move-object v2, v3
21541 - goto :goto_73
21543 - :catch_7f
21544 move-exception v0
21546 - :goto_80
21547 - :try_start_80
21548 + :goto_7d
21549 + :try_start_7d
21550 new-instance v9, Ljava/lang/StringBuilder;
21552 invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
21553 @@ -2782,91 +2767,86 @@
21554 move-result-object v9
21556 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21557 - :try_end_9a
21558 - .catchall {:try_start_80 .. :try_end_9a} :catchall_a2
21559 + :try_end_97
21560 + .catchall {:try_start_7d .. :try_end_97} :catchall_9f
21562 if-eqz v2, :cond_73
21564 - :try_start_9c
21565 + :try_start_99
21566 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21567 - :try_end_9f
21568 - .catchall {:try_start_9c .. :try_end_9f} :catchall_a9
21569 - .catch Ljava/io/IOException; {:try_start_9c .. :try_end_9f} :catch_a0
21570 + :try_end_9c
21571 + .catchall {:try_start_99 .. :try_end_9c} :catchall_a6
21572 + .catch Ljava/io/IOException; {:try_start_99 .. :try_end_9c} :catch_9d
21574 goto :goto_73
21576 - :catch_a0
21577 + :catch_9d
21578 move-exception v9
21580 goto :goto_73
21582 - :catchall_a2
21583 + :catchall_9f
21584 move-exception v9
21586 - :goto_a3
21587 - if-eqz v2, :cond_a8
21588 + :goto_a0
21589 + if-eqz v2, :cond_a5
21591 - :try_start_a5
21592 + :try_start_a2
21593 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21594 - :try_end_a8
21595 - .catchall {:try_start_a5 .. :try_end_a8} :catchall_a9
21596 - .catch Ljava/io/IOException; {:try_start_a5 .. :try_end_a8} :catch_ae
21597 + :try_end_a5
21598 + .catchall {:try_start_a2 .. :try_end_a5} :catchall_a6
21599 + .catch Ljava/io/IOException; {:try_start_a2 .. :try_end_a5} :catch_a9
21601 - :cond_a8
21602 - :goto_a8
21603 - :try_start_a8
21604 + :cond_a5
21605 + :goto_a5
21606 + :try_start_a5
21607 throw v9
21609 - :catchall_a9
21610 + :catchall_a6
21611 move-exception v9
21613 - :goto_aa
21614 + :goto_a7
21615 monitor-exit v10
21616 - :try_end_ab
21617 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_a9
21618 + :try_end_a8
21619 + .catchall {:try_start_a5 .. :try_end_a8} :catchall_a6
21621 throw v9
21623 - :catch_ac
21624 - move-exception v9
21625 + :catch_a9
21626 + move-exception v11
21628 - goto :goto_73
21629 + goto :goto_a5
21631 - :catch_ae
21632 - move-exception v11
21633 + :catch_ab
21634 + move-exception v9
21636 - goto :goto_a8
21637 + goto :goto_7a
21639 - :catchall_b0
21640 + :catchall_ad
21641 move-exception v9
21643 move-object v2, v3
21645 - goto :goto_aa
21646 + goto :goto_a7
21648 - :catchall_b3
21649 + :catchall_b0
21650 move-exception v9
21652 move-object v2, v3
21654 - goto :goto_a3
21655 + goto :goto_a0
21657 - :catch_b6
21658 + :catch_b3
21659 move-exception v0
21661 move-object v2, v3
21663 - goto :goto_80
21664 + goto :goto_7d
21666 - :catch_b9
21667 + :catch_b6
21668 move-exception v0
21670 goto :goto_54
21672 - :cond_bb
21673 - move-object v2, v3
21675 - goto :goto_73
21676 .end method
21678 .method private registerForAirplaneMode(Landroid/content/IntentFilter;)V
21679 @@ -3164,26 +3144,28 @@
21681 invoke-direct {v2, v3, v4}, Ljava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V
21682 :try_end_b
21683 - .catchall {:try_start_1 .. :try_end_b} :catchall_60
21684 - .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_1a
21685 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3d
21686 + .catchall {:try_start_1 .. :try_end_b} :catchall_5b
21687 + .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_17
21688 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3a
21690 const-wide/16 v3, 0x0
21692 :try_start_d
21693 invoke-virtual {v2, v3, v4}, Ljava/io/RandomAccessFile;->setLength(J)V
21694 :try_end_10
21695 - .catchall {:try_start_d .. :try_end_10} :catchall_69
21696 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6f
21697 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_6c
21698 + .catchall {:try_start_d .. :try_end_10} :catchall_66
21699 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6c
21700 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_69
21702 - if-eqz v2, :cond_72
21703 + if-eqz v2, :cond_15
21705 :try_start_12
21706 invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V
21707 :try_end_15
21708 - .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_17
21709 + .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_64
21711 + :cond_15
21712 + :goto_15
21713 move-object v1, v2
21715 :cond_16
21716 @@ -3191,17 +3173,10 @@
21717 return-void
21719 :catch_17
21720 - move-exception v3
21722 - move-object v1, v2
21724 - goto :goto_16
21726 - :catch_1a
21727 move-exception v0
21729 - :goto_1b
21730 - :try_start_1b
21731 + :goto_18
21732 + :try_start_18
21733 new-instance v3, Ljava/lang/StringBuilder;
21735 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21736 @@ -3225,28 +3200,28 @@
21737 move-result-object v3
21739 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21740 - :try_end_35
21741 - .catchall {:try_start_1b .. :try_end_35} :catchall_60
21742 + :try_end_32
21743 + .catchall {:try_start_18 .. :try_end_32} :catchall_5b
21745 if-eqz v1, :cond_16
21747 - :try_start_37
21748 + :try_start_34
21749 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21750 - :try_end_3a
21751 - .catch Ljava/io/IOException; {:try_start_37 .. :try_end_3a} :catch_3b
21752 + :try_end_37
21753 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_37} :catch_38
21755 goto :goto_16
21757 - :catch_3b
21758 + :catch_38
21759 move-exception v3
21761 goto :goto_16
21763 - :catch_3d
21764 + :catch_3a
21765 move-exception v0
21767 - :goto_3e
21768 - :try_start_3e
21769 + :goto_3b
21770 + :try_start_3b
21771 new-instance v3, Ljava/lang/StringBuilder;
21773 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21774 @@ -3270,68 +3245,63 @@
21775 move-result-object v3
21777 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21778 - :try_end_58
21779 - .catchall {:try_start_3e .. :try_end_58} :catchall_60
21780 + :try_end_55
21781 + .catchall {:try_start_3b .. :try_end_55} :catchall_5b
21783 if-eqz v1, :cond_16
21785 - :try_start_5a
21786 + :try_start_57
21787 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21788 - :try_end_5d
21789 - .catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
21791 - goto :goto_16
21793 - :catch_5e
21794 - move-exception v3
21795 + :try_end_5a
21796 + .catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_38
21798 goto :goto_16
21800 - :catchall_60
21801 + :catchall_5b
21802 move-exception v3
21804 - :goto_61
21805 - if-eqz v1, :cond_66
21806 + :goto_5c
21807 + if-eqz v1, :cond_61
21809 - :try_start_63
21810 + :try_start_5e
21811 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21812 - :try_end_66
21813 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67
21814 + :try_end_61
21815 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
21817 - :cond_66
21818 - :goto_66
21819 + :cond_61
21820 + :goto_61
21821 throw v3
21823 - :catch_67
21824 + :catch_62
21825 move-exception v4
21827 - goto :goto_66
21828 + goto :goto_61
21830 - :catchall_69
21831 + :catch_64
21832 move-exception v3
21834 - move-object v1, v2
21836 - goto :goto_61
21837 + goto :goto_15
21839 - :catch_6c
21840 - move-exception v0
21841 + :catchall_66
21842 + move-exception v3
21844 move-object v1, v2
21846 - goto :goto_3e
21847 + goto :goto_5c
21849 - :catch_6f
21850 + :catch_69
21851 move-exception v0
21853 move-object v1, v2
21855 - goto :goto_1b
21856 + goto :goto_3b
21858 + :catch_6c
21859 + move-exception v0
21861 - :cond_72
21862 move-object v1, v2
21864 - goto :goto_16
21865 + goto :goto_18
21866 .end method
21868 .method private updateCountersAndCheckForConnectionStateChange(II)Z
21869 @@ -3784,17 +3754,17 @@
21871 invoke-virtual {v2, v6}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
21872 :try_end_36
21873 - .catchall {:try_start_10 .. :try_end_36} :catchall_70
21874 - .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_76
21875 - .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_73
21876 + .catchall {:try_start_10 .. :try_end_36} :catchall_6e
21877 + .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_74
21878 + .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_71
21880 if-eqz v2, :cond_3b
21882 :try_start_38
21883 invoke-virtual {v2}, Ljava/io/BufferedWriter;->close()V
21884 :try_end_3b
21885 - .catchall {:try_start_38 .. :try_end_3b} :catchall_79
21886 - .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6a
21887 + .catchall {:try_start_38 .. :try_end_3b} :catchall_77
21888 + .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6c
21890 :cond_3b
21891 :goto_3b
21892 @@ -3824,7 +3794,7 @@
21893 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21894 :try_end_4b
21895 .catchall {:try_start_48 .. :try_end_4b} :catchall_67
21896 - .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_6c
21897 + .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_5e
21899 :cond_4b
21900 :goto_4b
21901 @@ -3877,7 +3847,7 @@
21902 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21903 :try_end_66
21904 .catchall {:try_start_63 .. :try_end_66} :catchall_67
21905 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6e
21906 + .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6a
21908 :cond_66
21909 :goto_66
21910 @@ -3897,40 +3867,35 @@
21911 :catch_6a
21912 move-exception v5
21914 - goto :goto_3b
21915 + goto :goto_66
21917 :catch_6c
21918 - move-exception v4
21920 - goto :goto_4b
21922 - :catch_6e
21923 move-exception v5
21925 - goto :goto_66
21926 + goto :goto_3b
21928 - :catchall_70
21929 + :catchall_6e
21930 move-exception v4
21932 move-object v1, v2
21934 goto :goto_61
21936 - :catch_73
21937 + :catch_71
21938 move-exception v0
21940 move-object v1, v2
21942 goto :goto_51
21944 - :catch_76
21945 + :catch_74
21946 move-exception v0
21948 move-object v1, v2
21950 goto :goto_3f
21952 - :catchall_79
21953 + :catchall_77
21954 move-exception v4
21956 move-object v1, v2
21957 @@ -4865,8 +4830,8 @@
21959 invoke-interface {v4}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOff()V
21960 :try_end_47
21961 - .catchall {:try_start_42 .. :try_end_47} :catchall_51
21962 - .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_4c
21963 + .catchall {:try_start_42 .. :try_end_47} :catchall_4c
21964 + .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_51
21966 :try_start_47
21967 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21968 @@ -4878,22 +4843,22 @@
21970 return-void
21972 - :catch_4c
21973 + :catchall_4c
21974 move-exception v4
21976 :try_start_4d
21977 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21979 - goto :goto_4a
21980 + throw v4
21982 - :catchall_51
21983 + :catch_51
21984 move-exception v4
21986 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21987 + :try_end_55
21988 + .catchall {:try_start_4d .. :try_end_55} :catchall_24
21990 - throw v4
21991 - :try_end_56
21992 - .catchall {:try_start_4d .. :try_end_56} :catchall_24
21993 + goto :goto_4a
21994 .end method
21996 .method clearApplicationStateChangeTracker()V
21997 @@ -9245,12 +9210,12 @@
21999 invoke-interface {v3}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOn()V
22000 :try_end_c
22001 - .catchall {:try_start_7 .. :try_end_c} :catchall_1c
22002 + .catchall {:try_start_7 .. :try_end_c} :catchall_19
22003 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_c} :catch_10
22005 + :goto_c
22006 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22008 - :goto_f
22009 return-void
22011 :catch_10
22012 @@ -9263,13 +9228,11 @@
22014 invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22015 :try_end_18
22016 - .catchall {:try_start_11 .. :try_end_18} :catchall_1c
22018 - invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22019 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
22021 - goto :goto_f
22022 + goto :goto_c
22024 - :catchall_1c
22025 + :catchall_19
22026 move-exception v3
22028 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22029 @@ -11420,7 +11383,7 @@
22031 invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
22032 :try_end_11
22033 - .catchall {:try_start_3 .. :try_end_11} :catchall_bf
22034 + .catchall {:try_start_3 .. :try_end_11} :catchall_bc
22036 :try_start_11
22037 new-instance v4, Ljava/io/BufferedWriter;
22038 @@ -11435,9 +11398,9 @@
22040 invoke-direct {v4, v7}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
22041 :try_end_1e
22042 - .catchall {:try_start_11 .. :try_end_1e} :catchall_b8
22043 - .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_cc
22044 - .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_95
22045 + .catchall {:try_start_11 .. :try_end_1e} :catchall_b5
22046 + .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_c9
22047 + .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_92
22049 :try_start_1e
22050 iget-object v7, p0, Landroid/server/BluetoothService;->mIncomingConnections:Ljava/util/HashMap;
22051 @@ -11501,9 +11464,9 @@
22053 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22054 :try_end_60
22055 - .catchall {:try_start_1e .. :try_end_60} :catchall_c6
22056 + .catchall {:try_start_1e .. :try_end_60} :catchall_c3
22057 .catch Ljava/io/FileNotFoundException; {:try_start_1e .. :try_end_60} :catch_61
22058 - .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c9
22059 + .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c6
22061 goto :goto_28
22063 @@ -11538,22 +11501,22 @@
22065 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22066 :try_end_7d
22067 - .catchall {:try_start_63 .. :try_end_7d} :catchall_b8
22068 + .catchall {:try_start_63 .. :try_end_7d} :catchall_b5
22070 if-eqz v3, :cond_82
22072 :try_start_7f
22073 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22074 :try_end_82
22075 - .catchall {:try_start_7f .. :try_end_82} :catchall_bf
22076 - .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_c2
22077 + .catchall {:try_start_7f .. :try_end_82} :catchall_bc
22078 + .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_b3
22080 :cond_82
22081 :goto_82
22082 :try_start_82
22083 monitor-exit v8
22084 :try_end_83
22085 - .catchall {:try_start_82 .. :try_end_83} :catchall_bf
22086 + .catchall {:try_start_82 .. :try_end_83} :catchall_bc
22088 return-void
22090 @@ -11565,34 +11528,29 @@
22092 invoke-virtual {v4, v7}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22093 :try_end_8b
22094 - .catchall {:try_start_84 .. :try_end_8b} :catchall_c6
22095 + .catchall {:try_start_84 .. :try_end_8b} :catchall_c3
22096 .catch Ljava/io/FileNotFoundException; {:try_start_84 .. :try_end_8b} :catch_61
22097 - .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c9
22098 + .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c6
22100 - if-eqz v4, :cond_ce
22101 + if-eqz v4, :cond_90
22103 :try_start_8d
22104 invoke-virtual {v4}, Ljava/io/BufferedWriter;->close()V
22105 :try_end_90
22106 - .catchall {:try_start_8d .. :try_end_90} :catchall_bf
22107 - .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_92
22108 + .catchall {:try_start_8d .. :try_end_90} :catchall_bc
22109 + .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_c1
22111 + :cond_90
22112 + :goto_90
22113 move-object v3, v4
22115 goto :goto_82
22117 :catch_92
22118 - move-exception v7
22120 - move-object v3, v4
22122 - goto :goto_82
22124 - :catch_95
22125 move-exception v1
22127 - :goto_96
22128 - :try_start_96
22129 + :goto_93
22130 + :try_start_93
22131 new-instance v7, Ljava/lang/StringBuilder;
22133 invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
22134 @@ -11616,81 +11574,76 @@
22135 move-result-object v7
22137 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22138 - :try_end_b0
22139 - .catchall {:try_start_96 .. :try_end_b0} :catchall_b8
22140 + :try_end_ad
22141 + .catchall {:try_start_93 .. :try_end_ad} :catchall_b5
22143 if-eqz v3, :cond_82
22145 - :try_start_b2
22146 + :try_start_af
22147 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22148 - :try_end_b5
22149 - .catchall {:try_start_b2 .. :try_end_b5} :catchall_bf
22150 - .catch Ljava/io/IOException; {:try_start_b2 .. :try_end_b5} :catch_b6
22151 + :try_end_b2
22152 + .catchall {:try_start_af .. :try_end_b2} :catchall_bc
22153 + .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_b3
22155 goto :goto_82
22157 - :catch_b6
22158 + :catch_b3
22159 move-exception v7
22161 goto :goto_82
22163 - :catchall_b8
22164 + :catchall_b5
22165 move-exception v7
22167 - :goto_b9
22168 - if-eqz v3, :cond_be
22169 + :goto_b6
22170 + if-eqz v3, :cond_bb
22172 - :try_start_bb
22173 + :try_start_b8
22174 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22175 - :try_end_be
22176 - .catchall {:try_start_bb .. :try_end_be} :catchall_bf
22177 - .catch Ljava/io/IOException; {:try_start_bb .. :try_end_be} :catch_c4
22178 + :try_end_bb
22179 + .catchall {:try_start_b8 .. :try_end_bb} :catchall_bc
22180 + .catch Ljava/io/IOException; {:try_start_b8 .. :try_end_bb} :catch_bf
22182 - :cond_be
22183 - :goto_be
22184 - :try_start_be
22185 + :cond_bb
22186 + :goto_bb
22187 + :try_start_bb
22188 throw v7
22190 - :catchall_bf
22191 + :catchall_bc
22192 move-exception v7
22194 monitor-exit v8
22195 - :try_end_c1
22196 - .catchall {:try_start_be .. :try_end_c1} :catchall_bf
22197 + :try_end_be
22198 + .catchall {:try_start_bb .. :try_end_be} :catchall_bc
22200 throw v7
22202 - :catch_c2
22203 - move-exception v7
22204 + :catch_bf
22205 + move-exception v9
22207 - goto :goto_82
22208 + goto :goto_bb
22210 - :catch_c4
22211 - move-exception v9
22212 + :catch_c1
22213 + move-exception v7
22215 - goto :goto_be
22216 + goto :goto_90
22218 - :catchall_c6
22219 + :catchall_c3
22220 move-exception v7
22222 move-object v3, v4
22224 - goto :goto_b9
22225 + goto :goto_b6
22227 - :catch_c9
22228 + :catch_c6
22229 move-exception v1
22231 move-object v3, v4
22233 - goto :goto_96
22234 + goto :goto_93
22236 - :catch_cc
22237 + :catch_c9
22238 move-exception v1
22240 goto :goto_63
22242 - :cond_ce
22243 - move-object v3, v4
22245 - goto :goto_82
22246 .end method
22247 diff -Npru stock_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali pdroid_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali
22248 --- stock_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-07-02 10:16:19.159425818 -0700
22249 +++ pdroid_framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-07-02 10:16:51.468121160 -0700
22250 @@ -161,25 +161,23 @@
22252 invoke-interface {v1, v2}, Lcom/android/internal/textservice/ISpellCheckerSessionListener;->onGetSuggestions([Landroid/view/textservice/SuggestionsInfo;)V
22253 :try_end_18
22254 - .catchall {:try_start_a .. :try_end_18} :catchall_21
22255 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_1c
22256 + .catchall {:try_start_a .. :try_end_18} :catchall_1c
22257 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_21
22259 + :goto_18
22260 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22262 - :goto_1b
22263 return-void
22265 - :catch_1c
22266 + :catchall_1c
22267 move-exception v1
22269 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22271 - goto :goto_1b
22272 + throw v1
22274 - :catchall_21
22275 + :catch_21
22276 move-exception v1
22278 - invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22280 - throw v1
22281 + goto :goto_18
22282 .end method
22283 diff -Npru stock_framework/smali/android/telephony/PhoneStateListener$1.smali pdroid_framework/smali/android/telephony/PhoneStateListener$1.smali
22284 --- stock_framework/smali/android/telephony/PhoneStateListener$1.smali 2012-07-02 10:16:19.331466795 -0700
22285 +++ pdroid_framework/smali/android/telephony/PhoneStateListener$1.smali 2012-07-02 10:16:51.590150228 -0700
22286 @@ -64,47 +64,317 @@
22287 .end method
22289 .method public onCallStateChanged(ILjava/lang/String;)V
22290 - .registers 6
22291 + .registers 19
22293 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22294 + move-object/from16 v0, p0
22296 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22297 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22299 - const/16 v1, 0x20
22300 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22301 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22303 - const/4 v2, 0x0
22304 + move-result-object v3
22306 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22307 + if-eqz v3, :cond_99
22309 - move-result-object v0
22310 + if-eqz p2, :cond_99
22312 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
22313 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
22315 + move-result v3
22317 + if-nez v3, :cond_99
22319 + move-object/from16 v0, p0
22321 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22323 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22324 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22326 + move-result-object v3
22328 + const-string/jumbo v4, "privacy"
22330 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22332 + move-result-object v2
22334 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
22336 + move-object/from16 v0, p0
22338 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22340 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22341 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22343 + move-result-object v3
22345 + move-object/from16 v0, p0
22347 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22349 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22350 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22352 + move-result v4
22354 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22356 + move-result-object v8
22358 + if-eqz v8, :cond_6a
22360 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
22362 + move-result v3
22364 + if-eqz v3, :cond_6a
22366 + const-string v7, ""
22368 + move-object/from16 v0, p0
22370 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22372 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22374 + const/16 v4, 0x20
22376 + const/4 v5, 0x0
22378 + move/from16 v0, p1
22380 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22382 + move-result-object v3
22384 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22386 + move-object/from16 v0, p0
22388 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22390 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22391 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22393 + move-result-object v3
22395 + move-object/from16 v0, p0
22397 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22399 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22400 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22402 + move-result v4
22404 + const/4 v5, 0x1
22406 + const-string v6, "incomingCall"
22408 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22410 + :goto_69
22411 return-void
22413 + :cond_6a
22414 + move-object/from16 v0, p0
22416 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22418 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22420 + const/16 v4, 0x20
22422 + const/4 v5, 0x0
22424 + move/from16 v0, p1
22426 + move-object/from16 v1, p2
22428 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22430 + move-result-object v3
22432 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22434 + move-object/from16 v0, p0
22436 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22438 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22439 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22441 + move-result-object v10
22443 + move-object/from16 v0, p0
22445 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22447 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22448 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22450 + move-result v11
22452 + const/4 v12, 0x0
22454 + const-string v13, "incomingCall"
22456 + move-object v9, v2
22458 + move-object/from16 v14, p2
22460 + move-object v15, v8
22462 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22464 + goto :goto_69
22466 + :cond_99
22467 + move-object/from16 v0, p0
22469 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22471 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22473 + const/16 v4, 0x20
22475 + const/4 v5, 0x0
22477 + move/from16 v0, p1
22479 + move-object/from16 v1, p2
22481 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22483 + move-result-object v3
22485 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22487 + goto :goto_69
22488 .end method
22490 .method public onCellLocationChanged(Landroid/os/Bundle;)V
22491 - .registers 6
22492 + .registers 10
22494 + const/4 v5, 0x0
22496 const/4 v3, 0x0
22498 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
22500 + move-result-object v7
22502 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22504 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22505 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22507 + move-result-object v1
22509 + if-eqz v1, :cond_4a
22511 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22513 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22514 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22516 + move-result-object v1
22518 + const-string/jumbo v2, "privacy"
22520 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22522 move-result-object v0
22524 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
22526 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22528 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22529 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22531 + move-result-object v1
22533 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22535 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22536 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22538 + move-result v2
22540 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22542 + move-result-object v6
22544 + if-eqz v6, :cond_4b
22546 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22548 + move-result v1
22550 + if-eqz v1, :cond_4b
22552 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22554 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22555 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22557 + move-result-object v1
22559 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22561 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22562 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22564 + move-result v2
22566 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22568 + move-result v3
22570 + const-string v4, "locationNetwork"
22572 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22574 + :cond_4a
22575 + :goto_4a
22576 + return-void
22578 + :cond_4b
22579 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22581 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22583 const/16 v2, 0x10
22585 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22586 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22588 move-result-object v1
22590 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
22592 - return-void
22593 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22595 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22596 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22598 + move-result-object v1
22600 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22602 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22603 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22605 + move-result v2
22607 + const-string v4, "locationNetwork"
22609 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22611 + goto :goto_4a
22612 .end method
22614 .method public onDataActivity(I)V
22615 diff -Npru stock_framework/smali/android/telephony/PhoneStateListener.smali pdroid_framework/smali/android/telephony/PhoneStateListener.smali
22616 --- stock_framework/smali/android/telephony/PhoneStateListener.smali 2012-07-02 10:16:17.075929573 -0700
22617 +++ pdroid_framework/smali/android/telephony/PhoneStateListener.smali 2012-07-02 10:16:49.424634434 -0700
22618 @@ -29,12 +29,20 @@
22620 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
22622 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
22625 # instance fields
22626 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
22628 +.field private context:Landroid/content/Context;
22630 .field mHandler:Landroid/os/Handler;
22632 +.field private packageName:Ljava/lang/String;
22634 +.field private uid:I
22637 # direct methods
22638 .method public constructor <init>()V
22639 @@ -57,6 +65,30 @@
22640 return-void
22641 .end method
22643 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22644 + .registers 2
22646 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22648 + return-object v0
22649 +.end method
22651 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22652 + .registers 2
22654 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22656 + return-object v0
22657 +.end method
22659 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
22660 + .registers 2
22662 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
22664 + return v0
22665 +.end method
22668 # virtual methods
22669 .method public onCallForwardingIndicatorChanged(Z)V
22670 @@ -126,3 +158,27 @@
22672 return-void
22673 .end method
22675 +.method public setContext(Landroid/content/Context;)V
22676 + .registers 2
22678 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22680 + return-void
22681 +.end method
22683 +.method public setPackageName(Ljava/lang/String;)V
22684 + .registers 2
22686 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22688 + return-void
22689 +.end method
22691 +.method public setUid(I)V
22692 + .registers 2
22694 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
22696 + return-void
22697 +.end method
22698 diff -Npru stock_framework/smali/android/view/accessibility/AccessibilityManager.smali pdroid_framework/smali/android/view/accessibility/AccessibilityManager.smali
22699 --- stock_framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-07-02 10:16:20.080645234 -0700
22700 +++ pdroid_framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-07-02 10:16:52.248306988 -0700
22701 @@ -637,15 +637,15 @@
22703 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22704 :try_end_21
22705 - .catchall {:try_start_d .. :try_end_21} :catchall_4c
22706 + .catchall {:try_start_d .. :try_end_21} :catchall_49
22707 .catch Landroid/os/RemoteException; {:try_start_d .. :try_end_21} :catch_27
22709 if-eqz v0, :cond_26
22711 + :goto_23
22712 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22714 :cond_26
22715 - :goto_26
22716 return-void
22718 :catch_27
22719 @@ -680,21 +680,19 @@
22721 invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22722 :try_end_46
22723 - .catchall {:try_start_28 .. :try_end_46} :catchall_4c
22724 + .catchall {:try_start_28 .. :try_end_46} :catchall_49
22726 if-eqz v0, :cond_26
22728 - invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22730 - goto :goto_26
22731 + goto :goto_23
22733 - :catchall_4c
22734 + :catchall_49
22735 move-exception v4
22737 - if-eqz v0, :cond_52
22738 + if-eqz v0, :cond_4f
22740 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22742 - :cond_52
22743 + :cond_4f
22744 throw v4
22745 .end method
22746 diff -Npru stock_framework/smali/android/view/SurfaceView.smali pdroid_framework/smali/android/view/SurfaceView.smali
22747 --- stock_framework/smali/android/view/SurfaceView.smali 2012-07-02 10:16:18.198196877 -0700
22748 +++ pdroid_framework/smali/android/view/SurfaceView.smali 2012-07-02 10:16:50.454879822 -0700
22749 @@ -1342,7 +1342,7 @@
22751 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback;->surfaceDestroyed(Landroid/view/SurfaceHolder;)V
22752 :try_end_29b
22753 - .catchall {:try_start_262 .. :try_end_29b} :catchall_3c6
22754 + .catchall {:try_start_262 .. :try_end_29b} :catchall_3a7
22756 add-int/lit8 v22, v22, 0x1
22758 @@ -1486,7 +1486,7 @@
22760 invoke-virtual {v3, v4}, Landroid/view/Surface;->transferFrom(Landroid/view/Surface;)V
22762 - if-eqz v34, :cond_3a7
22763 + if-eqz v34, :cond_3c6
22765 move-object/from16 v0, p0
22767 @@ -1608,7 +1608,7 @@
22768 goto :goto_35e
22770 :cond_37a
22771 - if-eqz p2, :cond_3a7
22772 + if-eqz p2, :cond_3c6
22774 if-nez v19, :cond_382
22776 @@ -1632,7 +1632,7 @@
22778 move/from16 v1, v23
22780 - if-ge v0, v1, :cond_3a7
22781 + if-ge v0, v1, :cond_3c6
22783 aget-object v18, v17, v22
22785 @@ -1652,81 +1652,81 @@
22787 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback2;->surfaceRedrawNeeded(Landroid/view/SurfaceHolder;)V
22788 :try_end_3a4
22789 - .catchall {:try_start_301 .. :try_end_3a4} :catchall_3c6
22790 + .catchall {:try_start_301 .. :try_end_3a4} :catchall_3a7
22792 :cond_3a4
22793 add-int/lit8 v22, v22, 0x1
22795 goto :goto_38b
22797 - :cond_3a7
22798 - const/4 v3, 0x0
22799 + :catchall_3a7
22800 + move-exception v3
22802 - :try_start_3a8
22803 + const/4 v4, 0x0
22805 + :try_start_3a9
22806 move-object/from16 v0, p0
22808 - iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22809 + iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22811 - if-eqz p2, :cond_3b9
22812 + if-eqz p2, :cond_3ba
22814 move-object/from16 v0, p0
22816 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22817 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22819 move-object/from16 v0, p0
22821 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22822 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22824 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22825 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22827 - :cond_3b9
22828 + :cond_3ba
22829 move-object/from16 v0, p0
22831 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22832 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22834 move-object/from16 v0, p0
22836 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22838 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22839 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22841 - goto/16 :goto_6
22842 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22844 - :catchall_3c6
22845 - move-exception v3
22846 + throw v3
22848 - const/4 v4, 0x0
22849 + :cond_3c6
22850 + const/4 v3, 0x0
22852 move-object/from16 v0, p0
22854 - iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22855 + iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22857 - if-eqz p2, :cond_3d9
22858 + if-eqz p2, :cond_3d8
22860 move-object/from16 v0, p0
22862 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22863 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22865 move-object/from16 v0, p0
22867 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22868 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22870 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22871 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22873 - :cond_3d9
22874 + :cond_3d8
22875 move-object/from16 v0, p0
22877 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22878 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22880 move-object/from16 v0, p0
22882 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22883 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22885 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22886 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22887 + :try_end_3e3
22888 + .catch Landroid/os/RemoteException; {:try_start_3a9 .. :try_end_3e3} :catch_2f6
22890 - throw v3
22891 - :try_end_3e5
22892 - .catch Landroid/os/RemoteException; {:try_start_3a8 .. :try_end_3e5} :catch_2f6
22893 + goto/16 :goto_6
22894 .end method
22897 diff -Npru stock_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali pdroid_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali
22898 --- stock_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-07-02 10:16:19.978620934 -0700
22899 +++ pdroid_framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-07-02 10:16:52.144282211 -0700
22900 @@ -364,7 +364,7 @@
22901 :try_start_13
22902 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22903 :try_end_16
22904 - .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1c
22905 + .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1e
22907 :goto_16
22908 return-void
22909 @@ -375,20 +375,20 @@
22910 :try_start_18
22911 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22912 :try_end_1b
22913 - .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1e
22914 + .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1c
22916 :goto_1b
22917 throw v5
22919 :catch_1c
22920 - move-exception v5
22921 + move-exception v6
22923 - goto :goto_16
22924 + goto :goto_1b
22926 :catch_1e
22927 - move-exception v6
22928 + move-exception v5
22930 - goto :goto_1b
22931 + goto :goto_16
22932 .end method
22934 .method public findAccessibilityNodeInfoByViewIdClientThread(IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22935 @@ -491,7 +491,7 @@
22936 :try_start_1d
22937 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22938 :try_end_20
22939 - .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_26
22940 + .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_28
22942 :goto_20
22943 return-void
22944 @@ -502,20 +502,20 @@
22945 :try_start_22
22946 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22947 :try_end_25
22948 - .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_28
22949 + .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_26
22951 :goto_25
22952 throw v6
22954 :catch_26
22955 - move-exception v6
22956 + move-exception v7
22958 - goto :goto_20
22959 + goto :goto_25
22961 :catch_28
22962 - move-exception v7
22963 + move-exception v6
22965 - goto :goto_25
22966 + goto :goto_20
22967 .end method
22969 .method public findAccessibilityNodeInfosByViewTextClientThread(Ljava/lang/String;IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22970 @@ -639,7 +639,7 @@
22972 invoke-virtual {v8}, Landroid/view/View;->getVisibility()I
22973 :try_end_2c
22974 - .catchall {:try_start_16 .. :try_end_2c} :catchall_70
22975 + .catchall {:try_start_16 .. :try_end_2c} :catchall_6a
22977 move-result v11
22979 @@ -649,7 +649,7 @@
22980 :try_start_2f
22981 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22982 :try_end_32
22983 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_75
22984 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_46
22986 :goto_32
22987 return-void
22988 @@ -669,7 +669,7 @@
22990 invoke-virtual {v4}, Ljava/util/ArrayList;->isEmpty()Z
22991 :try_end_3f
22992 - .catchall {:try_start_33 .. :try_end_3f} :catchall_70
22993 + .catchall {:try_start_33 .. :try_end_3f} :catchall_6a
22995 move-result v11
22997 @@ -700,7 +700,7 @@
22998 const/4 v5, 0x0
23000 :goto_52
23001 - if-ge v5, v10, :cond_6a
23002 + if-ge v5, v10, :cond_71
23004 invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
23006 @@ -720,46 +720,36 @@
23008 invoke-interface {v6, v11}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23009 :try_end_67
23010 - .catchall {:try_start_48 .. :try_end_67} :catchall_70
23011 + .catchall {:try_start_48 .. :try_end_67} :catchall_6a
23013 :cond_67
23014 add-int/lit8 v5, v5, 0x1
23016 goto :goto_52
23018 - :cond_6a
23019 - :try_start_6a
23020 - invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23021 - :try_end_6d
23022 - .catch Landroid/os/RemoteException; {:try_start_6a .. :try_end_6d} :catch_6e
23023 + :catchall_6a
23024 + move-exception v11
23026 - goto :goto_32
23027 + :try_start_6b
23028 + invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23029 + :try_end_6e
23030 + .catch Landroid/os/RemoteException; {:try_start_6b .. :try_end_6e} :catch_6f
23032 - :catch_6e
23033 - move-exception v11
23034 + :goto_6e
23035 + throw v11
23037 - goto :goto_32
23038 + :catch_6f
23039 + move-exception v12
23041 - :catchall_70
23042 - move-exception v11
23043 + goto :goto_6e
23045 + :cond_71
23046 :try_start_71
23047 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23048 :try_end_74
23049 - .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_77
23051 - :goto_74
23052 - throw v11
23054 - :catch_75
23055 - move-exception v11
23056 + .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_46
23058 goto :goto_32
23060 - :catch_77
23061 - move-exception v12
23063 - goto :goto_74
23064 .end method
23066 .method public performAccessibilityActionClientThread(IIILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23067 @@ -864,7 +854,7 @@
23068 :try_start_17
23069 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23070 :try_end_1a
23071 - .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_34
23072 + .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_36
23074 :goto_1a
23075 return-void
23076 @@ -906,20 +896,20 @@
23077 :try_start_30
23078 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23079 :try_end_33
23080 - .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_36
23081 + .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_34
23083 :goto_33
23084 throw v6
23086 :catch_34
23087 - move-exception v6
23088 + move-exception v7
23090 - goto :goto_1a
23091 + goto :goto_33
23093 :catch_36
23094 - move-exception v7
23095 + move-exception v6
23097 - goto :goto_33
23098 + goto :goto_1a
23100 :pswitch_data_38
23101 .packed-switch 0x1
23102 diff -Npru stock_framework/smali/android/view/ViewRootImpl$W.smali pdroid_framework/smali/android/view/ViewRootImpl$W.smali
23103 --- stock_framework/smali/android/view/ViewRootImpl$W.smali 2012-07-02 10:16:19.994624746 -0700
23104 +++ pdroid_framework/smali/android/view/ViewRootImpl$W.smali 2012-07-02 10:16:52.161286261 -0700
23105 @@ -301,21 +301,21 @@
23107 invoke-direct {v1, p3}, Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V
23108 :try_end_47
23109 - .catchall {:try_start_42 .. :try_end_47} :catchall_64
23110 - .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_55
23111 + .catchall {:try_start_42 .. :try_end_47} :catchall_5f
23112 + .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_50
23114 :try_start_47
23115 invoke-static {v3, p1, p2, v1}, Landroid/view/ViewDebug;->dispatchCommand(Landroid/view/View;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;)V
23116 :try_end_4a
23117 - .catchall {:try_start_47 .. :try_end_4a} :catchall_70
23118 - .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_73
23119 + .catchall {:try_start_47 .. :try_end_4a} :catchall_6d
23120 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_70
23122 if-eqz v1, :cond_4f
23124 :try_start_4c
23125 invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
23126 :try_end_4f
23127 - .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50
23128 + .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_6b
23130 :cond_4f
23131 :goto_4f
23132 @@ -324,70 +324,69 @@
23133 :catch_50
23134 move-exception v2
23136 + :goto_51
23137 + :try_start_51
23138 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23140 - goto :goto_4f
23142 - :catch_55
23143 - move-exception v2
23145 - :goto_56
23146 - :try_start_56
23147 - invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23148 - :try_end_59
23149 - .catchall {:try_start_56 .. :try_end_59} :catchall_64
23150 + :try_end_54
23151 + .catchall {:try_start_51 .. :try_end_54} :catchall_5f
23153 if-eqz v0, :cond_4f
23155 - :try_start_5b
23156 + :try_start_56
23157 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23158 - :try_end_5e
23159 - .catch Ljava/io/IOException; {:try_start_5b .. :try_end_5e} :catch_5f
23160 + :try_end_59
23161 + .catch Ljava/io/IOException; {:try_start_56 .. :try_end_59} :catch_5a
23163 goto :goto_4f
23165 - :catch_5f
23166 + :catch_5a
23167 move-exception v2
23169 + :goto_5b
23170 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23172 goto :goto_4f
23174 - :catchall_64
23175 + :catchall_5f
23176 move-exception v5
23178 - :goto_65
23179 - if-eqz v0, :cond_6a
23180 + :goto_60
23181 + if-eqz v0, :cond_65
23183 - :try_start_67
23184 + :try_start_62
23185 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23186 - :try_end_6a
23187 - .catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_6b
23188 + :try_end_65
23189 + .catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
23191 - :cond_6a
23192 - :goto_6a
23193 + :cond_65
23194 + :goto_65
23195 throw v5
23197 - :catch_6b
23198 + :catch_66
23199 move-exception v2
23201 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23203 - goto :goto_6a
23204 + goto :goto_65
23206 - :catchall_70
23207 + :catch_6b
23208 + move-exception v2
23210 + goto :goto_5b
23212 + :catchall_6d
23213 move-exception v5
23215 move-object v0, v1
23217 - goto :goto_65
23218 + goto :goto_60
23220 - :catch_73
23221 + :catch_70
23222 move-exception v2
23224 move-object v0, v1
23226 - goto :goto_56
23227 + goto :goto_51
23228 .end method
23230 .method public resized(IILandroid/graphics/Rect;Landroid/graphics/Rect;ZLandroid/content/res/Configuration;)V
23231 diff -Npru stock_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali pdroid_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali
23232 --- stock_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-07-02 10:16:20.319702172 -0700
23233 +++ pdroid_framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-07-02 10:16:52.505368216 -0700
23234 @@ -123,28 +123,26 @@
23236 invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
23237 :try_end_a
23238 - .catchall {:try_start_5 .. :try_end_a} :catchall_11
23239 - .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_d
23240 + .catchall {:try_start_5 .. :try_end_a} :catchall_d
23241 + .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_11
23243 + :goto_a
23244 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23246 :cond_c
23247 - :goto_c
23248 return-void
23250 - :catch_d
23251 + :catchall_d
23252 move-exception v0
23254 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23256 - goto :goto_c
23257 + throw v0
23259 - :catchall_11
23260 + :catch_11
23261 move-exception v0
23263 - iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23265 - throw v0
23266 + goto :goto_a
23267 .end method
23269 .method private releaseQueue()V
23270 diff -Npru stock_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali pdroid_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali
23271 --- stock_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-07-02 10:16:20.398720993 -0700
23272 +++ pdroid_framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-07-02 10:16:52.568383225 -0700
23273 @@ -189,7 +189,7 @@
23275 invoke-interface {v6}, Landroid/database/Cursor;->moveToNext()Z
23276 :try_end_40
23277 - .catchall {:try_start_1e .. :try_end_40} :catchall_57
23278 + .catchall {:try_start_1e .. :try_end_40} :catchall_54
23279 .catch Ljava/lang/IllegalStateException; {:try_start_1e .. :try_end_40} :catch_49
23281 move-result v1
23282 @@ -199,10 +199,10 @@
23283 :cond_43
23284 if-eqz v6, :cond_48
23286 + :goto_45
23287 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23289 :cond_48
23290 - :goto_48
23291 return-void
23293 :catch_49
23294 @@ -215,22 +215,20 @@
23296 invoke-static {v1, v2, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23297 :try_end_51
23298 - .catchall {:try_start_4a .. :try_end_51} :catchall_57
23299 + .catchall {:try_start_4a .. :try_end_51} :catchall_54
23301 if-eqz v6, :cond_48
23303 - invoke-interface {v6}, Landroid/database/Cursor;->close()V
23305 - goto :goto_48
23306 + goto :goto_45
23308 - :catchall_57
23309 + :catchall_54
23310 move-exception v1
23312 - if-eqz v6, :cond_5d
23313 + if-eqz v6, :cond_5a
23315 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23317 - :cond_5d
23318 + :cond_5a
23319 throw v1
23320 .end method
23322 diff -Npru stock_framework/smali/android/webkit/WebView$6.smali pdroid_framework/smali/android/webkit/WebView$6.smali
23323 --- stock_framework/smali/android/webkit/WebView$6.smali 2012-07-02 10:16:20.442731475 -0700
23324 +++ pdroid_framework/smali/android/webkit/WebView$6.smali 2012-07-02 10:16:52.626397043 -0700
23325 @@ -58,8 +58,8 @@
23327 invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
23328 :try_end_8
23329 - .catchall {:try_start_1 .. :try_end_8} :catchall_2c
23330 - .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_20
23331 + .catchall {:try_start_1 .. :try_end_8} :catchall_20
23332 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_2c
23334 :try_start_8
23335 iget-object v2, p0, Landroid/webkit/WebView$6;->val$p:Landroid/graphics/Picture;
23336 @@ -80,7 +80,7 @@
23337 :try_start_16
23338 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23339 :try_end_19
23340 - .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_38
23341 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_3c
23343 :cond_19
23344 :goto_19
23345 @@ -93,7 +93,7 @@
23346 :goto_1f
23347 return-void
23349 - :catch_20
23350 + :catchall_20
23351 move-exception v2
23353 :goto_21
23354 @@ -106,13 +106,13 @@
23356 :cond_26
23357 :goto_26
23358 - iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23359 + iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23361 - invoke-virtual {v2}, Ljava/io/File;->delete()Z
23362 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
23364 - goto :goto_1f
23365 + throw v2
23367 - :catchall_2c
23368 + :catch_2c
23369 move-exception v2
23371 :goto_2d
23372 @@ -121,42 +121,42 @@
23373 :try_start_2f
23374 invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
23375 :try_end_32
23376 - .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_3c
23377 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_38
23379 :cond_32
23380 :goto_32
23381 - iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23382 + iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23384 - invoke-virtual {v3}, Ljava/io/File;->delete()Z
23385 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
23387 - throw v2
23388 + goto :goto_1f
23390 :catch_38
23391 move-exception v2
23393 - goto :goto_19
23394 + goto :goto_32
23396 :catch_3a
23397 - move-exception v2
23398 + move-exception v3
23400 goto :goto_26
23402 :catch_3c
23403 - move-exception v3
23404 + move-exception v2
23406 - goto :goto_32
23407 + goto :goto_19
23409 :catchall_3e
23410 move-exception v2
23412 move-object v0, v1
23414 - goto :goto_2d
23415 + goto :goto_21
23417 :catch_41
23418 move-exception v2
23420 move-object v0, v1
23422 - goto :goto_21
23423 + goto :goto_2d
23424 .end method
23425 diff -Npru stock_framework/smali/android/webkit/WebView$7.smali pdroid_framework/smali/android/webkit/WebView$7.smali
23426 --- stock_framework/smali/android/webkit/WebView$7.smali 2012-07-02 10:16:20.442731475 -0700
23427 +++ pdroid_framework/smali/android/webkit/WebView$7.smali 2012-07-02 10:16:52.626397043 -0700
23428 @@ -72,7 +72,7 @@
23430 invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
23431 :try_end_19
23432 - .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_23
23433 + .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_21
23435 :goto_19
23436 return-void
23437 @@ -85,18 +85,18 @@
23439 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
23440 :try_end_20
23441 - .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_21
23442 + .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_23
23444 :goto_20
23445 throw v1
23447 :catch_21
23448 - move-exception v2
23449 + move-exception v1
23451 - goto :goto_20
23452 + goto :goto_19
23454 :catch_23
23455 - move-exception v1
23456 + move-exception v2
23458 - goto :goto_19
23459 + goto :goto_20
23460 .end method
23461 diff -Npru stock_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali
23462 --- stock_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-07-02 10:16:20.700792940 -0700
23463 +++ pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-07-02 10:16:52.888459462 -0700
23464 @@ -140,7 +140,7 @@
23466 throw v21
23467 :try_end_51
23468 - .catchall {:try_start_19 .. :try_end_51} :catchall_15b
23469 + .catchall {:try_start_19 .. :try_end_51} :catchall_158
23470 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_19 .. :try_end_51} :catch_51
23471 .catch Ljava/io/IOException; {:try_start_19 .. :try_end_51} :catch_ed
23473 @@ -189,7 +189,7 @@
23475 invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23476 :try_end_7c
23477 - .catchall {:try_start_52 .. :try_end_7c} :catchall_15b
23478 + .catchall {:try_start_52 .. :try_end_7c} :catchall_158
23480 if-eqz v4, :cond_3c
23482 @@ -238,7 +238,7 @@
23484 monitor-enter v22
23485 :try_end_a0
23486 - .catchall {:try_start_84 .. :try_end_a0} :catchall_15b
23487 + .catchall {:try_start_84 .. :try_end_a0} :catchall_158
23488 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_84 .. :try_end_a0} :catch_51
23489 .catch Ljava/io/IOException; {:try_start_84 .. :try_end_a0} :catch_ed
23491 @@ -267,7 +267,7 @@
23492 add-int/lit8 v9, v8, -0x1
23494 :goto_b7
23495 - if-ltz v9, :cond_162
23496 + if-ltz v9, :cond_15f
23498 invoke-interface {v7, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
23500 @@ -279,7 +279,7 @@
23502 invoke-interface {v0, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
23503 :try_end_c4
23504 - .catchall {:try_start_a0 .. :try_end_c4} :catchall_1b3
23505 + .catchall {:try_start_a0 .. :try_end_c4} :catchall_1aa
23507 add-int/lit8 v9, v9, -0x1
23509 @@ -315,7 +315,7 @@
23511 move-result v21
23513 - if-nez v21, :cond_120
23514 + if-nez v21, :cond_11d
23516 new-instance v21, Lorg/xmlpull/v1/XmlPullParserException;
23518 @@ -325,7 +325,7 @@
23520 throw v21
23521 :try_end_ed
23522 - .catchall {:try_start_d7 .. :try_end_ed} :catchall_15b
23523 + .catchall {:try_start_d7 .. :try_end_ed} :catchall_158
23524 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_d7 .. :try_end_ed} :catch_51
23525 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_ed} :catch_ed
23527 @@ -372,26 +372,21 @@
23529 invoke-static {v0, v1, v10}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23530 :try_end_116
23531 - .catchall {:try_start_ee .. :try_end_116} :catchall_15b
23532 + .catchall {:try_start_ee .. :try_end_116} :catchall_158
23534 if-eqz v4, :cond_3c
23536 :try_start_118
23537 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23538 :try_end_11b
23539 - .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_11d
23540 + .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_82
23542 goto/16 :goto_3c
23544 - :catch_11d
23545 - move-exception v21
23547 - goto/16 :goto_3c
23549 - :cond_120
23550 + :cond_11d
23551 const/16 v21, 0x0
23553 - :try_start_122
23554 + :try_start_11f
23555 const-string v22, "activity"
23557 move-object/from16 v0, v21
23558 @@ -443,29 +438,29 @@
23559 invoke-direct {v13, v3, v0, v1, v2}, Landroid/widget/ActivityChooserModel$HistoricalRecord;-><init>(Ljava/lang/String;JF)V
23561 invoke-interface {v14, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23562 - :try_end_159
23563 - .catchall {:try_start_122 .. :try_end_159} :catchall_15b
23564 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_122 .. :try_end_159} :catch_51
23565 - .catch Ljava/io/IOException; {:try_start_122 .. :try_end_159} :catch_ed
23566 + :try_end_156
23567 + .catchall {:try_start_11f .. :try_end_156} :catchall_158
23568 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_11f .. :try_end_156} :catch_51
23569 + .catch Ljava/io/IOException; {:try_start_11f .. :try_end_156} :catch_ed
23571 goto/16 :goto_89
23573 - :catchall_15b
23574 + :catchall_158
23575 move-exception v21
23577 - if-eqz v4, :cond_161
23578 + if-eqz v4, :cond_15e
23580 - :try_start_15e
23581 + :try_start_15b
23582 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23583 - :try_end_161
23584 - .catch Ljava/io/IOException; {:try_start_15e .. :try_end_161} :catch_1b6
23585 + :try_end_15e
23586 + .catch Ljava/io/IOException; {:try_start_15b .. :try_end_15e} :catch_1ad
23588 - :cond_161
23589 - :goto_161
23590 + :cond_15e
23591 + :goto_15e
23592 throw v21
23594 - :cond_162
23595 - :try_start_162
23596 + :cond_15f
23597 + :try_start_15f
23598 invoke-interface {v7}, Ljava/util/List;->size()I
23600 move-result v21
23601 @@ -478,28 +473,23 @@
23603 move/from16 v1, v23
23605 - if-ne v0, v1, :cond_17b
23606 + if-ne v0, v1, :cond_175
23608 monitor-exit v22
23609 - :try_end_171
23610 - .catchall {:try_start_162 .. :try_end_171} :catchall_1b3
23611 + :try_end_16e
23612 + .catchall {:try_start_15f .. :try_end_16e} :catchall_1aa
23614 if-eqz v4, :cond_3c
23616 - :try_start_173
23617 + :try_start_170
23618 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23619 - :try_end_176
23620 - .catch Ljava/io/IOException; {:try_start_173 .. :try_end_176} :catch_178
23622 - goto/16 :goto_3c
23624 - :catch_178
23625 - move-exception v21
23626 + :try_end_173
23627 + .catch Ljava/io/IOException; {:try_start_170 .. :try_end_173} :catch_82
23629 goto/16 :goto_3c
23631 - :cond_17b
23632 - :try_start_17b
23633 + :cond_175
23634 + :try_start_175
23635 invoke-interface {v7}, Ljava/util/List;->clear()V
23637 move-object/from16 v0, v18
23638 @@ -543,40 +533,35 @@
23639 invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
23641 monitor-exit v22
23642 - :try_end_1a9
23643 - .catchall {:try_start_17b .. :try_end_1a9} :catchall_1b3
23644 + :try_end_1a3
23645 + .catchall {:try_start_175 .. :try_end_1a3} :catchall_1aa
23647 if-eqz v4, :cond_3c
23649 - :try_start_1ab
23650 + :try_start_1a5
23651 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23652 - :try_end_1ae
23653 - .catch Ljava/io/IOException; {:try_start_1ab .. :try_end_1ae} :catch_1b0
23654 + :try_end_1a8
23655 + .catch Ljava/io/IOException; {:try_start_1a5 .. :try_end_1a8} :catch_82
23657 goto/16 :goto_3c
23659 - :catch_1b0
23660 + :catchall_1aa
23661 move-exception v21
23663 - goto/16 :goto_3c
23665 - :catchall_1b3
23666 - move-exception v21
23668 - :try_start_1b4
23669 + :try_start_1ab
23670 monitor-exit v22
23671 - :try_end_1b5
23672 - .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_1b3
23673 + :try_end_1ac
23674 + .catchall {:try_start_1ab .. :try_end_1ac} :catchall_1aa
23676 - :try_start_1b5
23677 + :try_start_1ac
23678 throw v21
23679 - :try_end_1b6
23680 - .catchall {:try_start_1b5 .. :try_end_1b6} :catchall_15b
23681 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1b5 .. :try_end_1b6} :catch_51
23682 - .catch Ljava/io/IOException; {:try_start_1b5 .. :try_end_1b6} :catch_ed
23683 + :try_end_1ad
23684 + .catchall {:try_start_1ac .. :try_end_1ad} :catchall_158
23685 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1ac .. :try_end_1ad} :catch_51
23686 + .catch Ljava/io/IOException; {:try_start_1ac .. :try_end_1ad} :catch_ed
23688 - :catch_1b6
23689 + :catch_1ad
23690 move-exception v22
23692 - goto :goto_161
23693 + goto :goto_15e
23694 .end method
23695 diff -Npru stock_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali
23696 --- stock_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-07-02 10:16:20.700792940 -0700
23697 +++ pdroid_framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-07-02 10:16:52.888459462 -0700
23698 @@ -75,7 +75,7 @@
23699 :try_start_14
23700 monitor-exit v12
23701 :try_end_15
23702 - .catchall {:try_start_14 .. :try_end_15} :catchall_13d
23703 + .catchall {:try_start_14 .. :try_end_15} :catchall_136
23705 :try_start_15
23706 iget-object v11, p0, Landroid/widget/ActivityChooserModel$HistoryPersister;->this$0:Landroid/widget/ActivityChooserModel;
23707 @@ -190,10 +190,10 @@
23709 invoke-interface {v10, v11, v12}, Lorg/xmlpull/v1/XmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
23710 :try_end_7e
23711 - .catchall {:try_start_2b .. :try_end_7e} :catchall_134
23712 + .catchall {:try_start_2b .. :try_end_7e} :catchall_12d
23713 .catch Ljava/lang/IllegalArgumentException; {:try_start_2b .. :try_end_7e} :catch_b7
23714 - .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_e0
23715 - .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_109
23716 + .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_de
23717 + .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_105
23719 add-int/lit8 v2, v2, 0x1
23721 @@ -258,10 +258,10 @@
23723 invoke-interface {v10}, Lorg/xmlpull/v1/XmlSerializer;->endDocument()V
23724 :try_end_af
23725 - .catchall {:try_start_a7 .. :try_end_af} :catchall_134
23726 + .catchall {:try_start_a7 .. :try_end_af} :catchall_12d
23727 .catch Ljava/lang/IllegalArgumentException; {:try_start_a7 .. :try_end_af} :catch_b7
23728 - .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_e0
23729 - .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_109
23730 + .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_de
23731 + .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_105
23733 if-eqz v1, :cond_a5
23735 @@ -312,26 +312,21 @@
23737 invoke-static {v11, v12, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23738 :try_end_d8
23739 - .catchall {:try_start_b8 .. :try_end_d8} :catchall_134
23740 + .catchall {:try_start_b8 .. :try_end_d8} :catchall_12d
23742 if-eqz v1, :cond_a5
23744 :try_start_da
23745 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23746 :try_end_dd
23747 - .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_de
23748 + .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_b5
23750 goto :goto_a5
23752 :catch_de
23753 - move-exception v11
23755 - goto :goto_a5
23757 - :catch_e0
23758 move-exception v5
23760 - :try_start_e1
23761 + :try_start_df
23762 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23764 move-result-object v11
23765 @@ -362,27 +357,22 @@
23766 move-result-object v12
23768 invoke-static {v11, v12, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23769 - :try_end_101
23770 - .catchall {:try_start_e1 .. :try_end_101} :catchall_134
23771 + :try_end_ff
23772 + .catchall {:try_start_df .. :try_end_ff} :catchall_12d
23774 if-eqz v1, :cond_a5
23776 - :try_start_103
23777 + :try_start_101
23778 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23779 - :try_end_106
23780 - .catch Ljava/io/IOException; {:try_start_103 .. :try_end_106} :catch_107
23782 - goto :goto_a5
23784 - :catch_107
23785 - move-exception v11
23786 + :try_end_104
23787 + .catch Ljava/io/IOException; {:try_start_101 .. :try_end_104} :catch_b5
23789 goto :goto_a5
23791 - :catch_109
23792 + :catch_105
23793 move-exception v4
23795 - :try_start_10a
23796 + :try_start_106
23797 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23799 move-result-object v11
23800 @@ -413,43 +403,38 @@
23801 move-result-object v12
23803 invoke-static {v11, v12, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23804 - :try_end_12a
23805 - .catchall {:try_start_10a .. :try_end_12a} :catchall_134
23806 + :try_end_126
23807 + .catchall {:try_start_106 .. :try_end_126} :catchall_12d
23809 if-eqz v1, :cond_a5
23811 - :try_start_12c
23812 + :try_start_128
23813 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23814 - :try_end_12f
23815 - .catch Ljava/io/IOException; {:try_start_12c .. :try_end_12f} :catch_131
23817 - goto/16 :goto_a5
23819 - :catch_131
23820 - move-exception v11
23821 + :try_end_12b
23822 + .catch Ljava/io/IOException; {:try_start_128 .. :try_end_12b} :catch_b5
23824 goto/16 :goto_a5
23826 - :catchall_134
23827 + :catchall_12d
23828 move-exception v11
23830 - if-eqz v1, :cond_13a
23831 + if-eqz v1, :cond_133
23833 - :try_start_137
23834 + :try_start_130
23835 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23836 - :try_end_13a
23837 - .catch Ljava/io/IOException; {:try_start_137 .. :try_end_13a} :catch_13b
23838 + :try_end_133
23839 + .catch Ljava/io/IOException; {:try_start_130 .. :try_end_133} :catch_134
23841 - :cond_13a
23842 - :goto_13a
23843 + :cond_133
23844 + :goto_133
23845 throw v11
23847 - :catch_13b
23848 + :catch_134
23849 move-exception v12
23851 - goto :goto_13a
23852 + goto :goto_133
23854 - :catchall_13d
23855 + :catchall_136
23856 move-exception v11
23858 move-object v8, v9
23859 diff -Npru stock_framework/smali/android/widget/Filter$RequestHandler.smali pdroid_framework/smali/android/widget/Filter$RequestHandler.smali
23860 --- stock_framework/smali/android/widget/Filter$RequestHandler.smali 2012-07-02 10:16:20.876834870 -0700
23861 +++ pdroid_framework/smali/android/widget/Filter$RequestHandler.smali 2012-07-02 10:16:53.067502108 -0700
23862 @@ -36,7 +36,7 @@
23864 iget v4, p1, Landroid/os/Message;->what:I
23866 - sparse-switch v4, :sswitch_data_a8
23867 + sparse-switch v4, :sswitch_data_a4
23869 :goto_5
23870 return-void
23871 @@ -57,7 +57,7 @@
23873 iput-object v5, v0, Landroid/widget/Filter$RequestArguments;->results:Landroid/widget/Filter$FilterResults;
23874 :try_end_14
23875 - .catchall {:try_start_a .. :try_end_14} :catchall_6e
23876 + .catchall {:try_start_a .. :try_end_14} :catchall_6b
23877 .catch Ljava/lang/Exception; {:try_start_a .. :try_end_14} :catch_4f
23879 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23880 @@ -73,9 +73,9 @@
23882 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23884 + :goto_20
23885 invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23887 - :goto_23
23888 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23890 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23891 @@ -149,7 +149,7 @@
23893 invoke-static {v5, v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23894 :try_end_5e
23895 - .catchall {:try_start_50 .. :try_end_5e} :catchall_6e
23896 + .catchall {:try_start_50 .. :try_end_5e} :catchall_6b
23898 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23900 @@ -164,11 +164,9 @@
23902 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23904 - invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23906 - goto :goto_23
23907 + goto :goto_20
23909 - :catchall_6e
23910 + :catchall_6b
23911 move-exception v5
23913 iget-object v6, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23914 @@ -188,7 +186,7 @@
23916 throw v5
23918 - :sswitch_7f
23919 + :sswitch_7c
23920 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23922 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23923 @@ -198,7 +196,7 @@
23925 monitor-enter v6
23927 - :try_start_86
23928 + :try_start_83
23929 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23931 #getter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23932 @@ -206,7 +204,7 @@
23934 move-result-object v5
23936 - if-eqz v5, :cond_a1
23937 + if-eqz v5, :cond_9e
23939 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23941 @@ -228,25 +226,23 @@
23942 #setter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23943 invoke-static {v5, v7}, Landroid/widget/Filter;->access$402(Landroid/widget/Filter;Landroid/os/Handler;)Landroid/os/Handler;
23945 - :cond_a1
23946 + :cond_9e
23947 monitor-exit v6
23949 goto/16 :goto_5
23951 - :catchall_a4
23952 + :catchall_a1
23953 move-exception v5
23955 monitor-exit v6
23956 - :try_end_a6
23957 - .catchall {:try_start_86 .. :try_end_a6} :catchall_a4
23958 + :try_end_a3
23959 + .catchall {:try_start_83 .. :try_end_a3} :catchall_a1
23961 throw v5
23963 - nop
23965 - :sswitch_data_a8
23966 + :sswitch_data_a4
23967 .sparse-switch
23968 -0x2f2f0ff3 -> :sswitch_6
23969 - -0x21524111 -> :sswitch_7f
23970 + -0x21524111 -> :sswitch_7c
23971 .end sparse-switch
23972 .end method
23973 diff -Npru stock_framework/smali/android/widget/GridView.smali pdroid_framework/smali/android/widget/GridView.smali
23974 --- stock_framework/smali/android/widget/GridView.smali 2012-07-02 10:16:20.917844638 -0700
23975 +++ pdroid_framework/smali/android/widget/GridView.smali 2012-07-02 10:16:53.109512114 -0700
23976 @@ -4243,10 +4243,11 @@
23978 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
23979 :try_end_22
23980 - .catchall {:try_start_e .. :try_end_22} :catchall_1c6
23981 + .catchall {:try_start_e .. :try_end_22} :catchall_1b5
23983 if-nez v3, :cond_2c
23985 + :goto_24
23986 const/16 v19, 0x0
23988 move/from16 v0, v19
23989 @@ -4256,7 +4257,6 @@
23990 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
23992 :cond_2c
23993 - :goto_2c
23994 return-void
23996 :cond_2d
23997 @@ -4317,7 +4317,7 @@
23999 move/from16 v19, v0
24001 - packed-switch v19, :pswitch_data_304
24002 + packed-switch v19, :pswitch_data_2f2
24004 move-object/from16 v0, p0
24006 @@ -4372,28 +4372,17 @@
24008 move/from16 v19, v0
24010 - if-nez v19, :cond_d9
24011 + if-nez v19, :cond_d1
24013 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->resetList()V
24015 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24016 - :try_end_9e
24017 - .catchall {:try_start_2d .. :try_end_9e} :catchall_1c6
24019 if-nez v3, :cond_2c
24021 - const/16 v19, 0x0
24023 - move/from16 v0, v19
24025 - move-object/from16 v1, p0
24027 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24028 + goto :goto_24
24030 - goto :goto_2c
24032 - :pswitch_a9
24033 - :try_start_a9
24034 + :pswitch_a1
24035 move-object/from16 v0, p0
24037 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24038 @@ -4420,7 +4409,7 @@
24040 goto :goto_87
24042 - :pswitch_c2
24043 + :pswitch_ba
24044 move-object/from16 v0, p0
24046 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24047 @@ -4445,7 +4434,7 @@
24049 goto :goto_87
24051 - :cond_d9
24052 + :cond_d1
24053 move-object/from16 v0, p0
24055 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24056 @@ -4468,12 +4457,12 @@
24058 move-object/from16 v17, v0
24060 - if-eqz v8, :cond_109
24061 + if-eqz v8, :cond_101
24063 const/4 v11, 0x0
24065 - :goto_f3
24066 - if-ge v11, v5, :cond_10e
24067 + :goto_eb
24068 + if-ge v11, v5, :cond_106
24070 move-object/from16 v0, p0
24072 @@ -4493,14 +4482,14 @@
24074 add-int/lit8 v11, v11, 0x1
24076 - goto :goto_f3
24077 + goto :goto_eb
24079 - :cond_109
24080 + :cond_101
24081 move-object/from16 v0, v17
24083 invoke-virtual {v0, v5, v10}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24085 - :cond_10e
24086 + :cond_106
24087 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->detachAllViewsFromParent()V
24089 move-object/from16 v0, p0
24090 @@ -4509,9 +4498,9 @@
24092 move/from16 v19, v0
24094 - packed-switch v19, :pswitch_data_314
24095 + packed-switch v19, :pswitch_data_302
24097 - if-nez v5, :cond_24d
24098 + if-nez v5, :cond_23c
24100 move-object/from16 v0, p0
24102 @@ -4519,7 +4508,7 @@
24104 move/from16 v19, v0
24106 - if-nez v19, :cond_223
24107 + if-nez v19, :cond_212
24109 move-object/from16 v0, p0
24111 @@ -4527,18 +4516,18 @@
24113 move-object/from16 v19, v0
24115 - if-eqz v19, :cond_132
24116 + if-eqz v19, :cond_12a
24118 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24120 move-result v19
24122 - if-eqz v19, :cond_21f
24123 + if-eqz v19, :cond_20e
24125 - :cond_132
24126 + :cond_12a
24127 const/16 v19, -0x1
24129 - :goto_134
24130 + :goto_12c
24131 move-object/from16 v0, p0
24133 move/from16 v1, v19
24134 @@ -4551,10 +4540,10 @@
24136 move-result-object v18
24138 - :goto_141
24139 + :goto_139
24140 invoke-virtual/range {v17 .. v17}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24142 - if-eqz v18, :cond_2b3
24143 + if-eqz v18, :cond_2a2
24145 const/16 v19, -0x1
24147 @@ -4576,8 +4565,8 @@
24149 iput v0, v1, Landroid/widget/GridView;->mSelectedTop:I
24151 - :cond_15b
24152 - :goto_15b
24153 + :cond_153
24154 + :goto_153
24155 const/16 v19, 0x0
24157 move/from16 v0, v19
24158 @@ -4622,31 +4611,20 @@
24160 move/from16 v19, v0
24162 - if-lez v19, :cond_18e
24163 + if-lez v19, :cond_186
24165 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->checkSelectionChanged()V
24167 - :cond_18e
24168 + :cond_186
24169 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24170 - :try_end_191
24171 - .catchall {:try_start_a9 .. :try_end_191} :catchall_1c6
24173 if-nez v3, :cond_2c
24175 - const/16 v19, 0x0
24176 + goto/16 :goto_24
24178 - move/from16 v0, v19
24179 + :pswitch_18d
24180 + if-eqz v14, :cond_19c
24182 - move-object/from16 v1, p0
24184 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24186 - goto/16 :goto_2c
24188 - :pswitch_19d
24189 - if-eqz v14, :cond_1ac
24191 - :try_start_19f
24192 invoke-virtual {v14}, Landroid/view/View;->getTop()I
24194 move-result v19
24195 @@ -4659,18 +4637,18 @@
24197 move-result-object v18
24199 - goto :goto_141
24200 + goto :goto_139
24202 - :cond_1ac
24203 + :cond_19c
24204 move-object/from16 v0, p0
24206 invoke-direct {v0, v7, v6}, Landroid/widget/GridView;->fillSelection(II)Landroid/view/View;
24208 move-result-object v18
24210 - goto :goto_141
24211 + goto :goto_139
24213 - :pswitch_1b3
24214 + :pswitch_1a3
24215 const/16 v19, 0x0
24217 move/from16 v0, v19
24218 @@ -4686,15 +4664,15 @@
24219 move-result-object v18
24221 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24222 - :try_end_1c4
24223 - .catchall {:try_start_19f .. :try_end_1c4} :catchall_1c6
24224 + :try_end_1b4
24225 + .catchall {:try_start_2d .. :try_end_1b4} :catchall_1b5
24227 - goto/16 :goto_141
24228 + goto :goto_139
24230 - :catchall_1c6
24231 + :catchall_1b5
24232 move-exception v19
24234 - if-nez v3, :cond_1d1
24235 + if-nez v3, :cond_1c0
24237 const/16 v20, 0x0
24239 @@ -4704,11 +4682,11 @@
24241 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24243 - :cond_1d1
24244 + :cond_1c0
24245 throw v19
24247 - :pswitch_1d2
24248 - :try_start_1d2
24249 + :pswitch_1c1
24250 + :try_start_1c1
24251 move-object/from16 v0, p0
24253 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24254 @@ -4727,9 +4705,9 @@
24256 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24258 - goto/16 :goto_141
24259 + goto/16 :goto_139
24261 - :pswitch_1e7
24262 + :pswitch_1d6
24263 move-object/from16 v0, p0
24265 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24266 @@ -4752,9 +4730,9 @@
24268 move-result-object v18
24270 - goto/16 :goto_141
24271 + goto/16 :goto_139
24273 - :pswitch_1ff
24274 + :pswitch_1ee
24275 move-object/from16 v0, p0
24277 iget v0, v0, Landroid/widget/GridView;->mSyncPosition:I
24278 @@ -4777,23 +4755,23 @@
24280 move-result-object v18
24282 - goto/16 :goto_141
24283 + goto/16 :goto_139
24285 - :pswitch_217
24286 + :pswitch_206
24287 move-object/from16 v0, p0
24289 invoke-direct {v0, v9, v7, v6}, Landroid/widget/GridView;->moveSelection(III)Landroid/view/View;
24291 move-result-object v18
24293 - goto/16 :goto_141
24294 + goto/16 :goto_139
24296 - :cond_21f
24297 + :cond_20e
24298 const/16 v19, 0x0
24300 - goto/16 :goto_134
24301 + goto/16 :goto_12c
24303 - :cond_223
24304 + :cond_212
24305 move-object/from16 v0, p0
24307 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24308 @@ -4808,18 +4786,18 @@
24310 move-object/from16 v19, v0
24312 - if-eqz v19, :cond_239
24313 + if-eqz v19, :cond_228
24315 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24317 move-result v19
24319 - if-eqz v19, :cond_24a
24320 + if-eqz v19, :cond_239
24322 - :cond_239
24323 + :cond_228
24324 const/16 v19, -0x1
24326 - :goto_23b
24327 + :goto_22a
24328 move-object/from16 v0, p0
24330 move/from16 v1, v19
24331 @@ -4832,21 +4810,21 @@
24333 move-result-object v18
24335 - goto/16 :goto_141
24336 + goto/16 :goto_139
24338 - :cond_24a
24339 + :cond_239
24340 move/from16 v19, v13
24342 - goto :goto_23b
24343 + goto :goto_22a
24345 - :cond_24d
24346 + :cond_23c
24347 move-object/from16 v0, p0
24349 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24351 move/from16 v19, v0
24353 - if-ltz v19, :cond_27e
24354 + if-ltz v19, :cond_26d
24356 move-object/from16 v0, p0
24358 @@ -4864,7 +4842,7 @@
24360 move/from16 v1, v20
24362 - if-ge v0, v1, :cond_27e
24363 + if-ge v0, v1, :cond_26d
24365 move-object/from16 v0, p0
24367 @@ -4872,9 +4850,9 @@
24369 move/from16 v19, v0
24371 - if-nez v16, :cond_279
24372 + if-nez v16, :cond_268
24374 - :goto_26f
24375 + :goto_25e
24376 move-object/from16 v0, p0
24378 move/from16 v1, v19
24379 @@ -4883,16 +4861,16 @@
24381 move-result-object v18
24383 - goto/16 :goto_141
24384 + goto/16 :goto_139
24386 - :cond_279
24387 + :cond_268
24388 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->getTop()I
24390 move-result v7
24392 - goto :goto_26f
24393 + goto :goto_25e
24395 - :cond_27e
24396 + :cond_26d
24397 move-object/from16 v0, p0
24399 iget v0, v0, Landroid/widget/GridView;->mFirstPosition:I
24400 @@ -4909,7 +4887,7 @@
24402 move/from16 v1, v20
24404 - if-ge v0, v1, :cond_2a7
24405 + if-ge v0, v1, :cond_296
24407 move-object/from16 v0, p0
24409 @@ -4917,9 +4895,9 @@
24411 move/from16 v19, v0
24413 - if-nez v15, :cond_2a2
24414 + if-nez v15, :cond_291
24416 - :goto_298
24417 + :goto_287
24418 move-object/from16 v0, p0
24420 move/from16 v1, v19
24421 @@ -4928,16 +4906,16 @@
24423 move-result-object v18
24425 - goto/16 :goto_141
24426 + goto/16 :goto_139
24428 - :cond_2a2
24429 + :cond_291
24430 invoke-virtual {v15}, Landroid/view/View;->getTop()I
24432 move-result v7
24434 - goto :goto_298
24435 + goto :goto_287
24437 - :cond_2a7
24438 + :cond_296
24439 const/16 v19, 0x0
24441 move-object/from16 v0, p0
24442 @@ -4948,16 +4926,16 @@
24444 move-result-object v18
24446 - goto/16 :goto_141
24447 + goto/16 :goto_139
24449 - :cond_2b3
24450 + :cond_2a2
24451 move-object/from16 v0, p0
24453 iget v0, v0, Landroid/widget/GridView;->mTouchMode:I
24455 move/from16 v19, v0
24457 - if-lez v19, :cond_2f0
24458 + if-lez v19, :cond_2df
24460 move-object/from16 v0, p0
24462 @@ -4971,7 +4949,7 @@
24464 move/from16 v1, v20
24466 - if-ge v0, v1, :cond_2f0
24467 + if-ge v0, v1, :cond_2df
24469 move-object/from16 v0, p0
24471 @@ -4995,7 +4973,7 @@
24473 move-result-object v4
24475 - if-eqz v4, :cond_15b
24476 + if-eqz v4, :cond_153
24478 move-object/from16 v0, p0
24480 @@ -5009,9 +4987,9 @@
24482 invoke-virtual {v0, v1, v4}, Landroid/widget/GridView;->positionSelector(ILandroid/view/View;)V
24484 - goto/16 :goto_15b
24485 + goto/16 :goto_153
24487 - :cond_2f0
24488 + :cond_2df
24489 const/16 v19, 0x0
24491 move/from16 v0, v19
24492 @@ -5027,31 +5005,29 @@
24493 move-object/from16 v19, v0
24495 invoke-virtual/range {v19 .. v19}, Landroid/graphics/Rect;->setEmpty()V
24496 - :try_end_301
24497 - .catchall {:try_start_1d2 .. :try_end_301} :catchall_1c6
24499 - goto/16 :goto_15b
24500 + :try_end_2f0
24501 + .catchall {:try_start_1c1 .. :try_end_2f0} :catchall_1b5
24503 - nop
24504 + goto/16 :goto_153
24506 - :pswitch_data_304
24507 + :pswitch_data_2f2
24508 .packed-switch 0x1
24509 :pswitch_87
24510 - :pswitch_a9
24511 + :pswitch_a1
24512 :pswitch_87
24513 :pswitch_87
24514 :pswitch_87
24515 - :pswitch_c2
24516 + :pswitch_ba
24517 .end packed-switch
24519 - :pswitch_data_314
24520 + :pswitch_data_302
24521 .packed-switch 0x1
24522 - :pswitch_1b3
24523 - :pswitch_19d
24524 - :pswitch_1d2
24525 - :pswitch_1e7
24526 - :pswitch_1ff
24527 - :pswitch_217
24528 + :pswitch_1a3
24529 + :pswitch_18d
24530 + :pswitch_1c1
24531 + :pswitch_1d6
24532 + :pswitch_1ee
24533 + :pswitch_206
24534 .end packed-switch
24535 .end method
24537 diff -Npru stock_framework/smali/android/widget/ListView.smali pdroid_framework/smali/android/widget/ListView.smali
24538 --- stock_framework/smali/android/widget/ListView.smali 2012-07-02 10:16:20.858830582 -0700
24539 +++ pdroid_framework/smali/android/widget/ListView.smali 2012-07-02 10:16:53.045496866 -0700
24540 @@ -6868,10 +6868,11 @@
24542 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24543 :try_end_1d
24544 - .catchall {:try_start_b .. :try_end_1d} :catchall_125
24545 + .catchall {:try_start_b .. :try_end_1d} :catchall_120
24547 if-nez v8, :cond_24
24549 + :goto_1f
24550 const/4 v2, 0x0
24552 move-object/from16 v0, p0
24553 @@ -6879,7 +6880,6 @@
24554 iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24556 :cond_24
24557 - :goto_24
24558 return-void
24560 :cond_25
24561 @@ -6936,7 +6936,7 @@
24563 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24565 - packed-switch v2, :pswitch_data_36e
24566 + packed-switch v2, :pswitch_data_364
24568 move-object/from16 v0, p0
24570 @@ -7016,26 +7016,17 @@
24572 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24574 - if-nez v2, :cond_cc
24575 + if-nez v2, :cond_c7
24577 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->resetList()V
24579 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24580 - :try_end_a8
24581 - .catchall {:try_start_25 .. :try_end_a8} :catchall_125
24583 if-nez v8, :cond_24
24585 - const/4 v2, 0x0
24587 - move-object/from16 v0, p0
24589 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24591 - goto/16 :goto_24
24592 + goto/16 :goto_1f
24594 - :pswitch_b1
24595 - :try_start_b1
24596 + :pswitch_ac
24597 move-object/from16 v0, p0
24599 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24600 @@ -7064,7 +7055,7 @@
24602 goto :goto_93
24604 - :cond_cc
24605 + :cond_c7
24606 move-object/from16 v0, p0
24608 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24609 @@ -7081,7 +7072,7 @@
24611 move/from16 v0, v24
24613 - if-eq v2, v0, :cond_131
24614 + if-eq v2, v0, :cond_12c
24616 new-instance v2, Ljava/lang/IllegalStateException;
24618 @@ -7152,13 +7143,13 @@
24619 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
24621 throw v2
24622 - :try_end_125
24623 - .catchall {:try_start_b1 .. :try_end_125} :catchall_125
24624 + :try_end_120
24625 + .catchall {:try_start_25 .. :try_end_120} :catchall_120
24627 - :catchall_125
24628 + :catchall_120
24629 move-exception v2
24631 - if-nez v8, :cond_130
24632 + if-nez v8, :cond_12b
24634 const/16 v24, 0x0
24636 @@ -7168,11 +7159,11 @@
24638 iput-boolean v0, v1, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24640 - :cond_130
24641 + :cond_12b
24642 throw v2
24644 - :cond_131
24645 - :try_start_131
24646 + :cond_12c
24647 + :try_start_12c
24648 move-object/from16 v0, p0
24650 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24651 @@ -7193,14 +7184,14 @@
24653 const/4 v13, 0x0
24655 - if-eqz v11, :cond_161
24656 + if-eqz v11, :cond_15c
24658 const/16 v18, 0x0
24660 - :goto_149
24661 + :goto_144
24662 move/from16 v0, v18
24664 - if-ge v0, v10, :cond_166
24665 + if-ge v0, v10, :cond_161
24667 move-object/from16 v0, p0
24669 @@ -7220,21 +7211,21 @@
24671 add-int/lit8 v18, v18, 0x1
24673 - goto :goto_149
24674 + goto :goto_144
24676 - :cond_161
24677 + :cond_15c
24678 move-object/from16 v0, v22
24680 invoke-virtual {v0, v10, v12}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24682 - :cond_166
24683 + :cond_161
24684 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24686 move-result-object v17
24688 - if-eqz v17, :cond_186
24689 + if-eqz v17, :cond_181
24691 - if-eqz v11, :cond_178
24692 + if-eqz v11, :cond_173
24694 move-object/from16 v0, p0
24696 @@ -7244,38 +7235,38 @@
24698 move-result v2
24700 - if-eqz v2, :cond_183
24701 + if-eqz v2, :cond_17e
24703 - :cond_178
24704 + :cond_173
24705 move-object/from16 v13, v17
24707 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->findFocus()Landroid/view/View;
24709 move-result-object v14
24711 - if-eqz v14, :cond_183
24712 + if-eqz v14, :cond_17e
24714 invoke-virtual {v14}, Landroid/view/View;->onStartTemporaryDetach()V
24716 - :cond_183
24717 + :cond_17e
24718 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->requestFocus()Z
24720 - :cond_186
24721 + :cond_181
24722 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->detachAllViewsFromParent()V
24724 move-object/from16 v0, p0
24726 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24728 - packed-switch v2, :pswitch_data_37c
24729 + packed-switch v2, :pswitch_data_372
24731 - if-nez v10, :cond_2ba
24732 + if-nez v10, :cond_2b0
24734 move-object/from16 v0, p0
24736 iget-boolean v2, v0, Landroid/widget/ListView;->mStackFromBottom:Z
24738 - if-nez v2, :cond_295
24739 + if-nez v2, :cond_28b
24741 const/4 v2, 0x0
24743 @@ -7301,61 +7292,61 @@
24745 move-result-object v23
24747 - :goto_1b0
24748 + :goto_1ab
24749 invoke-virtual/range {v22 .. v22}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24751 - if-eqz v23, :cond_327
24752 + if-eqz v23, :cond_31d
24754 move-object/from16 v0, p0
24756 iget-boolean v2, v0, Landroid/widget/ListView;->mItemsCanFocus:Z
24758 - if-eqz v2, :cond_31d
24759 + if-eqz v2, :cond_313
24761 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
24763 move-result v2
24765 - if-eqz v2, :cond_31d
24766 + if-eqz v2, :cond_313
24768 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->hasFocus()Z
24770 move-result v2
24772 - if-nez v2, :cond_31d
24773 + if-nez v2, :cond_313
24775 move-object/from16 v0, v23
24777 - if-ne v0, v13, :cond_1d1
24778 + if-ne v0, v13, :cond_1cc
24780 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
24782 move-result v2
24784 - if-nez v2, :cond_1d7
24785 + if-nez v2, :cond_1d2
24787 - :cond_1d1
24788 + :cond_1cc
24789 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->requestFocus()Z
24791 move-result v2
24793 - if-eqz v2, :cond_30b
24794 + if-eqz v2, :cond_301
24796 - :cond_1d7
24797 + :cond_1d2
24798 const/4 v15, 0x1
24800 - :goto_1d8
24801 - if-nez v15, :cond_30e
24802 + :goto_1d3
24803 + if-nez v15, :cond_304
24805 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24807 move-result-object v16
24809 - if-eqz v16, :cond_1e3
24810 + if-eqz v16, :cond_1de
24812 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->clearFocus()V
24814 - :cond_1e3
24815 + :cond_1de
24816 const/4 v2, -0x1
24818 move-object/from16 v0, p0
24819 @@ -7364,7 +7355,7 @@
24821 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
24823 - :goto_1eb
24824 + :goto_1e6
24825 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->getTop()I
24827 move-result v2
24828 @@ -7373,19 +7364,19 @@
24830 iput v2, v0, Landroid/widget/ListView;->mSelectedTop:I
24832 - :cond_1f3
24833 - :goto_1f3
24834 - if-eqz v14, :cond_1fe
24835 + :cond_1ee
24836 + :goto_1ee
24837 + if-eqz v14, :cond_1f9
24839 invoke-virtual {v14}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
24841 move-result-object v2
24843 - if-eqz v2, :cond_1fe
24844 + if-eqz v2, :cond_1f9
24846 invoke-virtual {v14}, Landroid/view/View;->onFinishTemporaryDetach()V
24848 - :cond_1fe
24849 + :cond_1f9
24850 const/4 v2, 0x0
24852 move-object/from16 v0, p0
24853 @@ -7418,29 +7409,20 @@
24855 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24857 - if-lez v2, :cond_222
24858 + if-lez v2, :cond_21d
24860 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->checkSelectionChanged()V
24862 - :cond_222
24863 + :cond_21d
24864 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24865 - :try_end_225
24866 - .catchall {:try_start_131 .. :try_end_225} :catchall_125
24868 if-nez v8, :cond_24
24870 - const/4 v2, 0x0
24872 - move-object/from16 v0, p0
24874 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24876 - goto/16 :goto_24
24877 + goto/16 :goto_1f
24879 - :pswitch_22e
24880 - if-eqz v4, :cond_23c
24881 + :pswitch_224
24882 + if-eqz v4, :cond_232
24884 - :try_start_230
24885 invoke-virtual {v4}, Landroid/view/View;->getTop()I
24887 move-result v2
24888 @@ -7451,18 +7433,18 @@
24890 move-result-object v23
24892 - goto/16 :goto_1b0
24893 + goto/16 :goto_1ab
24895 - :cond_23c
24896 + :cond_232
24897 move-object/from16 v0, p0
24899 invoke-direct {v0, v6, v7}, Landroid/widget/ListView;->fillFromMiddle(II)Landroid/view/View;
24901 move-result-object v23
24903 - goto/16 :goto_1b0
24904 + goto/16 :goto_1ab
24906 - :pswitch_244
24907 + :pswitch_23a
24908 move-object/from16 v0, p0
24910 iget v2, v0, Landroid/widget/ListView;->mSyncPosition:I
24911 @@ -7481,9 +7463,9 @@
24913 move-result-object v23
24915 - goto/16 :goto_1b0
24916 + goto/16 :goto_1ab
24918 - :pswitch_258
24919 + :pswitch_24e
24920 move-object/from16 v0, p0
24922 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24923 @@ -7498,9 +7480,9 @@
24925 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24927 - goto/16 :goto_1b0
24928 + goto/16 :goto_1ab
24930 - :pswitch_269
24931 + :pswitch_25f
24932 const/4 v2, 0x0
24934 move-object/from16 v0, p0
24935 @@ -7515,9 +7497,9 @@
24937 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24939 - goto/16 :goto_1b0
24940 + goto/16 :goto_1ab
24942 - :pswitch_279
24943 + :pswitch_26f
24944 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->reconcileSelectedPosition()I
24946 move-result v2
24947 @@ -7536,18 +7518,18 @@
24949 move-result-object v23
24951 - goto/16 :goto_1b0
24952 + goto/16 :goto_1ab
24954 - :pswitch_28d
24955 + :pswitch_283
24956 move-object/from16 v2, p0
24958 invoke-direct/range {v2 .. v7}, Landroid/widget/ListView;->moveSelection(Landroid/view/View;Landroid/view/View;III)Landroid/view/View;
24960 move-result-object v23
24962 - goto/16 :goto_1b0
24963 + goto/16 :goto_1ab
24965 - :cond_295
24966 + :cond_28b
24967 move-object/from16 v0, p0
24969 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24970 @@ -7582,14 +7564,14 @@
24972 move-result-object v23
24974 - goto/16 :goto_1b0
24975 + goto/16 :goto_1ab
24977 - :cond_2ba
24978 + :cond_2b0
24979 move-object/from16 v0, p0
24981 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24983 - if-ltz v2, :cond_2e1
24984 + if-ltz v2, :cond_2d7
24986 move-object/from16 v0, p0
24988 @@ -7603,31 +7585,31 @@
24990 move/from16 v0, v24
24992 - if-ge v2, v0, :cond_2e1
24993 + if-ge v2, v0, :cond_2d7
24995 move-object/from16 v0, p0
24997 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24999 - if-nez v3, :cond_2dc
25000 + if-nez v3, :cond_2d2
25002 - :goto_2d4
25003 + :goto_2ca
25004 move-object/from16 v0, p0
25006 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25008 move-result-object v23
25010 - goto/16 :goto_1b0
25011 + goto/16 :goto_1ab
25013 - :cond_2dc
25014 + :cond_2d2
25015 invoke-virtual {v3}, Landroid/view/View;->getTop()I
25017 move-result v6
25019 - goto :goto_2d4
25020 + goto :goto_2ca
25022 - :cond_2e1
25023 + :cond_2d7
25024 move-object/from16 v0, p0
25026 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25027 @@ -7640,31 +7622,31 @@
25029 move/from16 v0, v24
25031 - if-ge v2, v0, :cond_302
25032 + if-ge v2, v0, :cond_2f8
25034 move-object/from16 v0, p0
25036 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25038 - if-nez v20, :cond_2fd
25039 + if-nez v20, :cond_2f3
25041 - :goto_2f5
25042 + :goto_2eb
25043 move-object/from16 v0, p0
25045 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25047 move-result-object v23
25049 - goto/16 :goto_1b0
25050 + goto/16 :goto_1ab
25052 - :cond_2fd
25053 + :cond_2f3
25054 invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getTop()I
25056 move-result v6
25058 - goto :goto_2f5
25059 + goto :goto_2eb
25061 - :cond_302
25062 + :cond_2f8
25063 const/4 v2, 0x0
25065 move-object/from16 v0, p0
25066 @@ -7673,14 +7655,14 @@
25068 move-result-object v23
25070 - goto/16 :goto_1b0
25071 + goto/16 :goto_1ab
25073 - :cond_30b
25074 + :cond_301
25075 const/4 v15, 0x0
25077 - goto/16 :goto_1d8
25078 + goto/16 :goto_1d3
25080 - :cond_30e
25081 + :cond_304
25082 const/4 v2, 0x0
25084 move-object/from16 v0, v23
25085 @@ -7693,9 +7675,9 @@
25087 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25089 - goto/16 :goto_1eb
25090 + goto/16 :goto_1e6
25092 - :cond_31d
25093 + :cond_313
25094 const/4 v2, -0x1
25096 move-object/from16 v0, p0
25097 @@ -7704,14 +7686,14 @@
25099 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25101 - goto/16 :goto_1eb
25102 + goto/16 :goto_1e6
25104 - :cond_327
25105 + :cond_31d
25106 move-object/from16 v0, p0
25108 iget v2, v0, Landroid/widget/ListView;->mTouchMode:I
25110 - if-lez v2, :cond_361
25111 + if-lez v2, :cond_357
25113 move-object/from16 v0, p0
25115 @@ -7721,7 +7703,7 @@
25117 move/from16 v0, v24
25119 - if-ge v2, v0, :cond_361
25120 + if-ge v2, v0, :cond_357
25122 move-object/from16 v0, p0
25124 @@ -7741,7 +7723,7 @@
25126 move-result-object v9
25128 - if-eqz v9, :cond_354
25129 + if-eqz v9, :cond_34a
25131 move-object/from16 v0, p0
25133 @@ -7751,21 +7733,21 @@
25135 invoke-virtual {v0, v2, v9}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25137 - :cond_354
25138 - :goto_354
25139 + :cond_34a
25140 + :goto_34a
25141 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25143 move-result v2
25145 - if-eqz v2, :cond_1f3
25146 + if-eqz v2, :cond_1ee
25148 - if-eqz v14, :cond_1f3
25149 + if-eqz v14, :cond_1ee
25151 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25153 - goto/16 :goto_1f3
25154 + goto/16 :goto_1ee
25156 - :cond_361
25157 + :cond_357
25158 const/4 v2, 0x0
25160 move-object/from16 v0, p0
25161 @@ -7777,28 +7759,28 @@
25162 iget-object v2, v0, Landroid/widget/ListView;->mSelectorRect:Landroid/graphics/Rect;
25164 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25165 - :try_end_36d
25166 - .catchall {:try_start_230 .. :try_end_36d} :catchall_125
25167 + :try_end_363
25168 + .catchall {:try_start_12c .. :try_end_363} :catchall_120
25170 - goto :goto_354
25171 + goto :goto_34a
25173 - :pswitch_data_36e
25174 + :pswitch_data_364
25175 .packed-switch 0x1
25176 :pswitch_93
25177 - :pswitch_b1
25178 + :pswitch_ac
25179 :pswitch_93
25180 :pswitch_93
25181 :pswitch_93
25182 .end packed-switch
25184 - :pswitch_data_37c
25185 + :pswitch_data_372
25186 .packed-switch 0x1
25187 - :pswitch_269
25188 - :pswitch_22e
25189 - :pswitch_258
25190 - :pswitch_279
25191 - :pswitch_244
25192 - :pswitch_28d
25193 + :pswitch_25f
25194 + :pswitch_224
25195 + :pswitch_24e
25196 + :pswitch_26f
25197 + :pswitch_23a
25198 + :pswitch_283
25199 .end packed-switch
25200 .end method
25202 diff -Npru stock_framework/smali/android/widget/TextView.smali pdroid_framework/smali/android/widget/TextView.smali
25203 --- stock_framework/smali/android/widget/TextView.smali 2012-07-02 10:16:16.861878590 -0700
25204 +++ pdroid_framework/smali/android/widget/TextView.smali 2012-07-02 10:16:49.214584404 -0700
25205 @@ -5274,18 +5274,18 @@
25206 return v2
25208 :cond_b
25209 - sparse-switch p1, :sswitch_data_ec
25210 + sparse-switch p1, :sswitch_data_e8
25212 :cond_e
25213 iget-object v2, p0, Landroid/widget/TextView;->mInput:Landroid/text/method/KeyListener;
25215 - if-eqz v2, :cond_bb
25216 + if-eqz v2, :cond_b7
25218 invoke-virtual {p0}, Landroid/widget/TextView;->resetErrorChangedFlag()V
25220 const/4 v0, 0x1
25222 - if-eqz p3, :cond_97
25223 + if-eqz p3, :cond_9d
25225 :try_start_18
25226 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25227 @@ -5302,12 +5302,12 @@
25229 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25230 :try_end_28
25231 - .catchall {:try_start_18 .. :try_end_28} :catchall_b6
25232 - .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_b1
25233 + .catchall {:try_start_18 .. :try_end_28} :catchall_94
25234 + .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_99
25236 const/4 v0, 0x0
25238 - if-eqz v1, :cond_94
25239 + if-eqz v1, :cond_9a
25241 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25243 @@ -5433,12 +5433,21 @@
25245 goto/16 :goto_a
25247 - :cond_94
25248 + :catchall_94
25249 + move-exception v2
25251 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25253 - :cond_97
25254 - :goto_97
25255 - if-eqz v0, :cond_bb
25256 + throw v2
25258 + :catch_99
25259 + move-exception v2
25261 + :cond_9a
25262 + invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25264 + :cond_9d
25265 + if-eqz v0, :cond_b7
25267 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25269 @@ -5456,40 +5465,26 @@
25271 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25273 - if-eqz v1, :cond_bb
25274 + if-eqz v1, :cond_b7
25276 move v2, v5
25278 goto/16 :goto_a
25280 - :catch_b1
25281 - move-exception v2
25283 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25285 - goto :goto_97
25287 - :catchall_b6
25288 - move-exception v2
25290 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25292 - throw v2
25294 - :cond_bb
25295 + :cond_b7
25296 iget-object v2, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25298 - if-eqz v2, :cond_e8
25299 + if-eqz v2, :cond_e4
25301 iget-object v2, p0, Landroid/widget/TextView;->mLayout:Landroid/text/Layout;
25303 - if-eqz v2, :cond_e8
25304 + if-eqz v2, :cond_e4
25306 const/4 v0, 0x1
25308 - if-eqz p3, :cond_d7
25309 + if-eqz p3, :cond_d3
25311 - :try_start_c6
25312 + :try_start_c2
25313 iget-object v5, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25315 iget-object v2, p0, Landroid/widget/TextView;->mText:Ljava/lang/CharSequence;
25316 @@ -5497,24 +5492,24 @@
25317 check-cast v2, Landroid/text/Spannable;
25319 invoke-interface {v5, p0, v2, p3}, Landroid/text/method/MovementMethod;->onKeyOther(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
25320 - :try_end_cf
25321 - .catch Ljava/lang/AbstractMethodError; {:try_start_c6 .. :try_end_cf} :catch_d6
25322 + :try_end_cb
25323 + .catch Ljava/lang/AbstractMethodError; {:try_start_c2 .. :try_end_cb} :catch_d2
25325 move-result v1
25327 const/4 v0, 0x0
25329 - if-eqz v1, :cond_d7
25330 + if-eqz v1, :cond_d3
25332 move v2, v4
25334 goto/16 :goto_a
25336 - :catch_d6
25337 + :catch_d2
25338 move-exception v2
25340 - :cond_d7
25341 - if-eqz v0, :cond_e8
25342 + :cond_d3
25343 + if-eqz v0, :cond_e4
25345 iget-object v4, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25347 @@ -5526,20 +5521,20 @@
25349 move-result v2
25351 - if-eqz v2, :cond_e8
25352 + if-eqz v2, :cond_e4
25354 const/4 v2, 0x2
25356 goto/16 :goto_a
25358 - :cond_e8
25359 + :cond_e4
25360 move v2, v3
25362 goto/16 :goto_a
25366 - :sswitch_data_ec
25367 + :sswitch_data_e8
25368 .sparse-switch
25369 0x4 -> :sswitch_8a
25370 0x17 -> :sswitch_68
25371 diff -Npru stock_framework/smali/com/android/internal/os/BatteryStatsImpl.smali pdroid_framework/smali/com/android/internal/os/BatteryStatsImpl.smali
25372 --- stock_framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-07-02 10:16:21.548994965 -0700
25373 +++ pdroid_framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-07-02 10:16:53.741662682 -0700
25374 @@ -4343,13 +4343,14 @@
25376 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->commit()V
25377 :try_end_30
25378 - .catchall {:try_start_10 .. :try_end_30} :catchall_52
25379 + .catchall {:try_start_10 .. :try_end_30} :catchall_4f
25380 .catch Ljava/io/IOException; {:try_start_10 .. :try_end_30} :catch_3c
25382 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25384 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25386 + :goto_35
25387 invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25389 goto :goto_9
25390 @@ -4378,17 +4379,15 @@
25392 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->rollback()V
25393 :try_end_49
25394 - .catchall {:try_start_3d .. :try_end_49} :catchall_52
25395 + .catchall {:try_start_3d .. :try_end_49} :catchall_4f
25397 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25399 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25401 - invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25403 - goto :goto_9
25404 + goto :goto_35
25406 - :catchall_52
25407 + :catchall_4f
25408 move-exception v3
25410 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25411 diff -Npru stock_framework/smali/com/android/internal/telephony/BaseCommands.smali pdroid_framework/smali/com/android/internal/telephony/BaseCommands.smali
25412 --- stock_framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-07-02 10:16:21.642017121 -0700
25413 +++ pdroid_framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-07-02 10:16:53.846687697 -0700
25414 @@ -555,8 +555,8 @@
25416 invoke-direct {v6, v7}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
25417 :try_end_a
25418 - .catchall {:try_start_3 .. :try_end_a} :catchall_5e
25419 - .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3d
25420 + .catchall {:try_start_3 .. :try_end_a} :catchall_5b
25421 + .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3a
25423 const/16 v7, 0x800
25425 @@ -575,19 +575,21 @@
25427 invoke-direct {v2, v0, v7, v3}, Ljava/lang/String;-><init>([BII)V
25428 :try_end_1a
25429 - .catchall {:try_start_c .. :try_end_1a} :catchall_67
25430 - .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_6a
25431 + .catchall {:try_start_c .. :try_end_1a} :catchall_66
25432 + .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_69
25434 move-object v1, v2
25436 :cond_1b
25437 - if-eqz v6, :cond_6d
25438 + if-eqz v6, :cond_20
25440 :try_start_1d
25441 invoke-virtual {v6}, Ljava/io/FileInputStream;->close()V
25442 :try_end_20
25443 - .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_3a
25444 + .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_64
25446 + :cond_20
25447 + :goto_20
25448 move-object v5, v6
25450 :cond_21
25451 @@ -617,17 +619,10 @@
25452 return-object v1
25454 :catch_3a
25455 - move-exception v7
25457 - move-object v5, v6
25459 - goto :goto_21
25461 - :catch_3d
25462 move-exception v4
25464 - :goto_3e
25465 - :try_start_3e
25466 + :goto_3b
25467 + :try_start_3b
25468 const-string v7, "RILB"
25470 new-instance v8, Ljava/lang/StringBuilder;
25471 @@ -649,61 +644,61 @@
25472 move-result-object v8
25474 invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25475 - :try_end_56
25476 - .catchall {:try_start_3e .. :try_end_56} :catchall_5e
25477 + :try_end_53
25478 + .catchall {:try_start_3b .. :try_end_53} :catchall_5b
25480 if-eqz v5, :cond_21
25482 - :try_start_58
25483 + :try_start_55
25484 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25485 - :try_end_5b
25486 - .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c
25487 + :try_end_58
25488 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_59
25490 goto :goto_21
25492 - :catch_5c
25493 + :catch_59
25494 move-exception v7
25496 goto :goto_21
25498 - :catchall_5e
25499 + :catchall_5b
25500 move-exception v7
25502 - :goto_5f
25503 - if-eqz v5, :cond_64
25504 + :goto_5c
25505 + if-eqz v5, :cond_61
25507 - :try_start_61
25508 + :try_start_5e
25509 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25510 - :try_end_64
25511 - .catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
25512 + :try_end_61
25513 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
25515 - :cond_64
25516 - :goto_64
25517 + :cond_61
25518 + :goto_61
25519 throw v7
25521 - :catch_65
25522 + :catch_62
25523 move-exception v8
25525 - goto :goto_64
25526 + goto :goto_61
25528 - :catchall_67
25529 + :catch_64
25530 move-exception v7
25532 - move-object v5, v6
25534 - goto :goto_5f
25535 + goto :goto_20
25537 - :catch_6a
25538 - move-exception v4
25539 + :catchall_66
25540 + move-exception v7
25542 move-object v5, v6
25544 - goto :goto_3e
25545 + goto :goto_5c
25547 + :catch_69
25548 + move-exception v4
25550 - :cond_6d
25551 move-object v5, v6
25553 - goto :goto_21
25554 + goto :goto_3b
25555 .end method
25558 diff -Npru stock_framework/smali/com/android/internal/telephony/cdma/EriManager.smali pdroid_framework/smali/com/android/internal/telephony/cdma/EriManager.smali
25559 --- stock_framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-07-02 10:16:22.330181025 -0700
25560 +++ pdroid_framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-07-02 10:16:54.523848987 -0700
25561 @@ -666,8 +666,8 @@
25563 invoke-static {v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25564 :try_end_34
25565 - .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_20c
25566 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_207
25567 + .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_209
25568 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_204
25570 move-object/from16 v15, v16
25572 @@ -872,7 +872,7 @@
25573 :try_start_f8
25574 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25575 :try_end_fb
25576 - .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_202
25577 + .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_15c
25579 :cond_fb
25580 :goto_fb
25581 @@ -1058,7 +1058,7 @@
25582 :try_start_190
25583 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25584 :try_end_193
25585 - .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_205
25586 + .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_202
25588 :cond_193
25589 :goto_193
25590 @@ -1184,23 +1184,18 @@
25591 goto/16 :goto_96
25593 :catch_202
25594 - move-exception v2
25596 - goto/16 :goto_fb
25598 - :catch_205
25599 move-exception v18
25601 goto :goto_193
25603 - :catch_207
25604 + :catch_204
25605 move-exception v9
25607 move-object/from16 v15, v16
25609 goto/16 :goto_10a
25611 - :catch_20c
25612 + :catch_209
25613 move-exception v9
25615 move-object/from16 v15, v16
25616 diff -Npru stock_framework/smali/com/android/internal/telephony/IccRecords.smali pdroid_framework/smali/com/android/internal/telephony/IccRecords.smali
25617 --- stock_framework/smali/com/android/internal/telephony/IccRecords.smali 2012-07-02 10:16:21.880073821 -0700
25618 +++ pdroid_framework/smali/com/android/internal/telephony/IccRecords.smali 2012-07-02 10:16:54.065739872 -0700
25619 @@ -260,7 +260,7 @@
25621 iget v3, p1, Landroid/os/Message;->what:I
25623 - packed-switch v3, :pswitch_data_70
25624 + packed-switch v3, :pswitch_data_6c
25626 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V
25628 @@ -327,7 +327,7 @@
25630 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25631 :try_end_47
25632 - .catchall {:try_start_9 .. :try_end_47} :catchall_6a
25633 + .catchall {:try_start_9 .. :try_end_47} :catchall_67
25634 .catch Ljava/lang/RuntimeException; {:try_start_9 .. :try_end_47} :catch_4f
25636 :goto_47
25637 @@ -339,7 +339,7 @@
25638 :try_start_4b
25639 invoke-interface {v2, v0}, Lcom/android/internal/telephony/IccRecords$IccRecordLoaded;->onRecordLoaded(Landroid/os/AsyncResult;)V
25640 :try_end_4e
25641 - .catchall {:try_start_4b .. :try_end_4e} :catchall_6a
25642 + .catchall {:try_start_4b .. :try_end_4e} :catchall_67
25643 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_4e} :catch_4f
25645 goto :goto_47
25646 @@ -368,22 +368,18 @@
25648 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25649 :try_end_66
25650 - .catchall {:try_start_50 .. :try_end_66} :catchall_6a
25651 + .catchall {:try_start_50 .. :try_end_66} :catchall_67
25653 - invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25655 - goto :goto_8
25656 + goto :goto_47
25658 - :catchall_6a
25659 + :catchall_67
25660 move-exception v3
25662 invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25664 throw v3
25666 - nop
25668 - :pswitch_data_70
25669 + :pswitch_data_6c
25670 .packed-switch 0x64
25671 :pswitch_9
25672 .end packed-switch
25673 diff -Npru stock_framework/smali/com/android/internal/telephony/RIL$RILSender.smali pdroid_framework/smali/com/android/internal/telephony/RIL$RILSender.smali
25674 --- stock_framework/smali/com/android/internal/telephony/RIL$RILSender.smali 2012-07-02 10:16:21.990100027 -0700
25675 +++ pdroid_framework/smali/com/android/internal/telephony/RIL$RILSender.smali 2012-07-02 10:16:54.144758693 -0700
25676 @@ -61,7 +61,7 @@
25678 iget v10, v0, Landroid/os/Message;->what:I
25680 - packed-switch v10, :pswitch_data_200
25681 + packed-switch v10, :pswitch_data_1fa
25683 :cond_11
25684 :goto_11
25685 @@ -99,7 +99,7 @@
25687 iput v11, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesPending:I
25688 :try_end_2f
25689 - .catchall {:try_start_13 .. :try_end_2f} :catchall_114
25690 + .catchall {:try_start_13 .. :try_end_2f} :catchall_10e
25691 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_2f} :catch_87
25692 .catch Ljava/lang/RuntimeException; {:try_start_13 .. :try_end_2f} :catch_bd
25694 @@ -121,7 +121,7 @@
25696 monitor-enter v11
25697 :try_end_3b
25698 - .catchall {:try_start_36 .. :try_end_3b} :catchall_114
25699 + .catchall {:try_start_36 .. :try_end_3b} :catchall_10e
25700 .catch Ljava/io/IOException; {:try_start_36 .. :try_end_3b} :catch_87
25701 .catch Ljava/lang/RuntimeException; {:try_start_36 .. :try_end_3b} :catch_bd
25703 @@ -180,7 +180,7 @@
25705 const/16 v11, 0x2000
25707 - if-le v10, v11, :cond_df
25708 + if-le v10, v11, :cond_dc
25710 new-instance v10, Ljava/lang/RuntimeException;
25712 @@ -208,7 +208,7 @@
25714 throw v10
25715 :try_end_87
25716 - .catchall {:try_start_4b .. :try_end_87} :catchall_114
25717 + .catchall {:try_start_4b .. :try_end_87} :catchall_10e
25718 .catch Ljava/io/IOException; {:try_start_4b .. :try_end_87} :catch_87
25719 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_87} :catch_bd
25721 @@ -243,15 +243,15 @@
25723 invoke-virtual {v8}, Lcom/android/internal/telephony/RILRequest;->release()V
25724 :try_end_a3
25725 - .catchall {:try_start_88 .. :try_end_a3} :catchall_114
25726 + .catchall {:try_start_88 .. :try_end_a3} :catchall_10e
25728 :cond_a3
25729 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25731 + :goto_a5
25732 #calls: Lcom/android/internal/telephony/RIL;->releaseWakeLockIfDone()V
25733 invoke-static {v10}, Lcom/android/internal/telephony/RIL;->access$000(Lcom/android/internal/telephony/RIL;)V
25735 - :goto_a8
25736 if-nez v1, :cond_11
25738 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25739 @@ -281,7 +281,7 @@
25740 :try_start_bc
25741 throw v10
25742 :try_end_bd
25743 - .catchall {:try_start_bc .. :try_end_bd} :catchall_114
25744 + .catchall {:try_start_bc .. :try_end_bd} :catchall_10e
25745 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_bd} :catch_87
25746 .catch Ljava/lang/RuntimeException; {:try_start_bc .. :try_end_bd} :catch_bd
25748 @@ -316,18 +316,15 @@
25750 invoke-virtual {v8}, Lcom/android/internal/telephony/RILRequest;->release()V
25751 :try_end_d9
25752 - .catchall {:try_start_be .. :try_end_d9} :catchall_114
25753 + .catchall {:try_start_be .. :try_end_d9} :catchall_10e
25755 :cond_d9
25756 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25758 - #calls: Lcom/android/internal/telephony/RIL;->releaseWakeLockIfDone()V
25759 - invoke-static {v10}, Lcom/android/internal/telephony/RIL;->access$000(Lcom/android/internal/telephony/RIL;)V
25761 - goto :goto_a8
25762 + goto :goto_a5
25764 - :cond_df
25765 - :try_start_df
25766 + :cond_dc
25767 + :try_start_dc
25768 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->dataLength:[B
25770 const/4 v11, 0x0
25771 @@ -381,19 +378,16 @@
25772 move-result-object v10
25774 invoke-virtual {v10, v3}, Ljava/io/OutputStream;->write([B)V
25775 - :try_end_10e
25776 - .catchall {:try_start_df .. :try_end_10e} :catchall_114
25777 - .catch Ljava/io/IOException; {:try_start_df .. :try_end_10e} :catch_87
25778 - .catch Ljava/lang/RuntimeException; {:try_start_df .. :try_end_10e} :catch_bd
25779 + :try_end_10b
25780 + .catchall {:try_start_dc .. :try_end_10b} :catchall_10e
25781 + .catch Ljava/io/IOException; {:try_start_dc .. :try_end_10b} :catch_87
25782 + .catch Ljava/lang/RuntimeException; {:try_start_dc .. :try_end_10b} :catch_bd
25784 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25786 - #calls: Lcom/android/internal/telephony/RIL;->releaseWakeLockIfDone()V
25787 - invoke-static {v10}, Lcom/android/internal/telephony/RIL;->access$000(Lcom/android/internal/telephony/RIL;)V
25789 - goto :goto_a8
25790 + goto :goto_a5
25792 - :catchall_114
25793 + :catchall_10e
25794 move-exception v10
25796 iget-object v11, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25797 @@ -403,14 +397,14 @@
25799 throw v10
25801 - :pswitch_11b
25802 + :pswitch_115
25803 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25805 iget-object v11, v10, Lcom/android/internal/telephony/RIL;->mWakeLock:Landroid/os/PowerManager$WakeLock;
25807 monitor-enter v11
25809 - :try_start_120
25810 + :try_start_11a
25811 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25813 iget-object v10, v10, Lcom/android/internal/telephony/RIL;->mWakeLock:Landroid/os/PowerManager$WakeLock;
25814 @@ -419,13 +413,13 @@
25816 move-result v10
25818 - if-eqz v10, :cond_1f7
25819 + if-eqz v10, :cond_1f1
25821 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25823 iget v10, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesWaiting:I
25825 - if-eqz v10, :cond_1c3
25826 + if-eqz v10, :cond_1bd
25828 const-string v10, "RILJ"
25830 @@ -476,10 +470,10 @@
25831 iget-object v12, v10, Lcom/android/internal/telephony/RIL;->mRequestsList:Ljava/util/ArrayList;
25833 monitor-enter v12
25834 - :try_end_162
25835 - .catchall {:try_start_120 .. :try_end_162} :catchall_1fa
25836 + :try_end_15c
25837 + .catchall {:try_start_11a .. :try_end_15c} :catchall_1f4
25839 - :try_start_162
25840 + :try_start_15c
25841 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25843 iget-object v10, v10, Lcom/android/internal/telephony/RIL;->mRequestsList:Ljava/util/ArrayList;
25844 @@ -512,8 +506,8 @@
25846 const/4 v6, 0x0
25848 - :goto_183
25849 - if-ge v6, v2, :cond_1c2
25850 + :goto_17d
25851 + if-ge v6, v2, :cond_1bc
25853 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25855 @@ -575,20 +569,20 @@
25857 add-int/lit8 v6, v6, 0x1
25859 - goto :goto_183
25860 + goto :goto_17d
25862 - :cond_1c2
25863 + :cond_1bc
25864 monitor-exit v12
25865 - :try_end_1c3
25866 - .catchall {:try_start_162 .. :try_end_1c3} :catchall_1fd
25867 + :try_end_1bd
25868 + .catchall {:try_start_15c .. :try_end_1bd} :catchall_1f7
25870 - :cond_1c3
25871 - :try_start_1c3
25872 + :cond_1bd
25873 + :try_start_1bd
25874 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25876 iget v10, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesPending:I
25878 - if-eqz v10, :cond_1f0
25879 + if-eqz v10, :cond_1ea
25881 const-string v10, "RILJ"
25883 @@ -628,44 +622,44 @@
25885 iput v12, v10, Lcom/android/internal/telephony/RIL;->mRequestMessagesPending:I
25887 - :cond_1f0
25888 + :cond_1ea
25889 iget-object v10, p0, Lcom/android/internal/telephony/RIL$RILSender;->this$0:Lcom/android/internal/telephony/RIL;
25891 iget-object v10, v10, Lcom/android/internal/telephony/RIL;->mWakeLock:Landroid/os/PowerManager$WakeLock;
25893 invoke-virtual {v10}, Landroid/os/PowerManager$WakeLock;->release()V
25895 - :cond_1f7
25896 + :cond_1f1
25897 monitor-exit v11
25899 goto/16 :goto_11
25901 - :catchall_1fa
25902 + :catchall_1f4
25903 move-exception v10
25905 monitor-exit v11
25906 - :try_end_1fc
25907 - .catchall {:try_start_1c3 .. :try_end_1fc} :catchall_1fa
25908 + :try_end_1f6
25909 + .catchall {:try_start_1bd .. :try_end_1f6} :catchall_1f4
25911 throw v10
25913 - :catchall_1fd
25914 + :catchall_1f7
25915 move-exception v10
25917 - :try_start_1fe
25918 + :try_start_1f8
25919 monitor-exit v12
25920 - :try_end_1ff
25921 - .catchall {:try_start_1fe .. :try_end_1ff} :catchall_1fd
25922 + :try_end_1f9
25923 + .catchall {:try_start_1f8 .. :try_end_1f9} :catchall_1f7
25925 - :try_start_1ff
25926 + :try_start_1f9
25927 throw v10
25928 - :try_end_200
25929 - .catchall {:try_start_1ff .. :try_end_200} :catchall_1fa
25930 + :try_end_1fa
25931 + .catchall {:try_start_1f9 .. :try_end_1fa} :catchall_1f4
25933 - :pswitch_data_200
25934 + :pswitch_data_1fa
25935 .packed-switch 0x1
25936 :pswitch_12
25937 - :pswitch_11b
25938 + :pswitch_115
25939 .end packed-switch
25940 .end method
25942 diff -Npru stock_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali pdroid_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali
25943 --- stock_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali 2012-07-02 10:16:22.587242253 -0700
25944 +++ pdroid_framework/smali/com/android/internal/telephony/sip/SipPhone$SipConnection.smali 2012-07-02 10:16:54.806916409 -0700
25945 @@ -437,8 +437,8 @@
25947 invoke-virtual {v1}, Landroid/net/sip/SipAudioCall;->endCall()V
25948 :try_end_54
25949 - .catchall {:try_start_49 .. :try_end_54} :catchall_89
25950 - .catch Landroid/net/sip/SipException; {:try_start_49 .. :try_end_54} :catch_6f
25951 + .catchall {:try_start_49 .. :try_end_54} :catchall_86
25952 + .catch Landroid/net/sip/SipException; {:try_start_49 .. :try_end_54} :catch_6c
25954 :cond_54
25955 :try_start_54
25956 @@ -454,7 +454,7 @@
25958 sget-object v5, Lcom/android/internal/telephony/Call$State;->WAITING:Lcom/android/internal/telephony/Call$State;
25960 - if-ne v2, v5, :cond_6c
25961 + if-ne v2, v5, :cond_9e
25963 :cond_62
25964 sget-object v2, Lcom/android/internal/telephony/Connection$DisconnectCause;->INCOMING_REJECTED:Lcom/android/internal/telephony/Connection$DisconnectCause;
25965 @@ -475,18 +475,10 @@
25967 throw v2
25969 - :cond_6c
25970 - :try_start_6c
25971 - sget-object v2, Lcom/android/internal/telephony/Connection$DisconnectCause;->LOCAL:Lcom/android/internal/telephony/Connection$DisconnectCause;
25972 - :try_end_6e
25973 - .catchall {:try_start_6c .. :try_end_6e} :catchall_69
25975 - goto :goto_64
25977 - :catch_6f
25978 + :catch_6c
25979 move-exception v0
25981 - :try_start_70
25982 + :try_start_6d
25983 new-instance v2, Lcom/android/internal/telephony/CallStateException;
25985 new-instance v3, Ljava/lang/StringBuilder;
25986 @@ -510,41 +502,46 @@
25987 invoke-direct {v2, v3}, Lcom/android/internal/telephony/CallStateException;-><init>(Ljava/lang/String;)V
25989 throw v2
25990 - :try_end_89
25991 - .catchall {:try_start_70 .. :try_end_89} :catchall_89
25992 + :try_end_86
25993 + .catchall {:try_start_6d .. :try_end_86} :catchall_86
25995 - :catchall_89
25996 + :catchall_86
25997 move-exception v2
25999 - :try_start_8a
26000 + :try_start_87
26001 iget-object v5, p0, Lcom/android/internal/telephony/sip/SipPhone$SipConnection;->mAdapter:Lcom/android/internal/telephony/sip/SipPhone$SipAudioCallAdapter;
26003 iget-object v3, p0, Lcom/android/internal/telephony/sip/SipPhone$SipConnection;->mState:Lcom/android/internal/telephony/Call$State;
26005 sget-object v6, Lcom/android/internal/telephony/Call$State;->INCOMING:Lcom/android/internal/telephony/Call$State;
26007 - if-eq v3, v6, :cond_98
26008 + if-eq v3, v6, :cond_95
26010 iget-object v3, p0, Lcom/android/internal/telephony/sip/SipPhone$SipConnection;->mState:Lcom/android/internal/telephony/Call$State;
26012 sget-object v6, Lcom/android/internal/telephony/Call$State;->WAITING:Lcom/android/internal/telephony/Call$State;
26014 - if-ne v3, v6, :cond_9e
26015 + if-ne v3, v6, :cond_9b
26017 - :cond_98
26018 + :cond_95
26019 sget-object v3, Lcom/android/internal/telephony/Connection$DisconnectCause;->INCOMING_REJECTED:Lcom/android/internal/telephony/Connection$DisconnectCause;
26021 - :goto_9a
26022 + :goto_97
26023 invoke-virtual {v5, v3}, Lcom/android/internal/telephony/sip/SipPhone$SipAudioCallAdapter;->onCallEnded(Lcom/android/internal/telephony/Connection$DisconnectCause;)V
26025 throw v2
26027 - :cond_9e
26028 + :cond_9b
26029 sget-object v3, Lcom/android/internal/telephony/Connection$DisconnectCause;->LOCAL:Lcom/android/internal/telephony/Connection$DisconnectCause;
26031 + goto :goto_97
26033 + :cond_9e
26034 + sget-object v2, Lcom/android/internal/telephony/Connection$DisconnectCause;->LOCAL:Lcom/android/internal/telephony/Connection$DisconnectCause;
26035 :try_end_a0
26036 - .catchall {:try_start_8a .. :try_end_a0} :catchall_69
26037 + .catchall {:try_start_87 .. :try_end_a0} :catchall_69
26039 - goto :goto_9a
26040 + goto :goto_64
26041 .end method
26043 .method hold()V
26044 diff -Npru stock_framework/smali/com/android/internal/telephony/SMSDispatcher.smali pdroid_framework/smali/com/android/internal/telephony/SMSDispatcher.smali
26045 --- stock_framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-07-02 10:16:22.010104792 -0700
26046 +++ pdroid_framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-07-02 10:16:54.148759646 -0700
26047 @@ -1777,14 +1777,15 @@
26049 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
26050 :try_end_9b
26051 - .catchall {:try_start_5 .. :try_end_9b} :catchall_1a2
26052 - .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_192
26053 + .catchall {:try_start_5 .. :try_end_9b} :catchall_19c
26054 + .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_18f
26056 :cond_9b
26057 const/4 v3, 0x1
26059 if-eqz v9, :cond_a1
26061 + :goto_9e
26062 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26064 :cond_a1
26065 @@ -1829,7 +1830,7 @@
26067 add-int/lit8 v3, p5, -0x1
26069 - if-eq v10, v3, :cond_130
26070 + if-eq v10, v3, :cond_12d
26072 new-instance v23, Landroid/content/ContentValues;
26074 @@ -1919,20 +1920,14 @@
26075 move-object/from16 v0, v23
26077 invoke-virtual {v3, v4, v0}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
26078 - :try_end_128
26079 - .catchall {:try_start_a2 .. :try_end_128} :catchall_1a2
26080 - .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_128} :catch_192
26082 const/4 v3, 0x1
26084 if-eqz v9, :cond_a1
26086 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26088 - goto/16 :goto_a1
26089 + goto/16 :goto_9e
26091 - :cond_130
26092 - :try_start_130
26093 + :cond_12d
26094 move/from16 v0, p5
26096 new-array v0, v0, [[B
26097 @@ -1941,8 +1936,8 @@
26099 const/4 v15, 0x0
26101 - :goto_137
26102 - if-ge v15, v10, :cond_161
26103 + :goto_134
26104 + if-ge v15, v10, :cond_15e
26106 invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
26108 @@ -1952,11 +1947,11 @@
26110 move-result v11
26112 - if-nez p9, :cond_145
26113 + if-nez p9, :cond_142
26115 add-int/lit8 v11, v11, -0x1
26117 - :cond_145
26118 + :cond_142
26119 const/4 v3, 0x0
26121 invoke-interface {v9, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
26122 @@ -1969,7 +1964,7 @@
26124 aput-object v3, v20, v11
26126 - if-nez v11, :cond_15e
26127 + if-nez v11, :cond_15b
26129 const/4 v3, 0x2
26131 @@ -1977,7 +1972,7 @@
26133 move-result v3
26135 - if-nez v3, :cond_15e
26136 + if-nez v3, :cond_15b
26138 const/4 v3, 0x2
26140 @@ -1985,17 +1980,17 @@
26142 move-result p8
26144 - :cond_15e
26145 + :cond_15b
26146 add-int/lit8 v15, v15, 0x1
26148 - goto :goto_137
26149 + goto :goto_134
26151 - :cond_161
26152 - if-eqz p9, :cond_18d
26153 + :cond_15e
26154 + if-eqz p9, :cond_18a
26156 aput-object p1, v20, p4
26158 - :goto_165
26159 + :goto_162
26160 move-object/from16 v0, p0
26162 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mResolver:Landroid/content/ContentResolver;
26163 @@ -2003,16 +1998,16 @@
26164 sget-object v4, Lcom/android/internal/telephony/SMSDispatcher;->mRawUri:Landroid/net/Uri;
26166 invoke-virtual {v3, v4, v6, v7}, Landroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
26167 - :try_end_16e
26168 - .catchall {:try_start_130 .. :try_end_16e} :catchall_1a2
26169 - .catch Landroid/database/SQLException; {:try_start_130 .. :try_end_16e} :catch_192
26170 + :try_end_16b
26171 + .catchall {:try_start_a2 .. :try_end_16b} :catchall_19c
26172 + .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_16b} :catch_18f
26174 - if-eqz v9, :cond_173
26175 + if-eqz v9, :cond_170
26177 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26179 - :cond_173
26180 - if-eqz p9, :cond_1d1
26181 + :cond_170
26182 + if-eqz p9, :cond_1cb
26184 new-instance v19, Ljava/io/ByteArrayOutputStream;
26186 @@ -2020,10 +2015,10 @@
26188 const/4 v15, 0x0
26190 - :goto_17b
26191 + :goto_178
26192 move/from16 v0, p5
26194 - if-ge v15, v0, :cond_1a9
26195 + if-ge v15, v0, :cond_1a3
26197 aget-object v3, v20, v15
26199 @@ -2039,50 +2034,48 @@
26201 add-int/lit8 v15, v15, 0x1
26203 - goto :goto_17b
26204 + goto :goto_178
26206 - :cond_18d
26207 + :cond_18a
26208 add-int/lit8 v3, p4, -0x1
26210 - :try_start_18f
26211 + :try_start_18c
26212 aput-object p1, v20, v3
26213 - :try_end_191
26214 - .catchall {:try_start_18f .. :try_end_191} :catchall_1a2
26215 - .catch Landroid/database/SQLException; {:try_start_18f .. :try_end_191} :catch_192
26216 + :try_end_18e
26217 + .catchall {:try_start_18c .. :try_end_18e} :catchall_19c
26218 + .catch Landroid/database/SQLException; {:try_start_18c .. :try_end_18e} :catch_18f
26220 - goto :goto_165
26221 + goto :goto_162
26223 - :catch_192
26224 + :catch_18f
26225 move-exception v14
26227 - :try_start_193
26228 + :try_start_190
26229 const-string v3, "SMS"
26231 const-string v4, "Can\'t access multipart SMS database"
26233 invoke-static {v3, v4, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
26234 - :try_end_19a
26235 - .catchall {:try_start_193 .. :try_end_19a} :catchall_1a2
26236 + :try_end_197
26237 + .catchall {:try_start_190 .. :try_end_197} :catchall_19c
26239 const/4 v3, 0x2
26241 if-eqz v9, :cond_a1
26243 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26245 - goto/16 :goto_a1
26246 + goto/16 :goto_9e
26248 - :catchall_1a2
26249 + :catchall_19c
26250 move-exception v3
26252 - if-eqz v9, :cond_1a8
26253 + if-eqz v9, :cond_1a2
26255 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26257 - :cond_1a8
26258 + :cond_1a2
26259 throw v3
26261 - :cond_1a9
26262 + :cond_1a3
26263 invoke-virtual/range {v19 .. v19}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
26265 move-result-object v13
26266 @@ -2091,7 +2084,7 @@
26268 move/from16 v0, p8
26270 - if-ne v0, v3, :cond_1bd
26271 + if-ne v0, v3, :cond_1b7
26273 move-object/from16 v0, p0
26275 @@ -2103,7 +2096,7 @@
26277 goto/16 :goto_a1
26279 - :cond_1bd
26280 + :cond_1b7
26281 const/4 v3, 0x1
26283 new-array v0, v3, [[B
26284 @@ -2126,18 +2119,18 @@
26286 goto/16 :goto_a1
26288 - :cond_1d1
26289 + :cond_1cb
26290 const/4 v3, -0x1
26292 move/from16 v0, p8
26294 - if-eq v0, v3, :cond_218
26295 + if-eq v0, v3, :cond_212
26297 const/16 v3, 0xb84
26299 move/from16 v0, p8
26301 - if-ne v0, v3, :cond_20c
26302 + if-ne v0, v3, :cond_206
26304 new-instance v19, Ljava/io/ByteArrayOutputStream;
26306 @@ -2145,10 +2138,10 @@
26308 const/4 v15, 0x0
26310 - :goto_1e2
26311 + :goto_1dc
26312 move/from16 v0, p5
26314 - if-ge v15, v0, :cond_1fe
26315 + if-ge v15, v0, :cond_1f8
26317 aget-object v3, v20, v15
26319 @@ -2174,9 +2167,9 @@
26321 add-int/lit8 v15, v15, 0x1
26323 - goto :goto_1e2
26324 + goto :goto_1dc
26326 - :cond_1fe
26327 + :cond_1f8
26328 move-object/from16 v0, p0
26330 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
26331 @@ -2191,7 +2184,7 @@
26333 goto/16 :goto_a1
26335 - :cond_20c
26336 + :cond_206
26337 move-object/from16 v0, p0
26339 move-object/from16 v1, v20
26340 @@ -2200,19 +2193,19 @@
26342 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPortAddressedPdus([[BI)V
26344 - :goto_215
26345 + :goto_20f
26346 const/4 v3, -0x1
26348 goto/16 :goto_a1
26350 - :cond_218
26351 + :cond_212
26352 move-object/from16 v0, p0
26354 move-object/from16 v1, v20
26356 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPdus([[B)V
26358 - goto :goto_215
26359 + goto :goto_20f
26360 .end method
26362 .method protected abstract sendData(Ljava/lang/String;Ljava/lang/String;I[BLandroid/app/PendingIntent;Landroid/app/PendingIntent;)V