Fixed pdroid security hole (ported from OpenPDroid)
[auto-patcher.git] / patches / pdroid / 4.0 / aokp / 20120510 / framework.patch
blobf3d4cc379c98a1b569ec813199b90a87e77eff4d
1 diff -Npru stock-framework/smali/android/accounts/AccountAuthenticatorCache.smali pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali
2 --- stock-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-05-10 15:14:08.626333533 -0500
3 +++ pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-05-10 15:14:31.226445603 -0500
4 @@ -136,7 +136,7 @@
6 invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
7 :try_end_2c
8 - .catchall {:try_start_7 .. :try_end_2c} :catchall_3e
9 + .catchall {:try_start_7 .. :try_end_2c} :catchall_3b
11 move-result v0
13 @@ -144,9 +144,9 @@
15 const/4 v0, 0x0
17 + :goto_30
18 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
20 - :goto_33
21 return-object v0
23 :cond_34
24 @@ -157,13 +157,11 @@
26 invoke-direct/range {v0 .. v7}, Landroid/accounts/AuthenticatorDescription;-><init>(Ljava/lang/String;Ljava/lang/String;IIIIZ)V
27 :try_end_3a
28 - .catchall {:try_start_34 .. :try_end_3a} :catchall_3e
29 + .catchall {:try_start_34 .. :try_end_3a} :catchall_3b
31 - invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
33 - goto :goto_33
34 + goto :goto_30
36 - :catchall_3e
37 + :catchall_3b
38 move-exception v0
40 invoke-virtual {v8}, Landroid/content/res/TypedArray;->recycle()V
41 diff -Npru stock-framework/smali/android/accounts/AccountManager$AmsTask.smali pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali
42 --- stock-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-05-10 15:14:08.650333658 -0500
43 +++ pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-05-10 15:14:31.274445841 -0500
44 @@ -133,102 +133,102 @@
46 :try_start_e
47 invoke-virtual {p0}, Landroid/accounts/AccountManager$AmsTask;->get()Ljava/lang/Object;
48 + :try_end_11
49 + .catchall {:try_start_e .. :try_end_11} :catchall_2a
50 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_23
51 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_72
52 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_60
53 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_2f
55 move-result-object v2
57 + :try_start_12
58 check-cast v2, Landroid/os/Bundle;
59 :try_end_14
60 - .catchall {:try_start_e .. :try_end_14} :catchall_2d
61 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_14} :catch_26
62 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_14} :catch_32
63 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_14} :catch_3c
64 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_14} :catch_41
65 + .catchall {:try_start_12 .. :try_end_14} :catchall_2a
66 + .catch Ljava/util/concurrent/CancellationException; {:try_start_12 .. :try_end_14} :catch_23
67 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_12 .. :try_end_14} :catch_72
68 + .catch Ljava/lang/InterruptedException; {:try_start_12 .. :try_end_14} :catch_6a
69 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_12 .. :try_end_14} :catch_2f
71 + :goto_14
72 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
74 - :goto_17
75 return-object v2
77 :cond_18
78 :try_start_18
79 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
80 + :try_end_1b
81 + .catchall {:try_start_18 .. :try_end_1b} :catchall_2a
82 + .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_1b} :catch_23
83 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_1b} :catch_72
84 + .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_1b} :catch_6c
85 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_1b} :catch_2f
87 move-result-wide v2
89 + :try_start_1c
90 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$AmsTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
91 + :try_end_1f
92 + .catchall {:try_start_1c .. :try_end_1f} :catchall_2a
93 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1c .. :try_end_1f} :catch_23
94 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1c .. :try_end_1f} :catch_72
95 + .catch Ljava/lang/InterruptedException; {:try_start_1c .. :try_end_1f} :catch_6e
96 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1c .. :try_end_1f} :catch_2f
98 move-result-object v2
100 + :try_start_20
101 check-cast v2, Landroid/os/Bundle;
102 :try_end_22
103 - .catchall {:try_start_18 .. :try_end_22} :catchall_2d
104 - .catch Ljava/util/concurrent/CancellationException; {:try_start_18 .. :try_end_22} :catch_26
105 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_18 .. :try_end_22} :catch_32
106 - .catch Ljava/lang/InterruptedException; {:try_start_18 .. :try_end_22} :catch_3c
107 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_18 .. :try_end_22} :catch_41
108 + .catchall {:try_start_20 .. :try_end_22} :catchall_2a
109 + .catch Ljava/util/concurrent/CancellationException; {:try_start_20 .. :try_end_22} :catch_23
110 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_20 .. :try_end_22} :catch_72
111 + .catch Ljava/lang/InterruptedException; {:try_start_20 .. :try_end_22} :catch_70
112 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_20 .. :try_end_22} :catch_2f
114 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
116 - goto :goto_17
117 + goto :goto_14
119 - :catch_26
120 + :catch_23
121 move-exception v1
123 - :try_start_27
124 + :try_start_24
125 new-instance v2, Landroid/accounts/OperationCanceledException;
127 invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
129 throw v2
130 - :try_end_2d
131 - .catchall {:try_start_27 .. :try_end_2d} :catchall_2d
132 + :try_end_2a
133 + .catchall {:try_start_24 .. :try_end_2a} :catchall_2a
135 - :catchall_2d
136 + :catchall_2a
137 move-exception v2
139 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
141 throw v2
143 - :catch_32
144 - move-exception v2
146 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
148 - :goto_36
149 - new-instance v2, Landroid/accounts/OperationCanceledException;
151 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
153 - throw v2
155 - :catch_3c
156 - move-exception v2
158 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
160 - goto :goto_36
162 - :catch_41
163 + :catch_2f
164 move-exception v1
166 - :try_start_42
167 + :try_start_30
168 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
170 move-result-object v0
172 instance-of v2, v0, Ljava/io/IOException;
174 - if-eqz v2, :cond_4d
175 + if-eqz v2, :cond_3b
177 check-cast v0, Ljava/io/IOException;
179 throw v0
181 - :cond_4d
182 + :cond_3b
183 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
185 - if-eqz v2, :cond_57
186 + if-eqz v2, :cond_45
188 new-instance v2, Landroid/accounts/AuthenticatorException;
190 @@ -236,41 +236,78 @@
192 throw v2
194 - :cond_57
195 + :cond_45
196 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
198 - if-eqz v2, :cond_5e
199 + if-eqz v2, :cond_4c
201 check-cast v0, Landroid/accounts/AuthenticatorException;
203 throw v0
205 - :cond_5e
206 + :cond_4c
207 instance-of v2, v0, Ljava/lang/RuntimeException;
209 - if-eqz v2, :cond_65
210 + if-eqz v2, :cond_53
212 check-cast v0, Ljava/lang/RuntimeException;
214 throw v0
216 - :cond_65
217 + :cond_53
218 instance-of v2, v0, Ljava/lang/Error;
220 - if-eqz v2, :cond_6c
221 + if-eqz v2, :cond_5a
223 check-cast v0, Ljava/lang/Error;
225 throw v0
227 - :cond_6c
228 + :cond_5a
229 new-instance v2, Ljava/lang/IllegalStateException;
231 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
233 throw v2
234 - :try_end_72
235 - .catchall {:try_start_42 .. :try_end_72} :catchall_2d
236 + :try_end_60
237 + .catchall {:try_start_30 .. :try_end_60} :catchall_2a
239 + :catch_60
240 + move-exception v2
242 + :goto_61
243 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$AmsTask;->cancel(Z)Z
245 + new-instance v2, Landroid/accounts/OperationCanceledException;
247 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
249 + throw v2
251 + :catch_6a
252 + move-exception v2
254 + goto :goto_61
256 + :catch_6c
257 + move-exception v2
259 + goto :goto_61
261 + :catch_6e
262 + move-exception v2
264 + goto :goto_61
266 + :catch_70
267 + move-exception v2
269 + goto :goto_61
271 + :catch_72
272 + move-exception v2
274 + goto :goto_61
275 .end method
278 diff -Npru stock-framework/smali/android/accounts/AccountManager$Future2Task.smali pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali
279 --- stock-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-05-10 15:14:08.642333614 -0500
280 +++ pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-05-10 15:14:31.266445800 -0500
281 @@ -101,95 +101,74 @@
282 :try_start_e
283 invoke-virtual {p0}, Landroid/accounts/AccountManager$Future2Task;->get()Ljava/lang/Object;
284 :try_end_11
285 - .catchall {:try_start_e .. :try_end_11} :catchall_42
286 - .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_22
287 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_2c
288 - .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_31
289 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_36
290 + .catchall {:try_start_e .. :try_end_11} :catchall_2b
291 + .catch Ljava/lang/InterruptedException; {:try_start_e .. :try_end_11} :catch_69
292 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_e .. :try_end_11} :catch_63
293 + .catch Ljava/util/concurrent/CancellationException; {:try_start_e .. :try_end_11} :catch_55
294 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_e .. :try_end_11} :catch_1f
296 move-result-object v2
298 + :goto_12
299 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
301 - :goto_15
302 return-object v2
304 :cond_16
305 :try_start_16
306 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
307 + :try_end_19
308 + .catchall {:try_start_16 .. :try_end_19} :catchall_2b
309 + .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_19} :catch_69
310 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_19} :catch_65
311 + .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_19} :catch_5f
312 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_19} :catch_1f
314 move-result-wide v2
316 + :try_start_1a
317 invoke-virtual {p0, v2, v3, p2}, Landroid/accounts/AccountManager$Future2Task;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
318 :try_end_1d
319 - .catchall {:try_start_16 .. :try_end_1d} :catchall_42
320 - .catch Ljava/lang/InterruptedException; {:try_start_16 .. :try_end_1d} :catch_22
321 - .catch Ljava/util/concurrent/TimeoutException; {:try_start_16 .. :try_end_1d} :catch_2c
322 - .catch Ljava/util/concurrent/CancellationException; {:try_start_16 .. :try_end_1d} :catch_31
323 - .catch Ljava/util/concurrent/ExecutionException; {:try_start_16 .. :try_end_1d} :catch_36
324 + .catchall {:try_start_1a .. :try_end_1d} :catchall_2b
325 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_69
326 + .catch Ljava/util/concurrent/TimeoutException; {:try_start_1a .. :try_end_1d} :catch_67
327 + .catch Ljava/util/concurrent/CancellationException; {:try_start_1a .. :try_end_1d} :catch_61
328 + .catch Ljava/util/concurrent/ExecutionException; {:try_start_1a .. :try_end_1d} :catch_1f
330 move-result-object v2
332 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
334 - goto :goto_15
336 - :catch_22
337 - move-exception v2
338 + goto :goto_12
340 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
342 - :goto_26
343 - new-instance v2, Landroid/accounts/OperationCanceledException;
345 - invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
347 - throw v2
349 - :catch_2c
350 - move-exception v2
352 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
354 - goto :goto_26
356 - :catch_31
357 - move-exception v2
359 - invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
361 - goto :goto_26
363 - :catch_36
364 + :catch_1f
365 move-exception v1
367 - :try_start_37
368 + :try_start_20
369 invoke-virtual {v1}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable;
371 move-result-object v0
373 instance-of v2, v0, Ljava/io/IOException;
375 - if-eqz v2, :cond_47
376 + if-eqz v2, :cond_30
378 check-cast v0, Ljava/io/IOException;
380 throw v0
381 - :try_end_42
382 - .catchall {:try_start_37 .. :try_end_42} :catchall_42
383 + :try_end_2b
384 + .catchall {:try_start_20 .. :try_end_2b} :catchall_2b
386 - :catchall_42
387 + :catchall_2b
388 move-exception v2
390 invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
392 throw v2
394 - :cond_47
395 - :try_start_47
396 + :cond_30
397 + :try_start_30
398 instance-of v2, v0, Ljava/lang/UnsupportedOperationException;
400 - if-eqz v2, :cond_51
401 + if-eqz v2, :cond_3a
403 new-instance v2, Landroid/accounts/AuthenticatorException;
405 @@ -197,41 +176,83 @@
407 throw v2
409 - :cond_51
410 + :cond_3a
411 instance-of v2, v0, Landroid/accounts/AuthenticatorException;
413 - if-eqz v2, :cond_58
414 + if-eqz v2, :cond_41
416 check-cast v0, Landroid/accounts/AuthenticatorException;
418 throw v0
420 - :cond_58
421 + :cond_41
422 instance-of v2, v0, Ljava/lang/RuntimeException;
424 - if-eqz v2, :cond_5f
425 + if-eqz v2, :cond_48
427 check-cast v0, Ljava/lang/RuntimeException;
429 throw v0
431 - :cond_5f
432 + :cond_48
433 instance-of v2, v0, Ljava/lang/Error;
435 - if-eqz v2, :cond_66
436 + if-eqz v2, :cond_4f
438 check-cast v0, Ljava/lang/Error;
440 throw v0
442 - :cond_66
443 + :cond_4f
444 new-instance v2, Ljava/lang/IllegalStateException;
446 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/Throwable;)V
448 throw v2
449 - :try_end_6c
450 - .catchall {:try_start_47 .. :try_end_6c} :catchall_42
451 + :try_end_55
452 + .catchall {:try_start_30 .. :try_end_55} :catchall_2b
454 + :catch_55
455 + move-exception v2
457 + :goto_56
458 + invoke-virtual {p0, v4}, Landroid/accounts/AccountManager$Future2Task;->cancel(Z)Z
460 + new-instance v2, Landroid/accounts/OperationCanceledException;
462 + invoke-direct {v2}, Landroid/accounts/OperationCanceledException;-><init>()V
464 + throw v2
466 + :catch_5f
467 + move-exception v2
469 + goto :goto_56
471 + :catch_61
472 + move-exception v2
474 + goto :goto_56
476 + :catch_63
477 + move-exception v2
479 + goto :goto_56
481 + :catch_65
482 + move-exception v2
484 + goto :goto_56
486 + :catch_67
487 + move-exception v2
489 + goto :goto_56
491 + :catch_69
492 + move-exception v2
494 + goto :goto_56
495 .end method
498 diff -Npru stock-framework/smali/android/accounts/AccountManagerService.smali pdroid-framework/smali/android/accounts/AccountManagerService.smali
499 --- stock-framework/smali/android/accounts/AccountManagerService.smali 2012-05-10 15:14:08.794334367 -0500
500 +++ pdroid-framework/smali/android/accounts/AccountManagerService.smali 2012-05-10 15:14:31.490446909 -0500
501 @@ -1502,23 +1502,21 @@
503 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
504 :try_end_2a
505 - .catchall {:try_start_20 .. :try_end_2a} :catchall_35
506 + .catchall {:try_start_20 .. :try_end_2a} :catchall_32
508 move-result-wide v0
510 + :goto_2b
511 invoke-interface {v8}, Landroid/database/Cursor;->close()V
513 - :goto_2e
514 return-wide v0
516 :cond_2f
517 const-wide/16 v0, -0x1
519 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
521 - goto :goto_2e
522 + goto :goto_2b
524 - :catchall_35
525 + :catchall_32
526 move-exception v0
528 invoke-interface {v8}, Landroid/database/Cursor;->close()V
529 @@ -1713,23 +1711,21 @@
531 invoke-interface {v8, v0}, Landroid/database/Cursor;->getLong(I)J
532 :try_end_45
533 - .catchall {:try_start_3b .. :try_end_45} :catchall_50
534 + .catchall {:try_start_3b .. :try_end_45} :catchall_4d
536 move-result-wide v0
538 + :goto_46
539 invoke-interface {v8}, Landroid/database/Cursor;->close()V
541 - :goto_49
542 return-wide v0
544 :cond_4a
545 const-wide/16 v0, -0x1
547 - invoke-interface {v8}, Landroid/database/Cursor;->close()V
549 - goto :goto_49
550 + goto :goto_46
552 - :catchall_50
553 + :catchall_4d
554 move-exception v0
556 invoke-interface {v8}, Landroid/database/Cursor;->close()V
557 @@ -4581,7 +4577,7 @@
558 const/16 v16, 0x1
560 :goto_68
561 - if-eqz v16, :cond_ba
562 + if-eqz v16, :cond_b3
564 const-string v4, "accounts"
566 @@ -4609,7 +4605,7 @@
568 move-result v4
570 - if-eqz v4, :cond_b3
571 + if-eqz v4, :cond_175
573 new-instance v4, Ljava/lang/StringBuilder;
575 @@ -4679,20 +4675,9 @@
576 goto :goto_68
578 :cond_b3
579 - if-eqz v14, :cond_b8
581 - :try_start_b5
582 - invoke-interface {v14}, Landroid/database/Cursor;->close()V
584 - :cond_b8
585 - :goto_b8
586 - monitor-exit v21
588 - goto :goto_42
590 - :cond_ba
591 const/4 v4, 0x0
593 + :try_start_b4
594 move-object/from16 v0, p0
596 invoke-virtual {v0, v4}, Landroid/accounts/AccountManagerService;->getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
597 @@ -4731,10 +4716,10 @@
599 const/4 v15, 0x0
601 - :goto_df
602 + :goto_d8
603 move/from16 v0, v17
605 - if-ge v15, v0, :cond_100
606 + if-ge v15, v0, :cond_f9
608 aget-object v11, v13, v15
610 @@ -4762,9 +4747,9 @@
612 add-int/lit8 v15, v15, 0x1
614 - goto :goto_df
615 + goto :goto_d8
617 - :cond_100
618 + :cond_f9
619 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
621 move-object/from16 v0, p0
622 @@ -4772,10 +4757,10 @@
623 iget-object v5, v0, Landroid/accounts/AccountManagerService;->mSessions:Ljava/util/LinkedHashMap;
625 monitor-enter v5
626 - :try_end_108
627 - .catchall {:try_start_b5 .. :try_end_108} :catchall_ad
628 + :try_end_101
629 + .catchall {:try_start_b4 .. :try_end_101} :catchall_ad
631 - :try_start_108
632 + :try_start_101
633 invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
635 move-result-wide v18
636 @@ -4822,12 +4807,12 @@
638 move-result-object v15
640 - :goto_138
641 + :goto_131
642 invoke-interface {v15}, Ljava/util/Iterator;->hasNext()Z
644 move-result v4
646 - if-eqz v4, :cond_168
647 + if-eqz v4, :cond_161
649 invoke-interface {v15}, Ljava/util/Iterator;->next()Ljava/lang/Object;
651 @@ -4865,27 +4850,27 @@
653 invoke-virtual {v0, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
655 - goto :goto_138
656 + goto :goto_131
658 - :catchall_165
659 + :catchall_15e
660 move-exception v4
662 monitor-exit v5
663 - :try_end_167
664 - .catchall {:try_start_108 .. :try_end_167} :catchall_165
665 + :try_end_160
666 + .catchall {:try_start_101 .. :try_end_160} :catchall_15e
668 - :try_start_167
669 + :try_start_160
670 throw v4
671 - :try_end_168
672 - .catchall {:try_start_167 .. :try_end_168} :catchall_ad
673 + :try_end_161
674 + .catchall {:try_start_160 .. :try_end_161} :catchall_ad
676 - :cond_168
677 - :try_start_168
678 + :cond_161
679 + :try_start_161
680 monitor-exit v5
681 - :try_end_169
682 - .catchall {:try_start_168 .. :try_end_169} :catchall_165
683 + :try_end_162
684 + .catchall {:try_start_161 .. :try_end_162} :catchall_15e
686 - :try_start_169
687 + :try_start_162
688 invoke-virtual/range {p2 .. p2}, Ljava/io/PrintWriter;->println()V
690 move-object/from16 v0, p0
691 @@ -4899,10 +4884,21 @@
692 move-object/from16 v2, p3
694 invoke-interface {v4, v0, v1, v2}, Landroid/accounts/IAccountAuthenticatorCache;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
695 - :try_end_179
696 - .catchall {:try_start_169 .. :try_end_179} :catchall_ad
698 - goto/16 :goto_b8
699 + :cond_172
700 + :goto_172
701 + monitor-exit v21
703 + goto/16 :goto_42
705 + :cond_175
706 + if-eqz v14, :cond_172
708 + invoke-interface {v14}, Landroid/database/Cursor;->close()V
709 + :try_end_17a
710 + .catchall {:try_start_162 .. :try_end_17a} :catchall_ad
712 + goto :goto_172
713 .end method
715 .method public editProperties(Landroid/accounts/IAccountManagerResponse;Ljava/lang/String;Z)V
716 @@ -5440,9 +5436,9 @@
717 :try_end_8b
718 .catchall {:try_start_7e .. :try_end_8b} :catchall_92
720 + :goto_8b
721 invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
723 - :goto_8e
724 return-void
726 :catchall_8f
727 @@ -5475,9 +5471,7 @@
728 :try_end_9f
729 .catchall {:try_start_97 .. :try_end_9f} :catchall_92
731 - invoke-static {v1, v2}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
733 - goto :goto_8e
734 + goto :goto_8b
735 .end method
737 .method protected getAccountsFromCacheLocked(Ljava/lang/String;)[Landroid/accounts/Account;
738 @@ -5899,11 +5893,11 @@
740 invoke-direct {v0, v1, v2}, Landroid/accounts/AccountManagerService;->onResult(Landroid/accounts/IAccountManagerResponse;Landroid/os/Bundle;)V
741 :try_end_12a
742 - .catchall {:try_start_f1 .. :try_end_12a} :catchall_152
743 + .catchall {:try_start_f1 .. :try_end_12a} :catchall_14f
745 + :goto_12a
746 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
748 - :goto_12d
749 return-void
751 :cond_12e
752 @@ -5947,13 +5941,11 @@
754 invoke-virtual {v3}, Landroid/accounts/AccountManagerService$3;->bind()V
755 :try_end_14e
756 - .catchall {:try_start_135 .. :try_end_14e} :catchall_152
758 - invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
759 + .catchall {:try_start_135 .. :try_end_14e} :catchall_14f
761 - goto :goto_12d
762 + goto :goto_12a
764 - :catchall_152
765 + :catchall_14f
766 move-exception v3
768 invoke-static/range {v18 .. v19}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
769 @@ -6119,7 +6111,7 @@
771 move-result v7
773 - if-eqz v7, :cond_5d
774 + if-eqz v7, :cond_62
776 invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
778 @@ -6133,23 +6125,23 @@
780 aput-object v7, v6, v2
781 :try_end_5a
782 - .catchall {:try_start_37 .. :try_end_5a} :catchall_61
783 + .catchall {:try_start_37 .. :try_end_5a} :catchall_5d
785 add-int/lit8 v2, v2, 0x1
787 goto :goto_48
789 - :cond_5d
790 - invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
792 - return-object v6
794 - :catchall_61
795 + :catchall_5d
796 move-exception v7
798 invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
800 throw v7
802 + :cond_62
803 + invoke-static {v4, v5}, Landroid/accounts/AccountManagerService;->restoreCallingIdentity(J)V
805 + return-object v6
806 .end method
808 .method public getPassword(Landroid/accounts/Account;)Ljava/lang/String;
809 diff -Npru stock-framework/smali/android/app/ActivityThread.smali pdroid-framework/smali/android/app/ActivityThread.smali
810 --- stock-framework/smali/android/app/ActivityThread.smali 2012-05-10 15:14:09.910339901 -0500
811 +++ pdroid-framework/smali/android/app/ActivityThread.smali 2012-05-10 15:14:32.494451895 -0500
812 @@ -4082,9 +4082,9 @@
814 sget-object v8, Landroid/app/ActivityThread;->sCurrentBroadcastIntent:Ljava/lang/ThreadLocal;
816 + :goto_54
817 invoke-virtual {v8, v11}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
819 - :goto_57
820 invoke-virtual {v7}, Landroid/content/BroadcastReceiver;->getPendingResult()Landroid/content/BroadcastReceiver$PendingResult;
822 move-result-object v8
823 @@ -4205,9 +4205,7 @@
824 :cond_c6
825 sget-object v8, Landroid/app/ActivityThread;->sCurrentBroadcastIntent:Ljava/lang/ThreadLocal;
827 - invoke-virtual {v8, v11}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
829 - goto :goto_57
830 + goto :goto_54
831 .end method
833 .method private handleRelaunchActivity(Landroid/app/ActivityThread$ActivityClientRecord;)V
834 @@ -10127,7 +10125,7 @@
835 .method final handleDumpHeap(ZLandroid/app/ActivityThread$DumpHeapData;)V
836 .registers 7
838 - if-eqz p1, :cond_5c
839 + if-eqz p1, :cond_4a
841 :try_start_2
842 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->path:Ljava/lang/String;
843 @@ -10140,15 +10138,15 @@
845 invoke-static {v1, v2}, Landroid/os/Debug;->dumpHprofData(Ljava/lang/String;Ljava/io/FileDescriptor;)V
846 :try_end_d
847 - .catchall {:try_start_2 .. :try_end_d} :catchall_4c
848 - .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_1c
849 + .catchall {:try_start_2 .. :try_end_d} :catchall_43
850 + .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_13
852 :try_start_d
853 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
855 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
856 :try_end_12
857 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_13
858 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_5d
860 :goto_12
861 return-void
862 @@ -10156,18 +10154,7 @@
863 :catch_13
864 move-exception v0
866 - const-string v1, "ActivityThread"
868 - const-string v2, "Failure closing profile fd"
870 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
872 - goto :goto_12
874 - :catch_1c
875 - move-exception v0
877 - :try_start_1d
878 + :try_start_14
879 const-string v1, "ActivityThread"
881 new-instance v2, Ljava/lang/StringBuilder;
882 @@ -10197,43 +10184,55 @@
883 move-result-object v2
885 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
886 - :try_end_3d
887 - .catchall {:try_start_1d .. :try_end_3d} :catchall_4c
888 + :try_end_34
889 + .catchall {:try_start_14 .. :try_end_34} :catchall_43
891 - :try_start_3d
892 + :try_start_34
893 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
895 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
896 - :try_end_42
897 - .catch Ljava/io/IOException; {:try_start_3d .. :try_end_42} :catch_43
898 + :try_end_39
899 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_39} :catch_3a
901 goto :goto_12
903 - :catch_43
904 + :catch_3a
905 move-exception v0
907 const-string v1, "ActivityThread"
909 const-string v2, "Failure closing profile fd"
911 + :goto_3f
912 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
914 goto :goto_12
916 - :catchall_4c
917 + :catchall_43
918 move-exception v1
920 - :try_start_4d
921 + :try_start_44
922 iget-object v2, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
924 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
925 - :try_end_52
926 - .catch Ljava/io/IOException; {:try_start_4d .. :try_end_52} :catch_53
927 + :try_end_49
928 + .catch Ljava/io/IOException; {:try_start_44 .. :try_end_49} :catch_54
930 - :goto_52
931 + :goto_49
932 throw v1
934 - :catch_53
935 + :cond_4a
936 + iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
938 + invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
940 + move-result-object v1
942 + invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
944 + goto :goto_12
946 + :catch_54
947 move-exception v0
949 const-string v2, "ActivityThread"
950 @@ -10242,18 +10241,16 @@
952 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
954 - goto :goto_52
956 - :cond_5c
957 - iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
958 + goto :goto_49
960 - invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
961 + :catch_5d
962 + move-exception v0
964 - move-result-object v1
965 + const-string v1, "ActivityThread"
967 - invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
968 + const-string v2, "Failure closing profile fd"
970 - goto :goto_12
971 + goto :goto_3f
972 .end method
974 .method final handleLowMemory()V
975 @@ -10337,9 +10334,9 @@
976 .method final handleProfilerControl(ZLandroid/app/ActivityThread$ProfilerControlData;I)V
977 .registers 8
979 - if-eqz p1, :cond_73
980 + if-eqz p1, :cond_61
982 - packed-switch p3, :pswitch_data_80
983 + packed-switch p3, :pswitch_data_7e
985 :try_start_5
986 iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
987 @@ -10360,7 +10357,7 @@
989 invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->startProfiling()V
990 :try_end_18
991 - .catchall {:try_start_5 .. :try_end_18} :catchall_63
992 + .catchall {:try_start_5 .. :try_end_18} :catchall_5a
993 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_18} :catch_2a
995 :goto_18
996 @@ -10369,7 +10366,7 @@
998 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
999 :try_end_1d
1000 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_5a
1001 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_77
1003 :goto_1d
1004 return-void
1005 @@ -10386,7 +10383,7 @@
1007 invoke-static {v1, v2}, Landroid/view/ViewDebug;->startLooperProfiling(Ljava/lang/String;Ljava/io/FileDescriptor;)V
1008 :try_end_29
1009 - .catchall {:try_start_1e .. :try_end_29} :catchall_63
1010 + .catchall {:try_start_1e .. :try_end_29} :catchall_5a
1011 .catch Ljava/lang/RuntimeException; {:try_start_1e .. :try_end_29} :catch_2a
1013 goto :goto_18
1014 @@ -10425,7 +10422,7 @@
1016 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
1017 :try_end_4b
1018 - .catchall {:try_start_2b .. :try_end_4b} :catchall_63
1019 + .catchall {:try_start_2b .. :try_end_4b} :catchall_5a
1021 :try_start_4b
1022 iget-object v1, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1023 @@ -10443,35 +10440,39 @@
1025 const-string v2, "Failure closing profile fd"
1027 + :goto_56
1028 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1030 goto :goto_1d
1032 - :catch_5a
1033 - move-exception v0
1034 + :catchall_5a
1035 + move-exception v1
1037 - const-string v1, "ActivityThread"
1038 + :try_start_5b
1039 + iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1041 - const-string v2, "Failure closing profile fd"
1042 + invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1043 + :try_end_60
1044 + .catch Ljava/io/IOException; {:try_start_5b .. :try_end_60} :catch_6e
1046 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1047 + :goto_60
1048 + throw v1
1050 - goto :goto_1d
1051 + :cond_61
1052 + packed-switch p3, :pswitch_data_84
1054 - :catchall_63
1055 - move-exception v1
1056 + iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1058 - :try_start_64
1059 - iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1060 + invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1062 - invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1063 - :try_end_69
1064 - .catch Ljava/io/IOException; {:try_start_64 .. :try_end_69} :catch_6a
1065 + goto :goto_1d
1067 - :goto_69
1068 - throw v1
1069 + :pswitch_6a
1070 + invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1072 - :catch_6a
1073 + goto :goto_1d
1075 + :catch_6e
1076 move-exception v0
1078 const-string v2, "ActivityThread"
1079 @@ -10480,30 +10481,27 @@
1081 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1083 - goto :goto_69
1085 - :cond_73
1086 - packed-switch p3, :pswitch_data_86
1087 + goto :goto_60
1089 - iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1090 + :catch_77
1091 + move-exception v0
1093 - invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1094 + const-string v1, "ActivityThread"
1096 - goto :goto_1d
1097 + const-string v2, "Failure closing profile fd"
1099 - :pswitch_7c
1100 - invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1101 + goto :goto_56
1103 - goto :goto_1d
1104 + nop
1106 - :pswitch_data_80
1107 + :pswitch_data_7e
1108 .packed-switch 0x1
1109 :pswitch_1e
1110 .end packed-switch
1112 - :pswitch_data_86
1113 + :pswitch_data_84
1114 .packed-switch 0x1
1115 - :pswitch_7c
1116 + :pswitch_6a
1117 .end packed-switch
1118 .end method
1120 diff -Npru stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali
1121 --- stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-05-10 15:14:10.478342722 -0500
1122 +++ pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-05-10 15:14:32.846453640 -0500
1123 @@ -83,7 +83,7 @@
1124 :try_start_1c
1125 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1126 :try_end_1f
1127 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1128 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1130 :goto_1f
1131 return-void
1132 @@ -146,7 +146,7 @@
1133 :try_start_54
1134 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1135 :try_end_57
1136 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1137 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1139 :goto_57
1140 throw v4
1141 @@ -198,14 +198,14 @@
1142 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1144 :catch_83
1145 - move-exception v4
1146 + move-exception v5
1148 - goto :goto_1f
1149 + goto :goto_57
1151 :catch_85
1152 - move-exception v5
1153 + move-exception v4
1155 - goto :goto_57
1156 + goto :goto_1f
1157 .end method
1159 .method public doFullBackup(Landroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1160 @@ -230,9 +230,9 @@
1162 invoke-virtual {v6, v7}, Landroid/app/backup/BackupAgent;->onFullBackup(Landroid/app/backup/FullBackupDataOutput;)V
1163 :try_end_15
1164 - .catchall {:try_start_b .. :try_end_15} :catchall_64
1165 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_34
1166 - .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_7b
1167 + .catchall {:try_start_b .. :try_end_15} :catchall_5b
1168 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_2b
1169 + .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_72
1171 :try_start_15
1172 new-instance v5, Ljava/io/FileOutputStream;
1173 @@ -249,7 +249,7 @@
1175 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1176 :try_end_24
1177 - .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_2b
1178 + .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_a8
1180 :goto_24
1181 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1182 @@ -257,26 +257,15 @@
1183 :try_start_27
1184 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1185 :try_end_2a
1186 - .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_af
1187 + .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_b2
1189 :goto_2a
1190 return-void
1192 :catch_2b
1193 - move-exception v1
1195 - const-string v6, "BackupServiceBinder"
1197 - const-string v7, "Unable to finalize backup stream!"
1199 - invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1201 - goto :goto_24
1203 - :catch_34
1204 move-exception v2
1206 - :try_start_35
1207 + :try_start_2c
1208 const-string v6, "BackupServiceBinder"
1210 new-instance v7, Ljava/lang/StringBuilder;
1211 @@ -320,13 +309,13 @@
1212 invoke-direct {v6, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
1214 throw v6
1215 - :try_end_64
1216 - .catchall {:try_start_35 .. :try_end_64} :catchall_64
1217 + :try_end_5b
1218 + .catchall {:try_start_2c .. :try_end_5b} :catchall_5b
1220 - :catchall_64
1221 + :catchall_5b
1222 move-exception v6
1224 - :try_start_65
1225 + :try_start_5c
1226 new-instance v5, Ljava/io/FileOutputStream;
1228 invoke-virtual {p1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
1229 @@ -340,24 +329,24 @@
1230 new-array v0, v7, [B
1232 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1233 - :try_end_74
1234 - .catch Ljava/io/IOException; {:try_start_65 .. :try_end_74} :catch_a6
1235 + :try_end_6b
1236 + .catch Ljava/io/IOException; {:try_start_5c .. :try_end_6b} :catch_9d
1238 - :goto_74
1239 + :goto_6b
1240 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1242 - :try_start_77
1243 + :try_start_6e
1244 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1245 - :try_end_7a
1246 - .catch Landroid/os/RemoteException; {:try_start_77 .. :try_end_7a} :catch_b2
1247 + :try_end_71
1248 + .catch Landroid/os/RemoteException; {:try_start_6e .. :try_end_71} :catch_a6
1250 - :goto_7a
1251 + :goto_71
1252 throw v6
1254 - :catch_7b
1255 + :catch_72
1256 move-exception v2
1258 - :try_start_7c
1259 + :try_start_73
1260 const-string v6, "BackupServiceBinder"
1262 new-instance v7, Ljava/lang/StringBuilder;
1263 @@ -397,10 +386,10 @@
1264 invoke-static {v6, v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1266 throw v2
1267 - :try_end_a6
1268 - .catchall {:try_start_7c .. :try_end_a6} :catchall_64
1269 + :try_end_9d
1270 + .catchall {:try_start_73 .. :try_end_9d} :catchall_5b
1272 - :catch_a6
1273 + :catch_9d
1274 move-exception v1
1276 const-string v7, "BackupServiceBinder"
1277 @@ -409,17 +398,28 @@
1279 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1281 - goto :goto_74
1282 + goto :goto_6b
1284 - :catch_af
1285 - move-exception v6
1286 + :catch_a6
1287 + move-exception v7
1289 - goto/16 :goto_2a
1290 + goto :goto_71
1292 + :catch_a8
1293 + move-exception v1
1295 + const-string v6, "BackupServiceBinder"
1297 + const-string v7, "Unable to finalize backup stream!"
1299 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1301 + goto/16 :goto_24
1303 :catch_b2
1304 - move-exception v7
1305 + move-exception v6
1307 - goto :goto_7a
1308 + goto/16 :goto_2a
1309 .end method
1311 .method public doRestore(Landroid/os/ParcelFileDescriptor;ILandroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1312 @@ -462,7 +462,7 @@
1313 :try_start_1c
1314 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1315 :try_end_1f
1316 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1317 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1319 :goto_1f
1320 return-void
1321 @@ -525,7 +525,7 @@
1322 :try_start_54
1323 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1324 :try_end_57
1325 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1326 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1328 :goto_57
1329 throw v4
1330 @@ -577,14 +577,14 @@
1331 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1333 :catch_83
1334 - move-exception v4
1335 + move-exception v5
1337 - goto :goto_1f
1338 + goto :goto_57
1340 :catch_85
1341 - move-exception v5
1342 + move-exception v4
1344 - goto :goto_57
1345 + goto :goto_1f
1346 .end method
1348 .method public doRestoreFile(Landroid/os/ParcelFileDescriptor;JILjava/lang/String;Ljava/lang/String;JJILandroid/app/backup/IBackupManager;)V
1349 @@ -632,7 +632,7 @@
1351 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1352 :try_end_23
1353 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_37
1354 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_39
1356 :goto_23
1357 return-void
1358 @@ -661,18 +661,18 @@
1360 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1361 :try_end_36
1362 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_39
1363 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_37
1365 :goto_36
1366 throw v2
1368 :catch_37
1369 - move-exception v2
1370 + move-exception v3
1372 - goto :goto_23
1373 + goto :goto_36
1375 :catch_39
1376 - move-exception v3
1377 + move-exception v2
1379 - goto :goto_36
1380 + goto :goto_23
1381 .end method
1382 diff -Npru stock-framework/smali/android/app/backup/RestoreSession.smali pdroid-framework/smali/android/app/backup/RestoreSession.smali
1383 --- stock-framework/smali/android/app/backup/RestoreSession.smali 2012-05-10 15:14:10.494342797 -0500
1384 +++ pdroid-framework/smali/android/app/backup/RestoreSession.smali 2012-05-10 15:14:32.866453739 -0500
1385 @@ -52,12 +52,12 @@
1387 invoke-interface {v1}, Landroid/app/backup/IRestoreSession;->endRestoreSession()V
1388 :try_end_6
1389 - .catchall {:try_start_1 .. :try_end_6} :catchall_14
1390 + .catchall {:try_start_1 .. :try_end_6} :catchall_12
1391 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_6} :catch_9
1393 + :goto_6
1394 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1396 - :goto_8
1397 return-void
1399 :catch_9
1400 @@ -70,13 +70,11 @@
1402 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
1403 :try_end_11
1404 - .catchall {:try_start_a .. :try_end_11} :catchall_14
1405 + .catchall {:try_start_a .. :try_end_11} :catchall_12
1407 - iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1409 - goto :goto_8
1410 + goto :goto_6
1412 - :catchall_14
1413 + :catchall_12
1414 move-exception v1
1416 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1417 diff -Npru stock-framework/smali/android/app/ContextImpl$18.smali pdroid-framework/smali/android/app/ContextImpl$18.smali
1418 --- stock-framework/smali/android/app/ContextImpl$18.smali 2012-05-10 15:14:10.006340377 -0500
1419 +++ pdroid-framework/smali/android/app/ContextImpl$18.smali 2012-05-10 15:14:32.586452346 -0500
1420 @@ -26,21 +26,25 @@
1422 # virtual methods
1423 .method public createStaticService()Ljava/lang/Object;
1424 - .registers 4
1425 + .registers 5
1427 - const-string v1, "location"
1428 + const-string v2, "location"
1430 - invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1431 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1433 move-result-object v0
1435 - new-instance v1, Landroid/location/LocationManager;
1437 invoke-static {v0}, Landroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;
1439 - move-result-object v2
1440 + move-result-object v1
1442 + new-instance v2, Landroid/privacy/surrogate/PrivacyLocationManager;
1444 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1446 + move-result-object v3
1448 - invoke-direct {v1, v2}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
1449 + invoke-direct {v2, v1, v3}, Landroid/privacy/surrogate/PrivacyLocationManager;-><init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
1451 - return-object v1
1452 + return-object v2
1453 .end method
1454 diff -Npru stock-framework/smali/android/app/ContextImpl$26.smali pdroid-framework/smali/android/app/ContextImpl$26.smali
1455 --- stock-framework/smali/android/app/ContextImpl$26.smali 2012-05-10 15:14:10.010340402 -0500
1456 +++ pdroid-framework/smali/android/app/ContextImpl$26.smali 2012-05-10 15:14:32.590452371 -0500
1457 @@ -28,13 +28,13 @@
1458 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
1459 .registers 4
1461 - new-instance v0, Landroid/telephony/TelephonyManager;
1462 + new-instance v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;
1464 invoke-virtual {p1}, Landroid/app/ContextImpl;->getOuterContext()Landroid/content/Context;
1466 move-result-object v1
1468 - invoke-direct {v0, v1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
1469 + invoke-direct {v0, v1}, Landroid/privacy/surrogate/PrivacyTelephonyManager;-><init>(Landroid/content/Context;)V
1471 return-object v0
1472 .end method
1473 diff -Npru stock-framework/smali/android/app/ContextImpl$34.smali pdroid-framework/smali/android/app/ContextImpl$34.smali
1474 --- stock-framework/smali/android/app/ContextImpl$34.smali 1969-12-31 18:00:00.000000000 -0600
1475 +++ pdroid-framework/smali/android/app/ContextImpl$34.smali 2012-05-10 15:14:32.590452371 -0500
1476 @@ -0,0 +1,50 @@
1477 +.class final Landroid/app/ContextImpl$34;
1478 +.super Landroid/app/ContextImpl$StaticServiceFetcher;
1479 +.source "ContextImpl.java"
1482 +# annotations
1483 +.annotation system Ldalvik/annotation/EnclosingClass;
1484 + value = Landroid/app/ContextImpl;
1485 +.end annotation
1487 +.annotation system Ldalvik/annotation/InnerClass;
1488 + accessFlags = 0x8
1489 + name = null
1490 +.end annotation
1493 +# direct methods
1494 +.method constructor <init>()V
1495 + .registers 1
1497 + invoke-direct {p0}, Landroid/app/ContextImpl$StaticServiceFetcher;-><init>()V
1499 + return-void
1500 +.end method
1503 +# virtual methods
1504 +.method public createStaticService()Ljava/lang/Object;
1505 + .registers 5
1507 + const-string/jumbo v2, "privacy"
1509 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1511 + move-result-object v0
1513 + invoke-static {v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1515 + move-result-object v1
1517 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
1519 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1521 + move-result-object v3
1523 + invoke-direct {v2, v3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1525 + return-object v2
1526 +.end method
1527 diff -Npru stock-framework/smali/android/app/ContextImpl$3.smali pdroid-framework/smali/android/app/ContextImpl$3.smali
1528 --- stock-framework/smali/android/app/ContextImpl$3.smali 2012-05-10 15:14:10.026340474 -0500
1529 +++ pdroid-framework/smali/android/app/ContextImpl$3.smali 2012-05-10 15:14:32.594452387 -0500
1530 @@ -38,9 +38,9 @@
1532 move-result-object v1
1534 - new-instance v2, Landroid/accounts/AccountManager;
1535 + new-instance v2, Landroid/privacy/surrogate/PrivacyAccountManager;
1537 - invoke-direct {v2, p1, v1}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1538 + invoke-direct {v2, p1, v1}, Landroid/privacy/surrogate/PrivacyAccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1540 return-object v2
1541 .end method
1542 diff -Npru stock-framework/smali/android/app/ContextImpl.smali pdroid-framework/smali/android/app/ContextImpl.smali
1543 --- stock-framework/smali/android/app/ContextImpl.smali 2012-05-10 15:14:10.058340635 -0500
1544 +++ pdroid-framework/smali/android/app/ContextImpl.smali 2012-05-10 15:14:32.622452529 -0500
1545 @@ -36,6 +36,8 @@
1547 .field private static sNextPerContextServiceCacheIndex:I
1549 +.field private static sOuterContext:Landroid/content/Context;
1551 .field private static final sSharedPrefs:Ljava/util/HashMap;
1552 .annotation system Ldalvik/annotation/Signature;
1553 value = {
1554 @@ -394,6 +396,14 @@
1556 invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1558 + const-string/jumbo v0, "privacy"
1560 + new-instance v1, Landroid/app/ContextImpl$34;
1562 + invoke-direct {v1}, Landroid/app/ContextImpl$34;-><init>()V
1564 + invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1566 return-void
1567 .end method
1569 @@ -428,6 +438,8 @@
1571 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1573 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1575 return-void
1576 .end method
1578 @@ -482,6 +494,8 @@
1580 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1582 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1584 return-void
1585 .end method
1587 @@ -951,6 +965,14 @@
1588 throw v0
1589 .end method
1591 +.method static final getStaticOuterContext()Landroid/content/Context;
1592 + .registers 1
1594 + sget-object v0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1596 + return-object v0
1597 +.end method
1599 .method private getWallpaperManager()Landroid/app/WallpaperManager;
1600 .registers 2
1602 @@ -4116,6 +4138,8 @@
1604 iput-object p1, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1606 + sput-object p1, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1608 return-void
1609 .end method
1611 diff -Npru stock-framework/smali/android/app/DownloadManager.smali pdroid-framework/smali/android/app/DownloadManager.smali
1612 --- stock-framework/smali/android/app/DownloadManager.smali 2012-05-10 15:14:10.102340853 -0500
1613 +++ pdroid-framework/smali/android/app/DownloadManager.smali 2012-05-10 15:14:32.634452589 -0500
1614 @@ -618,7 +618,7 @@
1615 :try_start_11
1616 invoke-virtual {p0, v1}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1617 :try_end_14
1618 - .catchall {:try_start_11 .. :try_end_14} :catchall_3a
1619 + .catchall {:try_start_11 .. :try_end_14} :catchall_31
1621 move-result-object v0
1623 @@ -626,10 +626,10 @@
1625 if-eqz v0, :cond_1c
1627 + :goto_19
1628 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1630 :cond_1c
1631 - :goto_1c
1632 return-object v2
1634 :cond_1d
1635 @@ -638,7 +638,7 @@
1637 move-result v3
1639 - if-eqz v3, :cond_34
1640 + if-eqz v3, :cond_38
1642 const-string/jumbo v2, "media_type"
1644 @@ -648,32 +648,28 @@
1646 invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
1647 :try_end_2d
1648 - .catchall {:try_start_1d .. :try_end_2d} :catchall_3a
1649 + .catchall {:try_start_1d .. :try_end_2d} :catchall_31
1651 move-result-object v2
1653 if-eqz v0, :cond_1c
1655 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1657 - goto :goto_1c
1659 - :cond_34
1660 - if-eqz v0, :cond_1c
1662 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1663 + goto :goto_19
1665 - goto :goto_1c
1667 - :catchall_3a
1668 + :catchall_31
1669 move-exception v2
1671 - if-eqz v0, :cond_40
1672 + if-eqz v0, :cond_37
1674 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1676 - :cond_40
1677 + :cond_37
1678 throw v2
1680 + :cond_38
1681 + if-eqz v0, :cond_1c
1683 + goto :goto_19
1684 .end method
1686 .method public getUriForDownloadedFile(J)Landroid/net/Uri;
1687 @@ -702,7 +698,7 @@
1688 :try_start_11
1689 invoke-virtual {p0, v4}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1690 :try_end_14
1691 - .catchall {:try_start_11 .. :try_end_14} :catchall_72
1692 + .catchall {:try_start_11 .. :try_end_14} :catchall_66
1694 move-result-object v0
1696 @@ -710,10 +706,10 @@
1698 if-eqz v0, :cond_1c
1700 + :goto_19
1701 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1703 :cond_1c
1704 - :goto_1c
1705 return-object v6
1707 :cond_1d
1708 @@ -722,7 +718,7 @@
1710 move-result v7
1712 - if-eqz v7, :cond_6c
1713 + if-eqz v7, :cond_6d
1715 const-string/jumbo v7, "status"
1717 @@ -736,7 +732,7 @@
1719 const/16 v7, 0x8
1721 - if-ne v7, v5, :cond_6c
1722 + if-ne v7, v5, :cond_6d
1724 const-string v6, "destination"
1726 @@ -760,25 +756,20 @@
1728 const/4 v6, 0x2
1730 - if-ne v1, v6, :cond_53
1731 + if-ne v1, v6, :cond_50
1733 :cond_47
1734 sget-object v6, Landroid/provider/Downloads$Impl;->CONTENT_URI:Landroid/net/Uri;
1736 invoke-static {v6, p1, p2}, Landroid/content/ContentUris;->withAppendedId(Landroid/net/Uri;J)Landroid/net/Uri;
1737 - :try_end_4c
1738 - .catchall {:try_start_1d .. :try_end_4c} :catchall_72
1740 move-result-object v6
1742 if-eqz v0, :cond_1c
1744 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1746 - goto :goto_1c
1747 + goto :goto_19
1749 - :cond_53
1750 - :try_start_53
1751 + :cond_50
1752 const-string v6, "local_filename"
1754 invoke-interface {v0, v6}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
1755 @@ -794,33 +785,29 @@
1756 invoke-direct {v6, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
1758 invoke-static {v6}, Landroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri;
1759 - :try_end_65
1760 - .catchall {:try_start_53 .. :try_end_65} :catchall_72
1761 + :try_end_62
1762 + .catchall {:try_start_1d .. :try_end_62} :catchall_66
1764 move-result-object v6
1766 if-eqz v0, :cond_1c
1768 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1770 - goto :goto_1c
1772 - :cond_6c
1773 - if-eqz v0, :cond_1c
1775 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1777 - goto :goto_1c
1778 + goto :goto_19
1780 - :catchall_72
1781 + :catchall_66
1782 move-exception v6
1784 - if-eqz v0, :cond_78
1785 + if-eqz v0, :cond_6c
1787 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1789 - :cond_78
1790 + :cond_6c
1791 throw v6
1793 + :cond_6d
1794 + if-eqz v0, :cond_1c
1796 + goto :goto_19
1797 .end method
1799 .method public varargs markRowDeleted([J)I
1800 diff -Npru stock-framework/smali/android/app/WallpaperManager$Globals.smali pdroid-framework/smali/android/app/WallpaperManager$Globals.smali
1801 --- stock-framework/smali/android/app/WallpaperManager$Globals.smali 2012-05-10 15:14:10.454342600 -0500
1802 +++ pdroid-framework/smali/android/app/WallpaperManager$Globals.smali 2012-05-10 15:14:32.826453537 -0500
1803 @@ -140,7 +140,7 @@
1804 :try_start_2f
1805 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1806 :try_end_32
1807 - .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_49
1808 + .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_4d
1809 .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_47
1811 :goto_32
1812 @@ -178,7 +178,7 @@
1813 :try_start_43
1814 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1815 :try_end_46
1816 - .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_4d
1817 + .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_49
1818 .catch Landroid/os/RemoteException; {:try_start_43 .. :try_end_46} :catch_47
1820 :goto_46
1821 @@ -193,9 +193,9 @@
1822 goto :goto_40
1824 :catch_49
1825 - move-exception v8
1826 + move-exception v9
1828 - goto :goto_32
1829 + goto :goto_46
1831 :catch_4b
1832 move-exception v7
1833 @@ -203,9 +203,9 @@
1834 goto :goto_40
1836 :catch_4d
1837 - move-exception v9
1838 + move-exception v8
1840 - goto :goto_46
1841 + goto :goto_32
1842 .end method
1844 .method private getDefaultWallpaperLocked(Landroid/content/Context;)Landroid/graphics/Bitmap;
1845 @@ -261,7 +261,7 @@
1846 :try_start_28
1847 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
1848 :try_end_2b
1849 - .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_42
1850 + .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_46
1851 .catch Landroid/os/RemoteException; {:try_start_28 .. :try_end_2b} :catch_40
1853 :goto_2b
1854 @@ -299,7 +299,7 @@
1855 :try_start_3c
1856 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
1857 :try_end_3f
1858 - .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_46
1859 + .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_42
1860 .catch Landroid/os/RemoteException; {:try_start_3c .. :try_end_3f} :catch_40
1862 :goto_3f
1863 @@ -314,9 +314,9 @@
1864 goto :goto_39
1866 :catch_42
1867 - move-exception v7
1868 + move-exception v8
1870 - goto :goto_2b
1871 + goto :goto_3f
1873 :catch_44
1874 move-exception v6
1875 @@ -324,9 +324,9 @@
1876 goto :goto_39
1878 :catch_46
1879 - move-exception v8
1880 + move-exception v7
1882 - goto :goto_3f
1883 + goto :goto_2b
1884 .end method
1887 diff -Npru stock-framework/smali/android/bluetooth/BluetoothSocket.smali pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali
1888 --- stock-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-05-10 15:14:10.566343158 -0500
1889 +++ pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-05-10 15:14:32.930454057 -0500
1890 @@ -445,7 +445,7 @@
1892 sget-object v1, Landroid/bluetooth/BluetoothSocket$SocketState;->CLOSED:Landroid/bluetooth/BluetoothSocket$SocketState;
1893 :try_end_d
1894 - .catchall {:try_start_9 .. :try_end_d} :catchall_29
1895 + .catchall {:try_start_9 .. :try_end_d} :catchall_26
1897 if-ne v0, v1, :cond_1b
1899 @@ -457,16 +457,16 @@
1901 move-result-object v1
1903 + :goto_17
1904 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
1906 - :goto_1a
1907 return v0
1909 :cond_1b
1910 :try_start_1b
1911 invoke-direct {p0}, Landroid/bluetooth/BluetoothSocket;->bindListenNative()I
1912 :try_end_1e
1913 - .catchall {:try_start_1b .. :try_end_1e} :catchall_29
1914 + .catchall {:try_start_1b .. :try_end_1e} :catchall_26
1916 move-result v0
1918 @@ -476,11 +476,9 @@
1920 move-result-object v1
1922 - invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
1924 - goto :goto_1a
1925 + goto :goto_17
1927 - :catchall_29
1928 + :catchall_26
1929 move-exception v0
1931 iget-object v1, p0, Landroid/bluetooth/BluetoothSocket;->mLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
1932 diff -Npru stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali
1933 --- stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-05-10 15:14:10.594343298 -0500
1934 +++ pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-05-10 15:14:32.962454215 -0500
1935 @@ -102,11 +102,11 @@
1936 :try_start_b
1937 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
1938 :try_end_e
1939 - .catchall {:try_start_b .. :try_end_e} :catchall_80
1940 + .catchall {:try_start_b .. :try_end_e} :catchall_7d
1942 move-result v0
1944 - if-eqz v0, :cond_38
1945 + if-eqz v0, :cond_35
1947 if-eqz v4, :cond_16
1949 @@ -146,21 +146,14 @@
1950 invoke-virtual {v0, v2}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
1952 monitor-exit v1
1953 + :try_end_34
1954 + .catchall {:try_start_28 .. :try_end_34} :catchall_a5
1956 :goto_34
1957 return-void
1959 - :catchall_35
1960 - move-exception v0
1962 - monitor-exit v1
1963 - :try_end_37
1964 - .catchall {:try_start_28 .. :try_end_37} :catchall_35
1966 - throw v0
1968 - :cond_38
1969 - :try_start_38
1970 + :cond_35
1971 + :try_start_35
1972 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
1974 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mContext:Landroid/content/Context;
1975 @@ -178,7 +171,7 @@
1977 move-result-object v4
1979 - if-eqz v4, :cond_7c
1980 + if-eqz v4, :cond_79
1982 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
1984 @@ -189,26 +182,26 @@
1985 iget-object v3, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mAuthority:Ljava/lang/String;
1987 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
1988 - :try_end_55
1989 - .catchall {:try_start_38 .. :try_end_55} :catchall_80
1990 + :try_end_52
1991 + .catchall {:try_start_35 .. :try_end_52} :catchall_7d
1993 - :goto_55
1994 - if-eqz v4, :cond_5a
1995 + :goto_52
1996 + if-eqz v4, :cond_57
1998 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2000 - :cond_5a
2001 + :cond_57
2002 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2004 move-result v0
2006 - if-nez v0, :cond_65
2007 + if-nez v0, :cond_62
2009 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2011 invoke-virtual {v0, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2013 - :cond_65
2014 + :cond_62
2015 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2017 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2018 @@ -218,7 +211,7 @@
2020 monitor-enter v1
2022 - :try_start_6c
2023 + :try_start_69
2024 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2026 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2027 @@ -234,44 +227,44 @@
2029 goto :goto_34
2031 - :catchall_79
2032 + :catchall_76
2033 move-exception v0
2035 monitor-exit v1
2036 - :try_end_7b
2037 - .catchall {:try_start_6c .. :try_end_7b} :catchall_79
2038 + :try_end_78
2039 + .catchall {:try_start_69 .. :try_end_78} :catchall_76
2041 throw v0
2043 - :cond_7c
2044 + :cond_79
2045 const/4 v0, 0x1
2047 - :try_start_7d
2048 + :try_start_7a
2049 iput-boolean v0, v5, Landroid/content/SyncResult;->databaseError:Z
2050 - :try_end_7f
2051 - .catchall {:try_start_7d .. :try_end_7f} :catchall_80
2052 + :try_end_7c
2053 + .catchall {:try_start_7a .. :try_end_7c} :catchall_7d
2055 - goto :goto_55
2056 + goto :goto_52
2058 - :catchall_80
2059 + :catchall_7d
2060 move-exception v0
2062 - if-eqz v4, :cond_86
2063 + if-eqz v4, :cond_83
2065 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2067 - :cond_86
2068 + :cond_83
2069 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2071 move-result v1
2073 - if-nez v1, :cond_91
2074 + if-nez v1, :cond_8e
2076 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2078 invoke-virtual {v1, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2080 - :cond_91
2081 + :cond_8e
2082 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2084 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2085 @@ -281,7 +274,7 @@
2087 monitor-enter v1
2089 - :try_start_98
2090 + :try_start_95
2091 iget-object v2, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2093 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2094 @@ -294,8 +287,18 @@
2095 invoke-virtual {v2, v3}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2097 monitor-exit v1
2098 + :try_end_a1
2099 + .catchall {:try_start_95 .. :try_end_a1} :catchall_a2
2101 + throw v0
2103 + :catchall_a2
2104 + move-exception v0
2106 + :try_start_a3
2107 + monitor-exit v1
2108 :try_end_a4
2109 - .catchall {:try_start_98 .. :try_end_a4} :catchall_a5
2110 + .catchall {:try_start_a3 .. :try_end_a4} :catchall_a2
2112 throw v0
2114 diff -Npru stock-framework/smali/android/content/ContentResolver.smali pdroid-framework/smali/android/content/ContentResolver.smali
2115 --- stock-framework/smali/android/content/ContentResolver.smali 2012-05-10 15:14:10.050340600 -0500
2116 +++ pdroid-framework/smali/android/content/ContentResolver.smali 2012-05-10 15:14:32.610452464 -0500
2117 @@ -1662,12 +1662,12 @@
2119 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2120 :try_end_35
2121 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2122 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2123 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2125 + :goto_35
2126 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2128 - :goto_38
2129 return v8
2131 :catch_39
2132 @@ -1675,11 +1675,9 @@
2134 const/4 v8, 0x0
2136 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2138 - goto :goto_38
2139 + goto :goto_35
2141 - :catchall_3f
2142 + :catchall_3c
2143 move-exception v0
2145 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2146 @@ -1746,14 +1744,14 @@
2147 :try_start_35
2148 invoke-interface {v1, p2, p3, p4}, Landroid/content/IContentProvider;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
2149 :try_end_38
2150 - .catchall {:try_start_35 .. :try_end_38} :catchall_43
2151 + .catchall {:try_start_35 .. :try_end_38} :catchall_40
2152 .catch Landroid/os/RemoteException; {:try_start_35 .. :try_end_38} :catch_3d
2154 move-result-object v2
2156 + :goto_39
2157 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2159 - :goto_3c
2160 return-object v2
2162 :catch_3d
2163 @@ -1761,11 +1759,9 @@
2165 const/4 v2, 0x0
2167 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2169 - goto :goto_3c
2170 + goto :goto_39
2172 - :catchall_43
2173 + :catchall_40
2174 move-exception v2
2176 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2177 @@ -1856,12 +1852,12 @@
2179 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2180 :try_end_35
2181 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2182 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2183 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2185 + :goto_35
2186 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2188 - :goto_38
2189 return v8
2191 :catch_39
2192 @@ -1869,11 +1865,9 @@
2194 const/4 v8, -0x1
2196 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2198 - goto :goto_38
2199 + goto :goto_35
2201 - :catchall_3f
2202 + :catchall_3c
2203 move-exception v0
2205 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2206 @@ -2160,11 +2154,12 @@
2207 :try_start_8
2208 invoke-interface {v1, p1, p2}, Landroid/content/IContentProvider;->getStreamTypes(Landroid/net/Uri;Ljava/lang/String;)[Ljava/lang/String;
2209 :try_end_b
2210 - .catchall {:try_start_8 .. :try_end_b} :catchall_15
2211 + .catchall {:try_start_8 .. :try_end_b} :catchall_12
2212 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_b} :catch_10
2214 move-result-object v2
2216 + :goto_c
2217 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2219 goto :goto_7
2220 @@ -2172,11 +2167,9 @@
2221 :catch_10
2222 move-exception v0
2224 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2225 + goto :goto_c
2227 - goto :goto_7
2229 - :catchall_15
2230 + :catchall_12
2231 move-exception v2
2233 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2234 @@ -2193,17 +2186,18 @@
2236 move-result-object v1
2238 - if-eqz v1, :cond_4a
2239 + if-eqz v1, :cond_44
2241 :try_start_7
2242 invoke-interface {v1, p1}, Landroid/content/IContentProvider;->getType(Landroid/net/Uri;)Ljava/lang/String;
2243 :try_end_a
2244 - .catchall {:try_start_7 .. :try_end_a} :catchall_45
2245 + .catchall {:try_start_7 .. :try_end_a} :catchall_3f
2246 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_a} :catch_f
2247 - .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_14
2248 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_11
2250 move-result-object v2
2252 + :goto_b
2253 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2255 :cond_e
2256 @@ -2213,14 +2207,12 @@
2257 :catch_f
2258 move-exception v0
2260 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2262 - goto :goto_e
2263 + goto :goto_b
2265 - :catch_14
2266 + :catch_11
2267 move-exception v0
2269 - :try_start_15
2270 + :try_start_12
2271 const-string v3, "ContentResolver"
2273 new-instance v4, Ljava/lang/StringBuilder;
2274 @@ -2262,21 +2254,19 @@
2275 move-result-object v4
2277 invoke-static {v3, v4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
2278 - :try_end_41
2279 - .catchall {:try_start_15 .. :try_end_41} :catchall_45
2281 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2282 + :try_end_3e
2283 + .catchall {:try_start_12 .. :try_end_3e} :catchall_3f
2285 - goto :goto_e
2286 + goto :goto_b
2288 - :catchall_45
2289 + :catchall_3f
2290 move-exception v3
2292 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2294 throw v3
2296 - :cond_4a
2297 + :cond_44
2298 const-string v3, "content"
2300 invoke-virtual {p1}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
2301 @@ -2289,26 +2279,26 @@
2303 if-eqz v3, :cond_e
2305 - :try_start_56
2306 + :try_start_50
2307 invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
2309 move-result-object v3
2311 invoke-interface {v3, p1}, Landroid/app/IActivityManager;->getProviderMimeType(Landroid/net/Uri;)Ljava/lang/String;
2312 - :try_end_5d
2313 - .catch Landroid/os/RemoteException; {:try_start_56 .. :try_end_5d} :catch_5f
2314 - .catch Ljava/lang/Exception; {:try_start_56 .. :try_end_5d} :catch_61
2315 + :try_end_57
2316 + .catch Landroid/os/RemoteException; {:try_start_50 .. :try_end_57} :catch_59
2317 + .catch Ljava/lang/Exception; {:try_start_50 .. :try_end_57} :catch_5b
2319 move-result-object v2
2321 goto :goto_e
2323 - :catch_5f
2324 + :catch_59
2325 move-exception v0
2327 goto :goto_e
2329 - :catch_61
2330 + :catch_5b
2331 move-exception v0
2333 const-string v3, "ContentResolver"
2334 @@ -2693,9 +2683,9 @@
2335 :try_start_a8
2336 invoke-interface {v9, p1, p2}, Landroid/content/IContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
2337 :try_end_ab
2338 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_ec
2339 - .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_d2
2340 - .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_f3
2341 + .catchall {:try_start_a8 .. :try_end_ab} :catchall_e8
2342 + .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_ce
2343 + .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_ef
2345 move-result-object v8
2347 @@ -2703,6 +2693,7 @@
2349 if-eqz v9, :cond_3b
2351 + :goto_b0
2352 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2354 goto :goto_3b
2355 @@ -2731,20 +2722,18 @@
2357 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2358 :try_end_cb
2359 - .catchall {:try_start_b4 .. :try_end_cb} :catchall_ec
2360 - .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_d2
2361 - .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_f3
2362 + .catchall {:try_start_b4 .. :try_end_cb} :catchall_e8
2363 + .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_ce
2364 + .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_ef
2366 if-eqz v9, :cond_3b
2368 - invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2370 - goto/16 :goto_3b
2371 + goto :goto_b0
2373 - :catch_d2
2374 + :catch_ce
2375 move-exception v6
2377 - :try_start_d3
2378 + :try_start_cf
2379 new-instance v0, Ljava/io/FileNotFoundException;
2381 new-instance v2, Ljava/lang/StringBuilder;
2382 @@ -2768,26 +2757,26 @@
2383 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2385 throw v0
2386 - :try_end_ec
2387 - .catchall {:try_start_d3 .. :try_end_ec} :catchall_ec
2388 + :try_end_e8
2389 + .catchall {:try_start_cf .. :try_end_e8} :catchall_e8
2391 - :catchall_ec
2392 + :catchall_e8
2393 move-exception v0
2395 - if-eqz v9, :cond_f2
2396 + if-eqz v9, :cond_ee
2398 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2400 - :cond_f2
2401 + :cond_ee
2402 throw v0
2404 - :catch_f3
2405 + :catch_ef
2406 move-exception v6
2408 - :try_start_f4
2409 + :try_start_f0
2410 throw v6
2411 - :try_end_f5
2412 - .catchall {:try_start_f4 .. :try_end_f5} :catchall_ec
2413 + :try_end_f1
2414 + .catchall {:try_start_f0 .. :try_end_f1} :catchall_e8
2415 .end method
2417 .method public final openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;
2418 @@ -3069,9 +3058,9 @@
2419 :try_start_1f
2420 invoke-interface {v8, p1, p2, p3}, Landroid/content/IContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor;
2421 :try_end_22
2422 - .catchall {:try_start_1f .. :try_end_22} :catchall_63
2423 - .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_49
2424 - .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_6a
2425 + .catchall {:try_start_1f .. :try_end_22} :catchall_60
2426 + .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_46
2427 + .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_67
2429 move-result-object v7
2431 @@ -3081,10 +3070,10 @@
2433 if-eqz v8, :cond_2b
2435 + :goto_28
2436 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2438 :cond_2b
2439 - :goto_2b
2440 return-object v0
2442 :cond_2c
2443 @@ -3111,20 +3100,18 @@
2445 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2446 :try_end_43
2447 - .catchall {:try_start_2c .. :try_end_43} :catchall_63
2448 - .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_49
2449 - .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_6a
2450 + .catchall {:try_start_2c .. :try_end_43} :catchall_60
2451 + .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_46
2452 + .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_67
2454 if-eqz v8, :cond_2b
2456 - invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2458 - goto :goto_2b
2459 + goto :goto_28
2461 - :catch_49
2462 + :catch_46
2463 move-exception v6
2465 - :try_start_4a
2466 + :try_start_47
2467 new-instance v0, Ljava/io/FileNotFoundException;
2469 new-instance v2, Ljava/lang/StringBuilder;
2470 @@ -3148,26 +3135,26 @@
2471 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2473 throw v0
2474 - :try_end_63
2475 - .catchall {:try_start_4a .. :try_end_63} :catchall_63
2476 + :try_end_60
2477 + .catchall {:try_start_47 .. :try_end_60} :catchall_60
2479 - :catchall_63
2480 + :catchall_60
2481 move-exception v0
2483 - if-eqz v8, :cond_69
2484 + if-eqz v8, :cond_66
2486 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2488 - :cond_69
2489 + :cond_66
2490 throw v0
2492 - :catch_6a
2493 + :catch_67
2494 move-exception v6
2496 - :try_start_6b
2497 + :try_start_68
2498 throw v6
2499 - :try_end_6c
2500 - .catchall {:try_start_6b .. :try_end_6c} :catchall_63
2501 + :try_end_69
2502 + .catchall {:try_start_68 .. :try_end_69} :catchall_60
2503 .end method
2505 .method public final query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
2506 @@ -3204,7 +3191,13 @@
2508 move-result-object v9
2510 - if-nez v9, :cond_1e
2511 + iget-object v1, p0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2513 + 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;
2515 + move-result-object v9
2517 + if-nez v9, :cond_24
2519 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2521 @@ -3212,7 +3205,7 @@
2523 goto :goto_7
2525 - :cond_1e
2526 + :cond_24
2527 invoke-interface {v9}, Landroid/database/Cursor;->getCount()I
2529 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2530 @@ -3236,13 +3229,13 @@
2531 new-instance v1, Landroid/content/ContentResolver$CursorWrapperInner;
2533 invoke-direct {v1, p0, v9, v0}, Landroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V
2534 - :try_end_35
2535 - .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_35} :catch_36
2536 - .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_35} :catch_3c
2537 + :try_end_3b
2538 + .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_3b} :catch_3c
2539 + .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_3b} :catch_42
2541 goto :goto_7
2543 - :catch_36
2544 + :catch_3c
2545 move-exception v8
2547 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2548 @@ -3251,7 +3244,7 @@
2550 goto :goto_7
2552 - :catch_3c
2553 + :catch_42
2554 move-exception v8
2556 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2557 @@ -3424,12 +3417,12 @@
2559 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2560 :try_end_36
2561 - .catchall {:try_start_1f .. :try_end_36} :catchall_40
2562 + .catchall {:try_start_1f .. :try_end_36} :catchall_3d
2563 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_36} :catch_3a
2565 + :goto_36
2566 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2568 - :goto_39
2569 return v8
2571 :catch_3a
2572 @@ -3437,11 +3430,9 @@
2574 const/4 v8, -0x1
2576 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2577 + goto :goto_36
2579 - goto :goto_39
2581 - :catchall_40
2582 + :catchall_3d
2583 move-exception v0
2585 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2586 diff -Npru stock-framework/smali/android/content/CursorLoader.smali pdroid-framework/smali/android/content/CursorLoader.smali
2587 --- stock-framework/smali/android/content/CursorLoader.smali 2012-05-10 15:14:10.646343552 -0500
2588 +++ pdroid-framework/smali/android/content/CursorLoader.smali 2012-05-10 15:14:33.010454448 -0500
2589 @@ -154,7 +154,7 @@
2591 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2593 - const-string v0, "mProjection="
2594 + const-string/jumbo v0, "mProjection="
2596 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2598 diff -Npru stock-framework/smali/android/content/IntentFilter.smali pdroid-framework/smali/android/content/IntentFilter.smali
2599 --- stock-framework/smali/android/content/IntentFilter.smali 2012-05-10 15:14:10.678343714 -0500
2600 +++ pdroid-framework/smali/android/content/IntentFilter.smali 2012-05-10 15:14:33.038454592 -0500
2601 @@ -1705,14 +1705,14 @@
2603 iget-boolean v6, p0, Landroid/content/IntentFilter;->mHasPartialTypes:Z
2605 - if-eqz v6, :cond_171
2606 + if-eqz v6, :cond_172
2608 :cond_150
2609 invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->setLength(I)V
2611 invoke-virtual {v5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2613 - const-string v6, "mPriority="
2614 + const-string/jumbo v6, "mPriority="
2616 invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2618 @@ -1734,7 +1734,7 @@
2620 invoke-interface {p1, v6}, Landroid/util/Printer;->println(Ljava/lang/String;)V
2622 - :cond_171
2623 + :cond_172
2624 return-void
2625 .end method
2627 diff -Npru stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali
2628 --- stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-05-10 15:14:10.694343790 -0500
2629 +++ pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-05-10 15:14:33.054454666 -0500
2630 @@ -139,7 +139,7 @@
2632 invoke-interface {v1, v2, v3}, Landroid/content/ISyncAdapter;->initialize(Landroid/accounts/Account;Ljava/lang/String;)V
2633 :try_end_43
2634 - .catchall {:try_start_2 .. :try_end_43} :catchall_80
2635 + .catchall {:try_start_2 .. :try_end_43} :catchall_7d
2636 .catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_43} :catch_4e
2638 :cond_43
2639 @@ -149,9 +149,9 @@
2641 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2643 + :goto_4a
2644 invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2646 - :goto_4d
2647 return-void
2649 :catch_4e
2650 @@ -194,7 +194,7 @@
2652 invoke-static {v1, v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2653 :try_end_75
2654 - .catchall {:try_start_4f .. :try_end_75} :catchall_80
2655 + .catchall {:try_start_4f .. :try_end_75} :catchall_7d
2657 iget-object v1, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2659 @@ -202,11 +202,9 @@
2661 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2663 - invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2665 - goto :goto_4d
2666 + goto :goto_4a
2668 - :catchall_80
2669 + :catchall_7d
2670 move-exception v1
2672 iget-object v2, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2673 diff -Npru stock-framework/smali/android/content/SyncStorageEngine.smali pdroid-framework/smali/android/content/SyncStorageEngine.smali
2674 --- stock-framework/smali/android/content/SyncStorageEngine.smali 2012-05-10 15:14:10.742344032 -0500
2675 +++ pdroid-framework/smali/android/content/SyncStorageEngine.smali 2012-05-10 15:14:33.094454869 -0500
2676 @@ -487,7 +487,7 @@
2677 :try_start_18
2678 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2679 :try_end_1b
2680 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_34
2681 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_2d
2683 :goto_1b
2684 return-void
2685 @@ -529,17 +529,12 @@
2686 :try_start_30
2687 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2688 :try_end_33
2689 - .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_36
2690 + .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34
2692 :goto_33
2693 throw v4
2695 :catch_34
2696 - move-exception v4
2698 - goto :goto_1b
2700 - :catch_36
2701 move-exception v5
2703 goto :goto_33
2704 @@ -1750,7 +1745,7 @@
2706 invoke-interface {v9, v14, v15}, Lorg/xmlpull/v1/XmlPullParser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
2707 :try_end_43
2708 - .catchall {:try_start_2 .. :try_end_43} :catchall_12c
2709 + .catchall {:try_start_2 .. :try_end_43} :catchall_12a
2710 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_2 .. :try_end_43} :catch_e6
2711 .catch Ljava/io/IOException; {:try_start_2 .. :try_end_43} :catch_104
2713 @@ -1774,8 +1769,8 @@
2715 iput v14, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2716 :try_end_53
2717 - .catchall {:try_start_47 .. :try_end_53} :catchall_12c
2718 - .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_148
2719 + .catchall {:try_start_47 .. :try_end_53} :catchall_12a
2720 + .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_146
2721 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_47 .. :try_end_53} :catch_e6
2722 .catch Ljava/io/IOException; {:try_start_47 .. :try_end_53} :catch_104
2724 @@ -1848,7 +1843,7 @@
2725 :goto_89
2726 invoke-interface {v9}, Lorg/xmlpull/v1/XmlPullParser;->next()I
2727 :try_end_8c
2728 - .catchall {:try_start_55 .. :try_end_8c} :catchall_12c
2729 + .catchall {:try_start_55 .. :try_end_8c} :catchall_12a
2730 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_55 .. :try_end_8c} :catch_e6
2731 .catch Ljava/io/IOException; {:try_start_55 .. :try_end_8c} :catch_104
2733 @@ -1892,7 +1887,7 @@
2734 :try_start_a7
2735 invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2736 :try_end_aa
2737 - .catchall {:try_start_a7 .. :try_end_aa} :catchall_12c
2738 + .catchall {:try_start_a7 .. :try_end_aa} :catchall_12a
2739 .catch Ljava/lang/NumberFormatException; {:try_start_a7 .. :try_end_aa} :catch_ac
2740 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_a7 .. :try_end_aa} :catch_e6
2741 .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_aa} :catch_104
2742 @@ -1912,8 +1907,8 @@
2743 :try_start_af
2744 invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2745 :try_end_b2
2746 - .catchall {:try_start_af .. :try_end_b2} :catchall_12c
2747 - .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_148
2748 + .catchall {:try_start_af .. :try_end_b2} :catchall_12a
2749 + .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_146
2750 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_af .. :try_end_b2} :catch_e6
2751 .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_104
2753 @@ -1977,7 +1972,7 @@
2755 invoke-direct {v0, v9, v10}, Landroid/content/SyncStorageEngine;->parseExtra(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/Pair;)V
2756 :try_end_e5
2757 - .catchall {:try_start_b6 .. :try_end_e5} :catchall_12c
2758 + .catchall {:try_start_b6 .. :try_end_e5} :catchall_12a
2759 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_b6 .. :try_end_e5} :catch_e6
2760 .catch Ljava/io/IOException; {:try_start_b6 .. :try_end_e5} :catch_104
2762 @@ -1993,7 +1988,7 @@
2764 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2765 :try_end_ee
2766 - .catchall {:try_start_e7 .. :try_end_ee} :catchall_12c
2767 + .catchall {:try_start_e7 .. :try_end_ee} :catchall_12a
2769 add-int/lit8 v14, v5, 0x1
2771 @@ -2026,7 +2021,7 @@
2772 :catch_104
2773 move-exception v2
2775 - if-nez v4, :cond_124
2776 + if-nez v4, :cond_122
2778 :try_start_107
2779 const-string v14, "SyncManager"
2780 @@ -2035,7 +2030,7 @@
2782 invoke-static {v14, v15}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2783 :try_end_10e
2784 - .catchall {:try_start_107 .. :try_end_10e} :catchall_12c
2785 + .catchall {:try_start_107 .. :try_end_10e} :catchall_12a
2787 :goto_10e
2788 add-int/lit8 v14, v5, 0x1
2789 @@ -2057,28 +2052,23 @@
2790 :try_start_11e
2791 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2792 :try_end_121
2793 - .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_122
2794 + .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_102
2796 goto :goto_a6
2798 - :catch_122
2799 - move-exception v14
2801 - goto :goto_a6
2803 - :cond_124
2804 - :try_start_124
2805 + :cond_122
2806 + :try_start_122
2807 const-string v14, "SyncManager"
2809 const-string v15, "Error reading accounts"
2811 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2812 - :try_end_12b
2813 - .catchall {:try_start_124 .. :try_end_12b} :catchall_12c
2814 + :try_end_129
2815 + .catchall {:try_start_122 .. :try_end_129} :catchall_12a
2817 goto :goto_10e
2819 - :catchall_12c
2820 + :catchall_12a
2821 move-exception v14
2823 add-int/lit8 v15, v5, 0x1
2824 @@ -2097,28 +2087,28 @@
2826 iput v15, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2828 - if-eqz v4, :cond_142
2829 + if-eqz v4, :cond_140
2831 - :try_start_13f
2832 + :try_start_13d
2833 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2834 - :try_end_142
2835 - .catch Ljava/io/IOException; {:try_start_13f .. :try_end_142} :catch_146
2836 + :try_end_140
2837 + .catch Ljava/io/IOException; {:try_start_13d .. :try_end_140} :catch_141
2839 - :cond_142
2840 - :goto_142
2841 + :cond_140
2842 + :goto_140
2843 throw v14
2845 + :catch_141
2846 + move-exception v15
2848 + goto :goto_140
2850 :catch_143
2851 move-exception v14
2853 goto/16 :goto_a3
2855 :catch_146
2856 - move-exception v15
2858 - goto :goto_142
2860 - :catch_148
2861 move-exception v14
2863 goto/16 :goto_53
2864 @@ -3473,14 +3463,14 @@
2866 invoke-virtual {v2}, Landroid/os/Parcel;->readBundle()Landroid/os/Bundle;
2867 :try_end_10
2868 - .catchall {:try_start_5 .. :try_end_10} :catchall_1f
2869 + .catchall {:try_start_5 .. :try_end_10} :catchall_1c
2870 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_10} :catch_15
2872 move-result-object v0
2874 + :goto_11
2875 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
2877 - :goto_14
2878 return-object v0
2880 :catch_15
2881 @@ -3491,13 +3481,11 @@
2883 invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
2884 :try_end_1b
2885 - .catchall {:try_start_16 .. :try_end_1b} :catchall_1f
2887 - invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
2888 + .catchall {:try_start_16 .. :try_end_1b} :catchall_1c
2890 - goto :goto_14
2891 + goto :goto_11
2893 - :catchall_1f
2894 + :catchall_1c
2895 move-exception v3
2897 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
2898 diff -Npru stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali
2899 --- stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-05-10 15:14:10.914344884 -0500
2900 +++ pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-05-10 15:14:33.286455815 -0500
2901 @@ -105,13 +105,13 @@
2903 invoke-interface {v1}, Landroid/database/IBulkCursor;->close()V
2904 :try_end_d
2905 - .catchall {:try_start_8 .. :try_end_d} :catchall_1b
2906 + .catchall {:try_start_8 .. :try_end_d} :catchall_19
2907 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_d} :catch_10
2909 + :goto_d
2910 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
2912 :cond_f
2913 - :goto_f
2914 return-void
2916 :catch_10
2917 @@ -124,13 +124,11 @@
2919 invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
2920 :try_end_18
2921 - .catchall {:try_start_11 .. :try_end_18} :catchall_1b
2922 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
2924 - iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
2926 - goto :goto_f
2927 + goto :goto_d
2929 - :catchall_1b
2930 + :catchall_19
2931 move-exception v1
2933 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
2934 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteCursor.smali pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali
2935 --- stock-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-05-10 15:14:10.954345077 -0500
2936 +++ pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-05-10 15:14:33.310455936 -0500
2937 @@ -116,7 +116,7 @@
2938 const/4 v2, 0x0
2940 :goto_4a
2941 - if-ge v2, v0, :cond_66
2942 + if-ge v2, v0, :cond_6d
2944 iget-object v3, p0, Landroid/database/sqlite/SQLiteCursor;->mQuery:Landroid/database/sqlite/SQLiteQuery;
2946 @@ -138,7 +138,7 @@
2948 iput v2, p0, Landroid/database/sqlite/SQLiteCursor;->mRowIdColumnIndex:I
2949 :try_end_60
2950 - .catchall {:try_start_3f .. :try_end_60} :catchall_6c
2951 + .catchall {:try_start_3f .. :try_end_60} :catchall_66
2953 :cond_60
2954 add-int/lit8 v2, v2, 0x1
2955 @@ -150,14 +150,7 @@
2957 goto :goto_30
2959 - :cond_66
2960 - iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
2962 - invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
2964 - return-void
2966 - :catchall_6c
2967 + :catchall_66
2968 move-exception v3
2970 iget-object v4, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
2971 @@ -165,6 +158,13 @@
2972 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
2974 throw v3
2976 + :cond_6d
2977 + iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
2979 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
2981 + return-void
2982 .end method
2984 .method public constructor <init>(Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
2985 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali
2986 --- stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-05-10 15:14:10.970345158 -0500
2987 +++ pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-05-10 15:14:33.322455997 -0500
2988 @@ -459,19 +459,19 @@
2990 if-nez v2, :cond_32
2992 + :goto_2f
2993 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
2995 :cond_32
2996 - :goto_32
2997 return-void
2999 :cond_33
3000 - if-eqz p2, :cond_58
3001 + if-eqz p2, :cond_55
3003 :try_start_35
3004 iget-object v3, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3006 - if-nez v3, :cond_58
3007 + if-nez v3, :cond_55
3009 const-string v3, "BEGIN EXCLUSIVE;"
3011 @@ -502,26 +502,24 @@
3012 invoke-interface {p1}, Landroid/database/sqlite/SQLiteTransactionListener;->onBegin()V
3013 :try_end_51
3014 .catchall {:try_start_4e .. :try_end_51} :catchall_25
3015 - .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5e
3016 + .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5b
3018 :cond_51
3019 const/4 v2, 0x1
3021 if-nez v2, :cond_32
3023 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3025 - goto :goto_32
3026 + goto :goto_2f
3028 - :cond_58
3029 - :try_start_58
3030 + :cond_55
3031 + :try_start_55
3032 const-string v3, "BEGIN IMMEDIATE;"
3034 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3036 goto :goto_3e
3038 - :catch_5e
3039 + :catch_5b
3040 move-exception v0
3042 const-string v3, "ROLLBACK;"
3043 @@ -529,8 +527,8 @@
3044 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3046 throw v0
3047 - :try_end_65
3048 - .catchall {:try_start_58 .. :try_end_65} :catchall_25
3049 + :try_end_62
3050 + .catchall {:try_start_55 .. :try_end_62} :catchall_25
3051 .end method
3053 .method private checkLockHoldTime()V
3054 @@ -2993,6 +2991,8 @@
3056 if-nez v0, :cond_43
3058 + :cond_3f
3059 + :goto_3f
3060 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3062 goto :goto_7
3063 @@ -3009,7 +3009,7 @@
3065 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3067 - if-eqz v0, :cond_7f
3068 + if-eqz v0, :cond_3f
3070 const-string v0, "SQLiteDatabase"
3072 @@ -3063,10 +3063,7 @@
3073 :try_end_7f
3074 .catchall {:try_start_6f .. :try_end_7f} :catchall_6a
3076 - :cond_7f
3077 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3079 - goto :goto_7
3080 + goto :goto_3f
3081 .end method
3083 .method closeDatabase()V
3084 @@ -3507,13 +3504,13 @@
3085 :try_start_3
3086 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3087 :try_end_5
3088 - .catchall {:try_start_3 .. :try_end_5} :catchall_1e
3089 + .catchall {:try_start_3 .. :try_end_5} :catchall_1b
3091 if-nez v0, :cond_b
3093 + :goto_7
3094 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3096 - :goto_a
3097 return-void
3099 :cond_b
3100 @@ -3532,13 +3529,11 @@
3102 iput-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3103 :try_end_1a
3104 - .catchall {:try_start_b .. :try_end_1a} :catchall_1e
3106 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3107 + .catchall {:try_start_b .. :try_end_1a} :catchall_1b
3109 - goto :goto_a
3110 + goto :goto_7
3112 - :catchall_1e
3113 + :catchall_1b
3114 move-exception v0
3116 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3117 @@ -3568,7 +3563,7 @@
3118 :try_start_c
3119 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3120 :try_end_e
3121 - .catchall {:try_start_c .. :try_end_e} :catchall_6f
3122 + .catchall {:try_start_c .. :try_end_e} :catchall_59
3124 if-eqz v2, :cond_15
3126 @@ -3596,8 +3591,10 @@
3128 invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
3129 :try_end_26
3130 - .catchall {:try_start_15 .. :try_end_26} :catchall_6f
3131 + .catchall {:try_start_15 .. :try_end_26} :catchall_59
3133 + :cond_26
3134 + :goto_26
3135 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3137 goto :goto_8
3138 @@ -3606,7 +3603,7 @@
3139 :try_start_2a
3140 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mHasAttachedDbs:Z
3142 - if-eqz v2, :cond_5c
3143 + if-eqz v2, :cond_5e
3145 const-string v1, "SQLiteDatabase"
3147 @@ -3616,7 +3613,7 @@
3149 move-result v1
3151 - if-eqz v1, :cond_58
3152 + if-eqz v1, :cond_26
3154 const-string v1, "SQLiteDatabase"
3156 @@ -3648,15 +3645,19 @@
3158 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
3159 :try_end_58
3160 - .catchall {:try_start_2a .. :try_end_58} :catchall_6f
3161 + .catchall {:try_start_2a .. :try_end_58} :catchall_59
3163 + goto :goto_26
3165 + :catchall_59
3166 + move-exception v0
3168 - :cond_58
3169 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3171 - goto :goto_8
3172 + throw v0
3174 - :cond_5c
3175 - :try_start_5c
3176 + :cond_5e
3177 + :try_start_5e
3178 new-instance v0, Landroid/database/sqlite/DatabaseConnectionPool;
3180 invoke-direct {v0, p0}, Landroid/database/sqlite/DatabaseConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V
3181 @@ -3668,21 +3669,14 @@
3182 const-string v2, "WAL"
3184 invoke-direct {p0, v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->setJournalMode(Ljava/lang/String;Ljava/lang/String;)V
3185 - :try_end_6a
3186 - .catchall {:try_start_5c .. :try_end_6a} :catchall_6f
3187 + :try_end_6c
3188 + .catchall {:try_start_5e .. :try_end_6c} :catchall_59
3190 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3192 move v0, v1
3194 goto :goto_8
3196 - :catchall_6f
3197 - move-exception v0
3199 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3201 - throw v0
3202 .end method
3204 .method public endTransaction()V
3205 @@ -3716,9 +3710,9 @@
3207 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3209 + :goto_16
3210 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3212 - :goto_19
3213 return-void
3215 :cond_1a
3216 @@ -3753,21 +3747,21 @@
3217 :try_start_2a
3218 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3220 - if-eqz v2, :cond_56
3221 + if-eqz v2, :cond_53
3223 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3225 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onCommit()V
3226 :try_end_33
3227 .catchall {:try_start_2a .. :try_end_33} :catchall_1e
3228 - .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_5c
3229 + .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_59
3231 :cond_33
3232 :goto_33
3233 :try_start_33
3234 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3236 - if-eqz v2, :cond_62
3237 + if-eqz v2, :cond_5f
3239 const-string v2, "COMMIT;"
3241 @@ -3797,37 +3791,35 @@
3242 :goto_50
3243 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3245 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3247 - goto :goto_19
3248 + goto :goto_16
3250 - :cond_56
3251 - :try_start_56
3252 + :cond_53
3253 + :try_start_53
3254 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3256 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onRollback()V
3257 - :try_end_5b
3258 - .catchall {:try_start_56 .. :try_end_5b} :catchall_1e
3259 - .catch Ljava/lang/RuntimeException; {:try_start_56 .. :try_end_5b} :catch_5c
3260 + :try_end_58
3261 + .catchall {:try_start_53 .. :try_end_58} :catchall_1e
3262 + .catch Ljava/lang/RuntimeException; {:try_start_53 .. :try_end_58} :catch_59
3264 goto :goto_33
3266 - :catch_5c
3267 + :catch_59
3268 move-exception v0
3270 move-object v1, v0
3272 const/4 v2, 0x0
3274 - :try_start_5f
3275 + :try_start_5c
3276 iput-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3277 - :try_end_61
3278 - .catchall {:try_start_5f .. :try_end_61} :catchall_1e
3279 + :try_end_5e
3280 + .catchall {:try_start_5c .. :try_end_5e} :catchall_1e
3282 goto :goto_33
3284 - :cond_62
3285 - :try_start_62
3286 + :cond_5f
3287 + :try_start_5f
3288 const-string v2, "ROLLBACK;"
3290 invoke-virtual {p0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3291 @@ -3835,11 +3827,11 @@
3292 if-eqz v1, :cond_50
3294 throw v1
3295 - :try_end_6a
3296 - .catchall {:try_start_62 .. :try_end_6a} :catchall_1e
3297 - .catch Landroid/database/SQLException; {:try_start_62 .. :try_end_6a} :catch_6a
3298 + :try_end_67
3299 + .catchall {:try_start_5f .. :try_end_67} :catchall_1e
3300 + .catch Landroid/database/SQLException; {:try_start_5f .. :try_end_67} :catch_67
3302 - :catch_6a
3303 + :catch_67
3304 move-exception v2
3306 goto :goto_50
3307 @@ -4806,7 +4798,7 @@
3309 move-result v6
3311 - if-nez v6, :cond_af
3312 + if-nez v6, :cond_b6
3314 const-string v7, "SQLiteDatabase"
3316 @@ -4844,7 +4836,7 @@
3318 invoke-static {v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3319 :try_end_a8
3320 - .catchall {:try_start_54 .. :try_end_a8} :catchall_b7
3321 + .catchall {:try_start_54 .. :try_end_a8} :catchall_af
3323 const/4 v6, 0x0
3325 @@ -4856,25 +4848,25 @@
3326 :goto_ae
3327 return v6
3329 - :cond_af
3330 - if-eqz v4, :cond_b4
3331 + :catchall_af
3332 + move-exception v6
3334 - invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3335 + if-eqz v4, :cond_b5
3337 - :cond_b4
3338 - add-int/lit8 v2, v2, 0x1
3340 - goto :goto_47
3341 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3343 - :catchall_b7
3344 - move-exception v6
3345 + :cond_b5
3346 + throw v6
3348 - if-eqz v4, :cond_bd
3349 + :cond_b6
3350 + if-eqz v4, :cond_bb
3352 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3354 - :cond_bd
3355 - throw v6
3356 + :cond_bb
3357 + add-int/lit8 v2, v2, 0x1
3359 + goto :goto_47
3361 :cond_be
3362 const/4 v6, 0x1
3363 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteStatement.smali pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali
3364 --- stock-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-05-10 15:14:10.978345202 -0500
3365 +++ pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-05-10 15:14:33.330456033 -0500
3366 @@ -417,13 +417,13 @@
3368 invoke-virtual {v5, v6, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->logTimeStat(Ljava/lang/String;J)V
3369 :try_end_10
3370 - .catchall {:try_start_1 .. :try_end_10} :catchall_3e
3371 + .catchall {:try_start_1 .. :try_end_10} :catchall_3b
3372 .catch Ljava/io/IOException; {:try_start_1 .. :try_end_10} :catch_14
3373 - .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_22
3374 + .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_1f
3376 + :goto_10
3377 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3379 - :goto_13
3380 return-object v2
3382 :catch_14
3383 @@ -435,19 +435,14 @@
3384 const-string/jumbo v6, "simpleQueryForBlobFileDescriptor() failed"
3386 invoke-static {v5, v6, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3387 - :try_end_1d
3388 - .catchall {:try_start_15 .. :try_end_1d} :catchall_3e
3390 const/4 v2, 0x0
3392 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3394 - goto :goto_13
3395 + goto :goto_10
3397 - :catch_22
3398 + :catch_1f
3399 move-exception v0
3401 - :try_start_23
3402 new-instance v5, Landroid/database/sqlite/SQLiteDoneException;
3404 new-instance v6, Ljava/lang/StringBuilder;
3405 @@ -473,10 +468,10 @@
3406 invoke-direct {v5, v6}, Landroid/database/sqlite/SQLiteDoneException;-><init>(Ljava/lang/String;)V
3408 throw v5
3409 - :try_end_3e
3410 - .catchall {:try_start_23 .. :try_end_3e} :catchall_3e
3411 + :try_end_3b
3412 + .catchall {:try_start_15 .. :try_end_3b} :catchall_3b
3414 - :catchall_3e
3415 + :catchall_3b
3416 move-exception v5
3418 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3419 diff -Npru stock-framework/smali/android/location/Location.smali pdroid-framework/smali/android/location/Location.smali
3420 --- stock-framework/smali/android/location/Location.smali 2012-05-10 15:14:11.358347086 -0500
3421 +++ pdroid-framework/smali/android/location/Location.smali 2012-05-10 15:14:33.634457547 -0500
3422 @@ -1631,7 +1631,7 @@
3424 move-result-object v0
3426 - const-string v1, "mProvider="
3427 + const-string/jumbo v1, "mProvider="
3429 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3431 diff -Npru stock-framework/smali/android/media/MediaPlayer.smali pdroid-framework/smali/android/media/MediaPlayer.smali
3432 --- stock-framework/smali/android/media/MediaPlayer.smali 2012-05-10 15:14:11.494347755 -0500
3433 +++ pdroid-framework/smali/android/media/MediaPlayer.smali 2012-05-10 15:14:33.710457921 -0500
3434 @@ -985,9 +985,9 @@
3436 invoke-virtual {v7, p2, v0}, Landroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
3437 :try_end_21
3438 - .catchall {:try_start_17 .. :try_end_21} :catchall_6e
3439 - .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_52
3440 - .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_67
3441 + .catchall {:try_start_17 .. :try_end_21} :catchall_64
3442 + .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_4f
3443 + .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_6b
3445 move-result-object v6
3447 @@ -995,6 +995,7 @@
3449 if-eqz v6, :cond_15
3451 + :goto_26
3452 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3454 goto :goto_15
3455 @@ -1009,27 +1010,20 @@
3457 cmp-long v0, v0, v2
3459 - if-gez v0, :cond_41
3460 + if-gez v0, :cond_3e
3462 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3464 move-result-object v0
3466 invoke-virtual {p0, v0}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V
3467 - :try_end_3b
3468 - .catchall {:try_start_2a .. :try_end_3b} :catchall_6e
3469 - .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_3b} :catch_52
3470 - .catch Ljava/io/IOException; {:try_start_2a .. :try_end_3b} :catch_67
3472 :goto_3b
3473 if-eqz v6, :cond_15
3475 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3477 - goto :goto_15
3478 + goto :goto_26
3480 - :cond_41
3481 - :try_start_41
3482 + :cond_3e
3483 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3485 move-result-object v1
3486 @@ -1045,22 +1039,22 @@
3487 move-object v0, p0
3489 invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V
3490 - :try_end_51
3491 - .catchall {:try_start_41 .. :try_end_51} :catchall_6e
3492 - .catch Ljava/lang/SecurityException; {:try_start_41 .. :try_end_51} :catch_52
3493 - .catch Ljava/io/IOException; {:try_start_41 .. :try_end_51} :catch_67
3494 + :try_end_4e
3495 + .catchall {:try_start_2a .. :try_end_4e} :catchall_64
3496 + .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_4e} :catch_4f
3497 + .catch Ljava/io/IOException; {:try_start_2a .. :try_end_4e} :catch_6b
3499 goto :goto_3b
3501 - :catch_52
3502 + :catch_4f
3503 move-exception v0
3505 - if-eqz v6, :cond_58
3506 + if-eqz v6, :cond_55
3508 + :goto_52
3509 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3511 - :cond_58
3512 - :goto_58
3513 + :cond_55
3514 const-string v0, "MediaPlayer"
3516 const-string v1, "Couldn\'t open file on client side, trying server side"
3517 @@ -1075,24 +1069,22 @@
3519 goto :goto_15
3521 - :catch_67
3522 + :catchall_64
3523 move-exception v0
3525 - if-eqz v6, :cond_58
3526 + if-eqz v6, :cond_6a
3528 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3530 - goto :goto_58
3531 + :cond_6a
3532 + throw v0
3534 - :catchall_6e
3535 + :catch_6b
3536 move-exception v0
3538 - if-eqz v6, :cond_74
3539 + if-eqz v6, :cond_55
3541 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3543 - :cond_74
3544 - throw v0
3545 + goto :goto_52
3546 .end method
3548 .method public setDataSource(Ljava/io/FileDescriptor;)V
3549 diff -Npru stock-framework/smali/android/net/VpnService.smali pdroid-framework/smali/android/net/VpnService.smali
3550 --- stock-framework/smali/android/net/VpnService.smali 2012-05-10 15:14:11.694348747 -0500
3551 +++ pdroid-framework/smali/android/net/VpnService.smali 2012-05-10 15:14:34.782463235 -0500
3552 @@ -155,8 +155,6 @@
3554 :try_start_d
3555 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3556 - :try_end_10
3557 - .catch Ljava/lang/Exception; {:try_start_d .. :try_end_10} :catch_1e
3559 :goto_10
3560 return v2
3561 @@ -166,10 +164,9 @@
3563 const/4 v2, 0x0
3565 - :try_start_13
3566 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3567 :try_end_16
3568 - .catch Ljava/lang/Exception; {:try_start_13 .. :try_end_16} :catch_17
3569 + .catch Ljava/lang/Exception; {:try_start_d .. :try_end_16} :catch_17
3571 goto :goto_10
3573 @@ -184,7 +181,7 @@
3574 :try_start_1a
3575 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
3576 :try_end_1d
3577 - .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_20
3578 + .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_1e
3580 :goto_1d
3581 throw v2
3582 @@ -192,11 +189,6 @@
3583 :catch_1e
3584 move-exception v3
3586 - goto :goto_10
3588 - :catch_20
3589 - move-exception v3
3591 goto :goto_1d
3592 .end method
3594 diff -Npru stock-framework/smali/android/net/wifi/WifiConfigStore.smali pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali
3595 --- stock-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-05-10 15:14:11.834349447 -0500
3596 +++ pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-05-10 15:14:34.874463696 -0500
3597 @@ -2786,9 +2786,9 @@
3599 invoke-direct {v9, v0}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
3600 :try_end_14
3601 - .catchall {:try_start_1 .. :try_end_14} :catchall_23d
3602 - .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_243
3603 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_240
3604 + .catchall {:try_start_1 .. :try_end_14} :catchall_23a
3605 + .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_240
3606 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_23d
3608 :try_start_14
3609 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3610 @@ -2815,7 +2815,7 @@
3612 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3613 :try_end_2d
3614 - .catchall {:try_start_14 .. :try_end_2d} :catchall_17e
3615 + .catchall {:try_start_14 .. :try_end_2d} :catchall_17b
3616 .catch Ljava/io/EOFException; {:try_start_14 .. :try_end_2d} :catch_d5
3617 .catch Ljava/io/IOException; {:try_start_14 .. :try_end_2d} :catch_10b
3619 @@ -2842,27 +2842,27 @@
3621 invoke-virtual {v11, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
3622 :try_end_3b
3623 - .catchall {:try_start_34 .. :try_end_3b} :catchall_17e
3624 + .catchall {:try_start_34 .. :try_end_3b} :catchall_17b
3625 .catch Ljava/lang/IllegalArgumentException; {:try_start_34 .. :try_end_3b} :catch_bb
3626 .catch Ljava/io/EOFException; {:try_start_34 .. :try_end_3b} :catch_d5
3627 .catch Ljava/io/IOException; {:try_start_34 .. :try_end_3b} :catch_10b
3629 move-result v19
3631 - if-eqz v19, :cond_1cd
3632 + if-eqz v19, :cond_1ca
3634 const/16 v19, -0x1
3636 move/from16 v0, v19
3638 - if-eq v7, v0, :cond_230
3639 + if-eq v7, v0, :cond_22d
3641 :try_start_44
3642 sget-object v20, Landroid/net/wifi/WifiConfigStore;->sConfiguredNetworks:Ljava/util/HashMap;
3644 monitor-enter v20
3645 :try_end_47
3646 - .catchall {:try_start_44 .. :try_end_47} :catchall_17e
3647 + .catchall {:try_start_44 .. :try_end_47} :catchall_17b
3648 .catch Ljava/io/EOFException; {:try_start_44 .. :try_end_47} :catch_d5
3649 .catch Ljava/io/IOException; {:try_start_44 .. :try_end_47} :catch_10b
3651 @@ -2889,7 +2889,7 @@
3653 check-cast v2, Landroid/net/wifi/WifiConfiguration;
3655 - if-nez v2, :cond_1ee
3656 + if-nez v2, :cond_1eb
3658 const-string v19, "configuration found for missing network, ignored"
3660 @@ -2899,7 +2899,7 @@
3661 :pswitch_64
3662 monitor-exit v20
3663 :try_end_65
3664 - .catchall {:try_start_47 .. :try_end_65} :catchall_212
3665 + .catchall {:try_start_47 .. :try_end_65} :catchall_20f
3667 :cond_65
3668 :goto_65
3669 @@ -2923,7 +2923,7 @@
3670 :goto_72
3671 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3672 :try_end_75
3673 - .catchall {:try_start_66 .. :try_end_75} :catchall_17e
3674 + .catchall {:try_start_66 .. :try_end_75} :catchall_17b
3675 .catch Ljava/io/EOFException; {:try_start_66 .. :try_end_75} :catch_d5
3676 .catch Ljava/io/IOException; {:try_start_66 .. :try_end_75} :catch_10b
3678 @@ -3000,7 +3000,7 @@
3680 invoke-virtual {v13, v12}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)V
3681 :try_end_ba
3682 - .catchall {:try_start_76 .. :try_end_ba} :catchall_17e
3683 + .catchall {:try_start_76 .. :try_end_ba} :catchall_17b
3684 .catch Ljava/lang/IllegalArgumentException; {:try_start_76 .. :try_end_ba} :catch_bb
3685 .catch Ljava/io/EOFException; {:try_start_76 .. :try_end_ba} :catch_d5
3686 .catch Ljava/io/IOException; {:try_start_76 .. :try_end_ba} :catch_10b
3687 @@ -3033,7 +3033,7 @@
3689 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3690 :try_end_d4
3691 - .catchall {:try_start_bc .. :try_end_d4} :catchall_17e
3692 + .catchall {:try_start_bc .. :try_end_d4} :catchall_17b
3693 .catch Ljava/io/EOFException; {:try_start_bc .. :try_end_d4} :catch_d5
3694 .catch Ljava/io/IOException; {:try_start_bc .. :try_end_d4} :catch_10b
3696 @@ -3069,7 +3069,7 @@
3698 move-result v19
3700 - if-eqz v19, :cond_165
3701 + if-eqz v19, :cond_162
3703 const/4 v3, 0x0
3705 @@ -3081,7 +3081,7 @@
3707 move/from16 v1, v19
3709 - if-ne v0, v1, :cond_12f
3710 + if-ne v0, v1, :cond_12c
3712 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3714 @@ -3103,7 +3103,7 @@
3716 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)V
3717 :try_end_109
3718 - .catchall {:try_start_e1 .. :try_end_109} :catchall_17e
3719 + .catchall {:try_start_e1 .. :try_end_109} :catchall_17b
3720 .catch Ljava/lang/IllegalArgumentException; {:try_start_e1 .. :try_end_109} :catch_bb
3721 .catch Ljava/io/EOFException; {:try_start_e1 .. :try_end_109} :catch_d5
3722 .catch Ljava/io/IOException; {:try_start_e1 .. :try_end_109} :catch_10b
3723 @@ -3139,24 +3139,19 @@
3725 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3726 :try_end_125
3727 - .catchall {:try_start_10d .. :try_end_125} :catchall_23d
3728 + .catchall {:try_start_10d .. :try_end_125} :catchall_23a
3730 if-eqz v8, :cond_33
3732 :try_start_127
3733 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
3734 :try_end_12a
3735 - .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_12c
3736 + .catch Ljava/lang/Exception; {:try_start_127 .. :try_end_12a} :catch_de
3738 goto/16 :goto_33
3740 - :catch_12c
3741 - move-exception v19
3743 - goto/16 :goto_33
3745 - :cond_12f
3746 - :try_start_12f
3747 + :cond_12c
3748 + :try_start_12c
3749 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3751 move-result v19
3752 @@ -3167,7 +3162,7 @@
3754 move/from16 v1, v20
3756 - if-ne v0, v1, :cond_150
3757 + if-ne v0, v1, :cond_14d
3759 new-instance v3, Landroid/net/LinkAddress;
3761 @@ -3189,7 +3184,7 @@
3763 invoke-direct {v3, v0, v1}, Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
3765 - :cond_150
3766 + :cond_14d
3767 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3769 move-result v19
3770 @@ -3212,7 +3207,7 @@
3772 goto :goto_fd
3774 - :cond_165
3775 + :cond_162
3776 const-string v19, "dns"
3778 move-object/from16 v0, v19
3779 @@ -3221,7 +3216,7 @@
3781 move-result v19
3783 - if-eqz v19, :cond_186
3784 + if-eqz v19, :cond_183
3786 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3788 @@ -3234,33 +3229,33 @@
3789 move-object/from16 v0, v19
3791 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addDns(Ljava/net/InetAddress;)V
3792 - :try_end_17c
3793 - .catchall {:try_start_12f .. :try_end_17c} :catchall_17e
3794 - .catch Ljava/lang/IllegalArgumentException; {:try_start_12f .. :try_end_17c} :catch_bb
3795 - .catch Ljava/io/EOFException; {:try_start_12f .. :try_end_17c} :catch_d5
3796 - .catch Ljava/io/IOException; {:try_start_12f .. :try_end_17c} :catch_10b
3797 + :try_end_179
3798 + .catchall {:try_start_12c .. :try_end_179} :catchall_17b
3799 + .catch Ljava/lang/IllegalArgumentException; {:try_start_12c .. :try_end_179} :catch_bb
3800 + .catch Ljava/io/EOFException; {:try_start_12c .. :try_end_179} :catch_d5
3801 + .catch Ljava/io/IOException; {:try_start_12c .. :try_end_179} :catch_10b
3803 goto/16 :goto_72
3805 - :catchall_17e
3806 + :catchall_17b
3807 move-exception v19
3809 move-object v8, v9
3811 - :goto_180
3812 - if-eqz v8, :cond_185
3813 + :goto_17d
3814 + if-eqz v8, :cond_182
3816 - :try_start_182
3817 + :try_start_17f
3818 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
3819 - :try_end_185
3820 - .catch Ljava/lang/Exception; {:try_start_182 .. :try_end_185} :catch_23a
3821 + :try_end_182
3822 + .catch Ljava/lang/Exception; {:try_start_17f .. :try_end_182} :catch_234
3824 - :cond_185
3825 - :goto_185
3826 + :cond_182
3827 + :goto_182
3828 throw v19
3830 - :cond_186
3831 - :try_start_186
3832 + :cond_183
3833 + :try_start_183
3834 const-string/jumbo v19, "proxySettings"
3836 move-object/from16 v0, v19
3837 @@ -3269,7 +3264,7 @@
3839 move-result v19
3841 - if-eqz v19, :cond_19b
3842 + if-eqz v19, :cond_198
3844 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3846 @@ -3281,7 +3276,7 @@
3848 goto/16 :goto_72
3850 - :cond_19b
3851 + :cond_198
3852 const-string/jumbo v19, "proxyHost"
3854 move-object/from16 v0, v19
3855 @@ -3290,7 +3285,7 @@
3857 move-result v19
3859 - if-eqz v19, :cond_1ac
3860 + if-eqz v19, :cond_1a9
3862 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
3864 @@ -3298,7 +3293,7 @@
3866 goto/16 :goto_72
3868 - :cond_1ac
3869 + :cond_1a9
3870 const-string/jumbo v19, "proxyPort"
3872 move-object/from16 v0, v19
3873 @@ -3307,7 +3302,7 @@
3875 move-result v19
3877 - if-eqz v19, :cond_1bd
3878 + if-eqz v19, :cond_1ba
3880 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
3882 @@ -3315,7 +3310,7 @@
3884 goto/16 :goto_72
3886 - :cond_1bd
3887 + :cond_1ba
3888 const-string v19, "exclusionList"
3890 move-object/from16 v0, v19
3891 @@ -3332,7 +3327,7 @@
3893 goto/16 :goto_72
3895 - :cond_1cd
3896 + :cond_1ca
3897 new-instance v19, Ljava/lang/StringBuilder;
3899 invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
3900 @@ -3360,16 +3355,16 @@
3901 move-result-object v19
3903 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3904 - :try_end_1ec
3905 - .catchall {:try_start_186 .. :try_end_1ec} :catchall_17e
3906 - .catch Ljava/lang/IllegalArgumentException; {:try_start_186 .. :try_end_1ec} :catch_bb
3907 - .catch Ljava/io/EOFException; {:try_start_186 .. :try_end_1ec} :catch_d5
3908 - .catch Ljava/io/IOException; {:try_start_186 .. :try_end_1ec} :catch_10b
3909 + :try_end_1e9
3910 + .catchall {:try_start_183 .. :try_end_1e9} :catchall_17b
3911 + .catch Ljava/lang/IllegalArgumentException; {:try_start_183 .. :try_end_1e9} :catch_bb
3912 + .catch Ljava/io/EOFException; {:try_start_183 .. :try_end_1e9} :catch_d5
3913 + .catch Ljava/io/IOException; {:try_start_183 .. :try_end_1e9} :catch_10b
3915 goto/16 :goto_72
3917 - :cond_1ee
3918 - :try_start_1ee
3919 + :cond_1eb
3920 + :try_start_1eb
3921 iput-object v13, v2, Landroid/net/wifi/WifiConfiguration;->linkProperties:Landroid/net/LinkProperties;
3923 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$IpAssignment:[I
3924 @@ -3380,14 +3375,14 @@
3926 aget v19, v19, v21
3928 - packed-switch v19, :pswitch_data_246
3929 + packed-switch v19, :pswitch_data_244
3931 const-string v19, "Ignore invalid ip assignment while reading"
3933 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
3935 - :goto_200
3936 - :pswitch_200
3937 + :goto_1fd
3938 + :pswitch_1fd
3939 sget-object v19, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$ProxySettings:[I
3941 invoke-virtual/range {v17 .. v17}, Landroid/net/wifi/WifiConfiguration$ProxySettings;->ordinal()I
3942 @@ -3396,7 +3391,7 @@
3944 aget v19, v19, v21
3946 - packed-switch v19, :pswitch_data_250
3947 + packed-switch v19, :pswitch_data_24e
3949 const-string v19, "Ignore invalid proxy settings while reading"
3951 @@ -3404,27 +3399,27 @@
3953 goto/16 :goto_64
3955 - :catchall_212
3956 + :catchall_20f
3957 move-exception v19
3959 monitor-exit v20
3960 - :try_end_214
3961 - .catchall {:try_start_1ee .. :try_end_214} :catchall_212
3962 + :try_end_211
3963 + .catchall {:try_start_1eb .. :try_end_211} :catchall_20f
3965 - :try_start_214
3966 + :try_start_211
3967 throw v19
3968 - :try_end_215
3969 - .catchall {:try_start_214 .. :try_end_215} :catchall_17e
3970 - .catch Ljava/io/EOFException; {:try_start_214 .. :try_end_215} :catch_d5
3971 - .catch Ljava/io/IOException; {:try_start_214 .. :try_end_215} :catch_10b
3972 + :try_end_212
3973 + .catchall {:try_start_211 .. :try_end_212} :catchall_17b
3974 + .catch Ljava/io/EOFException; {:try_start_211 .. :try_end_212} :catch_d5
3975 + .catch Ljava/io/IOException; {:try_start_211 .. :try_end_212} :catch_10b
3977 - :pswitch_215
3978 - :try_start_215
3979 + :pswitch_212
3980 + :try_start_212
3981 iput-object v10, v2, Landroid/net/wifi/WifiConfiguration;->ipAssignment:Landroid/net/wifi/WifiConfiguration$IpAssignment;
3983 - goto :goto_200
3984 + goto :goto_1fd
3986 - :pswitch_218
3987 + :pswitch_215
3988 move-object/from16 v0, v17
3990 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
3991 @@ -3441,63 +3436,65 @@
3993 goto/16 :goto_64
3995 - :pswitch_22a
3996 + :pswitch_227
3997 move-object/from16 v0, v17
3999 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4000 - :try_end_22e
4001 - .catchall {:try_start_215 .. :try_end_22e} :catchall_212
4002 + :try_end_22b
4003 + .catchall {:try_start_212 .. :try_end_22b} :catchall_20f
4005 goto/16 :goto_64
4007 - :cond_230
4008 - :try_start_230
4009 + :cond_22d
4010 + :try_start_22d
4011 const-string v19, "Missing id while parsing configuration"
4013 invoke-static/range {v19 .. v19}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4014 - :try_end_235
4015 - .catchall {:try_start_230 .. :try_end_235} :catchall_17e
4016 - .catch Ljava/io/EOFException; {:try_start_230 .. :try_end_235} :catch_d5
4017 - .catch Ljava/io/IOException; {:try_start_230 .. :try_end_235} :catch_10b
4018 + :try_end_232
4019 + .catchall {:try_start_22d .. :try_end_232} :catchall_17b
4020 + .catch Ljava/io/EOFException; {:try_start_22d .. :try_end_232} :catch_d5
4021 + .catch Ljava/io/IOException; {:try_start_22d .. :try_end_232} :catch_10b
4023 goto/16 :goto_65
4025 + :catch_234
4026 + move-exception v20
4028 + goto/16 :goto_182
4030 :catch_237
4031 move-exception v19
4033 goto/16 :goto_32
4035 - :catch_23a
4036 - move-exception v20
4038 - goto/16 :goto_185
4040 - :catchall_23d
4041 + :catchall_23a
4042 move-exception v19
4044 - goto/16 :goto_180
4045 + goto/16 :goto_17d
4047 - :catch_240
4048 + :catch_23d
4049 move-exception v4
4051 goto/16 :goto_10d
4053 - :catch_243
4054 + :catch_240
4055 move-exception v19
4057 goto/16 :goto_d7
4059 - :pswitch_data_246
4060 + nop
4062 + :pswitch_data_244
4063 .packed-switch 0x1
4064 - :pswitch_215
4065 - :pswitch_215
4066 - :pswitch_200
4067 + :pswitch_212
4068 + :pswitch_212
4069 + :pswitch_1fd
4070 .end packed-switch
4072 - :pswitch_data_250
4073 + :pswitch_data_24e
4074 .packed-switch 0x1
4075 - :pswitch_218
4076 - :pswitch_22a
4077 + :pswitch_215
4078 + :pswitch_227
4079 :pswitch_64
4080 .end packed-switch
4081 .end method
4082 @@ -4603,8 +4600,8 @@
4084 invoke-direct {v11, v15}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
4085 :try_end_12
4086 - .catchall {:try_start_1 .. :try_end_12} :catchall_1c1
4087 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1d0
4088 + .catchall {:try_start_1 .. :try_end_12} :catchall_1bd
4089 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1ce
4091 const/4 v15, 0x2
4093 @@ -4615,7 +4612,7 @@
4095 monitor-enter v16
4096 :try_end_19
4097 - .catchall {:try_start_13 .. :try_end_19} :catchall_1cd
4098 + .catchall {:try_start_13 .. :try_end_19} :catchall_1cb
4099 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_19} :catch_71
4101 :try_start_19
4102 @@ -4661,7 +4658,7 @@
4104 aget v15, v15, v17
4106 - packed-switch v15, :pswitch_data_1d6
4107 + packed-switch v15, :pswitch_data_1d2
4109 const-string v15, "Ignore invalid ip assignment while writing"
4111 @@ -4681,7 +4678,7 @@
4113 aget v15, v15, v17
4115 - packed-switch v15, :pswitch_data_1e0
4116 + packed-switch v15, :pswitch_data_1dc
4118 const-string v15, "Ignore invalid proxy settings while writing"
4120 @@ -4723,7 +4720,7 @@
4121 :try_start_70
4122 throw v15
4123 :try_end_71
4124 - .catchall {:try_start_70 .. :try_end_71} :catchall_1cd
4125 + .catchall {:try_start_70 .. :try_end_71} :catchall_1cb
4126 .catch Ljava/io/IOException; {:try_start_70 .. :try_end_71} :catch_71
4128 :catch_71
4129 @@ -4737,14 +4734,14 @@
4131 invoke-static {v15}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4132 :try_end_78
4133 - .catchall {:try_start_73 .. :try_end_78} :catchall_1c1
4134 + .catchall {:try_start_73 .. :try_end_78} :catchall_1bd
4136 if-eqz v10, :cond_7d
4138 :try_start_7a
4139 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4140 :try_end_7d
4141 - .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c8
4142 + .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c6
4144 :cond_7d
4145 :goto_7d
4146 @@ -5073,74 +5070,71 @@
4147 :try_end_1b5
4148 .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_6e
4150 - if-eqz v11, :cond_1d3
4151 + if-eqz v11, :cond_1ba
4153 :try_start_1b7
4154 invoke-virtual {v11}, Ljava/io/DataOutputStream;->close()V
4155 :try_end_1ba
4156 - .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1bd
4158 - move-object v10, v11
4160 - goto/16 :goto_7d
4162 - :catch_1bd
4163 - move-exception v15
4164 + .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1c9
4166 + :cond_1ba
4167 + :goto_1ba
4168 move-object v10, v11
4170 goto/16 :goto_7d
4172 - :catchall_1c1
4173 + :catchall_1bd
4174 move-exception v15
4176 - :goto_1c2
4177 - if-eqz v10, :cond_1c7
4178 + :goto_1be
4179 + if-eqz v10, :cond_1c3
4181 - :try_start_1c4
4182 + :try_start_1c0
4183 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4184 - :try_end_1c7
4185 - .catch Ljava/lang/Exception; {:try_start_1c4 .. :try_end_1c7} :catch_1cb
4186 + :try_end_1c3
4187 + .catch Ljava/lang/Exception; {:try_start_1c0 .. :try_end_1c3} :catch_1c4
4189 - :cond_1c7
4190 - :goto_1c7
4191 + :cond_1c3
4192 + :goto_1c3
4193 throw v15
4195 - :catch_1c8
4196 + :catch_1c4
4197 + move-exception v16
4199 + goto :goto_1c3
4201 + :catch_1c6
4202 move-exception v15
4204 goto/16 :goto_7d
4206 - :catch_1cb
4207 - move-exception v16
4208 + :catch_1c9
4209 + move-exception v15
4211 - goto :goto_1c7
4212 + goto :goto_1ba
4214 - :catchall_1cd
4215 + :catchall_1cb
4216 move-exception v15
4218 move-object v10, v11
4220 - goto :goto_1c2
4221 + goto :goto_1be
4223 - :catch_1d0
4224 + :catch_1ce
4225 move-exception v3
4227 goto/16 :goto_73
4229 - :cond_1d3
4230 - move-object v10, v11
4232 - goto/16 :goto_7d
4233 + nop
4235 - :pswitch_data_1d6
4236 + :pswitch_data_1d2
4237 .packed-switch 0x1
4238 :pswitch_7e
4239 :pswitch_155
4240 :pswitch_46
4241 .end packed-switch
4243 - :pswitch_data_1e0
4244 + :pswitch_data_1dc
4245 .packed-switch 0x1
4246 :pswitch_166
4247 :pswitch_1a2
4248 diff -Npru stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali
4249 --- stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-05-10 15:14:11.994350234 -0500
4250 +++ pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-05-10 15:14:35.186465240 -0500
4251 @@ -161,7 +161,7 @@
4253 monitor-enter v14
4254 :try_end_26
4255 - .catchall {:try_start_21 .. :try_end_26} :catchall_160
4256 + .catchall {:try_start_21 .. :try_end_26} :catchall_15d
4258 :goto_26
4259 :try_start_26
4260 @@ -169,11 +169,11 @@
4262 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldExit:Z
4264 - if-eqz v13, :cond_3d
4265 + if-eqz v13, :cond_3a
4267 monitor-exit v14
4268 :try_end_2d
4269 - .catchall {:try_start_26 .. :try_end_2d} :catchall_15d
4270 + .catchall {:try_start_26 .. :try_end_2d} :catchall_15a
4272 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4274 @@ -187,21 +187,14 @@
4275 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4277 monitor-exit v14
4278 + :try_end_39
4279 + .catchall {:try_start_32 .. :try_end_39} :catchall_212
4281 :goto_39
4282 return-void
4284 - :catchall_3a
4285 - move-exception v13
4287 - monitor-exit v14
4288 - :try_end_3c
4289 - .catchall {:try_start_32 .. :try_end_3c} :catchall_3a
4291 - throw v13
4293 - :cond_3d
4294 - :try_start_3d
4295 + :cond_3a
4296 + :try_start_3a
4297 move-object/from16 v0, p0
4299 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEventQueue:Ljava/util/ArrayList;
4300 @@ -210,7 +203,7 @@
4302 move-result v13
4304 - if-nez v13, :cond_5c
4305 + if-nez v13, :cond_59
4307 move-object/from16 v0, p0
4309 @@ -228,24 +221,24 @@
4311 move-object v5, v0
4313 - :goto_54
4314 + :goto_51
4315 monitor-exit v14
4316 - :try_end_55
4317 - .catchall {:try_start_3d .. :try_end_55} :catchall_15d
4318 + :try_end_52
4319 + .catchall {:try_start_3a .. :try_end_52} :catchall_15a
4321 - if-eqz v5, :cond_1a9
4322 + if-eqz v5, :cond_1a6
4324 - :try_start_57
4325 + :try_start_54
4326 invoke-interface {v5}, Ljava/lang/Runnable;->run()V
4327 - :try_end_5a
4328 - .catchall {:try_start_57 .. :try_end_5a} :catchall_160
4329 + :try_end_57
4330 + .catchall {:try_start_54 .. :try_end_57} :catchall_15d
4332 const/4 v5, 0x0
4334 goto :goto_21
4336 - :cond_5c
4337 - :try_start_5c
4338 + :cond_59
4339 + :try_start_59
4340 move-object/from16 v0, p0
4342 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4343 @@ -254,7 +247,7 @@
4345 iget-boolean v15, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestPaused:Z
4347 - if-eq v13, v15, :cond_75
4348 + if-eq v13, v15, :cond_72
4350 move-object/from16 v0, p0
4352 @@ -270,12 +263,12 @@
4354 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4356 - :cond_75
4357 + :cond_72
4358 move-object/from16 v0, p0
4360 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldReleaseEglContext:Z
4362 - if-eqz v13, :cond_87
4363 + if-eqz v13, :cond_84
4365 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4367 @@ -289,8 +282,8 @@
4369 const/4 v1, 0x1
4371 - :cond_87
4372 - if-eqz v8, :cond_90
4373 + :cond_84
4374 + if-eqz v8, :cond_8d
4376 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4378 @@ -298,18 +291,18 @@
4380 const/4 v8, 0x0
4382 - :cond_90
4383 + :cond_8d
4384 move-object/from16 v0, p0
4386 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4388 - if-eqz v13, :cond_c7
4389 + if-eqz v13, :cond_c4
4391 move-object/from16 v0, p0
4393 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4395 - if-eqz v13, :cond_c7
4396 + if-eqz v13, :cond_c4
4398 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4400 @@ -322,7 +315,7 @@
4402 move-result v13
4404 - if-eqz v13, :cond_b3
4405 + if-eqz v13, :cond_b0
4407 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4409 @@ -332,12 +325,12 @@
4411 move-result v13
4413 - if-eqz v13, :cond_b6
4414 + if-eqz v13, :cond_b3
4416 - :cond_b3
4417 + :cond_b0
4418 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4420 - :cond_b6
4421 + :cond_b3
4422 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4424 move-result-object v13
4425 @@ -346,7 +339,7 @@
4427 move-result v13
4429 - if-eqz v13, :cond_c7
4430 + if-eqz v13, :cond_c4
4432 move-object/from16 v0, p0
4434 @@ -354,28 +347,28 @@
4436 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->finish()V
4438 - :cond_c7
4439 + :cond_c4
4440 move-object/from16 v0, p0
4442 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4444 - if-nez v13, :cond_e8
4445 + if-nez v13, :cond_e5
4447 move-object/from16 v0, p0
4449 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4451 - if-nez v13, :cond_e8
4452 + if-nez v13, :cond_e5
4454 move-object/from16 v0, p0
4456 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4458 - if-eqz v13, :cond_dc
4459 + if-eqz v13, :cond_d9
4461 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4463 - :cond_dc
4464 + :cond_d9
4465 const/4 v13, 0x1
4467 move-object/from16 v0, p0
4468 @@ -388,18 +381,18 @@
4470 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4472 - :cond_e8
4473 + :cond_e5
4474 move-object/from16 v0, p0
4476 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4478 - if-eqz v13, :cond_100
4479 + if-eqz v13, :cond_fd
4481 move-object/from16 v0, p0
4483 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4485 - if-eqz v13, :cond_100
4486 + if-eqz v13, :cond_fd
4488 const/4 v13, 0x0
4490 @@ -413,8 +406,8 @@
4492 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4494 - :cond_100
4495 - if-eqz v4, :cond_110
4496 + :cond_fd
4497 + if-eqz v4, :cond_10d
4499 const/4 v12, 0x0
4501 @@ -432,36 +425,36 @@
4503 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4505 - :cond_110
4506 + :cond_10d
4507 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->readyToDraw()Z
4509 move-result v13
4511 - if-eqz v13, :cond_1a0
4512 + if-eqz v13, :cond_19d
4514 move-object/from16 v0, p0
4516 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4518 - if-nez v13, :cond_11f
4519 + if-nez v13, :cond_11c
4521 - if-eqz v1, :cond_16e
4522 + if-eqz v1, :cond_16b
4524 const/4 v1, 0x0
4526 - :cond_11f
4527 - :goto_11f
4528 + :cond_11c
4529 + :goto_11c
4530 move-object/from16 v0, p0
4532 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4534 - if-eqz v13, :cond_132
4535 + if-eqz v13, :cond_12f
4537 move-object/from16 v0, p0
4539 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4541 - if-nez v13, :cond_132
4542 + if-nez v13, :cond_12f
4544 const/4 v13, 0x1
4546 @@ -473,12 +466,12 @@
4548 const/4 v9, 0x1
4550 - :cond_132
4551 + :cond_12f
4552 move-object/from16 v0, p0
4554 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4556 - if-eqz v13, :cond_1a0
4557 + if-eqz v13, :cond_19d
4559 move-object/from16 v0, p0
4561 @@ -489,7 +482,7 @@
4563 move-result v13
4565 - if-eqz v13, :cond_19a
4566 + if-eqz v13, :cond_197
4568 const/4 v9, 0x1
4570 @@ -512,28 +505,28 @@
4571 #setter for: Landroid/opengl/GLSurfaceView;->mSizeChanged:Z
4572 invoke-static {v13, v15}, Landroid/opengl/GLSurfaceView;->access$1002(Landroid/opengl/GLSurfaceView;Z)Z
4574 - :goto_154
4575 + :goto_151
4576 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4578 move-result-object v13
4580 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4582 - goto/16 :goto_54
4583 + goto/16 :goto_51
4585 - :catchall_15d
4586 + :catchall_15a
4587 move-exception v13
4589 monitor-exit v14
4590 - :try_end_15f
4591 - .catchall {:try_start_5c .. :try_end_15f} :catchall_15d
4592 + :try_end_15c
4593 + .catchall {:try_start_59 .. :try_end_15c} :catchall_15a
4595 - :try_start_15f
4596 + :try_start_15c
4597 throw v13
4598 - :try_end_160
4599 - .catchall {:try_start_15f .. :try_end_160} :catchall_160
4600 + :try_end_15d
4601 + .catchall {:try_start_15c .. :try_end_15d} :catchall_15d
4603 - :catchall_160
4604 + :catchall_15d
4605 move-exception v13
4607 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4608 @@ -542,19 +535,19 @@
4610 monitor-enter v14
4612 - :try_start_166
4613 + :try_start_163
4614 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4616 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4618 monitor-exit v14
4619 - :try_end_16d
4620 - .catchall {:try_start_166 .. :try_end_16d} :catchall_212
4621 + :try_end_16a
4622 + .catchall {:try_start_163 .. :try_end_16a} :catchall_20f
4624 throw v13
4626 - :cond_16e
4627 - :try_start_16e
4628 + :cond_16b
4629 + :try_start_16b
4630 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4632 move-result-object v13
4633 @@ -562,26 +555,26 @@
4634 move-object/from16 v0, p0
4636 invoke-virtual {v13, v0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->tryAcquireEglContextLocked(Landroid/opengl/GLSurfaceView$GLThread;)Z
4637 - :try_end_177
4638 - .catchall {:try_start_16e .. :try_end_177} :catchall_15d
4639 + :try_end_174
4640 + .catchall {:try_start_16b .. :try_end_174} :catchall_15a
4642 move-result v13
4644 - if-eqz v13, :cond_11f
4645 + if-eqz v13, :cond_11c
4647 - :try_start_17a
4648 + :try_start_177
4649 move-object/from16 v0, p0
4651 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4653 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->start()V
4654 - :try_end_181
4655 - .catchall {:try_start_17a .. :try_end_181} :catchall_15d
4656 - .catch Ljava/lang/RuntimeException; {:try_start_17a .. :try_end_181} :catch_18f
4657 + :try_end_17e
4658 + .catchall {:try_start_177 .. :try_end_17e} :catchall_15a
4659 + .catch Ljava/lang/RuntimeException; {:try_start_177 .. :try_end_17e} :catch_18c
4661 const/4 v13, 0x1
4663 - :try_start_182
4664 + :try_start_17f
4665 move-object/from16 v0, p0
4667 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
4668 @@ -594,9 +587,9 @@
4670 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4672 - goto :goto_11f
4673 + goto :goto_11c
4675 - :catch_18f
4676 + :catch_18c
4677 move-exception v10
4679 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4680 @@ -609,30 +602,30 @@
4682 throw v10
4684 - :cond_19a
4685 + :cond_197
4686 const/4 v13, 0x0
4688 move-object/from16 v0, p0
4690 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestRender:Z
4692 - goto :goto_154
4693 + goto :goto_151
4695 - :cond_1a0
4696 + :cond_19d
4697 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4699 move-result-object v13
4701 invoke-virtual {v13}, Ljava/lang/Object;->wait()V
4702 - :try_end_1a7
4703 - .catchall {:try_start_182 .. :try_end_1a7} :catchall_15d
4704 + :try_end_1a4
4705 + .catchall {:try_start_17f .. :try_end_1a4} :catchall_15a
4707 goto/16 :goto_26
4709 - :cond_1a9
4710 - if-eqz v3, :cond_1da
4711 + :cond_1a6
4712 + if-eqz v3, :cond_1d7
4714 - :try_start_1ab
4715 + :try_start_1a8
4716 move-object/from16 v0, p0
4718 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4719 @@ -654,10 +647,10 @@
4720 check-cast v0, Ljavax/microedition/khronos/opengles/GL10;
4722 move-object v6, v0
4723 - :try_end_1bf
4724 - .catchall {:try_start_1ab .. :try_end_1bf} :catchall_160
4725 + :try_end_1bc
4726 + .catchall {:try_start_1a8 .. :try_end_1bc} :catchall_15d
4728 - if-nez v6, :cond_1d2
4729 + if-nez v6, :cond_1cf
4731 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4733 @@ -665,7 +658,7 @@
4735 monitor-enter v14
4737 - :try_start_1c6
4738 + :try_start_1c3
4739 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4741 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4742 @@ -674,17 +667,17 @@
4744 goto/16 :goto_39
4746 - :catchall_1cf
4747 + :catchall_1cc
4748 move-exception v13
4750 monitor-exit v14
4751 - :try_end_1d1
4752 - .catchall {:try_start_1c6 .. :try_end_1d1} :catchall_1cf
4753 + :try_end_1ce
4754 + .catchall {:try_start_1c3 .. :try_end_1ce} :catchall_1cc
4756 throw v13
4758 - :cond_1d2
4759 - :try_start_1d2
4760 + :cond_1cf
4761 + :try_start_1cf
4762 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4764 move-result-object v13
4765 @@ -693,8 +686,8 @@
4767 const/4 v3, 0x0
4769 - :cond_1da
4770 - if-eqz v2, :cond_1ea
4771 + :cond_1d7
4772 + if-eqz v2, :cond_1e7
4774 move-object/from16 v0, p0
4776 @@ -710,8 +703,8 @@
4778 const/4 v2, 0x0
4780 - :cond_1ea
4781 - if-eqz v9, :cond_1fb
4782 + :cond_1e7
4783 + if-eqz v9, :cond_1f8
4785 move-object/from16 v0, p0
4787 @@ -727,7 +720,7 @@
4789 const/4 v9, 0x0
4791 - :cond_1fb
4792 + :cond_1f8
4793 move-object/from16 v0, p0
4795 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRenderer:Landroid/opengl/GLSurfaceView$Renderer;
4796 @@ -739,22 +732,32 @@
4797 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
4799 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->swap()Z
4800 - :try_end_209
4801 - .catchall {:try_start_1d2 .. :try_end_209} :catchall_160
4802 + :try_end_206
4803 + .catchall {:try_start_1cf .. :try_end_206} :catchall_15d
4805 move-result v13
4807 - if-nez v13, :cond_20d
4808 + if-nez v13, :cond_20a
4810 const/4 v8, 0x1
4812 - :cond_20d
4813 + :cond_20a
4814 if-eqz v12, :cond_21
4816 const/4 v4, 0x1
4818 goto/16 :goto_21
4820 + :catchall_20f
4821 + move-exception v13
4823 + :try_start_210
4824 + monitor-exit v14
4825 + :try_end_211
4826 + .catchall {:try_start_210 .. :try_end_211} :catchall_20f
4828 + throw v13
4830 :catchall_212
4831 move-exception v13
4833 @@ -1371,39 +1374,37 @@
4834 :try_start_1a
4835 invoke-direct {p0}, Landroid/opengl/GLSurfaceView$GLThread;->guardedRun()V
4836 :try_end_1d
4837 - .catchall {:try_start_1a .. :try_end_1d} :catchall_2e
4838 - .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_25
4839 + .catchall {:try_start_1a .. :try_end_1d} :catchall_25
4840 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_2e
4842 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4844 move-result-object v0
4846 + :goto_21
4847 invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
4849 - :goto_24
4850 return-void
4852 - :catch_25
4853 + :catchall_25
4854 move-exception v0
4856 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4858 - move-result-object v0
4859 + move-result-object v1
4861 - invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
4862 + invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
4864 - goto :goto_24
4865 + throw v0
4867 - :catchall_2e
4868 + :catch_2e
4869 move-exception v0
4871 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4873 - move-result-object v1
4875 - invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
4876 + move-result-object v0
4878 - throw v0
4879 + goto :goto_21
4880 .end method
4882 .method public setRenderMode(I)V
4883 diff -Npru stock-framework/smali/android/os/Looper.smali pdroid-framework/smali/android/os/Looper.smali
4884 --- stock-framework/smali/android/os/Looper.smali 2012-05-10 15:14:12.118350850 -0500
4885 +++ pdroid-framework/smali/android/os/Looper.smali 2012-05-10 15:14:35.358466091 -0500
4886 @@ -582,7 +582,7 @@
4888 invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
4890 - const-string v5, "mQueue="
4891 + const-string/jumbo v5, "mQueue="
4893 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4895 @@ -590,11 +590,11 @@
4897 iget-object v4, p0, Landroid/os/Looper;->mQueue:Landroid/os/MessageQueue;
4899 - if-eqz v4, :cond_94
4900 + if-eqz v4, :cond_95
4902 iget-object v4, p0, Landroid/os/Looper;->mQueue:Landroid/os/MessageQueue;
4904 - :goto_4e
4905 + :goto_4f
4906 invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4908 move-result-object v4
4909 @@ -607,13 +607,13 @@
4911 iget-object v4, p0, Landroid/os/Looper;->mQueue:Landroid/os/MessageQueue;
4913 - if-eqz v4, :cond_b4
4914 + if-eqz v4, :cond_b5
4916 iget-object v5, p0, Landroid/os/Looper;->mQueue:Landroid/os/MessageQueue;
4918 monitor-enter v5
4920 - :try_start_60
4921 + :try_start_61
4922 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
4924 move-result-wide v2
4925 @@ -624,8 +624,8 @@
4927 const/4 v1, 0x0
4929 - :goto_69
4930 - if-eqz v0, :cond_97
4931 + :goto_6a
4932 + if-eqz v0, :cond_98
4934 new-instance v4, Ljava/lang/StringBuilder;
4936 @@ -664,18 +664,18 @@
4937 add-int/lit8 v1, v1, 0x1
4939 iget-object v0, v0, Landroid/os/Message;->next:Landroid/os/Message;
4940 - :try_end_93
4941 - .catchall {:try_start_60 .. :try_end_93} :catchall_b5
4942 + :try_end_94
4943 + .catchall {:try_start_61 .. :try_end_94} :catchall_b6
4945 - goto :goto_69
4946 + goto :goto_6a
4948 - :cond_94
4949 + :cond_95
4950 const-string v4, "(null"
4952 - goto :goto_4e
4953 + goto :goto_4f
4955 - :cond_97
4956 - :try_start_97
4957 + :cond_98
4958 + :try_start_98
4959 new-instance v4, Ljava/lang/StringBuilder;
4961 invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
4962 @@ -704,15 +704,15 @@
4964 monitor-exit v5
4966 - :cond_b4
4967 + :cond_b5
4968 return-void
4970 - :catchall_b5
4971 + :catchall_b6
4972 move-exception v4
4974 monitor-exit v5
4975 - :try_end_b7
4976 - .catchall {:try_start_97 .. :try_end_b7} :catchall_b5
4977 + :try_end_b8
4978 + .catchall {:try_start_98 .. :try_end_b8} :catchall_b6
4980 throw v4
4981 .end method
4982 diff -Npru stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali
4983 --- stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-05-10 15:14:12.418352342 -0500
4984 +++ pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-05-10 15:14:35.430466450 -0500
4985 @@ -582,14 +582,14 @@
4987 invoke-interface {v0, v1, v2, v3}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
4988 :try_end_1fb
4989 - .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21d
4990 + .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21a
4991 .catch Landroid/os/RemoteException; {:try_start_1e5 .. :try_end_1fb} :catch_20d
4993 + :goto_1fb
4994 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
4995 invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
4997 :cond_1fe
4998 - :goto_1fe
4999 move-object/from16 v0, p1
5001 iget v0, v0, Landroid/os/StrictMode$ViolationInfo;->policy:I
5002 @@ -619,14 +619,11 @@
5004 invoke-static {v0, v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5005 :try_end_219
5006 - .catchall {:try_start_20e .. :try_end_219} :catchall_21d
5007 + .catchall {:try_start_20e .. :try_end_219} :catchall_21a
5009 - #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5010 - invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5012 - goto :goto_1fe
5013 + goto :goto_1fb
5015 - :catchall_21d
5016 + :catchall_21a
5017 move-exception v19
5019 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5020 diff -Npru stock-framework/smali/android/os/StrictMode.smali pdroid-framework/smali/android/os/StrictMode.smali
5021 --- stock-framework/smali/android/os/StrictMode.smali 2012-05-10 15:14:12.426352381 -0500
5022 +++ pdroid-framework/smali/android/os/StrictMode.smali 2012-05-10 15:14:35.446466527 -0500
5023 @@ -1686,13 +1686,13 @@
5025 invoke-interface {v0, v1, v2, v5}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5026 :try_end_d3
5027 - .catchall {:try_start_bf .. :try_end_d3} :catchall_fc
5028 + .catchall {:try_start_bf .. :try_end_d3} :catchall_f9
5029 .catch Landroid/os/RemoteException; {:try_start_bf .. :try_end_d3} :catch_ec
5031 + :goto_d3
5032 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5034 :cond_d6
5035 - :goto_d6
5036 if-eqz v10, :cond_a4
5038 sget-object v17, Ljava/lang/System;->err:Ljava/io/PrintStream;
5039 @@ -1727,13 +1727,11 @@
5041 invoke-static {v0, v1, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5042 :try_end_f8
5043 - .catchall {:try_start_ed .. :try_end_f8} :catchall_fc
5044 + .catchall {:try_start_ed .. :try_end_f8} :catchall_f9
5046 - invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5048 - goto :goto_d6
5049 + goto :goto_d3
5051 - :catchall_fc
5052 + :catchall_f9
5053 move-exception v17
5055 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5056 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali
5057 --- stock-framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
5058 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-05-10 15:14:35.546467028 -0500
5059 @@ -0,0 +1,104 @@
5060 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
5061 +.super Ljava/lang/Object;
5062 +.source "IPrivacySettingsManager.java"
5064 +# interfaces
5065 +.implements Landroid/os/IInterface;
5068 +# annotations
5069 +.annotation system Ldalvik/annotation/MemberClasses;
5070 + value = {
5071 + Landroid/privacy/IPrivacySettingsManager$Stub;
5073 +.end annotation
5076 +# virtual methods
5077 +.method public abstract addObserver(Ljava/lang/String;)V
5078 + .annotation system Ldalvik/annotation/Throws;
5079 + value = {
5080 + Landroid/os/RemoteException;
5082 + .end annotation
5083 +.end method
5085 +.method public abstract deleteSettings(Ljava/lang/String;)Z
5086 + .annotation system Ldalvik/annotation/Throws;
5087 + value = {
5088 + Landroid/os/RemoteException;
5090 + .end annotation
5091 +.end method
5093 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5094 + .annotation system Ldalvik/annotation/Throws;
5095 + value = {
5096 + Landroid/os/RemoteException;
5098 + .end annotation
5099 +.end method
5101 +.method public abstract getVersion()D
5102 + .annotation system Ldalvik/annotation/Throws;
5103 + value = {
5104 + Landroid/os/RemoteException;
5106 + .end annotation
5107 +.end method
5109 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5110 + .annotation system Ldalvik/annotation/Throws;
5111 + value = {
5112 + Landroid/os/RemoteException;
5114 + .end annotation
5115 +.end method
5117 +.method public abstract purgeSettings()Z
5118 + .annotation system Ldalvik/annotation/Throws;
5119 + value = {
5120 + Landroid/os/RemoteException;
5122 + .end annotation
5123 +.end method
5125 +.method public abstract registerObservers()V
5126 + .annotation system Ldalvik/annotation/Throws;
5127 + value = {
5128 + Landroid/os/RemoteException;
5130 + .end annotation
5131 +.end method
5133 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
5134 + .annotation system Ldalvik/annotation/Throws;
5135 + value = {
5136 + Landroid/os/RemoteException;
5138 + .end annotation
5139 +.end method
5141 +.method public abstract setBootCompleted()V
5142 + .annotation system Ldalvik/annotation/Throws;
5143 + value = {
5144 + Landroid/os/RemoteException;
5146 + .end annotation
5147 +.end method
5149 +.method public abstract setEnabled(Z)Z
5150 + .annotation system Ldalvik/annotation/Throws;
5151 + value = {
5152 + Landroid/os/RemoteException;
5154 + .end annotation
5155 +.end method
5157 +.method public abstract setNotificationsEnabled(Z)Z
5158 + .annotation system Ldalvik/annotation/Throws;
5159 + value = {
5160 + Landroid/os/RemoteException;
5162 + .end annotation
5163 +.end method
5164 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
5165 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 18:00:00.000000000 -0600
5166 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-05-10 15:14:35.558467083 -0500
5167 @@ -0,0 +1,743 @@
5168 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5169 +.super Ljava/lang/Object;
5170 +.source "IPrivacySettingsManager.java"
5172 +# interfaces
5173 +.implements Landroid/privacy/IPrivacySettingsManager;
5176 +# annotations
5177 +.annotation system Ldalvik/annotation/EnclosingClass;
5178 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
5179 +.end annotation
5181 +.annotation system Ldalvik/annotation/InnerClass;
5182 + accessFlags = 0xa
5183 + name = "Proxy"
5184 +.end annotation
5187 +# instance fields
5188 +.field private mRemote:Landroid/os/IBinder;
5191 +# direct methods
5192 +.method constructor <init>(Landroid/os/IBinder;)V
5193 + .registers 2
5195 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5197 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5199 + return-void
5200 +.end method
5203 +# virtual methods
5204 +.method public addObserver(Ljava/lang/String;)V
5205 + .registers 7
5206 + .annotation system Ldalvik/annotation/Throws;
5207 + value = {
5208 + Landroid/os/RemoteException;
5210 + .end annotation
5212 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5214 + move-result-object v0
5216 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5218 + move-result-object v1
5220 + :try_start_8
5221 + const-string v2, "android.privacy.IPrivacySettingsManager"
5223 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5225 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5227 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5229 + const/4 v3, 0x6
5231 + const/4 v4, 0x0
5233 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5235 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5236 + :try_end_1a
5237 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
5239 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5241 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5243 + return-void
5245 + :catchall_21
5246 + move-exception v2
5248 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5250 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5252 + throw v2
5253 +.end method
5255 +.method public asBinder()Landroid/os/IBinder;
5256 + .registers 2
5258 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5260 + return-object v0
5261 +.end method
5263 +.method public deleteSettings(Ljava/lang/String;)Z
5264 + .registers 8
5265 + .annotation system Ldalvik/annotation/Throws;
5266 + value = {
5267 + Landroid/os/RemoteException;
5269 + .end annotation
5271 + const/4 v2, 0x0
5273 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5275 + move-result-object v0
5277 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5279 + move-result-object v1
5281 + :try_start_9
5282 + const-string v3, "android.privacy.IPrivacySettingsManager"
5284 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5286 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5288 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5290 + const/4 v4, 0x3
5292 + const/4 v5, 0x0
5294 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5296 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5298 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5299 + :try_end_1e
5300 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
5302 + move-result v3
5304 + if-eqz v3, :cond_22
5306 + const/4 v2, 0x1
5308 + :cond_22
5309 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5311 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5313 + return v2
5315 + :catchall_29
5316 + move-exception v3
5318 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5320 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5322 + throw v3
5323 +.end method
5325 +.method public getInterfaceDescriptor()Ljava/lang/String;
5326 + .registers 2
5328 + const-string v0, "android.privacy.IPrivacySettingsManager"
5330 + return-object v0
5331 +.end method
5333 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5334 + .registers 8
5335 + .annotation system Ldalvik/annotation/Throws;
5336 + value = {
5337 + Landroid/os/RemoteException;
5339 + .end annotation
5341 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5343 + move-result-object v0
5345 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5347 + move-result-object v1
5349 + :try_start_8
5350 + const-string v3, "android.privacy.IPrivacySettingsManager"
5352 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5354 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5356 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5358 + const/4 v4, 0x1
5360 + const/4 v5, 0x0
5362 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5364 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5366 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5368 + move-result v3
5370 + if-eqz v3, :cond_2f
5372 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
5374 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
5376 + move-result-object v2
5378 + check-cast v2, Landroid/privacy/PrivacySettings;
5379 + :try_end_28
5380 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
5382 + :goto_28
5383 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5385 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5387 + return-object v2
5389 + :cond_2f
5390 + const/4 v2, 0x0
5392 + goto :goto_28
5394 + :catchall_31
5395 + move-exception v3
5397 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5399 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5401 + throw v3
5402 +.end method
5404 +.method public getVersion()D
5405 + .registers 8
5406 + .annotation system Ldalvik/annotation/Throws;
5407 + value = {
5408 + Landroid/os/RemoteException;
5410 + .end annotation
5412 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5414 + move-result-object v0
5416 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5418 + move-result-object v1
5420 + :try_start_8
5421 + const-string v4, "android.privacy.IPrivacySettingsManager"
5423 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5425 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5427 + const/16 v5, 0x8
5429 + const/4 v6, 0x0
5431 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5433 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5435 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
5436 + :try_end_1b
5437 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
5439 + move-result-wide v2
5441 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5443 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5445 + return-wide v2
5447 + :catchall_23
5448 + move-exception v4
5450 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5452 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5454 + throw v4
5455 +.end method
5457 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5458 + .registers 10
5459 + .annotation system Ldalvik/annotation/Throws;
5460 + value = {
5461 + Landroid/os/RemoteException;
5463 + .end annotation
5465 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5467 + move-result-object v0
5469 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5471 + move-result-object v1
5473 + :try_start_8
5474 + const-string v2, "android.privacy.IPrivacySettingsManager"
5476 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5478 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5480 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
5482 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5484 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5486 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5488 + const/4 v3, 0x4
5490 + const/4 v4, 0x0
5492 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5494 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5495 + :try_end_23
5496 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
5498 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5500 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5502 + return-void
5504 + :catchall_2a
5505 + move-exception v2
5507 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5509 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5511 + throw v2
5512 +.end method
5514 +.method public purgeSettings()Z
5515 + .registers 7
5516 + .annotation system Ldalvik/annotation/Throws;
5517 + value = {
5518 + Landroid/os/RemoteException;
5520 + .end annotation
5522 + const/4 v2, 0x0
5524 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5526 + move-result-object v0
5528 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5530 + move-result-object v1
5532 + :try_start_9
5533 + const-string v3, "android.privacy.IPrivacySettingsManager"
5535 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5537 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5539 + const/4 v4, 0x7
5541 + const/4 v5, 0x0
5543 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5545 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5547 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5548 + :try_end_1b
5549 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
5551 + move-result v3
5553 + if-eqz v3, :cond_1f
5555 + const/4 v2, 0x1
5557 + :cond_1f
5558 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5560 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5562 + return v2
5564 + :catchall_26
5565 + move-exception v3
5567 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5569 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5571 + throw v3
5572 +.end method
5574 +.method public registerObservers()V
5575 + .registers 6
5576 + .annotation system Ldalvik/annotation/Throws;
5577 + value = {
5578 + Landroid/os/RemoteException;
5580 + .end annotation
5582 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5584 + move-result-object v0
5586 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5588 + move-result-object v1
5590 + :try_start_8
5591 + const-string v2, "android.privacy.IPrivacySettingsManager"
5593 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5595 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5597 + const/4 v3, 0x5
5599 + const/4 v4, 0x0
5601 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5603 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5604 + :try_end_17
5605 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
5607 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5609 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5611 + return-void
5613 + :catchall_1e
5614 + move-exception v2
5616 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5618 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5620 + throw v2
5621 +.end method
5623 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
5624 + .registers 9
5625 + .annotation system Ldalvik/annotation/Throws;
5626 + value = {
5627 + Landroid/os/RemoteException;
5629 + .end annotation
5631 + const/4 v2, 0x1
5633 + const/4 v3, 0x0
5635 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5637 + move-result-object v0
5639 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5641 + move-result-object v1
5643 + :try_start_a
5644 + const-string v4, "android.privacy.IPrivacySettingsManager"
5646 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5648 + if-eqz p1, :cond_30
5650 + const/4 v4, 0x1
5652 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5654 + const/4 v4, 0x0
5656 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
5658 + :goto_19
5659 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5661 + const/4 v5, 0x2
5663 + const/4 v6, 0x0
5665 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5667 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5669 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5670 + :try_end_26
5671 + .catchall {:try_start_a .. :try_end_26} :catchall_35
5673 + move-result v4
5675 + if-eqz v4, :cond_3d
5677 + :goto_29
5678 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5680 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5682 + return v2
5684 + :cond_30
5685 + const/4 v4, 0x0
5687 + :try_start_31
5688 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5689 + :try_end_34
5690 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
5692 + goto :goto_19
5694 + :catchall_35
5695 + move-exception v3
5697 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5699 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5701 + throw v3
5703 + :cond_3d
5704 + move v2, v3
5706 + goto :goto_29
5707 +.end method
5709 +.method public setBootCompleted()V
5710 + .registers 6
5711 + .annotation system Ldalvik/annotation/Throws;
5712 + value = {
5713 + Landroid/os/RemoteException;
5715 + .end annotation
5717 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5719 + move-result-object v0
5721 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5723 + move-result-object v1
5725 + :try_start_8
5726 + const-string v2, "android.privacy.IPrivacySettingsManager"
5728 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5730 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5732 + const/16 v3, 0xb
5734 + const/4 v4, 0x0
5736 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5738 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5739 + :try_end_18
5740 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
5742 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5744 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5746 + return-void
5748 + :catchall_1f
5749 + move-exception v2
5751 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5753 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5755 + throw v2
5756 +.end method
5758 +.method public setEnabled(Z)Z
5759 + .registers 9
5760 + .annotation system Ldalvik/annotation/Throws;
5761 + value = {
5762 + Landroid/os/RemoteException;
5764 + .end annotation
5766 + const/4 v2, 0x1
5768 + const/4 v3, 0x0
5770 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5772 + move-result-object v0
5774 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5776 + move-result-object v1
5778 + :try_start_a
5779 + const-string v4, "android.privacy.IPrivacySettingsManager"
5781 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5783 + if-eqz p1, :cond_2d
5785 + move v4, v2
5787 + :goto_12
5788 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5790 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5792 + const/16 v5, 0x9
5794 + const/4 v6, 0x0
5796 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5798 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5800 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5801 + :try_end_23
5802 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5804 + move-result v4
5806 + if-eqz v4, :cond_2f
5808 + :goto_26
5809 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5811 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5813 + return v2
5815 + :cond_2d
5816 + move v4, v3
5818 + goto :goto_12
5820 + :cond_2f
5821 + move v2, v3
5823 + goto :goto_26
5825 + :catchall_31
5826 + move-exception v3
5828 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5830 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5832 + throw v3
5833 +.end method
5835 +.method public setNotificationsEnabled(Z)Z
5836 + .registers 9
5837 + .annotation system Ldalvik/annotation/Throws;
5838 + value = {
5839 + Landroid/os/RemoteException;
5841 + .end annotation
5843 + const/4 v2, 0x1
5845 + const/4 v3, 0x0
5847 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5849 + move-result-object v0
5851 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5853 + move-result-object v1
5855 + :try_start_a
5856 + const-string v4, "android.privacy.IPrivacySettingsManager"
5858 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5860 + if-eqz p1, :cond_2d
5862 + move v4, v2
5864 + :goto_12
5865 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
5867 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5869 + const/16 v5, 0xa
5871 + const/4 v6, 0x0
5873 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5875 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5877 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5878 + :try_end_23
5879 + .catchall {:try_start_a .. :try_end_23} :catchall_31
5881 + move-result v4
5883 + if-eqz v4, :cond_2f
5885 + :goto_26
5886 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5888 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5890 + return v2
5892 + :cond_2d
5893 + move v4, v3
5895 + goto :goto_12
5897 + :cond_2f
5898 + move v2, v3
5900 + goto :goto_26
5902 + :catchall_31
5903 + move-exception v3
5905 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5907 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5909 + throw v3
5910 +.end method
5911 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
5912 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 18:00:00.000000000 -0600
5913 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-05-10 15:14:35.562467108 -0500
5914 @@ -0,0 +1,412 @@
5915 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
5916 +.super Landroid/os/Binder;
5917 +.source "IPrivacySettingsManager.java"
5919 +# interfaces
5920 +.implements Landroid/privacy/IPrivacySettingsManager;
5923 +# annotations
5924 +.annotation system Ldalvik/annotation/EnclosingClass;
5925 + value = Landroid/privacy/IPrivacySettingsManager;
5926 +.end annotation
5928 +.annotation system Ldalvik/annotation/InnerClass;
5929 + accessFlags = 0x409
5930 + name = "Stub"
5931 +.end annotation
5933 +.annotation system Ldalvik/annotation/MemberClasses;
5934 + value = {
5935 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5937 +.end annotation
5940 +# static fields
5941 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
5943 +.field static final TRANSACTION_addObserver:I = 0x6
5945 +.field static final TRANSACTION_deleteSettings:I = 0x3
5947 +.field static final TRANSACTION_getSettings:I = 0x1
5949 +.field static final TRANSACTION_getVersion:I = 0x8
5951 +.field static final TRANSACTION_notification:I = 0x4
5953 +.field static final TRANSACTION_purgeSettings:I = 0x7
5955 +.field static final TRANSACTION_registerObservers:I = 0x5
5957 +.field static final TRANSACTION_saveSettings:I = 0x2
5959 +.field static final TRANSACTION_setBootCompleted:I = 0xb
5961 +.field static final TRANSACTION_setEnabled:I = 0x9
5963 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
5966 +# direct methods
5967 +.method public constructor <init>()V
5968 + .registers 2
5970 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
5972 + const-string v0, "android.privacy.IPrivacySettingsManager"
5974 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
5976 + return-void
5977 +.end method
5979 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
5980 + .registers 3
5982 + if-nez p0, :cond_4
5984 + const/4 v0, 0x0
5986 + :goto_3
5987 + return-object v0
5989 + :cond_4
5990 + const-string v1, "android.privacy.IPrivacySettingsManager"
5992 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
5994 + move-result-object v0
5996 + if-eqz v0, :cond_13
5998 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
6000 + if-eqz v1, :cond_13
6002 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
6004 + goto :goto_3
6006 + :cond_13
6007 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6009 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
6011 + goto :goto_3
6012 +.end method
6015 +# virtual methods
6016 +.method public asBinder()Landroid/os/IBinder;
6017 + .registers 1
6019 + return-object p0
6020 +.end method
6022 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6023 + .registers 14
6024 + .annotation system Ldalvik/annotation/Throws;
6025 + value = {
6026 + Landroid/os/RemoteException;
6028 + .end annotation
6030 + const/4 v6, 0x0
6032 + const/4 v7, 0x1
6034 + sparse-switch p1, :sswitch_data_10e
6036 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6038 + move-result v7
6040 + :goto_9
6041 + return v7
6043 + :sswitch_a
6044 + const-string v6, "android.privacy.IPrivacySettingsManager"
6046 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
6048 + goto :goto_9
6050 + :sswitch_10
6051 + const-string v8, "android.privacy.IPrivacySettingsManager"
6053 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6055 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6057 + move-result-object v0
6059 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6061 + move-result-object v4
6063 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6065 + if-eqz v4, :cond_29
6067 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
6069 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6071 + goto :goto_9
6073 + :cond_29
6074 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6076 + goto :goto_9
6078 + :sswitch_2d
6079 + const-string v8, "android.privacy.IPrivacySettingsManager"
6081 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6083 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6085 + move-result v8
6087 + if-eqz v8, :cond_4e
6089 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
6091 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
6093 + move-result-object v0
6095 + check-cast v0, Landroid/privacy/PrivacySettings;
6097 + :goto_40
6098 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
6100 + move-result v4
6102 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6104 + if-eqz v4, :cond_4a
6106 + move v6, v7
6108 + :cond_4a
6109 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6111 + goto :goto_9
6113 + :cond_4e
6114 + const/4 v0, 0x0
6116 + goto :goto_40
6118 + :sswitch_50
6119 + const-string v8, "android.privacy.IPrivacySettingsManager"
6121 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6123 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6125 + move-result-object v0
6127 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
6129 + move-result v4
6131 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6133 + if-eqz v4, :cond_63
6135 + move v6, v7
6137 + :cond_63
6138 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6140 + goto :goto_9
6142 + :sswitch_67
6143 + const-string v6, "android.privacy.IPrivacySettingsManager"
6145 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6147 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6149 + move-result-object v0
6151 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
6153 + move-result v1
6155 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6157 + move-result-object v2
6159 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6161 + move-result-object v3
6163 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6165 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6167 + goto :goto_9
6169 + :sswitch_83
6170 + const-string v6, "android.privacy.IPrivacySettingsManager"
6172 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6174 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
6176 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6178 + goto/16 :goto_9
6180 + :sswitch_90
6181 + const-string v6, "android.privacy.IPrivacySettingsManager"
6183 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6185 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6187 + move-result-object v0
6189 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
6191 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6193 + goto/16 :goto_9
6195 + :sswitch_a1
6196 + const-string v8, "android.privacy.IPrivacySettingsManager"
6198 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6200 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
6202 + move-result v4
6204 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6206 + if-eqz v4, :cond_b0
6208 + move v6, v7
6210 + :cond_b0
6211 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6213 + goto/16 :goto_9
6215 + :sswitch_b5
6216 + const-string v6, "android.privacy.IPrivacySettingsManager"
6218 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6220 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
6222 + move-result-wide v4
6224 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6226 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
6228 + goto/16 :goto_9
6230 + :sswitch_c6
6231 + const-string v8, "android.privacy.IPrivacySettingsManager"
6233 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6235 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6237 + move-result v8
6239 + if-eqz v8, :cond_e1
6241 + move v0, v7
6243 + :goto_d2
6244 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
6246 + move-result v4
6248 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6250 + if-eqz v4, :cond_dc
6252 + move v6, v7
6254 + :cond_dc
6255 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6257 + goto/16 :goto_9
6259 + :cond_e1
6260 + move v0, v6
6262 + goto :goto_d2
6264 + :sswitch_e3
6265 + const-string v8, "android.privacy.IPrivacySettingsManager"
6267 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6269 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6271 + move-result v8
6273 + if-eqz v8, :cond_fe
6275 + move v0, v7
6277 + :goto_ef
6278 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
6280 + move-result v4
6282 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6284 + if-eqz v4, :cond_f9
6286 + move v6, v7
6288 + :cond_f9
6289 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6291 + goto/16 :goto_9
6293 + :cond_fe
6294 + move v0, v6
6296 + goto :goto_ef
6298 + :sswitch_100
6299 + const-string v6, "android.privacy.IPrivacySettingsManager"
6301 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6303 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
6305 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6307 + goto/16 :goto_9
6309 + nop
6311 + :sswitch_data_10e
6312 + .sparse-switch
6313 + 0x1 -> :sswitch_10
6314 + 0x2 -> :sswitch_2d
6315 + 0x3 -> :sswitch_50
6316 + 0x4 -> :sswitch_67
6317 + 0x5 -> :sswitch_83
6318 + 0x6 -> :sswitch_90
6319 + 0x7 -> :sswitch_a1
6320 + 0x8 -> :sswitch_b5
6321 + 0x9 -> :sswitch_c6
6322 + 0xa -> :sswitch_e3
6323 + 0xb -> :sswitch_100
6324 + 0x5f4e5446 -> :sswitch_a
6325 + .end sparse-switch
6326 +.end method
6327 diff -Npru stock-framework/smali/android/privacy/PrivacyFileObserver.smali pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali
6328 --- stock-framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 18:00:00.000000000 -0600
6329 +++ pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali 2012-05-10 15:14:35.562467108 -0500
6330 @@ -0,0 +1,217 @@
6331 +.class public Landroid/privacy/PrivacyFileObserver;
6332 +.super Landroid/os/FileObserver;
6333 +.source "PrivacyFileObserver.java"
6336 +# static fields
6337 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
6339 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
6342 +# instance fields
6343 +.field public absolutePath:Ljava/lang/String;
6345 +.field public children:Ljava/util/HashMap;
6346 + .annotation system Ldalvik/annotation/Signature;
6347 + value = {
6348 + "Ljava/util/HashMap",
6349 + "<",
6350 + "Ljava/lang/String;",
6351 + "Landroid/privacy/PrivacyFileObserver;",
6352 + ">;"
6354 + .end annotation
6355 +.end field
6357 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6360 +# direct methods
6361 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6362 + .registers 12
6364 + const/16 v8, 0xfff
6366 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
6368 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6370 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6372 + new-instance v8, Ljava/util/HashMap;
6374 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
6376 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6378 + new-instance v7, Ljava/io/File;
6380 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6382 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6384 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
6386 + move-result v8
6388 + if-eqz v8, :cond_42
6390 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
6392 + move-result-object v6
6394 + move-object v0, v6
6396 + array-length v4, v0
6398 + const/4 v3, 0x0
6400 + :goto_24
6401 + if-ge v3, v4, :cond_42
6403 + aget-object v2, v0, v3
6405 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6407 + move-result-object v5
6409 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
6411 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6413 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6415 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6417 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
6419 + move-result v8
6421 + if-eqz v8, :cond_3f
6423 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
6425 + :cond_3f
6426 + add-int/lit8 v3, v3, 0x1
6428 + goto :goto_24
6430 + :cond_42
6431 + return-void
6432 +.end method
6435 +# virtual methods
6436 +.method public addObserver(Ljava/lang/String;)V
6437 + .registers 6
6439 + new-instance v2, Ljava/lang/StringBuilder;
6441 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
6443 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6445 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6447 + move-result-object v2
6449 + const-string v3, "/"
6451 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6453 + move-result-object v2
6455 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6457 + move-result-object v2
6459 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6461 + move-result-object v1
6463 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6465 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
6467 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
6469 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6471 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6473 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6475 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6477 + return-void
6478 +.end method
6480 +.method public onEvent(ILjava/lang/String;)V
6481 + .registers 11
6483 + and-int/lit8 v4, p1, 0x1
6485 + if-eqz v4, :cond_34
6487 + new-instance v3, Ljava/util/StringTokenizer;
6489 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6491 + const-string v5, "/"
6493 + invoke-direct {v3, v4, v5}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
6495 + const/4 v0, 0x0
6497 + :goto_e
6498 + const/4 v4, 0x3
6500 + if-ge v0, v4, :cond_1d
6502 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->hasMoreElements()Z
6504 + move-result v4
6506 + if-eqz v4, :cond_1d
6508 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6510 + add-int/lit8 v0, v0, 0x1
6512 + goto :goto_e
6514 + :cond_1d
6515 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6517 + move-result-object v2
6519 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6521 + invoke-virtual {v4, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6523 + move-result-object v1
6525 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6527 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
6529 + move-result v5
6531 + const-string/jumbo v6, "systemLogs"
6533 + const/4 v7, 0x0
6535 + invoke-virtual {v4, v2, v5, v6, v7}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6537 + :cond_34
6538 + return-void
6539 +.end method
6541 +.method public startWatching()V
6542 + .registers 1
6544 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
6546 + return-void
6547 +.end method
6548 diff -Npru stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
6549 --- stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 18:00:00.000000000 -0600
6550 +++ pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-05-10 15:14:35.574467168 -0500
6551 @@ -0,0 +1,4581 @@
6552 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
6553 +.super Ljava/lang/Object;
6554 +.source "PrivacyPersistenceAdapter.java"
6557 +# static fields
6558 +.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) );"
6560 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6562 +.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);"
6564 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
6566 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
6568 +.field private static final DATABASE_VERSION:I = 0x3
6570 +.field public static final DUMMY_UID:I = -0x1
6572 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6574 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6576 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6578 +.field private static final RETRY_QUERY_COUNT:I = 0x5
6580 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
6582 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
6584 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
6586 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
6588 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
6590 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
6592 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
6594 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
6596 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
6598 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
6600 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
6602 +.field public static readingThreads:Ljava/lang/Integer;
6605 +# instance fields
6606 +.field private context:Landroid/content/Context;
6608 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
6611 +# direct methods
6612 +.method static constructor <clinit>()V
6613 + .registers 3
6615 + const/4 v2, 0x0
6617 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
6619 + move-result-object v0
6621 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
6623 + const/16 v0, 0x23
6625 + new-array v0, v0, [Ljava/lang/String;
6627 + const-string v1, "_id"
6629 + aput-object v1, v0, v2
6631 + const/4 v1, 0x1
6633 + const-string/jumbo v2, "packageName"
6635 + aput-object v2, v0, v1
6637 + const/4 v1, 0x2
6639 + const-string/jumbo v2, "uid"
6641 + aput-object v2, v0, v1
6643 + const/4 v1, 0x3
6645 + const-string v2, "deviceIdSetting"
6647 + aput-object v2, v0, v1
6649 + const/4 v1, 0x4
6651 + const-string v2, "deviceId"
6653 + aput-object v2, v0, v1
6655 + const/4 v1, 0x5
6657 + const-string v2, "line1NumberSetting"
6659 + aput-object v2, v0, v1
6661 + const/4 v1, 0x6
6663 + const-string v2, "line1Number"
6665 + aput-object v2, v0, v1
6667 + const/4 v1, 0x7
6669 + const-string v2, "locationGpsSetting"
6671 + aput-object v2, v0, v1
6673 + const/16 v1, 0x8
6675 + const-string v2, "locationGpsLat"
6677 + aput-object v2, v0, v1
6679 + const/16 v1, 0x9
6681 + const-string v2, "locationGpsLon"
6683 + aput-object v2, v0, v1
6685 + const/16 v1, 0xa
6687 + const-string v2, "locationNetworkSetting"
6689 + aput-object v2, v0, v1
6691 + const/16 v1, 0xb
6693 + const-string v2, "locationNetworkLat"
6695 + aput-object v2, v0, v1
6697 + const/16 v1, 0xc
6699 + const-string v2, "locationNetworkLon"
6701 + aput-object v2, v0, v1
6703 + const/16 v1, 0xd
6705 + const-string/jumbo v2, "networkInfoSetting"
6707 + aput-object v2, v0, v1
6709 + const/16 v1, 0xe
6711 + const-string/jumbo v2, "simInfoSetting"
6713 + aput-object v2, v0, v1
6715 + const/16 v1, 0xf
6717 + const-string/jumbo v2, "simSerialNumberSetting"
6719 + aput-object v2, v0, v1
6721 + const/16 v1, 0x10
6723 + const-string/jumbo v2, "simSerialNumber"
6725 + aput-object v2, v0, v1
6727 + const/16 v1, 0x11
6729 + const-string/jumbo v2, "subscriberIdSetting"
6731 + aput-object v2, v0, v1
6733 + const/16 v1, 0x12
6735 + const-string/jumbo v2, "subscriberId"
6737 + aput-object v2, v0, v1
6739 + const/16 v1, 0x13
6741 + const-string v2, "accountsSetting"
6743 + aput-object v2, v0, v1
6745 + const/16 v1, 0x14
6747 + const-string v2, "accountsAuthTokensSetting"
6749 + aput-object v2, v0, v1
6751 + const/16 v1, 0x15
6753 + const-string/jumbo v2, "outgoingCallsSetting"
6755 + aput-object v2, v0, v1
6757 + const/16 v1, 0x16
6759 + const-string v2, "incomingCallsSetting"
6761 + aput-object v2, v0, v1
6763 + const/16 v1, 0x17
6765 + const-string v2, "contactsSetting"
6767 + aput-object v2, v0, v1
6769 + const/16 v1, 0x18
6771 + const-string v2, "calendarSetting"
6773 + aput-object v2, v0, v1
6775 + const/16 v1, 0x19
6777 + const-string/jumbo v2, "mmsSetting"
6779 + aput-object v2, v0, v1
6781 + const/16 v1, 0x1a
6783 + const-string/jumbo v2, "smsSetting"
6785 + aput-object v2, v0, v1
6787 + const/16 v1, 0x1b
6789 + const-string v2, "callLogSetting"
6791 + aput-object v2, v0, v1
6793 + const/16 v1, 0x1c
6795 + const-string v2, "bookmarksSetting"
6797 + aput-object v2, v0, v1
6799 + const/16 v1, 0x1d
6801 + const-string/jumbo v2, "systemLogsSetting"
6803 + aput-object v2, v0, v1
6805 + const/16 v1, 0x1e
6807 + const-string v2, "externalStorageSetting"
6809 + aput-object v2, v0, v1
6811 + const/16 v1, 0x1f
6813 + const-string v2, "cameraSetting"
6815 + aput-object v2, v0, v1
6817 + const/16 v1, 0x20
6819 + const-string/jumbo v2, "recordAudioSetting"
6821 + aput-object v2, v0, v1
6823 + const/16 v1, 0x21
6825 + const-string/jumbo v2, "notificationSetting"
6827 + aput-object v2, v0, v1
6829 + const/16 v1, 0x22
6831 + const-string v2, "intentBootCompletedSetting"
6833 + aput-object v2, v0, v1
6835 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
6837 + return-void
6838 +.end method
6840 +.method public constructor <init>(Landroid/content/Context;)V
6841 + .registers 6
6843 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
6845 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
6847 + new-instance v2, Ljava/io/File;
6849 + const-string v3, "/data/system/"
6851 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6853 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
6855 + move-result v0
6857 + if-eqz v0, :cond_3c
6859 + new-instance v2, Ljava/io/File;
6861 + const-string v3, "/data/system/privacy.db"
6863 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6865 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6867 + move-result v2
6869 + if-nez v2, :cond_22
6871 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
6873 + :cond_22
6874 + new-instance v2, Ljava/io/File;
6876 + const-string v3, "/data/system/privacy"
6878 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6880 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
6882 + move-result v2
6884 + if-nez v2, :cond_32
6886 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
6888 + :cond_32
6889 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
6891 + move-result v1
6893 + const/4 v2, 0x3
6895 + if-ge v1, v2, :cond_3c
6897 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
6899 + :cond_3c
6900 + return-void
6901 +.end method
6903 +.method private declared-synchronized createDatabase()V
6904 + .registers 6
6906 + monitor-enter p0
6908 + :try_start_1
6909 + const-string v2, "PrivacyPersistenceAdapter"
6911 + const-string v3, "createDatabase - creating privacy database file"
6913 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6914 + :try_end_8
6915 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
6917 + :try_start_8
6918 + const-string v2, "/data/system/privacy.db"
6920 + const/4 v3, 0x0
6922 + const/high16 v4, 0x1000
6924 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
6926 + move-result-object v0
6928 + const-string v2, "PrivacyPersistenceAdapter"
6930 + const-string v3, "createDatabase - creating privacy database"
6932 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6934 + 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);"
6936 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
6938 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
6940 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
6942 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6944 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
6946 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6948 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
6950 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6952 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
6954 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6956 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
6958 + if-eqz v0, :cond_41
6960 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
6962 + move-result v2
6964 + if-eqz v2, :cond_41
6966 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
6967 + :try_end_41
6968 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
6969 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
6971 + :cond_41
6972 + :goto_41
6973 + monitor-exit p0
6975 + return-void
6977 + :catch_43
6978 + move-exception v1
6980 + :try_start_44
6981 + const-string v2, "PrivacyPersistenceAdapter"
6983 + const-string v3, "createDatabase - failed to create privacy database"
6985 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
6986 + :try_end_4b
6987 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
6989 + goto :goto_41
6991 + :catchall_4c
6992 + move-exception v2
6994 + monitor-exit p0
6996 + throw v2
6997 +.end method
6999 +.method private declared-synchronized createSettingsDir()V
7000 + .registers 4
7002 + monitor-enter p0
7004 + :try_start_1
7005 + new-instance v0, Ljava/io/File;
7007 + const-string v1, "/data/system/privacy/"
7009 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7011 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
7013 + const/4 v1, 0x1
7015 + const/4 v2, 0x0
7017 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
7019 + const/4 v1, 0x1
7021 + const/4 v2, 0x0
7023 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
7024 + :try_end_15
7025 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
7027 + monitor-exit p0
7029 + return-void
7031 + :catchall_17
7032 + move-exception v1
7034 + monitor-exit p0
7036 + throw v1
7037 +.end method
7039 +.method private deleteRecursive(Ljava/io/File;)V
7040 + .registers 7
7042 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
7044 + move-result v4
7046 + if-eqz v4, :cond_16
7048 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
7050 + move-result-object v0
7052 + array-length v3, v0
7054 + const/4 v2, 0x0
7056 + :goto_c
7057 + if-ge v2, v3, :cond_16
7059 + aget-object v1, v0, v2
7061 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7063 + add-int/lit8 v2, v2, 0x1
7065 + goto :goto_c
7067 + :cond_16
7068 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
7070 + return-void
7071 +.end method
7073 +.method private getDbVersion()I
7074 + .registers 9
7076 + const/4 v4, 0x1
7078 + const/4 v3, -0x1
7080 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7082 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7084 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7086 + move-result v6
7088 + add-int/lit8 v6, v6, 0x1
7090 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7092 + move-result-object v6
7094 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7096 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7098 + move-result-object v1
7100 + :try_start_16
7101 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
7103 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7105 + move-result-object v0
7107 + if-eqz v0, :cond_5e
7109 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
7111 + move-result v6
7113 + if-nez v6, :cond_25
7115 + const/4 v3, 0x1
7117 + :cond_25
7118 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7120 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7122 + monitor-enter v7
7123 + :try_end_2b
7124 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
7126 + :try_start_2b
7127 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7129 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7131 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7133 + move-result v6
7135 + add-int/lit8 v6, v6, -0x1
7137 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7139 + move-result-object v6
7141 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7143 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7145 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7147 + move-result v6
7149 + if-nez v6, :cond_4e
7151 + if-eqz v1, :cond_4e
7153 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7155 + move-result v6
7157 + if-eqz v6, :cond_4e
7159 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7161 + :cond_4e
7162 + monitor-exit v7
7164 + :goto_4f
7165 + if-ne v3, v4, :cond_66
7167 + :goto_51
7168 + return v3
7170 + :catchall_52
7171 + move-exception v6
7173 + monitor-exit v7
7174 + :try_end_54
7175 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
7177 + :try_start_54
7178 + throw v6
7179 + :try_end_55
7180 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
7182 + :catch_55
7183 + move-exception v2
7185 + const-string v6, "PrivacyPersistenceAdapter"
7187 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
7189 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7191 + goto :goto_4f
7193 + :cond_5e
7194 + :try_start_5e
7195 + const-string v6, "PrivacyPersistenceAdapter"
7197 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
7199 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7200 + :try_end_65
7201 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
7203 + goto :goto_4f
7205 + :cond_66
7206 + const-string v6, "db_version"
7208 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
7210 + move-result-object v5
7212 + if-nez v5, :cond_70
7214 + move v3, v4
7216 + goto :goto_51
7218 + :cond_70
7219 + :try_start_70
7220 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7221 + :try_end_73
7222 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
7224 + move-result v4
7226 + move v3, v4
7228 + goto :goto_51
7230 + :catch_76
7231 + move-exception v2
7233 + const-string v6, "PrivacyPersistenceAdapter"
7235 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
7237 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7239 + move v3, v4
7241 + goto :goto_51
7242 +.end method
7244 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7245 + .registers 4
7247 + monitor-enter p0
7249 + :try_start_1
7250 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7252 + if-eqz v0, :cond_11
7254 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7256 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7258 + move-result v0
7260 + if-eqz v0, :cond_11
7262 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7263 + :try_end_f
7264 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
7266 + :goto_f
7267 + monitor-exit p0
7269 + return-object v0
7271 + :cond_11
7272 + :try_start_11
7273 + const-string v0, "/data/system/privacy.db"
7275 + const/4 v1, 0x0
7277 + const/4 v2, 0x1
7279 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7281 + move-result-object v0
7283 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7285 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7286 + :try_end_1d
7287 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
7289 + goto :goto_f
7291 + :catchall_1e
7292 + move-exception v0
7294 + monitor-exit p0
7296 + throw v0
7297 +.end method
7299 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7300 + .registers 4
7302 + monitor-enter p0
7304 + :try_start_1
7305 + new-instance v0, Ljava/io/File;
7307 + const-string v1, "/data/system/privacy.db"
7309 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7311 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
7313 + move-result v0
7315 + if-nez v0, :cond_11
7317 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7319 + :cond_11
7320 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7322 + if-eqz v0, :cond_29
7324 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7326 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7328 + move-result v0
7330 + if-eqz v0, :cond_29
7332 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7334 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
7336 + move-result v0
7338 + if-nez v0, :cond_29
7340 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7341 + :try_end_27
7342 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
7344 + :goto_27
7345 + monitor-exit p0
7347 + return-object v0
7349 + :cond_29
7350 + :try_start_29
7351 + const-string v0, "/data/system/privacy.db"
7353 + const/4 v1, 0x0
7355 + const/4 v2, 0x0
7357 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7359 + move-result-object v0
7361 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7363 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7364 + :try_end_35
7365 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
7367 + goto :goto_27
7369 + :catchall_36
7370 + move-exception v0
7372 + monitor-exit p0
7374 + throw v0
7375 +.end method
7377 +.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;
7378 + .registers 16
7379 + .annotation system Ldalvik/annotation/Throws;
7380 + value = {
7381 + Ljava/lang/Exception;
7383 + .end annotation
7385 + const/4 v0, 0x0
7387 + const/4 v3, 0x0
7389 + const/4 v2, 0x0
7391 + :goto_3
7392 + if-nez v3, :cond_27
7394 + const/4 v4, 0x5
7396 + if-ge v2, v4, :cond_27
7398 + if-eqz v0, :cond_d
7400 + :try_start_a
7401 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7403 + :cond_d
7404 + 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;
7405 + :try_end_10
7406 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
7408 + move-result-object v0
7410 + const/4 v3, 0x1
7412 + :goto_12
7413 + add-int/lit8 v2, v2, 0x1
7415 + goto :goto_3
7417 + :catch_15
7418 + move-exception v1
7420 + const/4 v3, 0x0
7422 + if-eqz p1, :cond_22
7424 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7426 + move-result v4
7428 + if-eqz v4, :cond_22
7430 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7432 + :cond_22
7433 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7435 + move-result-object p1
7437 + goto :goto_12
7439 + :cond_27
7440 + if-nez v3, :cond_32
7442 + new-instance v4, Ljava/lang/Exception;
7444 + const-string/jumbo v5, "query - failed to execute query on the DB"
7446 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7448 + throw v4
7450 + :cond_32
7451 + return-object v0
7452 +.end method
7454 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7455 + .registers 9
7456 + .annotation system Ldalvik/annotation/Throws;
7457 + value = {
7458 + Ljava/lang/Exception;
7460 + .end annotation
7462 + const/4 v0, 0x0
7464 + const/4 v3, 0x0
7466 + const/4 v2, 0x0
7468 + :goto_3
7469 + if-nez v3, :cond_28
7471 + const/4 v4, 0x5
7473 + if-ge v2, v4, :cond_28
7475 + if-eqz v0, :cond_d
7477 + :try_start_a
7478 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7480 + :cond_d
7481 + const/4 v4, 0x0
7483 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
7484 + :try_end_11
7485 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
7487 + move-result-object v0
7489 + const/4 v3, 0x1
7491 + :goto_13
7492 + add-int/lit8 v2, v2, 0x1
7494 + goto :goto_3
7496 + :catch_16
7497 + move-exception v1
7499 + const/4 v3, 0x0
7501 + if-eqz p1, :cond_23
7503 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7505 + move-result v4
7507 + if-eqz v4, :cond_23
7509 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7511 + :cond_23
7512 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7514 + move-result-object p1
7516 + goto :goto_13
7518 + :cond_28
7519 + if-nez v3, :cond_33
7521 + new-instance v4, Ljava/lang/Exception;
7523 + const-string/jumbo v5, "query - failed to execute query on the DB"
7525 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7527 + throw v4
7529 + :cond_33
7530 + return-object v0
7531 +.end method
7533 +.method private declared-synchronized upgradeDatabase(I)V
7534 + .registers 23
7536 + monitor-enter p0
7538 + :try_start_1
7539 + const-string v17, "PrivacyPersistenceAdapter"
7541 + new-instance v18, Ljava/lang/StringBuilder;
7543 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
7545 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
7547 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7549 + move-result-object v18
7551 + move-object/from16 v0, v18
7553 + move/from16 v1, p1
7555 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7557 + move-result-object v18
7559 + const-string v19, " to "
7561 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7563 + move-result-object v18
7565 + const/16 v19, 0x3
7567 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7569 + move-result-object v18
7571 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7573 + move-result-object v18
7575 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7577 + new-instance v6, Ljava/io/File;
7579 + const-string v17, "/data/system/privacy.db"
7581 + move-object/from16 v0, v17
7583 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7585 + new-instance v5, Ljava/io/File;
7587 + const-string v17, "/data/system/privacy.db.bak"
7589 + move-object/from16 v0, v17
7591 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7592 + :try_end_3c
7593 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
7595 + :try_start_3c
7596 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7597 + :try_end_3f
7598 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
7599 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
7601 + :goto_3f
7602 + :try_start_3f
7603 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7605 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
7607 + move-result-wide v17
7609 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
7611 + move-result-wide v19
7613 + sub-long v17, v17, v19
7615 + const-wide/16 v19, 0x7d0
7617 + cmp-long v17, v17, v19
7619 + if-lez v17, :cond_69
7621 + const-string v17, "PrivacyPersistenceAdapter"
7623 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
7625 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7626 + :try_end_5a
7627 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
7629 + :goto_5a
7630 + monitor-exit p0
7632 + return-void
7634 + :catch_5c
7635 + move-exception v7
7637 + :try_start_5d
7638 + const-string v17, "PrivacyPersistenceAdapter"
7640 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
7642 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7643 + :try_end_65
7644 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
7646 + goto :goto_3f
7648 + :catchall_66
7649 + move-exception v17
7651 + monitor-exit p0
7653 + throw v17
7655 + :cond_69
7656 + :try_start_69
7657 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7659 + move-result-object v4
7661 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
7663 + packed-switch p1, :pswitch_data_164
7665 + :cond_73
7666 + :goto_73
7667 + if-eqz v4, :cond_159
7669 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7671 + move-result v17
7673 + if-eqz v17, :cond_159
7675 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7677 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7679 + :goto_81
7680 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
7681 + :try_end_84
7682 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
7684 + goto :goto_5a
7686 + :pswitch_85
7687 + if-eqz v4, :cond_73
7689 + :try_start_87
7690 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7692 + move-result v17
7694 + if-eqz v17, :cond_73
7696 + const-string v17, "DROP TABLE IF EXISTS version;"
7698 + move-object/from16 v0, v17
7700 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7702 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7704 + move-object/from16 v0, v17
7706 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7708 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7710 + move-object/from16 v0, v17
7712 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7714 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7716 + move-object/from16 v0, v17
7718 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7720 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7722 + move-object/from16 v0, v17
7724 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7726 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7728 + move-object/from16 v0, v17
7730 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7732 + new-instance v14, Ljava/io/File;
7734 + const-string v17, "/data/system/privacy"
7736 + move-object/from16 v0, v17
7738 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7740 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
7742 + move-result-object v2
7744 + array-length v10, v2
7746 + const/4 v8, 0x0
7748 + move v9, v8
7750 + :goto_c7
7751 + if-ge v9, v10, :cond_127
7753 + aget-object v13, v2, v9
7755 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
7757 + move-result-object v3
7759 + array-length v11, v3
7761 + const/4 v8, 0x0
7763 + :goto_d1
7764 + if-ge v8, v11, :cond_123
7766 + aget-object v16, v3, v8
7768 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
7770 + move-result v17
7772 + if-eqz v17, :cond_120
7774 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
7776 + move-result-object v15
7778 + const/16 v17, 0x0
7780 + aget-object v17, v15, v17
7782 + if-eqz v17, :cond_120
7784 + new-instance v12, Ljava/io/File;
7786 + new-instance v17, Ljava/lang/StringBuilder;
7788 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7790 + move-object/from16 v0, v17
7792 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7794 + move-result-object v17
7796 + const-string v18, "/"
7798 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7800 + move-result-object v17
7802 + const/16 v18, 0x0
7804 + aget-object v18, v15, v18
7806 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
7808 + move-result-object v18
7810 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7812 + move-result-object v17
7814 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7816 + move-result-object v17
7818 + move-object/from16 v0, v17
7820 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7822 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
7824 + const/16 v17, 0x0
7826 + aget-object v17, v15, v17
7828 + move-object/from16 v0, v17
7830 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
7832 + move-object/from16 v0, p0
7834 + move-object/from16 v1, v16
7836 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7838 + :cond_120
7839 + add-int/lit8 v8, v8, 0x1
7841 + goto :goto_d1
7843 + :cond_123
7844 + add-int/lit8 v8, v9, 0x1
7846 + move v9, v8
7848 + goto :goto_c7
7850 + :cond_127
7851 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
7852 + :try_end_12a
7853 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
7854 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
7856 + goto/16 :goto_73
7858 + :catch_12c
7859 + move-exception v7
7861 + if-eqz v4, :cond_13b
7863 + :try_start_12f
7864 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7866 + move-result v17
7868 + if-eqz v17, :cond_13b
7870 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
7872 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7874 + :cond_13b
7875 + const-string v17, "PrivacyPersistenceAdapter"
7877 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
7879 + move-object/from16 v0, v17
7881 + move-object/from16 v1, v18
7883 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7885 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
7887 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
7889 + goto/16 :goto_73
7891 + :pswitch_14f
7892 + const-string v17, "PrivacyPersistenceAdapter"
7894 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
7896 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
7898 + goto/16 :goto_73
7900 + :cond_159
7901 + const-string v17, "PrivacyPersistenceAdapter"
7903 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
7905 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7906 + :try_end_161
7907 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
7909 + goto/16 :goto_81
7911 + nop
7913 + :pswitch_data_164
7914 + .packed-switch 0x1
7915 + :pswitch_85
7916 + :pswitch_85
7917 + :pswitch_14f
7918 + .end packed-switch
7919 +.end method
7922 +# virtual methods
7923 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
7924 + .registers 16
7926 + monitor-enter p0
7928 + const/4 v11, 0x1
7930 + :try_start_2
7931 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7933 + move-result-object v0
7935 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
7936 + :try_end_9
7937 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
7939 + :try_start_9
7940 + const-string/jumbo v1, "settings"
7942 + const/4 v2, 0x1
7944 + new-array v2, v2, [Ljava/lang/String;
7946 + const/4 v3, 0x0
7948 + const-string v4, "_id"
7950 + aput-object v4, v2, v3
7952 + const-string/jumbo v3, "packageName=?"
7954 + const/4 v4, 0x1
7956 + new-array v4, v4, [Ljava/lang/String;
7958 + const/4 v5, 0x0
7960 + aput-object p1, v4, v5
7962 + const/4 v5, 0x0
7964 + const/4 v6, 0x0
7966 + const/4 v7, 0x0
7968 + 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;
7970 + move-result-object v8
7972 + if-eqz v8, :cond_4c
7974 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
7976 + move-result v1
7978 + if-lez v1, :cond_4c
7980 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
7982 + move-result v1
7984 + if-eqz v1, :cond_4c
7986 + const/4 v1, 0x0
7988 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
7990 + move-result v10
7992 + const-string v1, "allowed_contacts"
7994 + const-string/jumbo v2, "settings_id=?"
7996 + const/4 v3, 0x1
7998 + new-array v3, v3, [Ljava/lang/String;
8000 + const/4 v4, 0x0
8002 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8004 + move-result-object v5
8006 + aput-object v5, v3, v4
8008 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8010 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
8012 + :cond_4c
8013 + const-string/jumbo v1, "settings"
8015 + const-string/jumbo v2, "packageName=?"
8017 + const/4 v3, 0x1
8019 + new-array v3, v3, [Ljava/lang/String;
8021 + const/4 v4, 0x0
8023 + aput-object p1, v3, v4
8025 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8027 + move-result v1
8029 + if-nez v1, :cond_8d
8031 + const-string v1, "PrivacyPersistenceAdapter"
8033 + new-instance v2, Ljava/lang/StringBuilder;
8035 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
8037 + const-string v3, "deleteSettings - database entry for "
8039 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8041 + move-result-object v2
8043 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8045 + move-result-object v2
8047 + const-string v3, " not found"
8049 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8051 + move-result-object v2
8053 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8055 + move-result-object v2
8057 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8058 + :try_end_7c
8059 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
8060 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
8062 + const/4 v1, 0x0
8064 + :try_start_7d
8065 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8067 + if-eqz v0, :cond_8b
8069 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8071 + move-result v2
8073 + if-eqz v2, :cond_8b
8075 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8076 + :try_end_8b
8077 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
8079 + :cond_8b
8080 + :goto_8b
8081 + monitor-exit p0
8083 + return v1
8085 + :cond_8d
8086 + :try_start_8d
8087 + new-instance v12, Ljava/io/File;
8089 + new-instance v1, Ljava/lang/StringBuilder;
8091 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8093 + const-string v2, "/data/system/privacy/"
8095 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8097 + move-result-object v1
8099 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8101 + move-result-object v1
8103 + const-string v2, "/"
8105 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8107 + move-result-object v1
8109 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8111 + move-result-object v1
8113 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8115 + new-instance v13, Ljava/io/File;
8117 + new-instance v1, Ljava/lang/StringBuilder;
8119 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8121 + const-string v2, "/data/system/privacy/"
8123 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8125 + move-result-object v1
8127 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8129 + move-result-object v1
8131 + const-string v2, "/systemLogsSetting"
8133 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8135 + move-result-object v1
8137 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8139 + move-result-object v1
8141 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8143 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
8145 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8147 + move-result-object v1
8149 + if-eqz v1, :cond_d9
8151 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8153 + move-result-object v1
8155 + array-length v1, v1
8157 + if-nez v1, :cond_dc
8159 + :cond_d9
8160 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8162 + :cond_dc
8163 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8164 + :try_end_df
8165 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
8166 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
8168 + :try_start_df
8169 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8171 + if-eqz v0, :cond_ed
8173 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8175 + move-result v1
8177 + if-eqz v1, :cond_ed
8179 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8180 + :try_end_ed
8181 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
8183 + :cond_ed
8184 + :goto_ed
8185 + move v1, v11
8187 + goto :goto_8b
8189 + :catch_ef
8190 + move-exception v9
8192 + const/4 v11, 0x0
8194 + :try_start_f1
8195 + const-string v1, "PrivacyPersistenceAdapter"
8197 + const-string v2, "deleteSettings - could not delete settings"
8199 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8200 + :try_end_f8
8201 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
8203 + :try_start_f8
8204 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8206 + if-eqz v0, :cond_ed
8208 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8210 + move-result v1
8212 + if-eqz v1, :cond_ed
8214 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8215 + :try_end_106
8216 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
8218 + goto :goto_ed
8220 + :catchall_107
8221 + move-exception v1
8223 + monitor-exit p0
8225 + throw v1
8227 + :catchall_10a
8228 + move-exception v1
8230 + :try_start_10b
8231 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8233 + if-eqz v0, :cond_119
8235 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8237 + move-result v2
8239 + if-eqz v2, :cond_119
8241 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8243 + :cond_119
8244 + throw v1
8245 + :try_end_11a
8246 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
8247 +.end method
8249 +.method public getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
8250 + .registers 47
8252 + const/16 v43, 0x0
8254 + if-nez p1, :cond_e
8256 + const-string v1, "PrivacyPersistenceAdapter"
8258 + const-string v4, "getSettings - insufficient application identifier - package name is required"
8260 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8262 + move-object/from16 v3, v43
8264 + :goto_d
8265 + return-object v43
8267 + :cond_e
8268 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8270 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8272 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8274 + move-result v1
8276 + add-int/lit8 v1, v1, 0x1
8278 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8280 + move-result-object v1
8282 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8284 + :try_start_1e
8285 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8286 + :try_end_21
8287 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_1e .. :try_end_21} :catch_243
8289 + move-result-object v2
8291 + const/16 v41, 0x0
8293 + :try_start_24
8294 + const-string/jumbo v3, "settings"
8296 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
8298 + const-string/jumbo v5, "packageName=?"
8300 + const/4 v1, 0x1
8302 + new-array v6, v1, [Ljava/lang/String;
8304 + const/4 v1, 0x0
8306 + aput-object p1, v6, v1
8308 + const/4 v7, 0x0
8310 + const/4 v8, 0x0
8312 + const/4 v9, 0x0
8314 + const/4 v10, 0x0
8316 + move-object/from16 v1, p0
8318 + 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;
8320 + move-result-object v41
8322 + if-eqz v41, :cond_2d3
8324 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToFirst()Z
8326 + move-result v1
8328 + if-eqz v1, :cond_2d3
8330 + new-instance v3, Landroid/privacy/PrivacySettings;
8332 + const/4 v1, 0x0
8334 + move-object/from16 v0, v41
8336 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8338 + move-result v1
8340 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8342 + move-result-object v4
8344 + const/4 v1, 0x1
8346 + move-object/from16 v0, v41
8348 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8350 + move-result-object v5
8352 + const/4 v1, 0x2
8354 + move-object/from16 v0, v41
8356 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8358 + move-result v6
8360 + const/4 v1, 0x3
8362 + move-object/from16 v0, v41
8364 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8366 + move-result v1
8368 + int-to-byte v7, v1
8370 + const/4 v1, 0x4
8372 + move-object/from16 v0, v41
8374 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8376 + move-result-object v8
8378 + const/4 v1, 0x5
8380 + move-object/from16 v0, v41
8382 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8384 + move-result v1
8386 + int-to-byte v9, v1
8388 + const/4 v1, 0x6
8390 + move-object/from16 v0, v41
8392 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8394 + move-result-object v10
8396 + const/4 v1, 0x7
8398 + move-object/from16 v0, v41
8400 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8402 + move-result v1
8404 + int-to-byte v11, v1
8406 + const/16 v1, 0x8
8408 + move-object/from16 v0, v41
8410 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8412 + move-result-object v12
8414 + const/16 v1, 0x9
8416 + move-object/from16 v0, v41
8418 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8420 + move-result-object v13
8422 + const/16 v1, 0xa
8424 + move-object/from16 v0, v41
8426 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8428 + move-result v1
8430 + int-to-byte v14, v1
8432 + const/16 v1, 0xb
8434 + move-object/from16 v0, v41
8436 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8438 + move-result-object v15
8440 + const/16 v1, 0xc
8442 + move-object/from16 v0, v41
8444 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8446 + move-result-object v16
8448 + const/16 v1, 0xd
8450 + move-object/from16 v0, v41
8452 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8454 + move-result v1
8456 + int-to-byte v0, v1
8458 + move/from16 v17, v0
8460 + const/16 v1, 0xe
8462 + move-object/from16 v0, v41
8464 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8466 + move-result v1
8468 + int-to-byte v0, v1
8470 + move/from16 v18, v0
8472 + const/16 v1, 0xf
8474 + move-object/from16 v0, v41
8476 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8478 + move-result v1
8480 + int-to-byte v0, v1
8482 + move/from16 v19, v0
8484 + const/16 v1, 0x10
8486 + move-object/from16 v0, v41
8488 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8490 + move-result-object v20
8492 + const/16 v1, 0x11
8494 + move-object/from16 v0, v41
8496 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8498 + move-result v1
8500 + int-to-byte v0, v1
8502 + move/from16 v21, v0
8504 + const/16 v1, 0x12
8506 + move-object/from16 v0, v41
8508 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8510 + move-result-object v22
8512 + const/16 v1, 0x13
8514 + move-object/from16 v0, v41
8516 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8518 + move-result v1
8520 + int-to-byte v0, v1
8522 + move/from16 v23, v0
8524 + const/16 v1, 0x14
8526 + move-object/from16 v0, v41
8528 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8530 + move-result v1
8532 + int-to-byte v0, v1
8534 + move/from16 v24, v0
8536 + const/16 v1, 0x15
8538 + move-object/from16 v0, v41
8540 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8542 + move-result v1
8544 + int-to-byte v0, v1
8546 + move/from16 v25, v0
8548 + const/16 v1, 0x16
8550 + move-object/from16 v0, v41
8552 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8554 + move-result v1
8556 + int-to-byte v0, v1
8558 + move/from16 v26, v0
8560 + const/16 v1, 0x17
8562 + move-object/from16 v0, v41
8564 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8566 + move-result v1
8568 + int-to-byte v0, v1
8570 + move/from16 v27, v0
8572 + const/16 v1, 0x18
8574 + move-object/from16 v0, v41
8576 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8578 + move-result v1
8580 + int-to-byte v0, v1
8582 + move/from16 v28, v0
8584 + const/16 v1, 0x19
8586 + move-object/from16 v0, v41
8588 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8590 + move-result v1
8592 + int-to-byte v0, v1
8594 + move/from16 v29, v0
8596 + const/16 v1, 0x1a
8598 + move-object/from16 v0, v41
8600 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8602 + move-result v1
8604 + int-to-byte v0, v1
8606 + move/from16 v30, v0
8608 + const/16 v1, 0x1b
8610 + move-object/from16 v0, v41
8612 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8614 + move-result v1
8616 + int-to-byte v0, v1
8618 + move/from16 v31, v0
8620 + const/16 v1, 0x1c
8622 + move-object/from16 v0, v41
8624 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8626 + move-result v1
8628 + int-to-byte v0, v1
8630 + move/from16 v32, v0
8632 + const/16 v1, 0x1d
8634 + move-object/from16 v0, v41
8636 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8638 + move-result v1
8640 + int-to-byte v0, v1
8642 + move/from16 v33, v0
8644 + const/16 v1, 0x1e
8646 + move-object/from16 v0, v41
8648 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8650 + move-result v1
8652 + int-to-byte v0, v1
8654 + move/from16 v34, v0
8656 + const/16 v1, 0x1f
8658 + move-object/from16 v0, v41
8660 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8662 + move-result v1
8664 + int-to-byte v0, v1
8666 + move/from16 v35, v0
8668 + const/16 v1, 0x20
8670 + move-object/from16 v0, v41
8672 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8674 + move-result v1
8676 + int-to-byte v0, v1
8678 + move/from16 v36, v0
8680 + const/16 v1, 0x21
8682 + move-object/from16 v0, v41
8684 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8686 + move-result v1
8688 + int-to-byte v0, v1
8690 + move/from16 v37, v0
8692 + const/16 v1, 0x22
8694 + move-object/from16 v0, v41
8696 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8698 + move-result v1
8700 + int-to-byte v0, v1
8702 + move/from16 v38, v0
8704 + const/16 v39, 0x0
8706 + 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
8707 + :try_end_19f
8708 + .catchall {:try_start_24 .. :try_end_19f} :catchall_299
8709 + .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_19f} :catch_2ce
8711 + :try_start_19f
8712 + new-instance v1, Ljava/lang/StringBuilder;
8714 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8716 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
8718 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8720 + move-result-object v1
8722 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
8724 + move-result-object v4
8726 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
8728 + move-result v4
8730 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8732 + move-result-object v4
8734 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8736 + move-result-object v1
8738 + const-string v4, ";"
8740 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8742 + move-result-object v1
8744 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8746 + move-result-object v1
8748 + move-object/from16 v0, p0
8750 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
8752 + move-result-object v41
8754 + if-eqz v41, :cond_266
8756 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8758 + move-result v1
8760 + if-lez v1, :cond_266
8762 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
8764 + move-result v1
8766 + new-array v0, v1, [I
8768 + move-object/from16 v40, v0
8770 + :goto_1da
8771 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToNext()Z
8773 + move-result v1
8775 + if-eqz v1, :cond_261
8777 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getPosition()I
8779 + move-result v1
8781 + const/4 v4, 0x1
8783 + move-object/from16 v0, v41
8785 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
8787 + move-result v4
8789 + aput v4, v40, v1
8790 + :try_end_1ed
8791 + .catchall {:try_start_19f .. :try_end_1ed} :catchall_2cc
8792 + .catch Ljava/lang/Exception; {:try_start_19f .. :try_end_1ed} :catch_1ee
8794 + goto :goto_1da
8796 + :catch_1ee
8797 + move-exception v42
8799 + :goto_1ef
8800 + :try_start_1ef
8801 + const-string v1, "PrivacyPersistenceAdapter"
8803 + new-instance v4, Ljava/lang/StringBuilder;
8805 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
8807 + const-string v5, "getSettings - failed to get settings for package: "
8809 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8811 + move-result-object v4
8813 + move-object/from16 v0, p1
8815 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8817 + move-result-object v4
8819 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8821 + move-result-object v4
8823 + move-object/from16 v0, v42
8825 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8827 + invoke-virtual/range {v42 .. v42}, Ljava/lang/Exception;->printStackTrace()V
8829 + if-eqz v41, :cond_213
8831 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8832 + :try_end_213
8833 + .catchall {:try_start_1ef .. :try_end_213} :catchall_2cc
8835 + :cond_213
8836 + if-eqz v41, :cond_218
8838 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8840 + :cond_218
8841 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8843 + monitor-enter v4
8845 + :try_start_21b
8846 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8848 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8850 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8852 + move-result v1
8854 + add-int/lit8 v1, v1, -0x1
8856 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8858 + move-result-object v1
8860 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8862 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8864 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8866 + move-result v1
8868 + if-nez v1, :cond_23e
8870 + if-eqz v2, :cond_23e
8872 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8874 + move-result v1
8876 + if-eqz v1, :cond_23e
8878 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8880 + :cond_23e
8881 + monitor-exit v4
8882 + :try_end_23f
8883 + .catchall {:try_start_21b .. :try_end_23f} :catchall_296
8885 + :goto_23f
8886 + move-object/from16 v43, v3
8888 + goto/16 :goto_d
8890 + :catch_243
8891 + move-exception v42
8893 + const-string v1, "PrivacyPersistenceAdapter"
8895 + const-string v4, "getSettings - database could not be opened"
8897 + move-object/from16 v0, v42
8899 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8901 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8903 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8905 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8907 + move-result v1
8909 + add-int/lit8 v1, v1, -0x1
8911 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8913 + move-result-object v1
8915 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8917 + move-object/from16 v3, v43
8919 + goto/16 :goto_d
8921 + :cond_261
8922 + :try_start_261
8923 + move-object/from16 v0, v40
8925 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
8926 + :try_end_266
8927 + .catchall {:try_start_261 .. :try_end_266} :catchall_2cc
8928 + .catch Ljava/lang/Exception; {:try_start_261 .. :try_end_266} :catch_1ee
8930 + :cond_266
8931 + :goto_266
8932 + if-eqz v41, :cond_26b
8934 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
8936 + :cond_26b
8937 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8939 + monitor-enter v4
8941 + :try_start_26e
8942 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8944 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8946 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8948 + move-result v1
8950 + add-int/lit8 v1, v1, -0x1
8952 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8954 + move-result-object v1
8956 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8958 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8960 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8962 + move-result v1
8964 + if-nez v1, :cond_291
8966 + if-eqz v2, :cond_291
8968 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8970 + move-result v1
8972 + if-eqz v1, :cond_291
8974 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8976 + :cond_291
8977 + monitor-exit v4
8979 + goto :goto_23f
8981 + :catchall_293
8982 + move-exception v1
8984 + monitor-exit v4
8985 + :try_end_295
8986 + .catchall {:try_start_26e .. :try_end_295} :catchall_293
8988 + throw v1
8990 + :catchall_296
8991 + move-exception v1
8993 + :try_start_297
8994 + monitor-exit v4
8995 + :try_end_298
8996 + .catchall {:try_start_297 .. :try_end_298} :catchall_296
8998 + throw v1
9000 + :catchall_299
9001 + move-exception v1
9003 + move-object/from16 v3, v43
9005 + :goto_29c
9006 + if-eqz v41, :cond_2a1
9008 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9010 + :cond_2a1
9011 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9013 + monitor-enter v4
9015 + :try_start_2a4
9016 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9018 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9020 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9022 + move-result v5
9024 + add-int/lit8 v5, v5, -0x1
9026 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9028 + move-result-object v5
9030 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9032 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9034 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9036 + move-result v5
9038 + if-nez v5, :cond_2c7
9040 + if-eqz v2, :cond_2c7
9042 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9044 + move-result v5
9046 + if-eqz v5, :cond_2c7
9048 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9050 + :cond_2c7
9051 + monitor-exit v4
9052 + :try_end_2c8
9053 + .catchall {:try_start_2a4 .. :try_end_2c8} :catchall_2c9
9055 + throw v1
9057 + :catchall_2c9
9058 + move-exception v1
9060 + :try_start_2ca
9061 + monitor-exit v4
9062 + :try_end_2cb
9063 + .catchall {:try_start_2ca .. :try_end_2cb} :catchall_2c9
9065 + throw v1
9067 + :catchall_2cc
9068 + move-exception v1
9070 + goto :goto_29c
9072 + :catch_2ce
9073 + move-exception v42
9075 + move-object/from16 v3, v43
9077 + goto/16 :goto_1ef
9079 + :cond_2d3
9080 + move-object/from16 v3, v43
9082 + goto :goto_266
9083 +.end method
9085 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
9086 + .registers 15
9088 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9090 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9092 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9094 + move-result v0
9096 + add-int/lit8 v0, v0, 0x1
9098 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9100 + move-result-object v0
9102 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9104 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9106 + move-result-object v1
9108 + const/4 v12, 0x0
9110 + :try_start_15
9111 + const-string/jumbo v2, "map"
9113 + const/4 v0, 0x1
9115 + new-array v3, v0, [Ljava/lang/String;
9117 + const/4 v0, 0x0
9119 + const-string/jumbo v4, "value"
9121 + aput-object v4, v3, v0
9123 + const-string/jumbo v4, "name=?"
9125 + const/4 v0, 0x1
9127 + new-array v5, v0, [Ljava/lang/String;
9129 + const/4 v0, 0x0
9131 + aput-object p1, v5, v0
9133 + const/4 v6, 0x0
9135 + const/4 v7, 0x0
9137 + const/4 v8, 0x0
9139 + const/4 v9, 0x0
9141 + move-object v0, p0
9143 + 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;
9145 + move-result-object v10
9147 + if-eqz v10, :cond_77
9149 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
9151 + move-result v0
9153 + if-lez v0, :cond_77
9155 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
9157 + move-result v0
9159 + if-eqz v0, :cond_77
9161 + const-string/jumbo v0, "value"
9163 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
9165 + move-result v0
9167 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9169 + move-result-object v12
9171 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
9172 + :try_end_4f
9173 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
9175 + :goto_4f
9176 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9178 + monitor-enter v2
9180 + :try_start_52
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 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9199 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9201 + move-result v0
9203 + if-nez v0, :cond_75
9205 + if-eqz v1, :cond_75
9207 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9209 + move-result v0
9211 + if-eqz v0, :cond_75
9213 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9215 + :cond_75
9216 + monitor-exit v2
9217 + :try_end_76
9218 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
9220 + return-object v12
9222 + :cond_77
9223 + :try_start_77
9224 + const-string v0, "PrivacyPersistenceAdapter"
9226 + new-instance v2, Ljava/lang/StringBuilder;
9228 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9230 + const-string v3, "getValue - could not get value for name: "
9232 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9234 + move-result-object v2
9236 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9238 + move-result-object v2
9240 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9242 + move-result-object v2
9244 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
9245 + :try_end_8f
9246 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
9248 + goto :goto_4f
9250 + :catch_90
9251 + move-exception v11
9253 + const-string v0, "PrivacyPersistenceAdapter"
9255 + new-instance v2, Ljava/lang/StringBuilder;
9257 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9259 + const-string v3, "getValue - could not get value for name: "
9261 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9263 + move-result-object v2
9265 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9267 + move-result-object v2
9269 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9271 + move-result-object v2
9273 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9275 + goto :goto_4f
9277 + :catchall_aa
9278 + move-exception v0
9280 + :try_start_ab
9281 + monitor-exit v2
9282 + :try_end_ac
9283 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
9285 + throw v0
9286 +.end method
9288 +.method public purgeSettings()Z
9289 + .registers 28
9291 + const/16 v25, 0x1
9293 + new-instance v13, Ljava/util/ArrayList;
9295 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
9297 + move-object/from16 v0, p0
9299 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
9301 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
9303 + move-result-object v21
9305 + const/16 v2, 0x80
9307 + move-object/from16 v0, v21
9309 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
9311 + move-result-object v19
9313 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
9315 + move-result-object v18
9317 + :goto_1b
9318 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
9320 + move-result v2
9322 + if-eqz v2, :cond_2d
9324 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
9326 + move-result-object v12
9328 + check-cast v12, Landroid/content/pm/ApplicationInfo;
9330 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
9332 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9334 + goto :goto_1b
9336 + :cond_2d
9337 + new-instance v26, Ljava/io/File;
9339 + const-string v2, "/data/system/privacy"
9341 + move-object/from16 v0, v26
9343 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9345 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
9347 + move-result-object v15
9349 + array-length v0, v15
9351 + move/from16 v20, v0
9353 + const/16 v18, 0x0
9355 + :goto_3f
9356 + move/from16 v0, v18
9358 + move/from16 v1, v20
9360 + if-ge v0, v1, :cond_5d
9362 + aget-object v23, v15, v18
9364 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
9366 + move-result-object v24
9368 + move-object/from16 v0, v24
9370 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9372 + move-result v2
9374 + if-nez v2, :cond_5a
9376 + move-object/from16 v0, p0
9378 + move-object/from16 v1, v23
9380 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
9382 + :cond_5a
9383 + add-int/lit8 v18, v18, 0x1
9385 + goto :goto_3f
9387 + :cond_5d
9388 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9390 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9392 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9394 + move-result v2
9396 + add-int/lit8 v2, v2, 0x1
9398 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9400 + move-result-object v2
9402 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9404 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9406 + move-result-object v3
9408 + const/16 v16, 0x0
9410 + :try_start_73
9411 + const-string/jumbo v4, "settings"
9413 + const/4 v2, 0x1
9415 + new-array v5, v2, [Ljava/lang/String;
9417 + const/4 v2, 0x0
9419 + const-string/jumbo v6, "packageName"
9421 + aput-object v6, v5, v2
9423 + const/4 v6, 0x0
9425 + const/4 v7, 0x0
9427 + const/4 v8, 0x0
9429 + const/4 v9, 0x0
9431 + const/4 v10, 0x0
9433 + const/4 v11, 0x0
9435 + move-object/from16 v2, p0
9437 + 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;
9439 + move-result-object v16
9441 + new-instance v14, Ljava/util/ArrayList;
9443 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
9445 + :goto_90
9446 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
9448 + move-result v2
9450 + if-eqz v2, :cond_142
9452 + const/4 v2, 0x0
9454 + move-object/from16 v0, v16
9456 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9458 + move-result-object v24
9460 + move-object/from16 v0, v24
9462 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9464 + move-result v2
9466 + if-nez v2, :cond_e7
9468 + move-object/from16 v0, p0
9470 + move-object/from16 v1, v24
9472 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9473 + :try_end_ac
9474 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
9475 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
9477 + goto :goto_90
9479 + :catch_ad
9480 + move-exception v17
9482 + :try_start_ae
9483 + const-string v2, "PrivacyPersistenceAdapter"
9485 + const-string/jumbo v4, "purgeSettings - purging DB failed"
9487 + move-object/from16 v0, v17
9489 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9490 + :try_end_b8
9491 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
9493 + const/16 v25, 0x0
9495 + if-eqz v16, :cond_bf
9497 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9499 + :cond_bf
9500 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9502 + monitor-enter v4
9504 + :try_start_c2
9505 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9507 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9509 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9511 + move-result v2
9513 + add-int/lit8 v2, v2, -0x1
9515 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9517 + move-result-object v2
9519 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9521 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9523 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9525 + move-result v2
9527 + if-nez v2, :cond_e5
9529 + if-eqz v3, :cond_e5
9531 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9533 + move-result v2
9535 + if-eqz v2, :cond_e5
9537 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9539 + :cond_e5
9540 + monitor-exit v4
9541 + :try_end_e6
9542 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
9544 + :goto_e6
9545 + return v25
9547 + :cond_e7
9548 + :try_start_e7
9549 + move-object/from16 v0, v24
9551 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9553 + move-result v2
9555 + if-eqz v2, :cond_135
9557 + const/4 v2, 0x0
9559 + move-object/from16 v0, p0
9561 + move-object/from16 v1, v24
9563 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
9565 + move-result-object v22
9567 + move-object/from16 v0, p0
9569 + move-object/from16 v1, v24
9571 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9573 + move-object/from16 v0, p0
9575 + move-object/from16 v1, v22
9577 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9578 + :try_end_106
9579 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
9580 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
9582 + goto :goto_90
9584 + :catchall_107
9585 + move-exception v2
9587 + if-eqz v16, :cond_10d
9589 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9591 + :cond_10d
9592 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9594 + monitor-enter v4
9596 + :try_start_110
9597 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9599 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9601 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9603 + move-result v5
9605 + add-int/lit8 v5, v5, -0x1
9607 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9609 + move-result-object v5
9611 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9613 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9615 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9617 + move-result v5
9619 + if-nez v5, :cond_133
9621 + if-eqz v3, :cond_133
9623 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9625 + move-result v5
9627 + if-eqz v5, :cond_133
9629 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9631 + :cond_133
9632 + monitor-exit v4
9633 + :try_end_134
9634 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
9636 + throw v2
9638 + :cond_135
9639 + :try_start_135
9640 + move-object/from16 v0, v24
9642 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9643 + :try_end_13a
9644 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
9645 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
9647 + goto/16 :goto_90
9649 + :catchall_13c
9650 + move-exception v2
9652 + :try_start_13d
9653 + monitor-exit v4
9654 + :try_end_13e
9655 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
9657 + throw v2
9659 + :catchall_13f
9660 + move-exception v2
9662 + :try_start_140
9663 + monitor-exit v4
9664 + :try_end_141
9665 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
9667 + throw v2
9669 + :cond_142
9670 + if-eqz v16, :cond_147
9672 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9674 + :cond_147
9675 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9677 + monitor-enter v4
9679 + :try_start_14a
9680 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9682 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9684 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9686 + move-result v2
9688 + add-int/lit8 v2, v2, -0x1
9690 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9692 + move-result-object v2
9694 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9696 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9698 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9700 + move-result v2
9702 + if-nez v2, :cond_16d
9704 + if-eqz v3, :cond_16d
9706 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9708 + move-result v2
9710 + if-eqz v2, :cond_16d
9712 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9714 + :cond_16d
9715 + monitor-exit v4
9717 + goto/16 :goto_e6
9719 + :catchall_170
9720 + move-exception v2
9722 + monitor-exit v4
9723 + :try_end_172
9724 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
9726 + throw v2
9727 +.end method
9729 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
9730 + .registers 27
9732 + monitor-enter p0
9734 + const/16 v18, 0x1
9736 + :try_start_3
9737 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
9739 + move-result-object v17
9741 + if-eqz v17, :cond_f
9743 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->isEmpty()Z
9745 + move-result v3
9747 + if-eqz v3, :cond_1a
9749 + :cond_f
9750 + const-string v3, "PrivacyPersistenceAdapter"
9752 + const-string/jumbo v4, "saveSettings - either package name, UID or both is missing"
9754 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
9755 + :try_end_17
9756 + .catchall {:try_start_3 .. :try_end_17} :catchall_2c2
9758 + const/4 v3, 0x0
9760 + :goto_18
9761 + monitor-exit p0
9763 + return v3
9765 + :cond_1a
9766 + :try_start_1a
9767 + new-instance v23, Landroid/content/ContentValues;
9769 + invoke-direct/range {v23 .. v23}, Landroid/content/ContentValues;-><init>()V
9771 + const-string/jumbo v3, "packageName"
9773 + move-object/from16 v0, v23
9775 + move-object/from16 v1, v17
9777 + invoke-virtual {v0, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9779 + const-string/jumbo v3, "uid"
9781 + const/4 v4, -0x1
9783 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9785 + move-result-object v4
9787 + move-object/from16 v0, v23
9789 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
9791 + const-string v3, "deviceIdSetting"
9793 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
9795 + move-result v4
9797 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9799 + move-result-object v4
9801 + move-object/from16 v0, v23
9803 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9805 + const-string v3, "deviceId"
9807 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
9809 + move-result-object v4
9811 + move-object/from16 v0, v23
9813 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9815 + const-string v3, "line1NumberSetting"
9817 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
9819 + move-result v4
9821 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9823 + move-result-object v4
9825 + move-object/from16 v0, v23
9827 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9829 + const-string v3, "line1Number"
9831 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
9833 + move-result-object v4
9835 + move-object/from16 v0, v23
9837 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9839 + const-string v3, "locationGpsSetting"
9841 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
9843 + move-result v4
9845 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9847 + move-result-object v4
9849 + move-object/from16 v0, v23
9851 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9853 + const-string v3, "locationGpsLat"
9855 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
9857 + move-result-object v4
9859 + move-object/from16 v0, v23
9861 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9863 + const-string v3, "locationGpsLon"
9865 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
9867 + move-result-object v4
9869 + move-object/from16 v0, v23
9871 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9873 + const-string v3, "locationNetworkSetting"
9875 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
9877 + move-result v4
9879 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9881 + move-result-object v4
9883 + move-object/from16 v0, v23
9885 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9887 + const-string v3, "locationNetworkLat"
9889 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
9891 + move-result-object v4
9893 + move-object/from16 v0, v23
9895 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9897 + const-string v3, "locationNetworkLon"
9899 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
9901 + move-result-object v4
9903 + move-object/from16 v0, v23
9905 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9907 + const-string/jumbo v3, "networkInfoSetting"
9909 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
9911 + move-result v4
9913 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9915 + move-result-object v4
9917 + move-object/from16 v0, v23
9919 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9921 + const-string/jumbo v3, "simInfoSetting"
9923 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
9925 + move-result v4
9927 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9929 + move-result-object v4
9931 + move-object/from16 v0, v23
9933 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9935 + const-string/jumbo v3, "simSerialNumberSetting"
9937 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
9939 + move-result v4
9941 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9943 + move-result-object v4
9945 + move-object/from16 v0, v23
9947 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9949 + const-string/jumbo v3, "simSerialNumber"
9951 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
9953 + move-result-object v4
9955 + move-object/from16 v0, v23
9957 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9959 + const-string/jumbo v3, "subscriberIdSetting"
9961 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
9963 + move-result v4
9965 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9967 + move-result-object v4
9969 + move-object/from16 v0, v23
9971 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9973 + const-string/jumbo v3, "subscriberId"
9975 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
9977 + move-result-object v4
9979 + move-object/from16 v0, v23
9981 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
9983 + const-string v3, "accountsSetting"
9985 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
9987 + move-result v4
9989 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
9991 + move-result-object v4
9993 + move-object/from16 v0, v23
9995 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
9997 + const-string v3, "accountsAuthTokensSetting"
9999 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
10001 + move-result v4
10003 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10005 + move-result-object v4
10007 + move-object/from16 v0, v23
10009 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10011 + const-string/jumbo v3, "outgoingCallsSetting"
10013 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
10015 + move-result v4
10017 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10019 + move-result-object v4
10021 + move-object/from16 v0, v23
10023 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10025 + const-string v3, "incomingCallsSetting"
10027 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
10029 + move-result v4
10031 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10033 + move-result-object v4
10035 + move-object/from16 v0, v23
10037 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10039 + const-string v3, "contactsSetting"
10041 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
10043 + move-result v4
10045 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10047 + move-result-object v4
10049 + move-object/from16 v0, v23
10051 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10053 + const-string v3, "calendarSetting"
10055 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
10057 + move-result v4
10059 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10061 + move-result-object v4
10063 + move-object/from16 v0, v23
10065 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10067 + const-string/jumbo v3, "mmsSetting"
10069 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
10071 + move-result v4
10073 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10075 + move-result-object v4
10077 + move-object/from16 v0, v23
10079 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10081 + const-string/jumbo v3, "smsSetting"
10083 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
10085 + move-result v4
10087 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10089 + move-result-object v4
10091 + move-object/from16 v0, v23
10093 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10095 + const-string v3, "callLogSetting"
10097 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
10099 + move-result v4
10101 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10103 + move-result-object v4
10105 + move-object/from16 v0, v23
10107 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10109 + const-string v3, "bookmarksSetting"
10111 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
10113 + move-result v4
10115 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10117 + move-result-object v4
10119 + move-object/from16 v0, v23
10121 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10123 + const-string/jumbo v3, "systemLogsSetting"
10125 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10127 + move-result v4
10129 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10131 + move-result-object v4
10133 + move-object/from16 v0, v23
10135 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10137 + const-string/jumbo v3, "notificationSetting"
10139 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
10141 + move-result v4
10143 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10145 + move-result-object v4
10147 + move-object/from16 v0, v23
10149 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10151 + const-string v3, "intentBootCompletedSetting"
10153 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
10155 + move-result v4
10157 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10159 + move-result-object v4
10161 + move-object/from16 v0, v23
10163 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10165 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10167 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10169 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10171 + move-result v3
10173 + add-int/lit8 v3, v3, 0x1
10175 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10177 + move-result-object v3
10179 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10181 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10183 + move-result-object v2
10185 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
10186 + :try_end_1eb
10187 + .catchall {:try_start_1a .. :try_end_1eb} :catchall_2c2
10189 + const/4 v11, 0x0
10191 + :try_start_1ec
10192 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
10194 + move-result-object v15
10196 + if-eqz v15, :cond_2c8
10198 + const-string/jumbo v3, "settings"
10200 + const-string v4, "_id=?"
10202 + const/4 v5, 0x1
10204 + new-array v5, v5, [Ljava/lang/String;
10206 + const/4 v6, 0x0
10208 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10210 + move-result-object v7
10212 + aput-object v7, v5, v6
10214 + move-object/from16 v0, v23
10216 + 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
10218 + move-result v3
10220 + const/4 v4, 0x1
10222 + if-ge v3, v4, :cond_249
10224 + new-instance v3, Ljava/lang/Exception;
10226 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10228 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10230 + throw v3
10231 + :try_end_213
10232 + .catchall {:try_start_1ec .. :try_end_213} :catchall_291
10233 + .catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_213} :catch_213
10235 + :catch_213
10236 + move-exception v13
10238 + const/16 v18, 0x0
10240 + :try_start_216
10241 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10243 + if-eqz v11, :cond_21e
10245 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10247 + :cond_21e
10248 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10250 + monitor-enter v4
10251 + :try_end_221
10252 + .catchall {:try_start_216 .. :try_end_221} :catchall_2c2
10254 + :try_start_221
10255 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10257 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10259 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10261 + move-result v3
10263 + add-int/lit8 v3, v3, -0x1
10265 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10267 + move-result-object v3
10269 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10271 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10273 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10275 + move-result v3
10277 + if-nez v3, :cond_244
10279 + if-eqz v2, :cond_244
10281 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10283 + move-result v3
10285 + if-eqz v3, :cond_244
10287 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10289 + :cond_244
10290 + monitor-exit v4
10291 + :try_end_245
10292 + .catchall {:try_start_221 .. :try_end_245} :catchall_4ca
10294 + :goto_245
10295 + move/from16 v3, v18
10297 + goto/16 :goto_18
10299 + :cond_249
10300 + :try_start_249
10301 + const-string v3, "allowed_contacts"
10303 + const-string/jumbo v4, "settings_id=?"
10305 + const/4 v5, 0x1
10307 + new-array v5, v5, [Ljava/lang/String;
10309 + const/4 v6, 0x0
10311 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10313 + move-result-object v7
10315 + aput-object v7, v5, v6
10317 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10319 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10321 + move-result-object v10
10323 + if-eqz v10, :cond_3f2
10325 + new-instance v12, Landroid/content/ContentValues;
10327 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10329 + const/4 v14, 0x0
10331 + :goto_267
10332 + array-length v3, v10
10334 + if-ge v14, v3, :cond_3f2
10336 + const-string/jumbo v3, "settings_id"
10338 + invoke-virtual {v12, v3, v15}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10340 + const-string v3, "contact_id"
10342 + aget v4, v10, v14
10344 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10346 + move-result-object v4
10348 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10350 + const-string v3, "allowed_contacts"
10352 + const/4 v4, 0x0
10354 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10356 + move-result-wide v3
10358 + const-wide/16 v5, -0x1
10360 + cmp-long v3, v3, v5
10362 + if-nez v3, :cond_2c5
10364 + new-instance v3, Ljava/lang/Exception;
10366 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10368 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10370 + throw v3
10371 + :try_end_291
10372 + .catchall {:try_start_249 .. :try_end_291} :catchall_291
10373 + .catch Ljava/lang/Exception; {:try_start_249 .. :try_end_291} :catch_213
10375 + :catchall_291
10376 + move-exception v3
10378 + :try_start_292
10379 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10381 + if-eqz v11, :cond_29a
10383 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10385 + :cond_29a
10386 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10388 + monitor-enter v4
10389 + :try_end_29d
10390 + .catchall {:try_start_292 .. :try_end_29d} :catchall_2c2
10392 + :try_start_29d
10393 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10395 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10397 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10399 + move-result v5
10401 + add-int/lit8 v5, v5, -0x1
10403 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10405 + move-result-object v5
10407 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10409 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10411 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10413 + move-result v5
10415 + if-nez v5, :cond_2c0
10417 + if-eqz v2, :cond_2c0
10419 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10421 + move-result v5
10423 + if-eqz v5, :cond_2c0
10425 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10427 + :cond_2c0
10428 + monitor-exit v4
10429 + :try_end_2c1
10430 + .catchall {:try_start_29d .. :try_end_2c1} :catchall_4cd
10432 + :try_start_2c1
10433 + throw v3
10434 + :try_end_2c2
10435 + .catchall {:try_start_2c1 .. :try_end_2c2} :catchall_2c2
10437 + :catchall_2c2
10438 + move-exception v3
10440 + monitor-exit p0
10442 + throw v3
10444 + :cond_2c5
10445 + add-int/lit8 v14, v14, 0x1
10447 + goto :goto_267
10449 + :cond_2c8
10450 + :try_start_2c8
10451 + const-string/jumbo v3, "settings"
10453 + const/4 v4, 0x1
10455 + new-array v4, v4, [Ljava/lang/String;
10457 + const/4 v5, 0x0
10459 + const-string v6, "_id"
10461 + aput-object v6, v4, v5
10463 + const-string/jumbo v5, "packageName=?"
10465 + const/4 v6, 0x1
10467 + new-array v6, v6, [Ljava/lang/String;
10469 + const/4 v7, 0x0
10471 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10473 + move-result-object v8
10475 + aput-object v8, v6, v7
10477 + const/4 v7, 0x0
10479 + const/4 v8, 0x0
10481 + const/4 v9, 0x0
10483 + 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;
10485 + move-result-object v11
10487 + if-eqz v11, :cond_3e7
10489 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10491 + move-result v3
10493 + const/4 v4, 0x1
10495 + if-ne v3, v4, :cond_36e
10497 + const-string/jumbo v3, "settings"
10499 + const-string/jumbo v4, "packageName=?"
10501 + const/4 v5, 0x1
10503 + new-array v5, v5, [Ljava/lang/String;
10505 + const/4 v6, 0x0
10507 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10509 + move-result-object v7
10511 + aput-object v7, v5, v6
10513 + move-object/from16 v0, v23
10515 + 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
10517 + move-result v3
10519 + const/4 v4, 0x1
10521 + if-ge v3, v4, :cond_312
10523 + new-instance v3, Ljava/lang/Exception;
10525 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10527 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10529 + throw v3
10531 + :cond_312
10532 + invoke-interface {v11}, Landroid/database/Cursor;->moveToFirst()Z
10534 + move-result v3
10536 + if-eqz v3, :cond_3f2
10538 + const/4 v3, 0x0
10540 + invoke-interface {v11, v3}, Landroid/database/Cursor;->getInt(I)I
10542 + move-result v3
10544 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10546 + move-result-object v16
10548 + const-string v3, "allowed_contacts"
10550 + const-string/jumbo v4, "settings_id=?"
10552 + const/4 v5, 0x1
10554 + new-array v5, v5, [Ljava/lang/String;
10556 + const/4 v6, 0x0
10558 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10560 + move-result-object v7
10562 + aput-object v7, v5, v6
10564 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10566 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10568 + move-result-object v10
10570 + if-eqz v10, :cond_3f2
10572 + new-instance v12, Landroid/content/ContentValues;
10574 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10576 + const/4 v14, 0x0
10578 + :goto_33f
10579 + array-length v3, v10
10581 + if-ge v14, v3, :cond_3f2
10583 + const-string/jumbo v3, "settings_id"
10585 + move-object/from16 v0, v16
10587 + invoke-virtual {v12, v3, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10589 + const-string v3, "contact_id"
10591 + aget v4, v10, v14
10593 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10595 + move-result-object v4
10597 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10599 + const-string v3, "allowed_contacts"
10601 + const/4 v4, 0x0
10603 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10605 + move-result-wide v3
10607 + const-wide/16 v5, -0x1
10609 + cmp-long v3, v3, v5
10611 + if-nez v3, :cond_36b
10613 + new-instance v3, Ljava/lang/Exception;
10615 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10617 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10619 + throw v3
10621 + :cond_36b
10622 + add-int/lit8 v14, v14, 0x1
10624 + goto :goto_33f
10626 + :cond_36e
10627 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10629 + move-result v3
10631 + if-nez v3, :cond_3dc
10633 + const-string/jumbo v3, "settings"
10635 + const/4 v4, 0x0
10637 + move-object/from16 v0, v23
10639 + invoke-virtual {v2, v3, v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10641 + move-result-wide v19
10643 + const-wide/16 v3, -0x1
10645 + cmp-long v3, v19, v3
10647 + if-nez v3, :cond_38d
10649 + new-instance v3, Ljava/lang/Exception;
10651 + const-string/jumbo v4, "saveSettings - failed to insert new record into DB"
10653 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10655 + throw v3
10657 + :cond_38d
10658 + const-string v3, "allowed_contacts"
10660 + const-string/jumbo v4, "settings_id=?"
10662 + const/4 v5, 0x1
10664 + new-array v5, v5, [Ljava/lang/String;
10666 + const/4 v6, 0x0
10668 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
10670 + move-result-object v7
10672 + aput-object v7, v5, v6
10674 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10676 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10678 + move-result-object v10
10680 + if-eqz v10, :cond_3f2
10682 + new-instance v12, Landroid/content/ContentValues;
10684 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10686 + const/4 v14, 0x0
10688 + :goto_3ab
10689 + array-length v3, v10
10691 + if-ge v14, v3, :cond_3f2
10693 + const-string/jumbo v3, "settings_id"
10695 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
10697 + move-result-object v4
10699 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
10701 + const-string v3, "contact_id"
10703 + aget v4, v10, v14
10705 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10707 + move-result-object v4
10709 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10711 + const-string v3, "allowed_contacts"
10713 + const/4 v4, 0x0
10715 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10717 + move-result-wide v3
10719 + const-wide/16 v5, -0x1
10721 + cmp-long v3, v3, v5
10723 + if-nez v3, :cond_3d9
10725 + new-instance v3, Ljava/lang/Exception;
10727 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10729 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10731 + throw v3
10733 + :cond_3d9
10734 + add-int/lit8 v14, v14, 0x1
10736 + goto :goto_3ab
10738 + :cond_3dc
10739 + const/16 v18, 0x0
10741 + new-instance v3, Ljava/lang/Exception;
10743 + const-string/jumbo v4, "saveSettings - duplicate entries in the privacy.db"
10745 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10747 + throw v3
10749 + :cond_3e7
10750 + const/16 v18, 0x0
10752 + new-instance v3, Ljava/lang/Exception;
10754 + const-string/jumbo v4, "saveSettings - cursor is null, database access failed"
10756 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10758 + throw v3
10760 + :cond_3f2
10761 + new-instance v21, Ljava/io/File;
10763 + new-instance v3, Ljava/lang/StringBuilder;
10765 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10767 + const-string v4, "/data/system/privacy/"
10769 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10771 + move-result-object v3
10773 + move-object/from16 v0, v17
10775 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10777 + move-result-object v3
10779 + const-string v4, "/"
10781 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10783 + move-result-object v3
10785 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10787 + move-result-object v3
10789 + move-object/from16 v0, v21
10791 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10793 + new-instance v22, Ljava/io/File;
10795 + new-instance v3, Ljava/lang/StringBuilder;
10797 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10799 + const-string v4, "/data/system/privacy/"
10801 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10803 + move-result-object v3
10805 + move-object/from16 v0, v17
10807 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10809 + move-result-object v3
10811 + const-string v4, "/"
10813 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10815 + move-result-object v3
10817 + const-string v4, "/systemLogsSetting"
10819 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10821 + move-result-object v3
10823 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10825 + move-result-object v3
10827 + move-object/from16 v0, v22
10829 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10830 + :try_end_43c
10831 + .catchall {:try_start_2c8 .. :try_end_43c} :catchall_291
10832 + .catch Ljava/lang/Exception; {:try_start_2c8 .. :try_end_43c} :catch_213
10834 + :try_start_43c
10835 + invoke-virtual/range {v21 .. v21}, Ljava/io/File;->mkdirs()Z
10837 + const/4 v3, 0x1
10839 + const/4 v4, 0x0
10841 + move-object/from16 v0, v21
10843 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10845 + const/4 v3, 0x1
10847 + const/4 v4, 0x0
10849 + move-object/from16 v0, v21
10851 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setExecutable(ZZ)Z
10853 + invoke-virtual/range {v22 .. v22}, Ljava/io/File;->createNewFile()Z
10855 + const/4 v3, 0x1
10857 + const/4 v4, 0x0
10859 + move-object/from16 v0, v22
10861 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
10863 + new-instance v24, Ljava/io/OutputStreamWriter;
10865 + new-instance v3, Ljava/io/FileOutputStream;
10867 + move-object/from16 v0, v22
10869 + invoke-direct {v3, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
10871 + move-object/from16 v0, v24
10873 + invoke-direct {v0, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
10875 + new-instance v3, Ljava/lang/StringBuilder;
10877 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
10879 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10881 + move-result v4
10883 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
10885 + move-result-object v3
10887 + const-string v4, ""
10889 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
10891 + move-result-object v3
10893 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
10895 + move-result-object v3
10897 + move-object/from16 v0, v24
10899 + invoke-virtual {v0, v3}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
10901 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->flush()V
10903 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->close()V
10904 + :try_end_487
10905 + .catchall {:try_start_43c .. :try_end_487} :catchall_291
10906 + .catch Ljava/io/IOException; {:try_start_43c .. :try_end_487} :catch_4be
10907 + .catch Ljava/lang/Exception; {:try_start_43c .. :try_end_487} :catch_213
10909 + :try_start_487
10910 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
10911 + :try_end_48a
10912 + .catchall {:try_start_487 .. :try_end_48a} :catchall_291
10913 + .catch Ljava/lang/Exception; {:try_start_487 .. :try_end_48a} :catch_213
10915 + :try_start_48a
10916 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10918 + if-eqz v11, :cond_492
10920 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10922 + :cond_492
10923 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10925 + monitor-enter v4
10926 + :try_end_495
10927 + .catchall {:try_start_48a .. :try_end_495} :catchall_2c2
10929 + :try_start_495
10930 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10932 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10934 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10936 + move-result v3
10938 + add-int/lit8 v3, v3, -0x1
10940 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10942 + move-result-object v3
10944 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10946 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10948 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10950 + move-result v3
10952 + if-nez v3, :cond_4b8
10954 + if-eqz v2, :cond_4b8
10956 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10958 + move-result v3
10960 + if-eqz v3, :cond_4b8
10962 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10964 + :cond_4b8
10965 + monitor-exit v4
10967 + goto/16 :goto_245
10969 + :catchall_4bb
10970 + move-exception v3
10972 + monitor-exit v4
10973 + :try_end_4bd
10974 + .catchall {:try_start_495 .. :try_end_4bd} :catchall_4bb
10976 + :try_start_4bd
10977 + throw v3
10978 + :try_end_4be
10979 + .catchall {:try_start_4bd .. :try_end_4be} :catchall_2c2
10981 + :catch_4be
10982 + move-exception v13
10984 + const/16 v18, 0x0
10986 + :try_start_4c1
10987 + new-instance v3, Ljava/lang/Exception;
10989 + const-string/jumbo v4, "saveSettings - could not write settings to file"
10991 + invoke-direct {v3, v4, v13}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
10993 + throw v3
10994 + :try_end_4ca
10995 + .catchall {:try_start_4c1 .. :try_end_4ca} :catchall_291
10996 + .catch Ljava/lang/Exception; {:try_start_4c1 .. :try_end_4ca} :catch_213
10998 + :catchall_4ca
10999 + move-exception v3
11001 + :try_start_4cb
11002 + monitor-exit v4
11003 + :try_end_4cc
11004 + .catchall {:try_start_4cb .. :try_end_4cc} :catchall_4ca
11006 + :try_start_4cc
11007 + throw v3
11008 + :try_end_4cd
11009 + .catchall {:try_start_4cc .. :try_end_4cd} :catchall_2c2
11011 + :catchall_4cd
11012 + move-exception v3
11014 + :try_start_4ce
11015 + monitor-exit v4
11016 + :try_end_4cf
11017 + .catchall {:try_start_4ce .. :try_end_4cf} :catchall_4cd
11019 + :try_start_4cf
11020 + throw v3
11021 + :try_end_4d0
11022 + .catchall {:try_start_4cf .. :try_end_4d0} :catchall_2c2
11023 +.end method
11025 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
11026 + .registers 10
11028 + monitor-enter p0
11030 + :try_start_1
11031 + const-string v3, "PrivacyPersistenceAdapter"
11033 + new-instance v4, Ljava/lang/StringBuilder;
11035 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11037 + const-string/jumbo v5, "setValue - name "
11039 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11041 + move-result-object v4
11043 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11045 + move-result-object v4
11047 + const-string v5, " value "
11049 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11051 + move-result-object v4
11053 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11055 + move-result-object v4
11057 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11059 + move-result-object v4
11061 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11063 + new-instance v2, Landroid/content/ContentValues;
11065 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
11067 + const-string/jumbo v3, "name"
11069 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11071 + const-string/jumbo v3, "value"
11073 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11075 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11077 + move-result-object v0
11079 + const-string/jumbo v3, "map"
11081 + const/4 v4, 0x0
11083 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11085 + move-result-wide v3
11087 + const-wide/16 v5, -0x1
11089 + cmp-long v3, v3, v5
11091 + if-eqz v3, :cond_5d
11093 + const/4 v1, 0x1
11095 + :goto_48
11096 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11098 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11100 + move-result v3
11102 + if-nez v3, :cond_5b
11104 + if-eqz v0, :cond_5b
11106 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11108 + move-result v3
11110 + if-eqz v3, :cond_5b
11112 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11113 + :try_end_5b
11114 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
11116 + :cond_5b
11117 + monitor-exit p0
11119 + return v1
11121 + :cond_5d
11122 + const/4 v1, 0x0
11124 + goto :goto_48
11126 + :catchall_5f
11127 + move-exception v3
11129 + monitor-exit p0
11131 + throw v3
11132 +.end method
11133 diff -Npru stock-framework/smali/android/privacy/PrivacySettings$1.smali pdroid-framework/smali/android/privacy/PrivacySettings$1.smali
11134 --- stock-framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 18:00:00.000000000 -0600
11135 +++ pdroid-framework/smali/android/privacy/PrivacySettings$1.smali 2012-05-10 15:14:35.574467168 -0500
11136 @@ -0,0 +1,77 @@
11137 +.class final Landroid/privacy/PrivacySettings$1;
11138 +.super Ljava/lang/Object;
11139 +.source "PrivacySettings.java"
11141 +# interfaces
11142 +.implements Landroid/os/Parcelable$Creator;
11145 +# annotations
11146 +.annotation system Ldalvik/annotation/EnclosingClass;
11147 + value = Landroid/privacy/PrivacySettings;
11148 +.end annotation
11150 +.annotation system Ldalvik/annotation/InnerClass;
11151 + accessFlags = 0x8
11152 + name = null
11153 +.end annotation
11155 +.annotation system Ldalvik/annotation/Signature;
11156 + value = {
11157 + "Ljava/lang/Object;",
11158 + "Landroid/os/Parcelable$Creator",
11159 + "<",
11160 + "Landroid/privacy/PrivacySettings;",
11161 + ">;"
11163 +.end annotation
11166 +# direct methods
11167 +.method constructor <init>()V
11168 + .registers 1
11170 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11172 + return-void
11173 +.end method
11176 +# virtual methods
11177 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11178 + .registers 3
11180 + new-instance v0, Landroid/privacy/PrivacySettings;
11182 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
11184 + return-object v0
11185 +.end method
11187 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
11188 + .registers 3
11190 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11192 + move-result-object v0
11194 + return-object v0
11195 +.end method
11197 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
11198 + .registers 3
11200 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
11202 + return-object v0
11203 +.end method
11205 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
11206 + .registers 3
11208 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
11210 + move-result-object v0
11212 + return-object v0
11213 +.end method
11214 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali
11215 --- stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 18:00:00.000000000 -0600
11216 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-05-10 15:14:35.586467227 -0500
11217 @@ -0,0 +1,535 @@
11218 +.class public final Landroid/privacy/PrivacySettingsManagerService;
11219 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
11220 +.source "PrivacySettingsManagerService.java"
11223 +# static fields
11224 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
11226 +.field private static final VERSION:D = 1.32
11228 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
11230 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
11233 +# instance fields
11234 +.field private bootCompleted:Z
11236 +.field private context:Landroid/content/Context;
11238 +.field private enabled:Z
11240 +.field private notificationsEnabled:Z
11242 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11245 +# direct methods
11246 +.method public constructor <init>(Landroid/content/Context;)V
11247 + .registers 5
11249 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
11251 + const-string v0, "PrivacySettingsManagerService"
11253 + new-instance v1, Ljava/lang/StringBuilder;
11255 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11257 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
11259 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11261 + move-result-object v1
11263 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11265 + move-result-object v2
11267 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11269 + move-result-object v1
11271 + const-string v2, " UID: "
11273 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11275 + move-result-object v1
11277 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11279 + move-result v2
11281 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11283 + move-result-object v1
11285 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11287 + move-result-object v1
11289 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11291 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11293 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
11295 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
11297 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11299 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11301 + const-string v1, "/data/system/privacy"
11303 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11305 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11307 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11309 + const-string v1, "enabled"
11311 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11313 + move-result-object v0
11315 + const-string v1, "1"
11317 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11319 + move-result v0
11321 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11323 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11325 + const-string/jumbo v1, "notifications_enabled"
11327 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11329 + move-result-object v0
11331 + const-string v1, "1"
11333 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11335 + move-result v0
11337 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11339 + const/4 v0, 0x0
11341 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11343 + return-void
11344 +.end method
11347 +# virtual methods
11348 +.method public addObserver(Ljava/lang/String;)V
11349 + .registers 5
11351 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11353 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11355 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11357 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11359 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11361 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11363 + return-void
11364 +.end method
11366 +.method public deleteSettings(Ljava/lang/String;)Z
11367 + .registers 8
11369 + const/4 v5, 0x1
11371 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11373 + move-result v2
11375 + const/16 v3, 0x3e8
11377 + if-eq v2, v3, :cond_12
11379 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11381 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
11383 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
11385 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11387 + :cond_12
11388 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11390 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
11392 + move-result v1
11394 + new-instance v2, Ljava/lang/StringBuilder;
11396 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11398 + const-string v3, "/data/system/privacy/"
11400 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11402 + move-result-object v2
11404 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11406 + move-result-object v2
11408 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11410 + move-result-object v0
11412 + new-instance v2, Ljava/io/File;
11414 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11416 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
11418 + move-result v2
11420 + if-eqz v2, :cond_3e
11422 + if-ne v1, v5, :cond_3e
11424 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11426 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11428 + :cond_3d
11429 + :goto_3d
11430 + return v1
11432 + :cond_3e
11433 + if-ne v1, v5, :cond_3d
11435 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11437 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
11439 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
11441 + goto :goto_3d
11442 +.end method
11444 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11445 + .registers 4
11447 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11449 + if-nez v0, :cond_12
11451 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11453 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11455 + move-result-object v0
11457 + const-string v1, "com.privacy.pdroid"
11459 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11461 + move-result v0
11463 + if-eqz v0, :cond_1a
11465 + :cond_12
11466 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11468 + const/4 v1, 0x0
11470 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
11472 + move-result-object v0
11474 + :goto_19
11475 + return-object v0
11477 + :cond_1a
11478 + const/4 v0, 0x0
11480 + goto :goto_19
11481 +.end method
11483 +.method public getVersion()D
11484 + .registers 3
11486 + const-wide v0, 0x3ff51eb851eb851fL
11488 + return-wide v0
11489 +.end method
11491 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11492 + .registers 8
11494 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11496 + if-eqz v1, :cond_34
11498 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11500 + if-eqz v1, :cond_34
11502 + new-instance v0, Landroid/content/Intent;
11504 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
11506 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11508 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
11510 + const-string/jumbo v1, "packageName"
11512 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11514 + const-string/jumbo v1, "uid"
11516 + const/4 v2, -0x1
11518 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
11520 + const-string v1, "accessMode"
11522 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
11524 + const-string v1, "dataType"
11526 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11528 + const-string/jumbo v1, "output"
11530 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11532 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11534 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
11536 + :cond_34
11537 + return-void
11538 +.end method
11540 +.method public purgeSettings()Z
11541 + .registers 2
11543 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11545 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11547 + move-result v0
11549 + return v0
11550 +.end method
11552 +.method public registerObservers()V
11553 + .registers 4
11555 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11557 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11559 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11561 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11563 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11565 + const-string v1, "/data/system/privacy"
11567 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11569 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11571 + return-void
11572 +.end method
11574 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
11575 + .registers 6
11577 + const-string v1, "PrivacySettingsManagerService"
11579 + new-instance v2, Ljava/lang/StringBuilder;
11581 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11583 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
11585 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11587 + move-result-object v2
11589 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11591 + move-result v3
11593 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11595 + move-result-object v2
11597 + const-string v3, ") has sufficient permissions"
11599 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11601 + move-result-object v2
11603 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11605 + move-result-object v2
11607 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11609 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11611 + move-result v1
11613 + const/16 v2, 0x3e8
11615 + if-eq v1, v2, :cond_34
11617 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11619 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
11621 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
11623 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11625 + :cond_34
11626 + const-string v1, "PrivacySettingsManagerService"
11628 + new-instance v2, Ljava/lang/StringBuilder;
11630 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11632 + const-string/jumbo v3, "saveSettings - "
11634 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11636 + move-result-object v2
11638 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11640 + move-result-object v2
11642 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11644 + move-result-object v2
11646 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
11648 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11650 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
11652 + move-result v0
11654 + const/4 v1, 0x1
11656 + if-ne v0, v1, :cond_5f
11658 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11660 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
11662 + move-result-object v2
11664 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11666 + :cond_5f
11667 + return v0
11668 +.end method
11670 +.method public setBootCompleted()V
11671 + .registers 2
11673 + const/4 v0, 0x1
11675 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11677 + return-void
11678 +.end method
11680 +.method public setEnabled(Z)Z
11681 + .registers 6
11683 + const/4 v1, 0x1
11685 + if-eqz p1, :cond_12
11687 + const-string v0, "1"
11689 + :goto_5
11690 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11692 + const-string v3, "enabled"
11694 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11696 + move-result v2
11698 + if-eqz v2, :cond_15
11700 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11702 + :goto_11
11703 + return v1
11705 + :cond_12
11706 + return v1
11707 + const-string v0, "0"
11709 + goto :goto_5
11711 + :cond_15
11712 + const/4 v1, 0x0
11714 + goto :goto_11
11715 +.end method
11717 +.method public setNotificationsEnabled(Z)Z
11718 + .registers 6
11720 + const/4 v1, 0x1
11722 + if-eqz p1, :cond_15
11724 + const-string v0, "1"
11726 + :goto_5
11727 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11729 + const-string/jumbo v3, "notifications_enabled"
11731 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
11733 + move-result v2
11735 + if-eqz v2, :cond_18
11737 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11739 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11741 + :goto_14
11742 + return v1
11744 + :cond_15
11745 + const-string v0, "0"
11747 + goto :goto_5
11749 + :cond_18
11750 + const/4 v1, 0x0
11752 + goto :goto_14
11753 +.end method
11754 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManager.smali pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali
11755 --- stock-framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
11756 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali 2012-05-10 15:14:35.582467204 -0500
11757 @@ -0,0 +1,531 @@
11758 +.class public final Landroid/privacy/PrivacySettingsManager;
11759 +.super Ljava/lang/Object;
11760 +.source "PrivacySettingsManager.java"
11763 +# static fields
11764 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11766 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
11769 +# instance fields
11770 +.field private service:Landroid/privacy/IPrivacySettingsManager;
11773 +# direct methods
11774 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
11775 + .registers 3
11777 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11779 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11781 + return-void
11782 +.end method
11785 +# virtual methods
11786 +.method public addObserver(Ljava/lang/String;)V
11787 + .registers 5
11789 + :try_start_0
11790 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11792 + if-eqz v1, :cond_a
11794 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11796 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
11798 + :goto_9
11799 + return-void
11801 + :cond_a
11802 + const-string v1, "PrivacySettingsManager"
11804 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
11806 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11807 + :try_end_11
11808 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
11810 + goto :goto_9
11812 + :catch_12
11813 + move-exception v0
11815 + const-string v1, "PrivacySettingsManager"
11817 + const-string v2, "RemoteException in addObserver: "
11819 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11821 + goto :goto_9
11822 +.end method
11824 +.method public deleteSettings(Ljava/lang/String;)Z
11825 + .registers 3
11827 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11829 + move-result v0
11831 + return v0
11832 +.end method
11834 +.method public deleteSettings(Ljava/lang/String;I)Z
11835 + .registers 7
11837 + const/4 v1, 0x0
11839 + :try_start_1
11840 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11842 + if-eqz v2, :cond_c
11844 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11846 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
11848 + move-result v1
11850 + :goto_b
11851 + return v1
11853 + :cond_c
11854 + const-string v2, "PrivacySettingsManager"
11856 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
11858 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11859 + :try_end_13
11860 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11862 + goto :goto_b
11864 + :catch_14
11865 + move-exception v0
11867 + const-string v2, "PrivacySettingsManager"
11869 + const-string v3, "RemoteException in deleteSettings: "
11871 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11873 + goto :goto_b
11874 +.end method
11876 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11877 + .registers 6
11879 + const/4 v1, 0x0
11881 + :try_start_1
11882 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11884 + if-eqz v2, :cond_c
11886 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11888 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11890 + move-result-object v1
11892 + :goto_b
11893 + return-object v1
11895 + :cond_c
11896 + const-string v2, "PrivacySettingsManager"
11898 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
11900 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11901 + :try_end_13
11902 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
11904 + goto :goto_b
11906 + :catch_14
11907 + move-exception v0
11909 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
11911 + goto :goto_b
11912 +.end method
11914 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
11915 + .registers 4
11917 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11919 + move-result-object v0
11921 + return-object v0
11922 +.end method
11924 +.method public getVersion()D
11925 + .registers 4
11927 + :try_start_0
11928 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11930 + if-eqz v1, :cond_b
11932 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11934 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
11936 + move-result-wide v1
11938 + :goto_a
11939 + return-wide v1
11941 + :cond_b
11942 + const-string v1, "PrivacySettingsManager"
11944 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
11946 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11947 + :try_end_12
11948 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
11950 + :goto_12
11951 + const-wide/16 v1, 0x0
11953 + goto :goto_a
11955 + :catch_15
11956 + move-exception v0
11958 + const-string v1, "PrivacySettingsManager"
11960 + const-string v2, "RemoteException in getVersion: "
11962 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11964 + goto :goto_12
11965 +.end method
11967 +.method public isServiceAvailable()Z
11968 + .registers 2
11970 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11972 + if-eqz v0, :cond_6
11974 + const/4 v0, 0x1
11976 + :goto_5
11977 + return v0
11979 + :cond_6
11980 + const/4 v0, 0x0
11982 + goto :goto_5
11983 +.end method
11985 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
11986 + .registers 9
11988 + :try_start_0
11989 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11991 + if-eqz v1, :cond_a
11993 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
11995 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11997 + :goto_9
11998 + return-void
12000 + :cond_a
12001 + const-string v1, "PrivacySettingsManager"
12003 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12005 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12006 + :try_end_11
12007 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12009 + goto :goto_9
12011 + :catch_12
12012 + move-exception v0
12014 + const-string v1, "PrivacySettingsManager"
12016 + const-string v2, "RemoteException in notification: "
12018 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12020 + goto :goto_9
12021 +.end method
12023 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12024 + .registers 13
12026 + move-object v0, p0
12028 + move-object v1, p1
12030 + move v2, p3
12032 + move-object v3, p4
12034 + move-object v4, p5
12036 + move-object v5, p6
12038 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12040 + return-void
12041 +.end method
12043 +.method public purgeSettings()Z
12044 + .registers 4
12046 + :try_start_0
12047 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12049 + if-eqz v1, :cond_b
12051 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12053 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
12055 + move-result v1
12057 + :goto_a
12058 + return v1
12060 + :cond_b
12061 + const-string v1, "PrivacySettingsManager"
12063 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12065 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12066 + :try_end_12
12067 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
12069 + :goto_12
12070 + const/4 v1, 0x0
12072 + goto :goto_a
12074 + :catch_14
12075 + move-exception v0
12077 + const-string v1, "PrivacySettingsManager"
12079 + const-string v2, "RemoteException in purgeSettings: "
12081 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12083 + goto :goto_12
12084 +.end method
12086 +.method public registerObservers()V
12087 + .registers 4
12089 + :try_start_0
12090 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12092 + if-eqz v1, :cond_a
12094 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12096 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
12098 + :goto_9
12099 + return-void
12101 + :cond_a
12102 + const-string v1, "PrivacySettingsManager"
12104 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12106 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12107 + :try_end_11
12108 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12110 + goto :goto_9
12112 + :catch_12
12113 + move-exception v0
12115 + const-string v1, "PrivacySettingsManager"
12117 + const-string v2, "RemoteException in registerObservers: "
12119 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12121 + goto :goto_9
12122 +.end method
12124 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
12125 + .registers 6
12127 + const/4 v1, 0x0
12129 + :try_start_1
12130 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12132 + if-eqz v2, :cond_c
12134 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12136 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12138 + move-result v1
12140 + :goto_b
12141 + return v1
12143 + :cond_c
12144 + const-string v2, "PrivacySettingsManager"
12146 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
12148 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12149 + :try_end_14
12150 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
12152 + goto :goto_b
12154 + :catch_15
12155 + move-exception v0
12157 + const-string v2, "PrivacySettingsManager"
12159 + const-string v3, "RemoteException in saveSettings: "
12161 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12163 + goto :goto_b
12164 +.end method
12166 +.method public setBootCompleted()V
12167 + .registers 4
12169 + :try_start_0
12170 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12172 + if-eqz v1, :cond_a
12174 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12176 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
12178 + :goto_9
12179 + return-void
12181 + :cond_a
12182 + const-string v1, "PrivacySettingsManager"
12184 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
12186 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12187 + :try_end_12
12188 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
12190 + goto :goto_9
12192 + :catch_13
12193 + move-exception v0
12195 + const-string v1, "PrivacySettingsManager"
12197 + const-string v2, "RemoteException in setBootCompleted: "
12199 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12201 + goto :goto_9
12202 +.end method
12204 +.method public setEnabled(Z)Z
12205 + .registers 5
12207 + :try_start_0
12208 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12210 + if-eqz v1, :cond_b
12212 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12214 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
12216 + move-result v1
12218 + :goto_a
12219 + return v1
12221 + :cond_b
12222 + const-string v1, "PrivacySettingsManager"
12224 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
12226 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12227 + :try_end_13
12228 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12230 + :goto_13
12231 + const/4 v1, 0x0
12233 + goto :goto_a
12235 + :catch_15
12236 + move-exception v0
12238 + const-string v1, "PrivacySettingsManager"
12240 + const-string v2, "RemoteException in setEnabled: "
12242 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12244 + goto :goto_13
12245 +.end method
12247 +.method public setNotificationsEnabled(Z)Z
12248 + .registers 5
12250 + :try_start_0
12251 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12253 + if-eqz v1, :cond_b
12255 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12257 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
12259 + move-result v1
12261 + :goto_a
12262 + return v1
12264 + :cond_b
12265 + const-string v1, "PrivacySettingsManager"
12267 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
12269 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12270 + :try_end_13
12271 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12273 + :goto_13
12274 + const/4 v1, 0x0
12276 + goto :goto_a
12278 + :catch_15
12279 + move-exception v0
12281 + const-string v1, "PrivacySettingsManager"
12283 + const-string v2, "RemoteException in setNotificationsEnabled: "
12285 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12287 + goto :goto_13
12288 +.end method
12289 diff -Npru stock-framework/smali/android/privacy/PrivacySettings.smali pdroid-framework/smali/android/privacy/PrivacySettings.smali
12290 --- stock-framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 18:00:00.000000000 -0600
12291 +++ pdroid-framework/smali/android/privacy/PrivacySettings.smali 2012-05-10 15:14:35.582467204 -0500
12292 @@ -0,0 +1,2109 @@
12293 +.class public final Landroid/privacy/PrivacySettings;
12294 +.super Ljava/lang/Object;
12295 +.source "PrivacySettings.java"
12297 +# interfaces
12298 +.implements Landroid/os/Parcelable;
12301 +# static fields
12302 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
12303 + .annotation system Ldalvik/annotation/Signature;
12304 + value = {
12305 + "Landroid/os/Parcelable$Creator",
12306 + "<",
12307 + "Landroid/privacy/PrivacySettings;",
12308 + ">;"
12310 + .end annotation
12311 +.end field
12313 +.field public static final CUSTOM:B = 0x2t
12315 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
12317 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
12319 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
12321 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
12323 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
12325 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
12327 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
12329 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
12331 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
12333 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
12335 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
12337 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
12339 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
12341 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
12343 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
12345 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
12347 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
12349 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
12351 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
12353 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
12355 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
12357 +.field public static final EMPTY:B = 0x1t
12359 +.field public static final RANDOM:B = 0x3t
12361 +.field public static final REAL:B = 0x0t
12363 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
12365 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
12368 +# instance fields
12369 +.field private final _id:Ljava/lang/Integer;
12371 +.field private accountsAuthTokensSetting:B
12373 +.field private accountsSetting:B
12375 +.field private allowedContacts:[I
12377 +.field private bookmarksSetting:B
12379 +.field private calendarSetting:B
12381 +.field private callLogSetting:B
12383 +.field private contactsSetting:B
12385 +.field private deviceId:Ljava/lang/String;
12387 +.field private deviceIdSetting:B
12389 +.field private incomingCallsSetting:B
12391 +.field private intentBootCompletedSetting:B
12393 +.field private line1Number:Ljava/lang/String;
12395 +.field private line1NumberSetting:B
12397 +.field private locationGpsLat:Ljava/lang/String;
12399 +.field private locationGpsLon:Ljava/lang/String;
12401 +.field private locationGpsSetting:B
12403 +.field private locationNetworkLat:Ljava/lang/String;
12405 +.field private locationNetworkLon:Ljava/lang/String;
12407 +.field private locationNetworkSetting:B
12409 +.field private mmsSetting:B
12411 +.field private networkInfoSetting:B
12413 +.field private notificationSetting:B
12415 +.field private outgoingCallsSetting:B
12417 +.field private packageName:Ljava/lang/String;
12419 +.field private simInfoSetting:B
12421 +.field private simSerialNumber:Ljava/lang/String;
12423 +.field private simSerialNumberSetting:B
12425 +.field private smsSetting:B
12427 +.field private subscriberId:Ljava/lang/String;
12429 +.field private subscriberIdSetting:B
12431 +.field private systemLogsSetting:B
12433 +.field private uid:I
12436 +# direct methods
12437 +.method static constructor <clinit>()V
12438 + .registers 1
12440 + new-instance v0, Landroid/privacy/PrivacySettings$1;
12442 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
12444 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
12446 + return-void
12447 +.end method
12449 +.method public constructor <init>(Landroid/os/Parcel;)V
12450 + .registers 4
12452 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12454 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12456 + move-result v0
12458 + const/4 v1, -0x1
12460 + if-ne v0, v1, :cond_ce
12462 + const/4 v1, 0x0
12464 + :goto_b
12465 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12467 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12469 + move-result-object v1
12471 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12473 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12475 + move-result v1
12477 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
12479 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12481 + move-result v1
12483 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12485 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12487 + move-result-object v1
12489 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12491 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12493 + move-result v1
12495 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12497 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12499 + move-result-object v1
12501 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12503 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12505 + move-result v1
12507 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12509 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12511 + move-result-object v1
12513 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12515 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12517 + move-result-object v1
12519 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12521 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12523 + move-result v1
12525 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12527 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12529 + move-result-object v1
12531 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12533 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12535 + move-result-object v1
12537 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12539 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12541 + move-result v1
12543 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12545 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12547 + move-result v1
12549 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12551 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12553 + move-result v1
12555 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12557 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12559 + move-result-object v1
12561 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12563 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12565 + move-result v1
12567 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12569 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12571 + move-result-object v1
12573 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12575 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12577 + move-result v1
12579 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12581 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12583 + move-result v1
12585 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12587 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12589 + move-result v1
12591 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12593 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12595 + move-result v1
12597 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12599 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12601 + move-result v1
12603 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12605 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12607 + move-result v1
12609 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12611 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12613 + move-result v1
12615 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12617 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12619 + move-result v1
12621 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12623 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12625 + move-result v1
12627 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12629 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12631 + move-result v1
12633 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12635 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12637 + move-result v1
12639 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12641 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12643 + move-result v1
12645 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12647 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12649 + move-result v1
12651 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12653 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
12655 + move-result-object v1
12657 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12659 + return-void
12661 + :cond_ce
12662 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12664 + move-result-object v1
12666 + goto/16 :goto_b
12667 +.end method
12669 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
12670 + .registers 6
12672 + const/4 v1, 0x0
12674 + const/4 v0, 0x0
12676 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12678 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12680 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12682 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12684 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12686 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12688 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12690 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12692 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12694 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12696 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12698 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12700 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12702 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12704 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12706 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12708 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12710 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12712 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12714 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12716 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12718 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12720 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12722 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12724 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12726 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12728 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12730 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12732 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12734 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12736 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12738 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12740 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12742 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12744 + return-void
12745 +.end method
12747 +.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
12748 + .registers 38
12750 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12752 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12754 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12756 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
12758 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12760 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12762 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12764 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12766 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12768 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12770 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12772 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12774 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12776 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12778 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12780 + move/from16 v0, p15
12782 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12784 + move/from16 v0, p16
12786 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12788 + move-object/from16 v0, p17
12790 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12792 + move/from16 v0, p18
12794 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12796 + move-object/from16 v0, p19
12798 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12800 + move/from16 v0, p20
12802 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12804 + move/from16 v0, p21
12806 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12808 + move/from16 v0, p22
12810 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
12812 + move/from16 v0, p23
12814 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
12816 + move/from16 v0, p24
12818 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
12820 + move/from16 v0, p25
12822 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
12824 + move/from16 v0, p26
12826 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
12828 + move/from16 v0, p27
12830 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
12832 + move/from16 v0, p28
12834 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
12836 + move/from16 v0, p29
12838 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
12840 + move/from16 v0, p30
12842 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
12844 + move/from16 v0, p34
12846 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
12848 + move/from16 v0, p35
12850 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
12852 + move-object/from16 v0, p36
12854 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
12856 + return-void
12857 +.end method
12859 +.method private getRandomLat()Ljava/lang/String;
12860 + .registers 10
12862 + const-wide v7, 0x4056800000000000L
12864 + invoke-static {}, Ljava/lang/Math;->random()D
12866 + move-result-wide v3
12868 + const-wide v5, 0x4066800000000000L
12870 + mul-double v0, v3, v5
12872 + cmpl-double v3, v0, v7
12874 + if-lez v3, :cond_35
12876 + new-instance v2, Ljava/math/BigDecimal;
12878 + sub-double v3, v0, v7
12880 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12882 + :goto_1b
12883 + new-instance v3, Ljava/lang/StringBuilder;
12885 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
12887 + const/4 v4, 0x6
12889 + const/4 v5, 0x4
12891 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
12893 + move-result-object v4
12895 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12897 + move-result-object v3
12899 + const-string v4, ""
12901 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12903 + move-result-object v3
12905 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12907 + move-result-object v3
12909 + return-object v3
12911 + :cond_35
12912 + new-instance v2, Ljava/math/BigDecimal;
12914 + neg-double v3, v0
12916 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12918 + goto :goto_1b
12919 +.end method
12921 +.method private getRandomLon()Ljava/lang/String;
12922 + .registers 10
12924 + const-wide v7, 0x4066800000000000L
12926 + invoke-static {}, Ljava/lang/Math;->random()D
12928 + move-result-wide v3
12930 + const-wide v5, 0x4076800000000000L
12932 + mul-double v0, v3, v5
12934 + cmpl-double v3, v0, v7
12936 + if-lez v3, :cond_35
12938 + new-instance v2, Ljava/math/BigDecimal;
12940 + sub-double v3, v0, v7
12942 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12944 + :goto_1b
12945 + new-instance v3, Ljava/lang/StringBuilder;
12947 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
12949 + const/4 v4, 0x6
12951 + const/4 v5, 0x4
12953 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
12955 + move-result-object v4
12957 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12959 + move-result-object v3
12961 + const-string v4, ""
12963 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12965 + move-result-object v3
12967 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12969 + move-result-object v3
12971 + return-object v3
12973 + :cond_35
12974 + new-instance v2, Ljava/math/BigDecimal;
12976 + neg-double v3, v0
12978 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
12980 + goto :goto_1b
12981 +.end method
12984 +# virtual methods
12985 +.method public describeContents()I
12986 + .registers 2
12988 + const/4 v0, 0x0
12990 + return v0
12991 +.end method
12993 +.method public getAccountsAuthTokensSetting()B
12994 + .registers 2
12996 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12998 + return v0
12999 +.end method
13001 +.method public getAccountsSetting()B
13002 + .registers 2
13004 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13006 + return v0
13007 +.end method
13009 +.method public getAllowedContacts()[I
13010 + .registers 2
13012 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13014 + return-object v0
13015 +.end method
13017 +.method public getBookmarksSetting()B
13018 + .registers 2
13020 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13022 + return v0
13023 +.end method
13025 +.method public getCalendarSetting()B
13026 + .registers 2
13028 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13030 + return v0
13031 +.end method
13033 +.method public getCallLogSetting()B
13034 + .registers 2
13036 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13038 + return v0
13039 +.end method
13041 +.method public getContactsSetting()B
13042 + .registers 2
13044 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13046 + return v0
13047 +.end method
13049 +.method public getDeviceId()Ljava/lang/String;
13050 + .registers 6
13052 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13054 + const/4 v3, 0x1
13056 + if-ne v2, v3, :cond_8
13058 + const-string v2, ""
13060 + :goto_7
13061 + return-object v2
13063 + :cond_8
13064 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13066 + const/4 v3, 0x3
13068 + if-ne v2, v3, :cond_35
13070 + new-instance v0, Ljava/util/Random;
13072 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13074 + new-instance v2, Ljava/lang/StringBuilder;
13076 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13078 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13080 + move-result-wide v3
13082 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13084 + move-result-wide v3
13086 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13088 + move-result-object v2
13090 + const-string v3, ""
13092 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13094 + move-result-object v2
13096 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13098 + move-result-object v1
13100 + const/4 v2, 0x0
13102 + const/16 v3, 0xf
13104 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13106 + move-result-object v2
13108 + goto :goto_7
13110 + :cond_35
13111 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13113 + goto :goto_7
13114 +.end method
13116 +.method public getDeviceIdSetting()B
13117 + .registers 2
13119 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13121 + return v0
13122 +.end method
13124 +.method public getIncomingCallsSetting()B
13125 + .registers 2
13127 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13129 + return v0
13130 +.end method
13132 +.method public getIntentBootCompletedSetting()B
13133 + .registers 2
13135 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13137 + return v0
13138 +.end method
13140 +.method public getLine1Number()Ljava/lang/String;
13141 + .registers 6
13143 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13145 + const/4 v3, 0x1
13147 + if-ne v2, v3, :cond_8
13149 + const-string v2, ""
13151 + :goto_7
13152 + return-object v2
13154 + :cond_8
13155 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13157 + const/4 v3, 0x3
13159 + if-ne v2, v3, :cond_3b
13161 + new-instance v0, Ljava/util/Random;
13163 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13165 + new-instance v2, Ljava/lang/StringBuilder;
13167 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13169 + const-string v3, "+"
13171 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13173 + move-result-object v2
13175 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13177 + move-result-wide v3
13179 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13181 + move-result-wide v3
13183 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13185 + move-result-object v2
13187 + const-string v3, ""
13189 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13191 + move-result-object v2
13193 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13195 + move-result-object v1
13197 + const/4 v2, 0x0
13199 + const/16 v3, 0xd
13201 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13203 + move-result-object v2
13205 + goto :goto_7
13207 + :cond_3b
13208 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13210 + goto :goto_7
13211 +.end method
13213 +.method public getLine1NumberSetting()B
13214 + .registers 2
13216 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13218 + return v0
13219 +.end method
13221 +.method public getLocationGpsLat()Ljava/lang/String;
13222 + .registers 3
13224 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13226 + const/4 v1, 0x1
13228 + if-ne v0, v1, :cond_8
13230 + const-string v0, ""
13232 + :goto_7
13233 + return-object v0
13235 + :cond_8
13236 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13238 + const/4 v1, 0x3
13240 + if-ne v0, v1, :cond_12
13242 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13244 + move-result-object v0
13246 + goto :goto_7
13248 + :cond_12
13249 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13251 + goto :goto_7
13252 +.end method
13254 +.method public getLocationGpsLon()Ljava/lang/String;
13255 + .registers 3
13257 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13259 + const/4 v1, 0x1
13261 + if-ne v0, v1, :cond_8
13263 + const-string v0, ""
13265 + :goto_7
13266 + return-object v0
13268 + :cond_8
13269 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13271 + const/4 v1, 0x3
13273 + if-ne v0, v1, :cond_12
13275 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13277 + move-result-object v0
13279 + goto :goto_7
13281 + :cond_12
13282 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13284 + goto :goto_7
13285 +.end method
13287 +.method public getLocationGpsSetting()B
13288 + .registers 2
13290 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13292 + return v0
13293 +.end method
13295 +.method public getLocationNetworkLat()Ljava/lang/String;
13296 + .registers 3
13298 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13300 + const/4 v1, 0x1
13302 + if-ne v0, v1, :cond_8
13304 + const-string v0, ""
13306 + :goto_7
13307 + return-object v0
13309 + :cond_8
13310 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13312 + const/4 v1, 0x3
13314 + if-ne v0, v1, :cond_12
13316 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13318 + move-result-object v0
13320 + goto :goto_7
13322 + :cond_12
13323 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13325 + goto :goto_7
13326 +.end method
13328 +.method public getLocationNetworkLon()Ljava/lang/String;
13329 + .registers 3
13331 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13333 + const/4 v1, 0x1
13335 + if-ne v0, v1, :cond_8
13337 + const-string v0, ""
13339 + :goto_7
13340 + return-object v0
13342 + :cond_8
13343 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13345 + const/4 v1, 0x3
13347 + if-ne v0, v1, :cond_12
13349 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13351 + move-result-object v0
13353 + goto :goto_7
13355 + :cond_12
13356 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13358 + goto :goto_7
13359 +.end method
13361 +.method public getLocationNetworkSetting()B
13362 + .registers 2
13364 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13366 + return v0
13367 +.end method
13369 +.method public getMmsSetting()B
13370 + .registers 2
13372 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13374 + return v0
13375 +.end method
13377 +.method public getNetworkInfoSetting()B
13378 + .registers 2
13380 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13382 + return v0
13383 +.end method
13385 +.method public getNotificationSetting()B
13386 + .registers 2
13388 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13390 + return v0
13391 +.end method
13393 +.method public getOutgoingCallsSetting()B
13394 + .registers 2
13396 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13398 + return v0
13399 +.end method
13401 +.method public getPackageName()Ljava/lang/String;
13402 + .registers 2
13404 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13406 + return-object v0
13407 +.end method
13409 +.method public getSimInfoSetting()B
13410 + .registers 2
13412 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13414 + return v0
13415 +.end method
13417 +.method public getSimSerialNumber()Ljava/lang/String;
13418 + .registers 5
13420 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13422 + const/4 v2, 0x1
13424 + if-ne v1, v2, :cond_8
13426 + const-string v1, ""
13428 + :goto_7
13429 + return-object v1
13431 + :cond_8
13432 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13434 + const/4 v2, 0x3
13436 + if-ne v1, v2, :cond_2e
13438 + new-instance v0, Ljava/util/Random;
13440 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13442 + new-instance v1, Ljava/lang/StringBuilder;
13444 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
13446 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13448 + move-result-wide v2
13450 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
13452 + move-result-wide v2
13454 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13456 + move-result-object v1
13458 + const-string v2, ""
13460 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13462 + move-result-object v1
13464 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13466 + move-result-object v1
13468 + goto :goto_7
13470 + :cond_2e
13471 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13473 + goto :goto_7
13474 +.end method
13476 +.method public getSimSerialNumberSetting()B
13477 + .registers 2
13479 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13481 + return v0
13482 +.end method
13484 +.method public getSmsSetting()B
13485 + .registers 2
13487 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13489 + return v0
13490 +.end method
13492 +.method public getSubscriberId()Ljava/lang/String;
13493 + .registers 6
13495 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13497 + const/4 v3, 0x1
13499 + if-ne v2, v3, :cond_8
13501 + const-string v2, ""
13503 + :goto_7
13504 + return-object v2
13506 + :cond_8
13507 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13509 + const/4 v3, 0x3
13511 + if-ne v2, v3, :cond_35
13513 + new-instance v0, Ljava/util/Random;
13515 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13517 + new-instance v2, Ljava/lang/StringBuilder;
13519 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13521 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13523 + move-result-wide v3
13525 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13527 + move-result-wide v3
13529 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13531 + move-result-object v2
13533 + const-string v3, ""
13535 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13537 + move-result-object v2
13539 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13541 + move-result-object v1
13543 + const/4 v2, 0x0
13545 + const/16 v3, 0xf
13547 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13549 + move-result-object v2
13551 + goto :goto_7
13553 + :cond_35
13554 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13556 + goto :goto_7
13557 +.end method
13559 +.method public getSubscriberIdSetting()B
13560 + .registers 2
13562 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13564 + return v0
13565 +.end method
13567 +.method public getSystemLogsSetting()B
13568 + .registers 2
13570 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13572 + return v0
13573 +.end method
13575 +.method public getUid()I
13576 + .registers 2
13578 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
13580 + return v0
13581 +.end method
13583 +.method public get_id()Ljava/lang/Integer;
13584 + .registers 2
13586 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13588 + return-object v0
13589 +.end method
13591 +.method public setAccountsAuthTokensSetting(B)V
13592 + .registers 2
13594 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13596 + return-void
13597 +.end method
13599 +.method public setAccountsSetting(B)V
13600 + .registers 2
13602 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13604 + return-void
13605 +.end method
13607 +.method public setAllowedContacts([I)V
13608 + .registers 2
13610 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13612 + return-void
13613 +.end method
13615 +.method public setBookmarksSetting(B)V
13616 + .registers 2
13618 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13620 + return-void
13621 +.end method
13623 +.method public setCalendarSetting(B)V
13624 + .registers 2
13626 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13628 + return-void
13629 +.end method
13631 +.method public setCallLogSetting(B)V
13632 + .registers 2
13634 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13636 + return-void
13637 +.end method
13639 +.method public setContactsSetting(B)V
13640 + .registers 2
13642 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13644 + return-void
13645 +.end method
13647 +.method public setDeviceId(Ljava/lang/String;)V
13648 + .registers 2
13650 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13652 + return-void
13653 +.end method
13655 +.method public setDeviceIdSetting(B)V
13656 + .registers 2
13658 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13660 + return-void
13661 +.end method
13663 +.method public setIncomingCallsSetting(B)V
13664 + .registers 2
13666 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13668 + return-void
13669 +.end method
13671 +.method public setIntentBootCompletedSetting(B)V
13672 + .registers 2
13674 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13676 + return-void
13677 +.end method
13679 +.method public setLine1Number(Ljava/lang/String;)V
13680 + .registers 2
13682 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13684 + return-void
13685 +.end method
13687 +.method public setLine1NumberSetting(B)V
13688 + .registers 2
13690 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13692 + return-void
13693 +.end method
13695 +.method public setLocationGpsLat(Ljava/lang/String;)V
13696 + .registers 2
13698 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13700 + return-void
13701 +.end method
13703 +.method public setLocationGpsLon(Ljava/lang/String;)V
13704 + .registers 2
13706 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13708 + return-void
13709 +.end method
13711 +.method public setLocationGpsSetting(B)V
13712 + .registers 2
13714 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13716 + return-void
13717 +.end method
13719 +.method public setLocationNetworkLat(Ljava/lang/String;)V
13720 + .registers 2
13722 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13724 + return-void
13725 +.end method
13727 +.method public setLocationNetworkLon(Ljava/lang/String;)V
13728 + .registers 2
13730 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13732 + return-void
13733 +.end method
13735 +.method public setLocationNetworkSetting(B)V
13736 + .registers 2
13738 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13740 + return-void
13741 +.end method
13743 +.method public setMmsSetting(B)V
13744 + .registers 2
13746 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13748 + return-void
13749 +.end method
13751 +.method public setNetworkInfoSetting(B)V
13752 + .registers 2
13754 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13756 + return-void
13757 +.end method
13759 +.method public setNotificationSetting(B)V
13760 + .registers 2
13762 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13764 + return-void
13765 +.end method
13767 +.method public setOutgoingCallsSetting(B)V
13768 + .registers 2
13770 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13772 + return-void
13773 +.end method
13775 +.method public setPackageName(Ljava/lang/String;)V
13776 + .registers 2
13778 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13780 + return-void
13781 +.end method
13783 +.method public setSimInfoSetting(B)V
13784 + .registers 2
13786 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13788 + return-void
13789 +.end method
13791 +.method public setSimSerialNumber(Ljava/lang/String;)V
13792 + .registers 2
13794 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13796 + return-void
13797 +.end method
13799 +.method public setSimSerialNumberSetting(B)V
13800 + .registers 2
13802 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13804 + return-void
13805 +.end method
13807 +.method public setSmsSetting(B)V
13808 + .registers 2
13810 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13812 + return-void
13813 +.end method
13815 +.method public setSubscriberId(Ljava/lang/String;)V
13816 + .registers 2
13818 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13820 + return-void
13821 +.end method
13823 +.method public setSubscriberIdSetting(B)V
13824 + .registers 2
13826 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13828 + return-void
13829 +.end method
13831 +.method public setSystemLogsSetting(B)V
13832 + .registers 2
13834 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13836 + return-void
13837 +.end method
13839 +.method public setUid(I)V
13840 + .registers 2
13842 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
13844 + return-void
13845 +.end method
13847 +.method public toString()Ljava/lang/String;
13848 + .registers 3
13850 + new-instance v0, Ljava/lang/StringBuilder;
13852 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
13854 + const-string v1, "PrivacySettings [_id="
13856 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13858 + move-result-object v0
13860 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13862 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13864 + move-result-object v0
13866 + const-string v1, ", accountsAuthTokensSetting="
13868 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13870 + move-result-object v0
13872 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13874 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13876 + move-result-object v0
13878 + const-string v1, ", accountsSetting="
13880 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13882 + move-result-object v0
13884 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13886 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13888 + move-result-object v0
13890 + const-string v1, ", bookmarksSetting="
13892 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13894 + move-result-object v0
13896 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13898 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13900 + move-result-object v0
13902 + const-string v1, ", calendarSetting="
13904 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13906 + move-result-object v0
13908 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13910 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13912 + move-result-object v0
13914 + const-string v1, ", callLogSetting="
13916 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13918 + move-result-object v0
13920 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13922 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13924 + move-result-object v0
13926 + const-string v1, ", contactsSetting="
13928 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13930 + move-result-object v0
13932 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13934 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13936 + move-result-object v0
13938 + const-string v1, ", deviceId="
13940 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13942 + move-result-object v0
13944 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13946 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13948 + move-result-object v0
13950 + const-string v1, ", deviceIdSetting="
13952 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13954 + move-result-object v0
13956 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13958 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13960 + move-result-object v0
13962 + const-string v1, ", incomingCallsSetting="
13964 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13966 + move-result-object v0
13968 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13970 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13972 + move-result-object v0
13974 + const-string v1, ", intentBootCompletedSetting="
13976 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13978 + move-result-object v0
13980 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13982 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
13984 + move-result-object v0
13986 + const-string v1, ", line1Number="
13988 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13990 + move-result-object v0
13992 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13994 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13996 + move-result-object v0
13998 + const-string v1, ", line1NumberSetting="
14000 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14002 + move-result-object v0
14004 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14006 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14008 + move-result-object v0
14010 + const-string v1, ", locationGpsLat="
14012 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14014 + move-result-object v0
14016 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14018 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14020 + move-result-object v0
14022 + const-string v1, ", locationGpsLon="
14024 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14026 + move-result-object v0
14028 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14030 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14032 + move-result-object v0
14034 + const-string v1, ", locationGpsSetting="
14036 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14038 + move-result-object v0
14040 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14042 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14044 + move-result-object v0
14046 + const-string v1, ", locationNetworkLat="
14048 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14050 + move-result-object v0
14052 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14054 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14056 + move-result-object v0
14058 + const-string v1, ", locationNetworkLon="
14060 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14062 + move-result-object v0
14064 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14066 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14068 + move-result-object v0
14070 + const-string v1, ", locationNetworkSetting="
14072 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14074 + move-result-object v0
14076 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14078 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14080 + move-result-object v0
14082 + const-string v1, ", mmsSetting="
14084 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14086 + move-result-object v0
14088 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14090 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14092 + move-result-object v0
14094 + const-string v1, ", networkInfoSetting="
14096 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14098 + move-result-object v0
14100 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14102 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14104 + move-result-object v0
14106 + const-string v1, ", notificationSetting="
14108 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14110 + move-result-object v0
14112 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14114 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14116 + move-result-object v0
14118 + const-string v1, ", outgoingCallsSetting="
14120 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14122 + move-result-object v0
14124 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14126 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14128 + move-result-object v0
14130 + const-string v1, ", packageName="
14132 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14134 + move-result-object v0
14136 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14138 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14140 + move-result-object v0
14142 + const-string v1, ", simInfoSetting="
14144 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14146 + move-result-object v0
14148 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14150 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14152 + move-result-object v0
14154 + const-string v1, ", simSerialNumber="
14156 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14158 + move-result-object v0
14160 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14162 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14164 + move-result-object v0
14166 + const-string v1, ", simSerialNumberSetting="
14168 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14170 + move-result-object v0
14172 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14174 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14176 + move-result-object v0
14178 + const-string v1, ", smsSetting="
14180 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14182 + move-result-object v0
14184 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14186 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14188 + move-result-object v0
14190 + const-string v1, ", subscriberId="
14192 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14194 + move-result-object v0
14196 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14198 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14200 + move-result-object v0
14202 + const-string v1, ", subscriberIdSetting="
14204 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14206 + move-result-object v0
14208 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14210 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14212 + move-result-object v0
14214 + const-string v1, ", systemLogsSetting="
14216 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14218 + move-result-object v0
14220 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14222 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14224 + move-result-object v0
14226 + const-string v1, ", uid="
14228 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14230 + move-result-object v0
14232 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
14234 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14236 + move-result-object v0
14238 + const-string v1, "]"
14240 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14242 + move-result-object v0
14244 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
14246 + move-result-object v0
14248 + return-object v0
14249 +.end method
14251 +.method public writeToParcel(Landroid/os/Parcel;I)V
14252 + .registers 4
14254 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14256 + if-nez v0, :cond_a9
14258 + const/4 v0, -0x1
14260 + :goto_5
14261 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14263 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14265 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14267 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
14269 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14271 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14273 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14275 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14277 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14279 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14281 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14283 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14285 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14287 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14289 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14291 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14293 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14295 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14297 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14299 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14301 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14303 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14305 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14307 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14309 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14311 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14313 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14315 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14317 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14319 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14321 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14323 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14325 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14327 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14329 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14331 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14333 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14335 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14337 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14339 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14341 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14343 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14345 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14347 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14349 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14351 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14353 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14355 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14357 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14359 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14361 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14363 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14365 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14367 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14369 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14371 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14373 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14375 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14377 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14379 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14381 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14383 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14385 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14387 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14389 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
14391 + return-void
14393 + :cond_a9
14394 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14396 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
14398 + move-result v0
14400 + goto/16 :goto_5
14401 +.end method
14402 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
14403 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 18:00:00.000000000 -0600
14404 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-05-10 15:14:35.586467227 -0500
14405 @@ -0,0 +1,129 @@
14406 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14407 +.super Ljava/lang/Object;
14408 +.source "PrivacyAccountManager.java"
14410 +# interfaces
14411 +.implements Landroid/accounts/AccountManagerFuture;
14414 +# annotations
14415 +.annotation system Ldalvik/annotation/EnclosingClass;
14416 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
14417 +.end annotation
14419 +.annotation system Ldalvik/annotation/InnerClass;
14420 + accessFlags = 0x2
14421 + name = "PrivacyAccountManagerFuture"
14422 +.end annotation
14424 +.annotation system Ldalvik/annotation/Signature;
14425 + value = {
14426 + "<V:",
14427 + "Ljava/lang/Object;",
14428 + ">",
14429 + "Ljava/lang/Object;",
14430 + "Landroid/accounts/AccountManagerFuture",
14431 + "<TV;>;"
14433 +.end annotation
14436 +# instance fields
14437 +.field private result:Ljava/lang/Object;
14438 + .annotation system Ldalvik/annotation/Signature;
14439 + value = {
14440 + "TV;"
14442 + .end annotation
14443 +.end field
14445 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14448 +# direct methods
14449 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14450 + .registers 3
14451 + .annotation system Ldalvik/annotation/Signature;
14452 + value = {
14453 + "(TV;)V"
14455 + .end annotation
14457 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14459 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
14461 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14463 + return-void
14464 +.end method
14467 +# virtual methods
14468 +.method public cancel(Z)Z
14469 + .registers 3
14471 + const/4 v0, 0x0
14473 + return v0
14474 +.end method
14476 +.method public getResult()Ljava/lang/Object;
14477 + .registers 2
14478 + .annotation system Ldalvik/annotation/Signature;
14479 + value = {
14480 + "()TV;"
14482 + .end annotation
14484 + .annotation system Ldalvik/annotation/Throws;
14485 + value = {
14486 + Landroid/accounts/OperationCanceledException;,
14487 + Ljava/io/IOException;,
14488 + Landroid/accounts/AuthenticatorException;
14490 + .end annotation
14492 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14494 + return-object v0
14495 +.end method
14497 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
14498 + .registers 5
14499 + .annotation system Ldalvik/annotation/Signature;
14500 + value = {
14501 + "(J",
14502 + "Ljava/util/concurrent/TimeUnit;",
14503 + ")TV;"
14505 + .end annotation
14507 + .annotation system Ldalvik/annotation/Throws;
14508 + value = {
14509 + Landroid/accounts/OperationCanceledException;,
14510 + Ljava/io/IOException;,
14511 + Landroid/accounts/AuthenticatorException;
14513 + .end annotation
14515 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14517 + return-object v0
14518 +.end method
14520 +.method public isCancelled()Z
14521 + .registers 2
14523 + const/4 v0, 0x0
14525 + return v0
14526 +.end method
14528 +.method public isDone()Z
14529 + .registers 2
14531 + const/4 v0, 0x1
14533 + return v0
14534 +.end method
14535 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
14536 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 18:00:00.000000000 -0600
14537 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-05-10 15:14:35.586467227 -0500
14538 @@ -0,0 +1,701 @@
14539 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
14540 +.super Landroid/accounts/AccountManager;
14541 +.source "PrivacyAccountManager.java"
14544 +# annotations
14545 +.annotation system Ldalvik/annotation/MemberClasses;
14546 + value = {
14547 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14549 +.end annotation
14552 +# static fields
14553 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
14556 +# instance fields
14557 +.field private context:Landroid/content/Context;
14559 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
14562 +# direct methods
14563 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14564 + .registers 5
14566 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14568 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14570 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14572 + const-string/jumbo v1, "privacy"
14574 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14576 + move-result-object v1
14578 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14580 + move-result-object v1
14582 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14584 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14586 + return-void
14587 +.end method
14589 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14590 + .registers 6
14592 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14594 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14596 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14598 + const-string/jumbo v1, "privacy"
14600 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14602 + move-result-object v1
14604 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14606 + move-result-object v1
14608 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14610 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14612 + return-void
14613 +.end method
14616 +# virtual methods
14617 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14618 + .registers 12
14619 + .annotation system Ldalvik/annotation/Throws;
14620 + value = {
14621 + Landroid/accounts/OperationCanceledException;,
14622 + Ljava/io/IOException;,
14623 + Landroid/accounts/AuthenticatorException;
14625 + .end annotation
14627 + const/4 v5, 0x0
14629 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14631 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14633 + move-result-object v1
14635 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14637 + move-result v2
14639 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14641 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14643 + move-result-object v6
14645 + if-eqz v6, :cond_23
14647 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
14649 + move-result v0
14651 + if-eqz v0, :cond_23
14653 + const/4 v7, 0x0
14655 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14657 + const/4 v3, 0x1
14659 + const-string v4, "authTokens"
14661 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14663 + :goto_22
14664 + return-object v7
14666 + :cond_23
14667 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
14669 + move-result-object v7
14671 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14673 + const/4 v3, 0x0
14675 + const-string v4, "authTokens"
14677 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14679 + goto :goto_22
14680 +.end method
14682 +.method public getAccounts()[Landroid/accounts/Account;
14683 + .registers 10
14685 + const/4 v5, 0x0
14687 + const/4 v3, 0x0
14689 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14691 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14693 + move-result-object v1
14695 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14697 + move-result v2
14699 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14701 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14703 + move-result-object v6
14705 + if-eqz v6, :cond_27
14707 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14709 + move-result v0
14711 + if-eqz v0, :cond_27
14713 + const-string v8, "[empty accounts list]"
14715 + new-array v7, v3, [Landroid/accounts/Account;
14717 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14719 + const/4 v3, 0x1
14721 + const-string v4, "accountsList"
14723 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14725 + :goto_26
14726 + return-object v7
14728 + :cond_27
14729 + const-string v8, "[real value]"
14731 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
14733 + move-result-object v7
14735 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14737 + const-string v4, "accountsList"
14739 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14741 + goto :goto_26
14742 +.end method
14744 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14745 + .registers 11
14747 + const/4 v5, 0x0
14749 + const/4 v3, 0x0
14751 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14753 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14755 + move-result-object v1
14757 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14759 + move-result v2
14761 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14763 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14765 + move-result-object v6
14767 + if-eqz v6, :cond_27
14769 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14771 + move-result v0
14773 + if-eqz v0, :cond_27
14775 + const-string v8, "[empty accounts list]"
14777 + new-array v7, v3, [Landroid/accounts/Account;
14779 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14781 + const/4 v3, 0x1
14783 + const-string v4, "accountsList"
14785 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14787 + :goto_26
14788 + return-object v7
14790 + :cond_27
14791 + const-string v8, "[real value]"
14793 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
14795 + move-result-object v7
14797 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14799 + const-string v4, "accountsList"
14801 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14803 + goto :goto_26
14804 +.end method
14806 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14807 + .registers 14
14808 + .annotation system Ldalvik/annotation/Signature;
14809 + value = {
14810 + "(",
14811 + "Ljava/lang/String;",
14812 + "[",
14813 + "Ljava/lang/String;",
14814 + "Landroid/accounts/AccountManagerCallback",
14815 + "<[",
14816 + "Landroid/accounts/Account;",
14817 + ">;",
14818 + "Landroid/os/Handler;",
14819 + ")",
14820 + "Landroid/accounts/AccountManagerFuture",
14821 + "<[",
14822 + "Landroid/accounts/Account;",
14823 + ">;"
14825 + .end annotation
14827 + const/4 v5, 0x0
14829 + const/4 v3, 0x0
14831 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14833 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14835 + move-result-object v1
14837 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14839 + move-result v2
14841 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14843 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14845 + move-result-object v6
14847 + if-eqz v6, :cond_2c
14849 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
14851 + move-result v0
14853 + if-eqz v0, :cond_2c
14855 + const-string v8, "[false]"
14857 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14859 + new-array v0, v3, [Landroid/accounts/Account;
14861 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14863 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14865 + const/4 v3, 0x1
14867 + const-string v4, "accountsList"
14869 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14871 + :goto_2b
14872 + return-object v7
14874 + :cond_2c
14875 + const-string v8, "[real value]"
14877 + 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;
14879 + move-result-object v7
14881 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14883 + const-string v4, "accountsList"
14885 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14887 + goto :goto_2b
14888 +.end method
14890 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14891 + .registers 16
14892 + .annotation system Ldalvik/annotation/Signature;
14893 + value = {
14894 + "(",
14895 + "Landroid/accounts/Account;",
14896 + "Ljava/lang/String;",
14897 + "Landroid/os/Bundle;",
14898 + "Landroid/app/Activity;",
14899 + "Landroid/accounts/AccountManagerCallback",
14900 + "<",
14901 + "Landroid/os/Bundle;",
14902 + ">;",
14903 + "Landroid/os/Handler;",
14904 + ")",
14905 + "Landroid/accounts/AccountManagerFuture",
14906 + "<",
14907 + "Landroid/os/Bundle;",
14908 + ">;"
14910 + .end annotation
14912 + const/4 v5, 0x0
14914 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14916 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
14918 + move-result-object v1
14920 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
14922 + move-result v2
14924 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14926 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
14928 + move-result-object v6
14930 + if-eqz v6, :cond_2e
14932 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
14934 + move-result v0
14936 + if-eqz v0, :cond_2e
14938 + const-string v8, "[empty]"
14940 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14942 + new-instance v0, Landroid/os/Bundle;
14944 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
14946 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14948 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14950 + const/4 v3, 0x1
14952 + const-string v4, "authTokens"
14954 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14956 + :goto_2d
14957 + return-object v7
14959 + :cond_2e
14960 + const-string v8, "[real value]"
14962 + 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;
14964 + move-result-object v7
14966 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14968 + const/4 v3, 0x0
14970 + const-string v4, "authTokens"
14972 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
14974 + goto :goto_2d
14975 +.end method
14977 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
14978 + .registers 15
14979 + .annotation system Ldalvik/annotation/Signature;
14980 + value = {
14981 + "(",
14982 + "Landroid/accounts/Account;",
14983 + "Ljava/lang/String;",
14984 + "Z",
14985 + "Landroid/accounts/AccountManagerCallback",
14986 + "<",
14987 + "Landroid/os/Bundle;",
14988 + ">;",
14989 + "Landroid/os/Handler;",
14990 + ")",
14991 + "Landroid/accounts/AccountManagerFuture",
14992 + "<",
14993 + "Landroid/os/Bundle;",
14994 + ">;"
14996 + .end annotation
14998 + const/4 v5, 0x0
15000 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15002 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15004 + move-result-object v1
15006 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15008 + move-result v2
15010 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15012 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15014 + move-result-object v6
15016 + if-eqz v6, :cond_2e
15018 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15020 + move-result v0
15022 + if-eqz v0, :cond_2e
15024 + const-string v8, "[empty]"
15026 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15028 + new-instance v0, Landroid/os/Bundle;
15030 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15032 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15034 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15036 + const/4 v3, 0x1
15038 + const-string v4, "authTokens"
15040 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15042 + :goto_2d
15043 + return-object v7
15045 + :cond_2e
15046 + const-string v8, "[real value]"
15048 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15050 + move-result-object v7
15052 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15054 + const/4 v3, 0x0
15056 + const-string v4, "authTokens"
15058 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15060 + goto :goto_2d
15061 +.end method
15063 +.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;
15064 + .registers 18
15065 + .annotation system Ldalvik/annotation/Signature;
15066 + value = {
15067 + "(",
15068 + "Ljava/lang/String;",
15069 + "Ljava/lang/String;",
15070 + "[",
15071 + "Ljava/lang/String;",
15072 + "Landroid/app/Activity;",
15073 + "Landroid/os/Bundle;",
15074 + "Landroid/os/Bundle;",
15075 + "Landroid/accounts/AccountManagerCallback",
15076 + "<",
15077 + "Landroid/os/Bundle;",
15078 + ">;",
15079 + "Landroid/os/Handler;",
15080 + ")",
15081 + "Landroid/accounts/AccountManagerFuture",
15082 + "<",
15083 + "Landroid/os/Bundle;",
15084 + ">;"
15086 + .end annotation
15088 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15090 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15092 + move-result-object v1
15094 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15096 + move-result v2
15098 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15100 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15102 + move-result-object v6
15104 + if-eqz v6, :cond_2e
15106 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15108 + move-result v0
15110 + if-eqz v0, :cond_2e
15112 + const-string v8, "[empty]"
15114 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15116 + new-instance v0, Landroid/os/Bundle;
15118 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15120 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15122 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15124 + const/4 v3, 0x1
15126 + const-string v4, "authTokens"
15128 + const/4 v5, 0x0
15130 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15132 + :goto_2d
15133 + return-object v7
15135 + :cond_2e
15136 + const-string v8, "[real value]"
15138 + 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;
15140 + move-result-object v7
15142 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15144 + const/4 v3, 0x0
15146 + const-string v4, "authTokens"
15148 + const/4 v5, 0x0
15150 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15152 + goto :goto_2d
15153 +.end method
15155 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15156 + .registers 14
15157 + .annotation system Ldalvik/annotation/Signature;
15158 + value = {
15159 + "(",
15160 + "Landroid/accounts/Account;",
15161 + "[",
15162 + "Ljava/lang/String;",
15163 + "Landroid/accounts/AccountManagerCallback",
15164 + "<",
15165 + "Ljava/lang/Boolean;",
15166 + ">;",
15167 + "Landroid/os/Handler;",
15168 + ")",
15169 + "Landroid/accounts/AccountManagerFuture",
15170 + "<",
15171 + "Ljava/lang/Boolean;",
15172 + ">;"
15174 + .end annotation
15176 + const/4 v5, 0x0
15178 + const/4 v3, 0x0
15180 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15182 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15184 + move-result-object v1
15186 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15188 + move-result v2
15190 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15192 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15194 + move-result-object v6
15196 + if-eqz v6, :cond_2e
15198 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15200 + move-result v0
15202 + if-eqz v0, :cond_2e
15204 + const-string v8, "[false]"
15206 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15208 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
15210 + move-result-object v0
15212 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15214 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15216 + const/4 v3, 0x1
15218 + const-string v4, "accountsList"
15220 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15222 + :goto_2d
15223 + return-object v7
15225 + :cond_2e
15226 + const-string v8, "[real value]"
15228 + 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;
15230 + move-result-object v7
15232 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15234 + const-string v4, "accountsList"
15236 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15238 + goto :goto_2d
15239 +.end method
15240 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
15241 --- stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 18:00:00.000000000 -0600
15242 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-05-10 15:14:35.594467261 -0500
15243 @@ -0,0 +1,1087 @@
15244 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
15245 +.super Ljava/lang/Object;
15246 +.source "PrivacyActivityManagerService.java"
15249 +# static fields
15250 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
15252 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
15254 +.field private static tmpIn:Landroid/content/Intent;
15256 +.field private static tmpInHash:J
15258 +.field private static tmpInReceivers:I
15260 +.field private static tmpMms:Landroid/content/Intent;
15262 +.field private static tmpMmsHash:J
15264 +.field private static tmpMmsReceivers:I
15266 +.field private static tmpOut:Landroid/content/Intent;
15268 +.field private static tmpOutHash:J
15270 +.field private static tmpOutReceivers:I
15272 +.field private static tmpPackageAddedHash:J
15274 +.field private static tmpSms:Landroid/content/Intent;
15276 +.field private static tmpSmsHash:J
15278 +.field private static tmpSmsReceivers:I
15281 +# direct methods
15282 +.method static constructor <clinit>()V
15283 + .registers 3
15285 + const/4 v2, 0x0
15287 + const-wide/16 v0, 0x0
15289 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15291 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15293 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15295 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15297 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15299 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15301 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15303 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
15305 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
15307 + return-void
15308 +.end method
15310 +.method public constructor <init>()V
15311 + .registers 1
15313 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15315 + return-void
15316 +.end method
15318 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
15319 + .registers 22
15321 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15323 + if-nez v2, :cond_11
15325 + const-string/jumbo v2, "privacy"
15327 + move-object/from16 v0, p3
15329 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
15331 + move-result-object v2
15333 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
15335 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15337 + :cond_11
15338 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
15340 + move-result-object v9
15342 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
15344 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15346 + move-result v2
15348 + if-eqz v2, :cond_ad
15350 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15352 + move-object/from16 v0, p0
15354 + move/from16 v1, p1
15356 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15358 + move-result-object v8
15360 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15362 + move-object/from16 v0, p2
15364 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15366 + move-result-object v16
15368 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15370 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15372 + move-result-wide v4
15374 + cmp-long v2, v2, v4
15376 + if-eqz v2, :cond_49
15378 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15380 + move-result-object v2
15382 + check-cast v2, Landroid/content/Intent;
15384 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15386 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15388 + move-result-wide v2
15390 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15392 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15394 + :cond_49
15395 + if-eqz v8, :cond_76
15397 + :try_start_4b
15398 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
15400 + move-result v2
15402 + if-eqz v2, :cond_76
15404 + const-string v16, ""
15406 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15408 + move-object/from16 v0, p2
15410 + move-object/from16 v1, v16
15412 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15414 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15416 + const/4 v5, 0x1
15418 + const-string/jumbo v6, "outgoingCall"
15420 + const/4 v7, 0x0
15422 + move-object/from16 v3, p0
15424 + move/from16 v4, p1
15426 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15427 + :try_end_6a
15428 + .catch Ljava/lang/Exception; {:try_start_4b .. :try_end_6a} :catch_a0
15430 + :cond_6a
15431 + :goto_6a
15432 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15434 + const/4 v3, 0x1
15436 + if-le v2, v3, :cond_a9
15438 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15440 + add-int/lit8 v2, v2, -0x1
15442 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15444 + :cond_75
15445 + :goto_75
15446 + return-void
15448 + :cond_76
15449 + :try_start_76
15450 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15452 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15454 + move-result-wide v4
15456 + cmp-long v2, v2, v4
15458 + if-nez v2, :cond_6a
15460 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15462 + const-string v3, "android.intent.extra.PHONE_NUMBER"
15464 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15466 + move-result-object v16
15468 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15470 + move-object/from16 v0, p2
15472 + move-object/from16 v1, v16
15474 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15476 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15478 + const/4 v5, 0x0
15480 + const-string/jumbo v6, "outgoingCall"
15482 + const/4 v7, 0x0
15484 + move-object/from16 v3, p0
15486 + move/from16 v4, p1
15488 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15489 + :try_end_9f
15490 + .catch Ljava/lang/Exception; {:try_start_76 .. :try_end_9f} :catch_a0
15492 + goto :goto_6a
15494 + :catch_a0
15495 + move-exception v13
15497 + const-string v2, "PrivacyActivityManagerService"
15499 + const-string v3, "failed to enforce intent broadcast permission"
15501 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15503 + goto :goto_6a
15505 + :cond_a9
15506 + const/4 v2, 0x0
15508 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15510 + goto :goto_75
15512 + :cond_ad
15513 + const-string v2, "android.intent.action.PHONE_STATE"
15515 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15517 + move-result v2
15519 + if-eqz v2, :cond_14d
15521 + const-string v2, "incoming_number"
15523 + move-object/from16 v0, p2
15525 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15527 + move-result-object v16
15529 + if-eqz v16, :cond_75
15531 + invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->isEmpty()Z
15533 + move-result v2
15535 + if-nez v2, :cond_75
15537 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15539 + move-object/from16 v0, p0
15541 + move/from16 v1, p1
15543 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15545 + move-result-object v8
15547 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15549 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15551 + move-result-wide v4
15553 + cmp-long v2, v2, v4
15555 + if-eqz v2, :cond_e9
15557 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15559 + move-result-object v2
15561 + check-cast v2, Landroid/content/Intent;
15563 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15565 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15567 + move-result-wide v2
15569 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15571 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15573 + :cond_e9
15574 + if-eqz v8, :cond_116
15576 + :try_start_eb
15577 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
15579 + move-result v2
15581 + if-eqz v2, :cond_116
15583 + const-string v16, ""
15585 + const-string v2, "incoming_number"
15587 + move-object/from16 v0, p2
15589 + move-object/from16 v1, v16
15591 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15593 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15595 + const/4 v5, 0x1
15597 + const-string v6, "incomingCall"
15599 + const/4 v7, 0x0
15601 + move-object/from16 v3, p0
15603 + move/from16 v4, p1
15605 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15606 + :try_end_109
15607 + .catch Ljava/lang/Exception; {:try_start_eb .. :try_end_109} :catch_13f
15609 + :cond_109
15610 + :goto_109
15611 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15613 + const/4 v3, 0x1
15615 + if-le v2, v3, :cond_148
15617 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15619 + add-int/lit8 v2, v2, -0x1
15621 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15623 + goto/16 :goto_75
15625 + :cond_116
15626 + :try_start_116
15627 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15629 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15631 + move-result-wide v4
15633 + cmp-long v2, v2, v4
15635 + if-nez v2, :cond_109
15637 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15639 + const-string v3, "incoming_number"
15641 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15643 + move-result-object v16
15645 + const-string v2, "incoming_number"
15647 + move-object/from16 v0, p2
15649 + move-object/from16 v1, v16
15651 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15653 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15655 + const/4 v5, 0x0
15657 + const-string v6, "incomingCall"
15659 + const/4 v7, 0x0
15661 + move-object/from16 v3, p0
15663 + move/from16 v4, p1
15665 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15666 + :try_end_13e
15667 + .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_13e} :catch_13f
15669 + goto :goto_109
15671 + :catch_13f
15672 + move-exception v13
15674 + const-string v2, "PrivacyActivityManagerService"
15676 + const-string v3, "failed to enforce intent broadcast permission"
15678 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15680 + goto :goto_109
15682 + :cond_148
15683 + const/4 v2, 0x0
15685 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15687 + goto/16 :goto_75
15689 + :cond_14d
15690 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
15692 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15694 + move-result v2
15696 + if-eqz v2, :cond_222
15698 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15700 + move-object/from16 v0, p0
15702 + move/from16 v1, p1
15704 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15706 + move-result-object v8
15708 + const-string v16, "[real]"
15710 + const-string/jumbo v2, "pdus"
15712 + move-object/from16 v0, p2
15714 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15716 + move-result-object v2
15718 + check-cast v2, [Ljava/lang/Object;
15720 + move-object v15, v2
15722 + check-cast v15, [Ljava/lang/Object;
15724 + if-eqz v15, :cond_1cd
15726 + const/4 v2, 0x0
15728 + aget-object v2, v15, v2
15730 + check-cast v2, [B
15732 + check-cast v2, [B
15734 + move-object v12, v2
15736 + :goto_179
15737 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15739 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15741 + move-result-wide v4
15743 + cmp-long v2, v2, v4
15745 + if-eqz v2, :cond_193
15747 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15749 + move-result-object v2
15751 + check-cast v2, Landroid/content/Intent;
15753 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15755 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15757 + move-result-wide v2
15759 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15761 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15763 + :cond_193
15764 + if-eqz v8, :cond_1cf
15766 + :try_start_195
15767 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
15769 + move-result v2
15771 + if-eqz v2, :cond_1cf
15773 + const-string v16, "[empty]"
15775 + const/4 v2, 0x1
15777 + new-array v14, v2, [Ljava/lang/Object;
15779 + const/4 v2, 0x0
15781 + const/16 v3, 0x10
15783 + new-array v3, v3, [B
15785 + fill-array-data v3, :array_350
15787 + aput-object v3, v14, v2
15789 + const-string/jumbo v2, "pdus"
15791 + move-object/from16 v0, p2
15793 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15795 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15797 + const/4 v5, 0x1
15799 + const-string/jumbo v6, "sms"
15801 + const/4 v7, 0x0
15803 + move-object/from16 v3, p0
15805 + move/from16 v4, p1
15807 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15808 + :try_end_1c0
15809 + .catch Ljava/lang/Exception; {:try_start_195 .. :try_end_1c0} :catch_212
15811 + :cond_1c0
15812 + :goto_1c0
15813 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15815 + const/4 v3, 0x1
15817 + if-le v2, v3, :cond_21d
15819 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15821 + add-int/lit8 v2, v2, -0x1
15823 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15825 + goto/16 :goto_75
15827 + :cond_1cd
15828 + const/4 v12, 0x0
15830 + goto :goto_179
15832 + :cond_1cf
15833 + :try_start_1cf
15834 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15836 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15838 + move-result-wide v4
15840 + cmp-long v2, v2, v4
15842 + if-nez v2, :cond_1c0
15844 + const-string/jumbo v2, "pdus"
15846 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15848 + const-string/jumbo v4, "pdus"
15850 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15852 + move-result-object v3
15854 + move-object/from16 v0, p2
15856 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
15858 + const-string/jumbo v2, "pdus"
15860 + move-object/from16 v0, p2
15862 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15864 + move-result-object v2
15866 + check-cast v2, [Ljava/lang/Object;
15868 + move-object v0, v2
15870 + check-cast v0, [Ljava/lang/Object;
15872 + move-object v15, v0
15874 + if-eqz v15, :cond_21b
15876 + const/4 v2, 0x0
15878 + aget-object v2, v15, v2
15880 + check-cast v2, [B
15882 + check-cast v2, [B
15884 + move-object v12, v2
15886 + :goto_203
15887 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15889 + const/4 v5, 0x0
15891 + const-string/jumbo v6, "sms"
15893 + const/4 v7, 0x0
15895 + move-object/from16 v3, p0
15897 + move/from16 v4, p1
15899 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15900 + :try_end_211
15901 + .catch Ljava/lang/Exception; {:try_start_1cf .. :try_end_211} :catch_212
15903 + goto :goto_1c0
15905 + :catch_212
15906 + move-exception v13
15908 + const-string v2, "PrivacyActivityManagerService"
15910 + const-string v3, "failed to enforce intent broadcast permission"
15912 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15914 + goto :goto_1c0
15916 + :cond_21b
15917 + const/4 v12, 0x0
15919 + goto :goto_203
15921 + :cond_21d
15922 + const/4 v2, 0x0
15924 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
15926 + goto/16 :goto_75
15928 + :cond_222
15929 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
15931 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15933 + move-result v2
15935 + if-nez v2, :cond_232
15937 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
15939 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15941 + move-result v2
15943 + if-eqz v2, :cond_2ff
15945 + :cond_232
15946 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15948 + move-object/from16 v0, p0
15950 + move/from16 v1, p1
15952 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15954 + move-result-object v8
15956 + const-string v16, "[real]"
15958 + const-string/jumbo v2, "pdus"
15960 + move-object/from16 v0, p2
15962 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
15964 + move-result-object v2
15966 + check-cast v2, [Ljava/lang/Object;
15968 + move-object v15, v2
15970 + check-cast v15, [Ljava/lang/Object;
15972 + if-eqz v15, :cond_2aa
15974 + const/4 v2, 0x0
15976 + aget-object v2, v15, v2
15978 + check-cast v2, [B
15980 + check-cast v2, [B
15982 + move-object v12, v2
15984 + :goto_256
15985 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15987 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15989 + move-result-wide v4
15991 + cmp-long v2, v2, v4
15993 + if-eqz v2, :cond_270
15995 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15997 + move-result-object v2
15999 + check-cast v2, Landroid/content/Intent;
16001 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16003 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16005 + move-result-wide v2
16007 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16009 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16011 + :cond_270
16012 + if-eqz v8, :cond_2ac
16014 + :try_start_272
16015 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16017 + move-result v2
16019 + if-eqz v2, :cond_2ac
16021 + const-string v16, "[empty]"
16023 + const/4 v2, 0x1
16025 + new-array v14, v2, [Ljava/lang/Object;
16027 + const/4 v2, 0x0
16029 + const/16 v3, 0x10
16031 + new-array v3, v3, [B
16033 + fill-array-data v3, :array_35c
16035 + aput-object v3, v14, v2
16037 + const-string/jumbo v2, "pdus"
16039 + move-object/from16 v0, p2
16041 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16043 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16045 + const/4 v5, 0x1
16047 + const-string/jumbo v6, "mms"
16049 + const/4 v7, 0x0
16051 + move-object/from16 v3, p0
16053 + move/from16 v4, p1
16055 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16056 + :try_end_29d
16057 + .catch Ljava/lang/Exception; {:try_start_272 .. :try_end_29d} :catch_2ef
16059 + :cond_29d
16060 + :goto_29d
16061 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16063 + const/4 v3, 0x1
16065 + if-le v2, v3, :cond_2fa
16067 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16069 + add-int/lit8 v2, v2, -0x1
16071 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16073 + goto/16 :goto_75
16075 + :cond_2aa
16076 + const/4 v12, 0x0
16078 + goto :goto_256
16080 + :cond_2ac
16081 + :try_start_2ac
16082 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16084 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16086 + move-result-wide v4
16088 + cmp-long v2, v2, v4
16090 + if-nez v2, :cond_29d
16092 + const-string/jumbo v2, "pdus"
16094 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16096 + const-string/jumbo v4, "pdus"
16098 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16100 + move-result-object v3
16102 + move-object/from16 v0, p2
16104 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16106 + const-string/jumbo v2, "pdus"
16108 + move-object/from16 v0, p2
16110 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16112 + move-result-object v2
16114 + check-cast v2, [Ljava/lang/Object;
16116 + move-object v0, v2
16118 + check-cast v0, [Ljava/lang/Object;
16120 + move-object v15, v0
16122 + if-eqz v15, :cond_2f8
16124 + const/4 v2, 0x0
16126 + aget-object v2, v15, v2
16128 + check-cast v2, [B
16130 + check-cast v2, [B
16132 + move-object v12, v2
16134 + :goto_2e0
16135 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16137 + const/4 v5, 0x0
16139 + const-string/jumbo v6, "mms"
16141 + const/4 v7, 0x0
16143 + move-object/from16 v3, p0
16145 + move/from16 v4, p1
16147 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16148 + :try_end_2ee
16149 + .catch Ljava/lang/Exception; {:try_start_2ac .. :try_end_2ee} :catch_2ef
16151 + goto :goto_29d
16153 + :catch_2ef
16154 + move-exception v13
16156 + const-string v2, "PrivacyActivityManagerService"
16158 + const-string v3, "failed to enforce intent broadcast permission"
16160 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16162 + goto :goto_29d
16164 + :cond_2f8
16165 + const/4 v12, 0x0
16167 + goto :goto_2e0
16169 + :cond_2fa
16170 + const/4 v2, 0x0
16172 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16174 + goto/16 :goto_75
16176 + :cond_2ff
16177 + const-string v2, "android.intent.action.BOOT_COMPLETED"
16179 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16181 + move-result v2
16183 + if-eqz v2, :cond_30e
16185 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16187 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
16189 + goto/16 :goto_75
16191 + :cond_30e
16192 + const-string v2, "android.intent.action.PACKAGE_ADDED"
16194 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16196 + move-result v2
16198 + if-eqz v2, :cond_75
16200 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16202 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16204 + move-result-wide v4
16206 + cmp-long v2, v2, v4
16208 + if-eqz v2, :cond_75
16210 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16212 + move-result-wide v2
16214 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16216 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
16218 + move-result-object v2
16220 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
16222 + move-result-object v10
16224 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
16226 + move-result-object v2
16228 + const-string v3, "android.intent.extra.UID"
16230 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
16232 + move-result v11
16234 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16236 + invoke-virtual {v2, v10, v11}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16238 + move-result-object v8
16240 + if-eqz v8, :cond_75
16242 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
16244 + move-result v2
16246 + if-eq v2, v11, :cond_75
16248 + invoke-virtual {v8, v11}, Landroid/privacy/PrivacySettings;->setUid(I)V
16250 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16252 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16254 + goto/16 :goto_75
16256 + :array_350
16257 + .array-data 0x1
16258 + 0x0t
16259 + 0x20t
16260 + 0x1t
16261 + 0x81t
16262 + 0xf0t
16263 + 0x0t
16264 + 0x0t
16265 + 0x11t
16266 + 0x90t
16267 + 0x1t
16268 + 0x30t
16269 + 0x22t
16270 + 0x22t
16271 + 0x80t
16272 + 0x1t
16273 + 0x20t
16274 + .end array-data
16276 + :array_35c
16277 + .array-data 0x1
16278 + 0x0t
16279 + 0x20t
16280 + 0x1t
16281 + 0x81t
16282 + 0xf0t
16283 + 0x0t
16284 + 0x0t
16285 + 0x11t
16286 + 0x90t
16287 + 0x1t
16288 + 0x30t
16289 + 0x22t
16290 + 0x22t
16291 + 0x80t
16292 + 0x1t
16293 + 0x20t
16294 + .end array-data
16295 +.end method
16297 +.method private static hashCode(Landroid/content/Intent;)J
16298 + .registers 7
16300 + const-wide/16 v3, 0x0
16302 + const-string/jumbo v2, "privacy_hash"
16304 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
16306 + move-result-wide v0
16308 + cmp-long v2, v0, v3
16310 + if-nez v2, :cond_1e
16312 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
16314 + move-result v2
16316 + int-to-long v2, v2
16318 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
16320 + move-result-wide v4
16322 + add-long v0, v2, v4
16324 + const-string/jumbo v2, "privacy_hash"
16326 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
16328 + :cond_1e
16329 + return-wide v0
16330 +.end method
16331 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
16332 --- stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 18:00:00.000000000 -0600
16333 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-05-10 15:14:35.594467261 -0500
16334 @@ -0,0 +1,624 @@
16335 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
16336 +.super Ljava/lang/Object;
16337 +.source "PrivacyContentResolver.java"
16340 +# static fields
16341 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
16343 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
16346 +# direct methods
16347 +.method public constructor <init>()V
16348 + .registers 1
16350 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16352 + return-void
16353 +.end method
16355 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
16356 + .registers 8
16358 + new-instance v4, Ljava/lang/StringBuffer;
16360 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
16362 + if-eqz p0, :cond_2d
16364 + move-object v0, p0
16366 + array-length v3, v0
16368 + const/4 v2, 0x0
16370 + :goto_a
16371 + if-ge v2, v3, :cond_30
16373 + aget-object v1, v0, v2
16375 + new-instance v5, Ljava/lang/StringBuilder;
16377 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
16379 + const-string v6, "["
16381 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16383 + move-result-object v5
16385 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16387 + move-result-object v5
16389 + const-string v6, "]"
16391 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16393 + move-result-object v5
16395 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
16397 + move-result-object v5
16399 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
16401 + add-int/lit8 v2, v2, 0x1
16403 + goto :goto_a
16405 + :cond_2d
16406 + const-string v5, ""
16408 + :goto_2f
16409 + return-object v5
16411 + :cond_30
16412 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
16414 + move-result-object v5
16416 + goto :goto_2f
16417 +.end method
16419 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
16420 + .registers 21
16421 + .annotation system Ldalvik/annotation/Throws;
16422 + value = {
16423 + Landroid/os/RemoteException;
16425 + .end annotation
16427 + if-eqz p0, :cond_1e4
16429 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16431 + if-nez v1, :cond_13
16433 + const-string/jumbo v1, "privacy"
16435 + move-object/from16 v0, p2
16437 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
16439 + move-result-object v1
16441 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
16443 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16445 + :cond_13
16446 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
16448 + move-result-object v2
16450 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
16452 + move-result v3
16454 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16456 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16458 + move-result-object v7
16460 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16462 + move-result-object v9
16464 + const-string v15, "[real]"
16466 + move-object/from16 v13, p3
16468 + if-eqz v9, :cond_54
16470 + const-string v1, "contacts"
16472 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16474 + move-result v1
16476 + if-nez v1, :cond_3b
16478 + const-string v1, "com.android.contacts"
16480 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16482 + move-result v1
16484 + if-eqz v1, :cond_ab
16486 + :cond_3b
16487 + if-eqz v7, :cond_54
16489 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16491 + move-result v1
16493 + const/4 v4, 0x1
16495 + if-ne v1, v4, :cond_55
16497 + const-string v15, "[empty]"
16499 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16501 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16503 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16505 + const/4 v4, 0x1
16507 + const-string v5, "contacts"
16509 + const/4 v6, 0x0
16511 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16513 + :cond_54
16514 + :goto_54
16515 + return-object v13
16517 + :cond_55
16518 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16520 + move-result v1
16522 + const/4 v4, 0x2
16524 + if-ne v1, v4, :cond_a1
16526 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
16528 + move-result-object v1
16530 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
16532 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
16534 + move-result-object v4
16536 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
16538 + move-result v1
16540 + if-eqz v1, :cond_a1
16542 + const/4 v11, 0x0
16544 + if-eqz p1, :cond_82
16546 + move-object/from16 v8, p1
16548 + array-length v12, v8
16550 + const/4 v10, 0x0
16552 + :goto_73
16553 + if-ge v10, v12, :cond_82
16555 + aget-object v16, v8, v10
16557 + const-string v1, "_id"
16559 + move-object/from16 v0, v16
16561 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16563 + move-result v1
16565 + if-eqz v1, :cond_93
16567 + const/4 v11, 0x1
16569 + :cond_82
16570 + if-nez v11, :cond_96
16572 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16574 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16576 + :goto_89
16577 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16579 + const/4 v4, 0x2
16581 + const-string v5, "contacts"
16583 + const/4 v6, 0x0
16585 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16587 + goto :goto_54
16589 + :cond_93
16590 + add-int/lit8 v10, v10, 0x1
16592 + goto :goto_73
16594 + :cond_96
16595 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
16597 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
16599 + move-result-object v1
16601 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
16603 + move-object v13, v14
16605 + goto :goto_89
16607 + :cond_a1
16608 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16610 + const/4 v4, 0x0
16612 + const-string v5, "contacts"
16614 + const/4 v6, 0x0
16616 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16618 + goto :goto_54
16620 + :cond_ab
16621 + const-string v1, "com.android.calendar"
16623 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16625 + move-result v1
16627 + if-eqz v1, :cond_d8
16629 + if-eqz v7, :cond_cd
16631 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
16633 + move-result v1
16635 + const/4 v4, 0x1
16637 + if-ne v1, v4, :cond_cd
16639 + const-string v15, "[empty]"
16641 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16643 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16645 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16647 + const/4 v4, 0x1
16649 + const-string v5, "calendar"
16651 + const/4 v6, 0x0
16653 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16655 + goto :goto_54
16657 + :cond_cd
16658 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16660 + const/4 v4, 0x0
16662 + const-string v5, "calendar"
16664 + const/4 v6, 0x0
16666 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16668 + goto/16 :goto_54
16670 + :cond_d8
16671 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
16673 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16675 + move-result-object v1
16677 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16679 + move-result v1
16681 + if-eqz v1, :cond_10c
16683 + if-eqz v7, :cond_100
16685 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16687 + move-result v1
16689 + const/4 v4, 0x1
16691 + if-ne v1, v4, :cond_100
16693 + const-string v15, "[empty]"
16695 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16697 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16699 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16701 + const/4 v4, 0x1
16703 + const-string/jumbo v5, "mms"
16705 + const/4 v6, 0x0
16707 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16709 + goto/16 :goto_54
16711 + :cond_100
16712 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16714 + const/4 v4, 0x0
16716 + const-string/jumbo v5, "mms"
16718 + const/4 v6, 0x0
16720 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16722 + goto/16 :goto_54
16724 + :cond_10c
16725 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
16727 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16729 + move-result-object v1
16731 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16733 + move-result v1
16735 + if-eqz v1, :cond_140
16737 + if-eqz v7, :cond_134
16739 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16741 + move-result v1
16743 + const/4 v4, 0x1
16745 + if-ne v1, v4, :cond_134
16747 + const-string v15, "[empty]"
16749 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16751 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16753 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16755 + const/4 v4, 0x1
16757 + const-string/jumbo v5, "sms"
16759 + const/4 v6, 0x0
16761 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16763 + goto/16 :goto_54
16765 + :cond_134
16766 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16768 + const/4 v4, 0x0
16770 + const-string/jumbo v5, "sms"
16772 + const/4 v6, 0x0
16774 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16776 + goto/16 :goto_54
16778 + :cond_140
16779 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
16781 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16783 + move-result-object v1
16785 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16787 + move-result v1
16789 + if-nez v1, :cond_155
16791 + const-string/jumbo v1, "mms-sms-v2"
16793 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16795 + move-result v1
16797 + if-eqz v1, :cond_184
16799 + :cond_155
16800 + if-eqz v7, :cond_178
16802 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16804 + move-result v1
16806 + const/4 v4, 0x1
16808 + if-eq v1, v4, :cond_165
16810 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16812 + move-result v1
16814 + const/4 v4, 0x1
16816 + if-ne v1, v4, :cond_178
16818 + :cond_165
16819 + const-string v15, "[empty]"
16821 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16823 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16825 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16827 + const/4 v4, 0x1
16829 + const-string/jumbo v5, "mmsSms"
16831 + const/4 v6, 0x0
16833 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16835 + goto/16 :goto_54
16837 + :cond_178
16838 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16840 + const/4 v4, 0x0
16842 + const-string/jumbo v5, "mmsSms"
16844 + const/4 v6, 0x0
16846 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16848 + goto/16 :goto_54
16850 + :cond_184
16851 + const-string v1, "call_log"
16853 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16855 + move-result v1
16857 + if-eqz v1, :cond_1b2
16859 + if-eqz v7, :cond_1a7
16861 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
16863 + move-result v1
16865 + const/4 v4, 0x1
16867 + if-ne v1, v4, :cond_1a7
16869 + const-string v15, "[empty]"
16871 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16873 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16875 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16877 + const/4 v4, 0x1
16879 + const-string v5, "callLog"
16881 + const/4 v6, 0x0
16883 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16885 + goto/16 :goto_54
16887 + :cond_1a7
16888 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16890 + const/4 v4, 0x0
16892 + const-string v5, "callLog"
16894 + const/4 v6, 0x0
16896 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16898 + goto/16 :goto_54
16900 + :cond_1b2
16901 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
16903 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16905 + move-result-object v1
16907 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16909 + move-result v1
16911 + if-eqz v1, :cond_54
16913 + if-eqz v7, :cond_1d9
16915 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
16917 + move-result v1
16919 + const/4 v4, 0x1
16921 + if-ne v1, v4, :cond_1d9
16923 + const-string v15, "[empty]"
16925 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16927 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16929 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16931 + const/4 v4, 0x1
16933 + const-string v5, "bookmarks"
16935 + const/4 v6, 0x0
16937 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16939 + goto/16 :goto_54
16941 + :cond_1d9
16942 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16944 + const/4 v4, 0x0
16946 + const-string v5, "bookmarks"
16948 + const/4 v6, 0x0
16950 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16952 + goto/16 :goto_54
16954 + :cond_1e4
16955 + move-object/from16 v13, p3
16957 + goto/16 :goto_54
16958 +.end method
16959 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali
16960 --- stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 18:00:00.000000000 -0600
16961 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-05-10 15:14:35.594467261 -0500
16962 @@ -0,0 +1,1225 @@
16963 +.class public Landroid/privacy/surrogate/PrivacyCursor;
16964 +.super Ljava/lang/Object;
16965 +.source "PrivacyCursor.java"
16967 +# interfaces
16968 +.implements Landroid/database/Cursor;
16971 +# static fields
16972 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
16975 +# instance fields
16976 +.field private allowedIdMapping:[I
16978 +.field private allowedIds:[I
16980 +.field private realCursor:Landroid/database/Cursor;
16983 +# direct methods
16984 +.method public constructor <init>()V
16985 + .registers 1
16987 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16989 + return-void
16990 +.end method
16992 +.method public constructor <init>(Landroid/database/Cursor;[I)V
16993 + .registers 7
16995 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16997 + if-eqz p2, :cond_8
16999 + array-length v2, p2
17001 + if-nez v2, :cond_9
17003 + :cond_8
17004 + const/4 p1, 0x0
17006 + :cond_9
17007 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17009 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17011 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17013 + if-eqz v2, :cond_3f
17015 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17017 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
17019 + move-result v0
17021 + array-length v2, p2
17023 + new-array v2, v2, [I
17025 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17027 + const/4 v1, 0x0
17029 + :cond_1d
17030 + :goto_1d
17031 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17033 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
17035 + move-result v2
17037 + if-eqz v2, :cond_3a
17039 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17041 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17043 + move-result v2
17045 + if-eqz v2, :cond_1d
17047 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17049 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17051 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17053 + move-result v3
17055 + aput v3, v2, v1
17057 + add-int/lit8 v1, v1, 0x1
17059 + goto :goto_1d
17061 + :cond_3a
17062 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17064 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
17066 + :cond_3f
17067 + return-void
17068 +.end method
17070 +.method private getContactId(Landroid/database/Cursor;)I
17071 + .registers 5
17073 + const-string v2, "_id"
17075 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17077 + move-result v0
17079 + const/4 v1, -0x1
17081 + const/4 v2, -0x1
17083 + if-eq v0, v2, :cond_e
17085 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
17087 + move-result v1
17089 + :cond_e
17090 + return v1
17091 +.end method
17093 +.method private getMappedPos(I)I
17094 + .registers 4
17096 + const/4 v0, 0x0
17098 + :goto_1
17099 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17101 + array-length v1, v1
17103 + if-ge v0, v1, :cond_10
17105 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17107 + aget v1, v1, v0
17109 + if-ne v1, p1, :cond_d
17111 + :goto_c
17112 + return v0
17114 + :cond_d
17115 + add-int/lit8 v0, v0, 0x1
17117 + goto :goto_1
17119 + :cond_10
17120 + const/4 v0, -0x1
17122 + goto :goto_c
17123 +.end method
17125 +.method private isAllowed(I)Z
17126 + .registers 7
17128 + const/4 v4, 0x0
17130 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17132 + array-length v3, v0
17134 + const/4 v2, 0x0
17136 + :goto_5
17137 + if-ge v2, v3, :cond_c
17139 + aget v1, v0, v2
17141 + if-ne p1, v1, :cond_d
17143 + const/4 v4, 0x1
17145 + :cond_c
17146 + return v4
17148 + :cond_d
17149 + add-int/lit8 v2, v2, 0x1
17151 + goto :goto_5
17152 +.end method
17154 +.method private isAllowed(Landroid/database/Cursor;)Z
17155 + .registers 3
17157 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
17159 + move-result v0
17161 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
17163 + move-result v0
17165 + return v0
17166 +.end method
17169 +# virtual methods
17170 +.method public close()V
17171 + .registers 2
17173 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17175 + if-eqz v0, :cond_9
17177 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17179 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
17181 + :cond_9
17182 + return-void
17183 +.end method
17185 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17186 + .registers 4
17188 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17190 + if-eqz v0, :cond_9
17192 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17194 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17196 + :cond_9
17197 + return-void
17198 +.end method
17200 +.method public deactivate()V
17201 + .registers 2
17203 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17205 + if-eqz v0, :cond_9
17207 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17209 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
17211 + :cond_9
17212 + return-void
17213 +.end method
17215 +.method public getBlob(I)[B
17216 + .registers 3
17218 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17220 + if-eqz v0, :cond_b
17222 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17224 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
17226 + move-result-object v0
17228 + :goto_a
17229 + return-object v0
17231 + :cond_b
17232 + const/4 v0, 0x0
17234 + new-array v0, v0, [B
17236 + goto :goto_a
17237 +.end method
17239 +.method public getColumnCount()I
17240 + .registers 2
17242 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17244 + if-eqz v0, :cond_b
17246 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17248 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
17250 + move-result v0
17252 + :goto_a
17253 + return v0
17255 + :cond_b
17256 + const/4 v0, 0x0
17258 + goto :goto_a
17259 +.end method
17261 +.method public getColumnIndex(Ljava/lang/String;)I
17262 + .registers 3
17264 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17266 + if-eqz v0, :cond_b
17268 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17270 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17272 + move-result v0
17274 + :goto_a
17275 + return v0
17277 + :cond_b
17278 + const/4 v0, -0x1
17280 + goto :goto_a
17281 +.end method
17283 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
17284 + .registers 3
17285 + .annotation system Ldalvik/annotation/Throws;
17286 + value = {
17287 + Ljava/lang/IllegalArgumentException;
17289 + .end annotation
17291 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17293 + if-eqz v0, :cond_b
17295 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17297 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
17299 + move-result v0
17301 + :goto_a
17302 + return v0
17304 + :cond_b
17305 + const/4 v0, -0x1
17307 + goto :goto_a
17308 +.end method
17310 +.method public getColumnName(I)Ljava/lang/String;
17311 + .registers 3
17313 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17315 + if-eqz v0, :cond_b
17317 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17319 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
17321 + move-result-object v0
17323 + :goto_a
17324 + return-object v0
17326 + :cond_b
17327 + const-string v0, ""
17329 + goto :goto_a
17330 +.end method
17332 +.method public getColumnNames()[Ljava/lang/String;
17333 + .registers 4
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;->getColumnNames()[Ljava/lang/String;
17343 + move-result-object v0
17345 + :goto_a
17346 + return-object v0
17348 + :cond_b
17349 + const/4 v0, 0x1
17351 + new-array v0, v0, [Ljava/lang/String;
17353 + const/4 v1, 0x0
17355 + const-string v2, ""
17357 + aput-object v2, v0, v1
17359 + goto :goto_a
17360 +.end method
17362 +.method public getCount()I
17363 + .registers 4
17365 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17367 + if-eqz v0, :cond_23
17369 + const-string v0, "PrivacyCursor"
17371 + new-instance v1, Ljava/lang/StringBuilder;
17373 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17375 + const-string v2, "getCount: "
17377 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17379 + move-result-object v1
17381 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17383 + array-length v2, v2
17385 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17387 + move-result-object v1
17389 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17391 + move-result-object v1
17393 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17395 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17397 + array-length v0, v0
17399 + :goto_22
17400 + return v0
17402 + :cond_23
17403 + const/4 v0, 0x0
17405 + goto :goto_22
17406 +.end method
17408 +.method public getDouble(I)D
17409 + .registers 4
17411 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17413 + if-eqz v0, :cond_b
17415 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17417 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
17419 + move-result-wide v0
17421 + :goto_a
17422 + return-wide v0
17424 + :cond_b
17425 + const-wide/16 v0, 0x0
17427 + goto :goto_a
17428 +.end method
17430 +.method public getExtras()Landroid/os/Bundle;
17431 + .registers 2
17433 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17435 + if-eqz v0, :cond_b
17437 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17439 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
17441 + move-result-object v0
17443 + :goto_a
17444 + return-object v0
17446 + :cond_b
17447 + new-instance v0, Landroid/os/Bundle;
17449 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
17451 + goto :goto_a
17452 +.end method
17454 +.method public getFloat(I)F
17455 + .registers 3
17457 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17459 + if-eqz v0, :cond_b
17461 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17463 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
17465 + move-result v0
17467 + :goto_a
17468 + return v0
17470 + :cond_b
17471 + const/4 v0, 0x0
17473 + goto :goto_a
17474 +.end method
17476 +.method public getInt(I)I
17477 + .registers 4
17479 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17481 + if-eqz v1, :cond_b
17483 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17485 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
17487 + move-result v0
17489 + :goto_a
17490 + return v0
17492 + :cond_b
17493 + const/4 v0, 0x0
17495 + goto :goto_a
17496 +.end method
17498 +.method public getLong(I)J
17499 + .registers 4
17501 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17503 + if-eqz v0, :cond_b
17505 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17507 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
17509 + move-result-wide v0
17511 + :goto_a
17512 + return-wide v0
17514 + :cond_b
17515 + const-wide/16 v0, 0x0
17517 + goto :goto_a
17518 +.end method
17520 +.method public getPosition()I
17521 + .registers 5
17523 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17525 + if-eqz v1, :cond_37
17527 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17529 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17531 + move-result v1
17533 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17535 + move-result v0
17537 + const-string v1, "PrivacyCursor"
17539 + new-instance v2, Ljava/lang/StringBuilder;
17541 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
17543 + const-string v3, "getPosition - mapped position: "
17545 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17547 + move-result-object v2
17549 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17551 + move-result-object v2
17553 + const-string v3, " real position: "
17555 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17557 + move-result-object v2
17559 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17561 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17563 + move-result v3
17565 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17567 + move-result-object v2
17569 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17571 + move-result-object v2
17573 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17575 + :goto_36
17576 + return v0
17578 + :cond_37
17579 + const/4 v0, -0x1
17581 + goto :goto_36
17582 +.end method
17584 +.method public getShort(I)S
17585 + .registers 3
17587 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17589 + if-eqz v0, :cond_b
17591 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17593 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
17595 + move-result v0
17597 + :goto_a
17598 + return v0
17600 + :cond_b
17601 + const/4 v0, 0x0
17603 + goto :goto_a
17604 +.end method
17606 +.method public getString(I)Ljava/lang/String;
17607 + .registers 3
17609 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17611 + if-eqz v0, :cond_b
17613 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17615 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
17617 + move-result-object v0
17619 + :goto_a
17620 + return-object v0
17622 + :cond_b
17623 + const-string v0, ""
17625 + goto :goto_a
17626 +.end method
17628 +.method public getType(I)I
17629 + .registers 3
17631 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17633 + if-eqz v0, :cond_b
17635 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17637 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
17639 + move-result v0
17641 + :goto_a
17642 + return v0
17644 + :cond_b
17645 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17647 + const/4 v0, 0x0
17649 + goto :goto_a
17650 +.end method
17652 +.method public getWantsAllOnMoveCalls()Z
17653 + .registers 2
17655 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17657 + if-eqz v0, :cond_b
17659 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17661 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
17663 + move-result v0
17665 + :goto_a
17666 + return v0
17668 + :cond_b
17669 + const/4 v0, 0x0
17671 + goto :goto_a
17672 +.end method
17674 +.method public isAfterLast()Z
17675 + .registers 2
17677 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17679 + if-eqz v0, :cond_b
17681 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17683 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
17685 + move-result v0
17687 + :goto_a
17688 + return v0
17690 + :cond_b
17691 + const/4 v0, 0x0
17693 + goto :goto_a
17694 +.end method
17696 +.method public isBeforeFirst()Z
17697 + .registers 2
17699 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17701 + if-eqz v0, :cond_b
17703 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17705 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
17707 + move-result v0
17709 + :goto_a
17710 + return v0
17712 + :cond_b
17713 + const/4 v0, 0x0
17715 + goto :goto_a
17716 +.end method
17718 +.method public isClosed()Z
17719 + .registers 2
17721 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17723 + if-eqz v0, :cond_b
17725 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17727 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
17729 + move-result v0
17731 + :goto_a
17732 + return v0
17734 + :cond_b
17735 + const/4 v0, 0x0
17737 + goto :goto_a
17738 +.end method
17740 +.method public isFirst()Z
17741 + .registers 4
17743 + const/4 v0, 0x0
17745 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17747 + if-eqz v1, :cond_12
17749 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17751 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17753 + move-result v1
17755 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17757 + aget v2, v2, v0
17759 + if-ne v1, v2, :cond_12
17761 + const/4 v0, 0x1
17763 + :cond_12
17764 + return v0
17765 +.end method
17767 +.method public isLast()Z
17768 + .registers 4
17770 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17772 + if-eqz v0, :cond_17
17774 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17776 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
17778 + move-result v0
17780 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17782 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17784 + array-length v2, v2
17786 + add-int/lit8 v2, v2, -0x1
17788 + aget v1, v1, v2
17790 + if-ne v0, v1, :cond_17
17792 + const/4 v0, 0x1
17794 + :goto_16
17795 + return v0
17797 + :cond_17
17798 + const/4 v0, 0x0
17800 + goto :goto_16
17801 +.end method
17803 +.method public isNull(I)Z
17804 + .registers 3
17806 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17808 + if-eqz v0, :cond_b
17810 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17812 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
17814 + move-result v0
17816 + :goto_a
17817 + return v0
17819 + :cond_b
17820 + const/4 v0, 0x0
17822 + goto :goto_a
17823 +.end method
17825 +.method public move(I)Z
17826 + .registers 8
17828 + const/4 v2, 0x0
17830 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17832 + if-eqz v3, :cond_33
17834 + const-string v3, "PrivacyCursor"
17836 + new-instance v4, Ljava/lang/StringBuilder;
17838 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
17840 + const-string/jumbo v5, "move - offset: "
17842 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17844 + move-result-object v4
17846 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17848 + move-result-object v4
17850 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17852 + move-result-object v4
17854 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17856 + :try_start_1e
17857 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17859 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17861 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
17863 + move-result v4
17865 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17867 + move-result v4
17869 + add-int/2addr v4, p1
17871 + aget v1, v3, v4
17873 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17875 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
17876 + :try_end_32
17877 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_1e .. :try_end_32} :catch_34
17879 + move-result v2
17881 + :cond_33
17882 + :goto_33
17883 + return v2
17885 + :catch_34
17886 + move-exception v0
17888 + goto :goto_33
17889 +.end method
17891 +.method public moveToFirst()Z
17892 + .registers 4
17894 + const/4 v0, 0x0
17896 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17898 + if-eqz v1, :cond_f
17900 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17902 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17904 + aget v2, v2, v0
17906 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
17908 + move-result v0
17910 + :cond_f
17911 + return v0
17912 +.end method
17914 +.method public moveToLast()Z
17915 + .registers 5
17917 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17919 + if-eqz v1, :cond_14
17921 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17923 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17925 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17927 + array-length v3, v3
17929 + add-int/lit8 v3, v3, -0x1
17931 + aget v2, v2, v3
17933 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
17935 + move-result v0
17937 + :goto_13
17938 + return v0
17940 + :cond_14
17941 + const/4 v0, 0x0
17943 + goto :goto_13
17944 +.end method
17946 +.method public moveToNext()Z
17947 + .registers 3
17949 + const/4 v0, 0x0
17951 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17953 + if-eqz v1, :cond_d
17955 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17957 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
17959 + move-result v1
17961 + if-nez v1, :cond_e
17963 + :cond_d
17964 + return v0
17966 + :cond_e
17967 + const/4 v0, 0x1
17969 + :goto_f
17970 + const/4 v1, 0x1
17972 + if-ne v0, v1, :cond_d
17974 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17976 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17978 + move-result v1
17980 + if-nez v1, :cond_d
17982 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17984 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
17986 + move-result v0
17988 + goto :goto_f
17989 +.end method
17991 +.method public moveToPosition(I)Z
17992 + .registers 6
17994 + const/4 v1, 0x0
17996 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17998 + if-eqz v2, :cond_f
18000 + :try_start_5
18001 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18003 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18005 + aget v3, v3, p1
18007 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
18008 + :try_end_e
18009 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_5 .. :try_end_e} :catch_10
18011 + move-result v1
18013 + :cond_f
18014 + :goto_f
18015 + return v1
18017 + :catch_10
18018 + move-exception v0
18020 + goto :goto_f
18021 +.end method
18023 +.method public moveToPrevious()Z
18024 + .registers 3
18026 + const/4 v0, 0x0
18028 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18030 + if-eqz v1, :cond_d
18032 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18034 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18036 + move-result v1
18038 + if-nez v1, :cond_e
18040 + :cond_d
18041 + return v0
18043 + :cond_e
18044 + const/4 v0, 0x1
18046 + :goto_f
18047 + const/4 v1, 0x1
18049 + if-ne v0, v1, :cond_d
18051 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18053 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18055 + move-result v1
18057 + if-nez v1, :cond_d
18059 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18061 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18063 + move-result v0
18065 + goto :goto_f
18066 +.end method
18068 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
18069 + .registers 3
18071 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18073 + if-eqz v0, :cond_9
18075 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18077 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
18079 + :cond_9
18080 + return-void
18081 +.end method
18083 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
18084 + .registers 3
18086 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18088 + if-eqz v0, :cond_9
18090 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18092 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
18094 + :cond_9
18095 + return-void
18096 +.end method
18098 +.method public requery()Z
18099 + .registers 2
18101 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18103 + if-eqz v0, :cond_b
18105 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18107 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
18109 + move-result v0
18111 + :goto_a
18112 + return v0
18114 + :cond_b
18115 + const/4 v0, 0x0
18117 + goto :goto_a
18118 +.end method
18120 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18121 + .registers 3
18123 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18125 + if-eqz v0, :cond_b
18127 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18129 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18131 + move-result-object v0
18133 + :goto_a
18134 + return-object v0
18136 + :cond_b
18137 + new-instance v0, Landroid/os/Bundle;
18139 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
18141 + goto :goto_a
18142 +.end method
18144 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18145 + .registers 4
18147 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18149 + if-eqz v0, :cond_9
18151 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18153 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18155 + :cond_9
18156 + return-void
18157 +.end method
18159 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
18160 + .registers 3
18162 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18164 + if-eqz v0, :cond_9
18166 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18168 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
18170 + :cond_9
18171 + return-void
18172 +.end method
18174 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18175 + .registers 3
18177 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18179 + if-eqz v0, :cond_9
18181 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18183 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18185 + :cond_9
18186 + return-void
18187 +.end method
18188 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
18189 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 18:00:00.000000000 -0600
18190 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-05-10 15:14:35.594467261 -0500
18191 @@ -0,0 +1,134 @@
18192 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18193 +.super Ljava/lang/Thread;
18194 +.source "PrivacyLocationManager.java"
18197 +# annotations
18198 +.annotation system Ldalvik/annotation/EnclosingClass;
18199 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
18200 +.end annotation
18202 +.annotation system Ldalvik/annotation/InnerClass;
18203 + accessFlags = 0x2
18204 + name = "PrivacyLocationUpdater"
18205 +.end annotation
18208 +# instance fields
18209 +.field private intent:Landroid/app/PendingIntent;
18211 +.field private latitude:D
18213 +.field private listener:Landroid/location/LocationListener;
18215 +.field private longitude:D
18217 +.field private provider:Ljava/lang/String;
18219 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18222 +# direct methods
18223 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18224 + .registers 9
18226 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18228 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
18230 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18232 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18234 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18236 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18238 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18240 + return-void
18241 +.end method
18244 +# virtual methods
18245 +.method public run()V
18246 + .registers 8
18248 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18250 + if-eqz v3, :cond_43
18252 + new-instance v2, Landroid/location/Location;
18254 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18256 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
18258 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18260 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
18262 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18264 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
18266 + const/4 v1, 0x0
18268 + :goto_16
18269 + const/4 v3, 0x5
18271 + if-ge v1, v3, :cond_43
18273 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18275 + if-eqz v3, :cond_34
18277 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18279 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
18281 + :cond_22
18282 + :goto_22
18283 + :try_start_22
18284 + invoke-static {}, Ljava/lang/Math;->random()D
18286 + move-result-wide v3
18288 + const-wide v5, 0x408f400000000000L
18290 + mul-double/2addr v3, v5
18292 + double-to-int v3, v3
18294 + int-to-long v3, v3
18296 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
18297 + :try_end_31
18298 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
18300 + :goto_31
18301 + add-int/lit8 v1, v1, 0x1
18303 + goto :goto_16
18305 + :cond_34
18306 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18308 + if-eqz v3, :cond_22
18310 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18312 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
18314 + goto :goto_22
18316 + :catch_3e
18317 + move-exception v0
18319 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
18321 + goto :goto_31
18323 + :cond_43
18324 + return-void
18325 +.end method
18326 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
18327 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 18:00:00.000000000 -0600
18328 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-05-10 15:14:35.598467286 -0500
18329 @@ -0,0 +1,2091 @@
18330 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
18331 +.super Landroid/location/LocationManager;
18332 +.source "PrivacyLocationManager.java"
18335 +# annotations
18336 +.annotation system Ldalvik/annotation/MemberClasses;
18337 + value = {
18338 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18340 +.end annotation
18343 +# static fields
18344 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
18346 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
18349 +# instance fields
18350 +.field private context:Landroid/content/Context;
18352 +.field private lock:Ljava/lang/Object;
18354 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
18357 +# direct methods
18358 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
18359 + .registers 5
18361 + invoke-direct {p0, p1}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
18363 + new-instance v0, Ljava/lang/Object;
18365 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
18367 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18369 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18371 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
18373 + const-string/jumbo v1, "privacy"
18375 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
18377 + move-result-object v1
18379 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
18381 + move-result-object v1
18383 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
18385 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18387 + return-void
18388 +.end method
18390 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18391 + .registers 7
18393 + const/4 v2, 0x3
18395 + if-nez p1, :cond_5
18397 + const/4 v0, 0x0
18399 + :goto_4
18400 + return v0
18402 + :cond_5
18403 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
18405 + move-result v0
18407 + const/4 v1, 0x1
18409 + if-eq v0, v1, :cond_24
18411 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
18413 + move-result v0
18415 + if-eq v0, v2, :cond_24
18417 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
18419 + move-result v0
18421 + if-eq v0, v2, :cond_24
18423 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
18425 + move-result v0
18427 + if-eq v0, v2, :cond_24
18429 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
18431 + move-result v0
18433 + if-ne v0, v2, :cond_2b
18435 + :cond_24
18436 + const-string v0, "gps"
18438 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18440 + move-result v0
18442 + goto :goto_4
18444 + :cond_2b
18445 + const-string/jumbo v0, "network"
18447 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18449 + move-result v0
18451 + goto :goto_4
18452 +.end method
18454 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18455 + .registers 24
18457 + move-object/from16 v0, p0
18459 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18461 + move-object/from16 v19, v0
18463 + monitor-enter v19
18465 + :try_start_7
18466 + move-object/from16 v0, p0
18468 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18470 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
18472 + move-result-object v2
18474 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
18476 + move-result v3
18478 + move-object/from16 v0, p0
18480 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18482 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
18484 + move-result-object v7
18486 + const/16 v18, 0x0
18488 + if-eqz v7, :cond_239
18490 + const-string v1, "gps"
18492 + move-object/from16 v0, p1
18494 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18496 + move-result v1
18498 + if-eqz v1, :cond_111
18500 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
18502 + move-result v1
18504 + packed-switch v1, :pswitch_data_25e
18506 + :cond_30
18507 + :goto_30
18508 + monitor-exit v19
18510 + return v18
18512 + :pswitch_32
18513 + move-object/from16 v0, p0
18515 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18517 + const/4 v4, 0x0
18519 + const-string v5, "locationGPS"
18521 + const/4 v6, 0x0
18523 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18525 + goto :goto_30
18527 + :catchall_3e
18528 + move-exception v1
18530 + monitor-exit v19
18531 + :try_end_40
18532 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
18534 + throw v1
18536 + :pswitch_41
18537 + if-eqz p3, :cond_46
18539 + :try_start_43
18540 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18542 + :cond_46
18543 + const/16 v18, 0x1
18545 + move-object/from16 v0, p0
18547 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18549 + const/4 v4, 0x1
18551 + const-string v5, "locationGPS"
18553 + const/4 v6, 0x0
18555 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18556 + :try_end_53
18557 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
18559 + goto :goto_30
18561 + :pswitch_54
18562 + :try_start_54
18563 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18565 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18567 + move-result-object v1
18569 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18571 + move-result-wide v13
18573 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18575 + move-result-object v1
18577 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18579 + move-result-wide v15
18581 + move-object/from16 v9, p0
18583 + move-object/from16 v10, p1
18585 + move-object/from16 v11, p2
18587 + move-object/from16 v12, p3
18589 + 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
18591 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18592 + :try_end_74
18593 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
18594 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
18596 + const/16 v18, 0x1
18598 + :goto_76
18599 + :try_start_76
18600 + move-object/from16 v0, p0
18602 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18604 + const/4 v4, 0x2
18606 + const-string v5, "locationGPS"
18608 + new-instance v6, Ljava/lang/StringBuilder;
18610 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18612 + const-string v8, "Lat: "
18614 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18616 + move-result-object v6
18618 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18620 + move-result-object v8
18622 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18624 + move-result-object v6
18626 + const-string v8, " Lon: "
18628 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18630 + move-result-object v6
18632 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18634 + move-result-object v8
18636 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18638 + move-result-object v6
18640 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18642 + move-result-object v6
18644 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18646 + goto :goto_30
18648 + :catch_a6
18649 + move-exception v17
18651 + const-string v1, "PrivacyLocationManager"
18653 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18655 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18656 + :try_end_af
18657 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
18659 + const/16 v18, 0x1
18661 + goto :goto_76
18663 + :pswitch_b2
18664 + :try_start_b2
18665 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18667 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18669 + move-result-object v1
18671 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18673 + move-result-wide v13
18675 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18677 + move-result-object v1
18679 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18681 + move-result-wide v15
18683 + move-object/from16 v9, p0
18685 + move-object/from16 v10, p1
18687 + move-object/from16 v11, p2
18689 + move-object/from16 v12, p3
18691 + 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
18693 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18694 + :try_end_d2
18695 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
18696 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
18698 + const/16 v18, 0x1
18700 + :goto_d4
18701 + :try_start_d4
18702 + move-object/from16 v0, p0
18704 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18706 + const/4 v4, 0x3
18708 + const-string v5, "locationGPS"
18710 + new-instance v6, Ljava/lang/StringBuilder;
18712 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18714 + const-string v8, "Lat: "
18716 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18718 + move-result-object v6
18720 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18722 + move-result-object v8
18724 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18726 + move-result-object v6
18728 + const-string v8, " Lon: "
18730 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18732 + move-result-object v6
18734 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18736 + move-result-object v8
18738 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18740 + move-result-object v6
18742 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18744 + move-result-object v6
18746 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18748 + goto/16 :goto_30
18750 + :catch_105
18751 + move-exception v17
18753 + const-string v1, "PrivacyLocationManager"
18755 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18757 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18759 + const/16 v18, 0x1
18761 + goto :goto_d4
18763 + :cond_111
18764 + const-string/jumbo v1, "network"
18766 + move-object/from16 v0, p1
18768 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18770 + move-result v1
18772 + if-eqz v1, :cond_204
18774 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
18776 + move-result v1
18778 + packed-switch v1, :pswitch_data_26a
18780 + goto/16 :goto_30
18782 + :pswitch_125
18783 + move-object/from16 v0, p0
18785 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18787 + const/4 v4, 0x0
18789 + const-string v5, "locationNetwork"
18791 + const/4 v6, 0x0
18793 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18795 + goto/16 :goto_30
18797 + :pswitch_132
18798 + if-eqz p3, :cond_137
18800 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18802 + :cond_137
18803 + const/16 v18, 0x1
18805 + move-object/from16 v0, p0
18807 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18809 + const/4 v4, 0x1
18811 + const-string v5, "locationNetwork"
18813 + const/4 v6, 0x0
18815 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18816 + :try_end_144
18817 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
18819 + goto/16 :goto_30
18821 + :pswitch_146
18822 + :try_start_146
18823 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18825 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18827 + move-result-object v1
18829 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18831 + move-result-wide v13
18833 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18835 + move-result-object v1
18837 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18839 + move-result-wide v15
18841 + move-object/from16 v9, p0
18843 + move-object/from16 v10, p1
18845 + move-object/from16 v11, p2
18847 + move-object/from16 v12, p3
18849 + 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
18851 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18852 + :try_end_166
18853 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
18854 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
18856 + const/16 v18, 0x1
18858 + :goto_168
18859 + :try_start_168
18860 + move-object/from16 v0, p0
18862 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18864 + const/4 v4, 0x2
18866 + const-string v5, "locationNetwork"
18868 + new-instance v6, Ljava/lang/StringBuilder;
18870 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18872 + const-string v8, "Lat: "
18874 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18876 + move-result-object v6
18878 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18880 + move-result-object v8
18882 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18884 + move-result-object v6
18886 + const-string v8, " Lon: "
18888 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18890 + move-result-object v6
18892 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18894 + move-result-object v8
18896 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18898 + move-result-object v6
18900 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18902 + move-result-object v6
18904 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18906 + goto/16 :goto_30
18908 + :catch_199
18909 + move-exception v17
18911 + const-string v1, "PrivacyLocationManager"
18913 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
18915 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
18916 + :try_end_1a2
18917 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
18919 + const/16 v18, 0x1
18921 + goto :goto_168
18923 + :pswitch_1a5
18924 + :try_start_1a5
18925 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18927 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18929 + move-result-object v1
18931 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18933 + move-result-wide v13
18935 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18937 + move-result-object v1
18939 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18941 + move-result-wide v15
18943 + move-object/from16 v9, p0
18945 + move-object/from16 v10, p1
18947 + move-object/from16 v11, p2
18949 + move-object/from16 v12, p3
18951 + 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
18953 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18954 + :try_end_1c5
18955 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
18956 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
18958 + const/16 v18, 0x1
18960 + :goto_1c7
18961 + :try_start_1c7
18962 + move-object/from16 v0, p0
18964 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18966 + const/4 v4, 0x3
18968 + const-string v5, "locationNetwork"
18970 + new-instance v6, Ljava/lang/StringBuilder;
18972 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
18974 + const-string v8, "Lat: "
18976 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18978 + move-result-object v6
18980 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
18982 + move-result-object v8
18984 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18986 + move-result-object v6
18988 + const-string v8, " Lon: "
18990 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18992 + move-result-object v6
18994 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
18996 + move-result-object v8
18998 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19000 + move-result-object v6
19002 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19004 + move-result-object v6
19006 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19008 + goto/16 :goto_30
19010 + :catch_1f8
19011 + move-exception v17
19013 + const-string v1, "PrivacyLocationManager"
19015 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19017 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19019 + const/16 v18, 0x1
19021 + goto :goto_1c7
19023 + :cond_204
19024 + const-string/jumbo v1, "passive"
19026 + move-object/from16 v0, p1
19028 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19030 + move-result v1
19032 + if-eqz v1, :cond_30
19034 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19036 + move-result v1
19038 + if-nez v1, :cond_22a
19040 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19042 + move-result v1
19044 + if-nez v1, :cond_22a
19046 + const/16 v18, 0x0
19048 + move-object/from16 v0, p0
19050 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19052 + const/4 v4, 0x0
19054 + const-string v5, "locationGPS"
19056 + const/4 v6, 0x0
19058 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19060 + goto/16 :goto_30
19062 + :cond_22a
19063 + const/16 v18, 0x1
19065 + move-object/from16 v0, p0
19067 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19069 + const/4 v4, 0x1
19071 + const-string v5, "locationGPS"
19073 + const/4 v6, 0x0
19075 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19077 + goto/16 :goto_30
19079 + :cond_239
19080 + const-string/jumbo v1, "network"
19082 + move-object/from16 v0, p1
19084 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19086 + move-result v1
19088 + if-eqz v1, :cond_251
19090 + move-object/from16 v0, p0
19092 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19094 + const/4 v4, 0x0
19096 + const-string v5, "locationNetwork"
19098 + const/4 v6, 0x0
19100 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19102 + goto/16 :goto_30
19104 + :cond_251
19105 + move-object/from16 v0, p0
19107 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19109 + const/4 v4, 0x0
19111 + const-string v5, "locationGPS"
19113 + const/4 v6, 0x0
19115 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19116 + :try_end_25c
19117 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
19119 + goto/16 :goto_30
19121 + :pswitch_data_25e
19122 + .packed-switch 0x0
19123 + :pswitch_32
19124 + :pswitch_41
19125 + :pswitch_54
19126 + :pswitch_b2
19127 + .end packed-switch
19129 + :pswitch_data_26a
19130 + .packed-switch 0x0
19131 + :pswitch_125
19132 + :pswitch_132
19133 + :pswitch_146
19134 + :pswitch_1a5
19135 + .end packed-switch
19136 +.end method
19139 +# virtual methods
19140 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19141 + .registers 10
19143 + const/4 v5, 0x0
19145 + const/4 v7, 0x0
19147 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19149 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19151 + move-result-object v1
19153 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19155 + move-result v2
19157 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19159 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19161 + move-result-object v6
19163 + if-eqz v6, :cond_24
19165 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19167 + move-result v0
19169 + if-eqz v0, :cond_24
19171 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19173 + const/4 v3, 0x1
19175 + const-string v4, "locationGPS"
19177 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19179 + move v0, v7
19181 + :goto_23
19182 + return v0
19184 + :cond_24
19185 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19187 + const-string v4, "locationGPS"
19189 + move v3, v7
19191 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19193 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19195 + move-result v0
19197 + goto :goto_23
19198 +.end method
19200 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19201 + .registers 14
19203 + const/4 v11, 0x3
19205 + const/4 v10, 0x2
19207 + const/4 v8, 0x1
19209 + const/4 v3, 0x0
19211 + const/4 v5, 0x0
19213 + if-nez p1, :cond_c
19215 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19217 + move-result-object v7
19219 + :cond_b
19220 + :goto_b
19221 + return-object v7
19223 + :cond_c
19224 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19226 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19228 + move-result-object v1
19230 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19232 + move-result v2
19234 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19236 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19238 + move-result-object v6
19240 + const/4 v7, 0x0
19242 + if-eqz v6, :cond_22c
19244 + const-string v0, "gps"
19246 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19248 + move-result v0
19250 + if-eqz v0, :cond_ff
19252 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19254 + move-result v0
19256 + packed-switch v0, :pswitch_data_29a
19258 + goto :goto_b
19260 + :pswitch_2f
19261 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19263 + move-result-object v7
19265 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19267 + const-string v4, "locationGPS"
19269 + if-eqz v7, :cond_5e
19271 + new-instance v5, Ljava/lang/StringBuilder;
19273 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19275 + const-string v8, "Lat: "
19277 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19279 + move-result-object v5
19281 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19283 + move-result-wide v8
19285 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19287 + move-result-object v5
19289 + const-string v8, " Lon: "
19291 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19293 + move-result-object v5
19295 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19297 + move-result-wide v8
19299 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19301 + move-result-object v5
19303 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19305 + move-result-object v5
19307 + :cond_5e
19308 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19310 + goto :goto_b
19312 + :pswitch_62
19313 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19315 + const-string v4, "locationGPS"
19317 + move v3, v8
19319 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19321 + goto :goto_b
19323 + :pswitch_6b
19324 + new-instance v7, Landroid/location/Location;
19326 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19328 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19330 + move-result-object v0
19332 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19334 + move-result-wide v3
19336 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19338 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19340 + move-result-object v0
19342 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19344 + move-result-wide v3
19346 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19348 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19350 + const-string v4, "locationGPS"
19352 + new-instance v3, Ljava/lang/StringBuilder;
19354 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19356 + const-string v5, "Lat: "
19358 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19360 + move-result-object v3
19362 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19364 + move-result-wide v8
19366 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19368 + move-result-object v3
19370 + const-string v5, " Lon: "
19372 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19374 + move-result-object v3
19376 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19378 + move-result-wide v8
19380 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19382 + move-result-object v3
19384 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19386 + move-result-object v5
19388 + move v3, v10
19390 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19392 + goto/16 :goto_b
19394 + :pswitch_b5
19395 + new-instance v7, Landroid/location/Location;
19397 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19399 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19401 + move-result-object v0
19403 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19405 + move-result-wide v3
19407 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19409 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19411 + move-result-object v0
19413 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19415 + move-result-wide v3
19417 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19419 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19421 + const-string v4, "locationGPS"
19423 + new-instance v3, Ljava/lang/StringBuilder;
19425 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19427 + const-string v5, "Lat: "
19429 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19431 + move-result-object v3
19433 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19435 + move-result-wide v8
19437 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19439 + move-result-object v3
19441 + const-string v5, " Lon: "
19443 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19445 + move-result-object v3
19447 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19449 + move-result-wide v8
19451 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19453 + move-result-object v3
19455 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19457 + move-result-object v5
19459 + move v3, v11
19461 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19463 + goto/16 :goto_b
19465 + :cond_ff
19466 + const-string/jumbo v0, "network"
19468 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19470 + move-result v0
19472 + if-eqz v0, :cond_1e3
19474 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19476 + move-result v0
19478 + packed-switch v0, :pswitch_data_2a6
19480 + goto/16 :goto_b
19482 + :pswitch_111
19483 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19485 + move-result-object v7
19487 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19489 + const-string v4, "locationNetwork"
19491 + if-eqz v7, :cond_140
19493 + new-instance v5, Ljava/lang/StringBuilder;
19495 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19497 + const-string v8, "Lat: "
19499 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19501 + move-result-object v5
19503 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19505 + move-result-wide v8
19507 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19509 + move-result-object v5
19511 + const-string v8, " Lon: "
19513 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19515 + move-result-object v5
19517 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19519 + move-result-wide v8
19521 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19523 + move-result-object v5
19525 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19527 + move-result-object v5
19529 + :cond_140
19530 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19532 + goto/16 :goto_b
19534 + :pswitch_145
19535 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19537 + const-string v4, "locationNetwork"
19539 + move v3, v8
19541 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19543 + goto/16 :goto_b
19545 + :pswitch_14f
19546 + new-instance v7, Landroid/location/Location;
19548 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19550 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19552 + move-result-object v0
19554 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19556 + move-result-wide v3
19558 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19560 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19562 + move-result-object v0
19564 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19566 + move-result-wide v3
19568 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19570 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19572 + const-string v4, "locationNetwork"
19574 + new-instance v3, Ljava/lang/StringBuilder;
19576 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19578 + const-string v5, "Lat: "
19580 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19582 + move-result-object v3
19584 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19586 + move-result-wide v8
19588 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19590 + move-result-object v3
19592 + const-string v5, " Lon: "
19594 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19596 + move-result-object v3
19598 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19600 + move-result-wide v8
19602 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19604 + move-result-object v3
19606 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19608 + move-result-object v5
19610 + move v3, v10
19612 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19614 + goto/16 :goto_b
19616 + :pswitch_199
19617 + new-instance v7, Landroid/location/Location;
19619 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19621 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19623 + move-result-object v0
19625 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19627 + move-result-wide v3
19629 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19631 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19633 + move-result-object v0
19635 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19637 + move-result-wide v3
19639 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19641 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19643 + const-string v4, "locationNetwork"
19645 + new-instance v3, Ljava/lang/StringBuilder;
19647 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19649 + const-string v5, "Lat: "
19651 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19653 + move-result-object v3
19655 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19657 + move-result-wide v8
19659 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19661 + move-result-object v3
19663 + const-string v5, " Lon: "
19665 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19667 + move-result-object v3
19669 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19671 + move-result-wide v8
19673 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19675 + move-result-object v3
19677 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19679 + move-result-object v5
19681 + move v3, v11
19683 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19685 + goto/16 :goto_b
19687 + :cond_1e3
19688 + const-string/jumbo v0, "passive"
19690 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19692 + move-result v0
19694 + if-eqz v0, :cond_b
19696 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19698 + move-result v0
19700 + if-nez v0, :cond_b
19702 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19704 + move-result v0
19706 + if-nez v0, :cond_b
19708 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19710 + move-result-object v7
19712 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19714 + const-string v4, "locationGPS"
19716 + if-eqz v7, :cond_227
19718 + new-instance v5, Ljava/lang/StringBuilder;
19720 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19722 + const-string v8, "Lat: "
19724 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19726 + move-result-object v5
19728 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19730 + move-result-wide v8
19732 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19734 + move-result-object v5
19736 + const-string v8, " Lon: "
19738 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19740 + move-result-object v5
19742 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19744 + move-result-wide v8
19746 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19748 + move-result-object v5
19750 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19752 + move-result-object v5
19754 + :cond_227
19755 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19757 + goto/16 :goto_b
19759 + :cond_22c
19760 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19762 + move-result-object v7
19764 + const-string/jumbo v0, "network"
19766 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19768 + move-result v0
19770 + if-eqz v0, :cond_269
19772 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19774 + const-string v4, "locationNetwork"
19776 + if-eqz v7, :cond_264
19778 + new-instance v5, Ljava/lang/StringBuilder;
19780 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19782 + const-string v8, "Lat: "
19784 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19786 + move-result-object v5
19788 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19790 + move-result-wide v8
19792 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19794 + move-result-object v5
19796 + const-string v8, " Lon: "
19798 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19800 + move-result-object v5
19802 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19804 + move-result-wide v8
19806 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19808 + move-result-object v5
19810 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19812 + move-result-object v5
19814 + :cond_264
19815 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19817 + goto/16 :goto_b
19819 + :cond_269
19820 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19822 + const-string v4, "locationGPS"
19824 + if-eqz v7, :cond_294
19826 + new-instance v5, Ljava/lang/StringBuilder;
19828 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19830 + const-string v8, "Lat: "
19832 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19834 + move-result-object v5
19836 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19838 + move-result-wide v8
19840 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19842 + move-result-object v5
19844 + const-string v8, " Lon: "
19846 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19848 + move-result-object v5
19850 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19852 + move-result-wide v8
19854 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19856 + move-result-object v5
19858 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19860 + move-result-object v5
19862 + :cond_294
19863 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19865 + goto/16 :goto_b
19867 + nop
19869 + :pswitch_data_29a
19870 + .packed-switch 0x0
19871 + :pswitch_2f
19872 + :pswitch_62
19873 + :pswitch_6b
19874 + :pswitch_b5
19875 + .end packed-switch
19877 + :pswitch_data_2a6
19878 + .packed-switch 0x0
19879 + :pswitch_111
19880 + :pswitch_145
19881 + :pswitch_14f
19882 + :pswitch_199
19883 + .end packed-switch
19884 +.end method
19886 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19887 + .registers 7
19889 + if-nez p1, :cond_7
19891 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19893 + move-result-object v0
19895 + :cond_6
19896 + :goto_6
19897 + return-object v0
19899 + :cond_7
19900 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19902 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19904 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19906 + move-result-object v3
19908 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19910 + move-result v4
19912 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19914 + move-result-object v1
19916 + const/4 v0, 0x0
19918 + if-eqz v1, :cond_5f
19920 + const-string v2, "gps"
19922 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19924 + move-result v2
19926 + if-eqz v2, :cond_2f
19928 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19930 + move-result v2
19932 + packed-switch v2, :pswitch_data_64
19934 + :pswitch_29
19935 + goto :goto_6
19937 + :pswitch_2a
19938 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19940 + move-result-object v0
19942 + goto :goto_6
19944 + :cond_2f
19945 + const-string/jumbo v2, "network"
19947 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19949 + move-result v2
19951 + if-eqz v2, :cond_45
19953 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19955 + move-result v2
19957 + packed-switch v2, :pswitch_data_70
19959 + :pswitch_3f
19960 + goto :goto_6
19962 + :pswitch_40
19963 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19965 + move-result-object v0
19967 + goto :goto_6
19969 + :cond_45
19970 + const-string/jumbo v2, "passive"
19972 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19974 + move-result v2
19976 + if-eqz v2, :cond_6
19978 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19980 + move-result v2
19982 + if-eqz v2, :cond_5a
19984 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19986 + move-result v2
19988 + if-nez v2, :cond_6
19990 + :cond_5a
19991 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
19993 + move-result-object v0
19995 + goto :goto_6
19997 + :cond_5f
19998 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20000 + move-result-object v0
20002 + goto :goto_6
20004 + :pswitch_data_64
20005 + .packed-switch 0x0
20006 + :pswitch_2a
20007 + :pswitch_29
20008 + :pswitch_2a
20009 + :pswitch_2a
20010 + .end packed-switch
20012 + :pswitch_data_70
20013 + .packed-switch 0x0
20014 + :pswitch_40
20015 + :pswitch_3f
20016 + :pswitch_40
20017 + :pswitch_40
20018 + .end packed-switch
20019 +.end method
20021 +.method public isProviderEnabled(Ljava/lang/String;)Z
20022 + .registers 7
20024 + if-nez p1, :cond_7
20026 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20028 + move-result v0
20030 + :cond_6
20031 + :goto_6
20032 + :pswitch_6
20033 + return v0
20035 + :cond_7
20036 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20038 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20040 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20042 + move-result-object v3
20044 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20046 + move-result v4
20048 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20050 + move-result-object v1
20052 + const/4 v0, 0x0
20054 + if-eqz v1, :cond_65
20056 + const-string v2, "gps"
20058 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20060 + move-result v2
20062 + if-eqz v2, :cond_31
20064 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20066 + move-result v2
20068 + packed-switch v2, :pswitch_data_6a
20070 + goto :goto_6
20072 + :pswitch_2a
20073 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20075 + move-result v0
20077 + goto :goto_6
20079 + :pswitch_2f
20080 + const/4 v0, 0x1
20082 + goto :goto_6
20084 + :cond_31
20085 + const-string/jumbo v2, "network"
20087 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20089 + move-result v2
20091 + if-eqz v2, :cond_49
20093 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20095 + move-result v2
20097 + packed-switch v2, :pswitch_data_76
20099 + goto :goto_6
20101 + :pswitch_42
20102 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20104 + move-result v0
20106 + goto :goto_6
20108 + :pswitch_47
20109 + const/4 v0, 0x1
20111 + goto :goto_6
20113 + :cond_49
20114 + const-string/jumbo v2, "passive"
20116 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20118 + move-result v2
20120 + if-eqz v2, :cond_6
20122 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20124 + move-result v2
20126 + if-eqz v2, :cond_5e
20128 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20130 + move-result v2
20132 + if-nez v2, :cond_63
20134 + :cond_5e
20135 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20137 + move-result v0
20139 + goto :goto_6
20141 + :cond_63
20142 + const/4 v0, 0x0
20144 + goto :goto_6
20146 + :cond_65
20147 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20149 + move-result v0
20151 + goto :goto_6
20153 + :pswitch_data_6a
20154 + .packed-switch 0x0
20155 + :pswitch_2a
20156 + :pswitch_6
20157 + :pswitch_2f
20158 + :pswitch_2f
20159 + .end packed-switch
20161 + :pswitch_data_76
20162 + .packed-switch 0x0
20163 + :pswitch_42
20164 + :pswitch_6
20165 + :pswitch_47
20166 + :pswitch_47
20167 + .end packed-switch
20168 +.end method
20170 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20171 + .registers 7
20173 + if-eqz p4, :cond_4
20175 + if-nez p5, :cond_8
20177 + :cond_4
20178 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20180 + :cond_7
20181 + :goto_7
20182 + return-void
20184 + :cond_8
20185 + const/4 v0, 0x0
20187 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20189 + move-result v0
20191 + if-nez v0, :cond_7
20193 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20195 + goto :goto_7
20196 +.end method
20198 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20199 + .registers 8
20201 + if-eqz p4, :cond_4
20203 + if-nez p5, :cond_8
20205 + :cond_4
20206 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20208 + :cond_7
20209 + :goto_7
20210 + return-void
20212 + :cond_8
20213 + const/4 v0, 0x0
20215 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20217 + move-result v0
20219 + if-nez v0, :cond_7
20221 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20223 + goto :goto_7
20224 +.end method
20226 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20227 + .registers 7
20229 + if-eqz p1, :cond_4
20231 + if-nez p5, :cond_8
20233 + :cond_4
20234 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20236 + :cond_7
20237 + :goto_7
20238 + return-void
20240 + :cond_8
20241 + const/4 v0, 0x0
20243 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20245 + move-result v0
20247 + if-nez v0, :cond_7
20249 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20251 + goto :goto_7
20252 +.end method
20254 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20255 + .registers 7
20257 + if-eqz p1, :cond_4
20259 + if-nez p5, :cond_8
20261 + :cond_4
20262 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20264 + :cond_7
20265 + :goto_7
20266 + return-void
20268 + :cond_8
20269 + const/4 v0, 0x0
20271 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20273 + move-result v0
20275 + if-nez v0, :cond_7
20277 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20279 + goto :goto_7
20280 +.end method
20282 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20283 + .registers 8
20285 + if-eqz p1, :cond_4
20287 + if-nez p5, :cond_8
20289 + :cond_4
20290 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20292 + :cond_7
20293 + :goto_7
20294 + return-void
20296 + :cond_8
20297 + const/4 v0, 0x0
20299 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20301 + move-result v0
20303 + if-nez v0, :cond_7
20305 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20307 + goto :goto_7
20308 +.end method
20310 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20311 + .registers 4
20313 + if-eqz p1, :cond_4
20315 + if-nez p2, :cond_8
20317 + :cond_4
20318 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20320 + :cond_7
20321 + :goto_7
20322 + return-void
20324 + :cond_8
20325 + const/4 v0, 0x0
20327 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20329 + move-result v0
20331 + if-nez v0, :cond_7
20333 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20335 + goto :goto_7
20336 +.end method
20338 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20339 + .registers 5
20341 + if-eqz p1, :cond_4
20343 + if-nez p2, :cond_8
20345 + :cond_4
20346 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20348 + :cond_7
20349 + :goto_7
20350 + return-void
20352 + :cond_8
20353 + const/4 v0, 0x0
20355 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20357 + move-result v0
20359 + if-nez v0, :cond_7
20361 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20363 + goto :goto_7
20364 +.end method
20366 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20367 + .registers 4
20369 + if-eqz p1, :cond_4
20371 + if-nez p2, :cond_8
20373 + :cond_4
20374 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20376 + :cond_7
20377 + :goto_7
20378 + return-void
20380 + :cond_8
20381 + const/4 v0, 0x0
20383 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20385 + move-result v0
20387 + if-nez v0, :cond_7
20389 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20391 + goto :goto_7
20392 +.end method
20394 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20395 + .registers 5
20397 + if-eqz p1, :cond_4
20399 + if-nez p2, :cond_8
20401 + :cond_4
20402 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20404 + :cond_7
20405 + :goto_7
20406 + return-void
20408 + :cond_8
20409 + const/4 v0, 0x0
20411 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20413 + move-result v0
20415 + if-nez v0, :cond_7
20417 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20419 + goto :goto_7
20420 +.end method
20421 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
20422 --- stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 18:00:00.000000000 -0600
20423 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-05-10 15:14:35.610467342 -0500
20424 @@ -0,0 +1,731 @@
20425 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
20426 +.super Landroid/telephony/TelephonyManager;
20427 +.source "PrivacyTelephonyManager.java"
20430 +# static fields
20431 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
20434 +# instance fields
20435 +.field private context:Landroid/content/Context;
20437 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
20440 +# direct methods
20441 +.method public constructor <init>(Landroid/content/Context;)V
20442 + .registers 4
20444 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
20446 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20448 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
20450 + const-string/jumbo v1, "privacy"
20452 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20454 + move-result-object v1
20456 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20458 + move-result-object v1
20460 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20462 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20464 + return-void
20465 +.end method
20467 +.method private getNetworkInfo()Ljava/lang/String;
20468 + .registers 8
20470 + const/4 v5, 0x0
20472 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20474 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20476 + move-result-object v1
20478 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20480 + move-result v2
20482 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20484 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20486 + move-result-object v6
20488 + if-eqz v6, :cond_25
20490 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
20492 + move-result v0
20494 + if-eqz v0, :cond_25
20496 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20498 + const/4 v3, 0x1
20500 + const-string/jumbo v4, "networkInfoCurrent"
20502 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20504 + const-string v5, ""
20506 + :goto_24
20507 + return-object v5
20509 + :cond_25
20510 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20512 + const/4 v3, 0x0
20514 + const-string/jumbo v4, "networkInfoCurrent"
20516 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20518 + goto :goto_24
20519 +.end method
20521 +.method private getSimInfo()Ljava/lang/String;
20522 + .registers 8
20524 + const/4 v5, 0x0
20526 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20528 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20530 + move-result-object v1
20532 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20534 + move-result v2
20536 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20538 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20540 + move-result-object v6
20542 + if-eqz v6, :cond_25
20544 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
20546 + move-result v0
20548 + if-eqz v0, :cond_25
20550 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20552 + const/4 v3, 0x1
20554 + const-string/jumbo v4, "networkInfoSIM"
20556 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20558 + const-string v5, ""
20560 + :goto_24
20561 + return-object v5
20563 + :cond_25
20564 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20566 + const/4 v3, 0x0
20568 + const-string/jumbo v4, "networkInfoSIM"
20570 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20572 + goto :goto_24
20573 +.end method
20576 +# virtual methods
20577 +.method public getDeviceId()Ljava/lang/String;
20578 + .registers 8
20580 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20582 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20584 + move-result-object v1
20586 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20588 + move-result v2
20590 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20592 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20594 + move-result-object v6
20596 + if-eqz v6, :cond_28
20598 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20600 + move-result v0
20602 + if-eqz v0, :cond_28
20604 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
20606 + move-result-object v5
20608 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20610 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
20612 + move-result v3
20614 + const-string v4, "deviceID"
20616 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20618 + :goto_27
20619 + return-object v5
20621 + :cond_28
20622 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
20624 + move-result-object v5
20626 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20628 + const/4 v3, 0x0
20630 + const-string v4, "deviceID"
20632 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20634 + goto :goto_27
20635 +.end method
20637 +.method public getLine1Number()Ljava/lang/String;
20638 + .registers 8
20640 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20642 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20644 + move-result-object v1
20646 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20648 + move-result v2
20650 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20652 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20654 + move-result-object v6
20656 + if-eqz v6, :cond_28
20658 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20660 + move-result v0
20662 + if-eqz v0, :cond_28
20664 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
20666 + move-result-object v5
20668 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20670 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
20672 + move-result v3
20674 + const-string v4, "line1Number"
20676 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20678 + :goto_27
20679 + return-object v5
20681 + :cond_28
20682 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
20684 + move-result-object v5
20686 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20688 + const/4 v3, 0x0
20690 + const-string v4, "line1Number"
20692 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20694 + goto :goto_27
20695 +.end method
20697 +.method public getNeighboringCellInfo()Ljava/util/List;
20698 + .registers 10
20699 + .annotation system Ldalvik/annotation/Signature;
20700 + value = {
20701 + "()",
20702 + "Ljava/util/List",
20703 + "<",
20704 + "Landroid/telephony/NeighboringCellInfo;",
20705 + ">;"
20707 + .end annotation
20709 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20711 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20713 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20715 + move-result-object v7
20717 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20719 + move-result v8
20721 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20723 + move-result-object v5
20725 + const/4 v3, 0x0
20727 + const-string v4, "[null]"
20729 + if-eqz v5, :cond_1c
20731 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20733 + move-result v6
20735 + const/4 v7, 0x1
20737 + if-ne v6, v7, :cond_1d
20739 + :cond_1c
20740 + :goto_1c
20741 + return-object v3
20743 + :cond_1d
20744 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20746 + move-result v6
20748 + if-eqz v6, :cond_2b
20750 + new-instance v3, Ljava/util/ArrayList;
20752 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
20754 + const-string v4, "[empty list of cells]"
20756 + goto :goto_1c
20758 + :cond_2b
20759 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
20761 + move-result-object v3
20763 + const-string v0, ""
20765 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
20767 + move-result-object v2
20769 + :goto_35
20770 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
20772 + move-result v6
20774 + if-eqz v6, :cond_5f
20776 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
20778 + move-result-object v1
20780 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
20782 + new-instance v6, Ljava/lang/StringBuilder;
20784 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20786 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20788 + move-result-object v6
20790 + const-string v7, "\t"
20792 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20794 + move-result-object v6
20796 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
20798 + move-result-object v6
20800 + const-string v7, "\n"
20802 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20804 + move-result-object v6
20806 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20808 + move-result-object v0
20810 + goto :goto_35
20812 + :cond_5f
20813 + new-instance v6, Ljava/lang/StringBuilder;
20815 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
20817 + const-string v7, "[real value]:\n"
20819 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20821 + move-result-object v6
20823 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20825 + move-result-object v6
20827 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20829 + move-result-object v4
20831 + goto :goto_1c
20832 +.end method
20834 +.method public getNetworkCountryIso()Ljava/lang/String;
20835 + .registers 2
20837 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20839 + move-result-object v0
20841 + if-nez v0, :cond_a
20843 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
20845 + move-result-object v0
20847 + :cond_a
20848 + return-object v0
20849 +.end method
20851 +.method public getNetworkOperator()Ljava/lang/String;
20852 + .registers 2
20854 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20856 + move-result-object v0
20858 + if-nez v0, :cond_a
20860 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
20862 + move-result-object v0
20864 + :cond_a
20865 + return-object v0
20866 +.end method
20868 +.method public getNetworkOperatorName()Ljava/lang/String;
20869 + .registers 2
20871 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
20873 + move-result-object v0
20875 + if-nez v0, :cond_a
20877 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
20879 + move-result-object v0
20881 + :cond_a
20882 + return-object v0
20883 +.end method
20885 +.method public getSimCountryIso()Ljava/lang/String;
20886 + .registers 2
20888 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20890 + move-result-object v0
20892 + if-nez v0, :cond_a
20894 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
20896 + move-result-object v0
20898 + :cond_a
20899 + return-object v0
20900 +.end method
20902 +.method public getSimOperator()Ljava/lang/String;
20903 + .registers 2
20905 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20907 + move-result-object v0
20909 + if-nez v0, :cond_a
20911 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
20913 + move-result-object v0
20915 + :cond_a
20916 + return-object v0
20917 +.end method
20919 +.method public getSimOperatorName()Ljava/lang/String;
20920 + .registers 2
20922 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
20924 + move-result-object v0
20926 + if-nez v0, :cond_a
20928 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
20930 + move-result-object v0
20932 + :cond_a
20933 + return-object v0
20934 +.end method
20936 +.method public getSimSerialNumber()Ljava/lang/String;
20937 + .registers 8
20939 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20941 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20943 + move-result-object v1
20945 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20947 + move-result v2
20949 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20951 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20953 + move-result-object v6
20955 + if-eqz v6, :cond_29
20957 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
20959 + move-result v0
20961 + if-eqz v0, :cond_29
20963 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
20965 + move-result-object v5
20967 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20969 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
20971 + move-result v3
20973 + const-string/jumbo v4, "simSerial"
20975 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20977 + :goto_28
20978 + return-object v5
20980 + :cond_29
20981 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
20983 + move-result-object v5
20985 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20987 + const/4 v3, 0x0
20989 + const-string/jumbo v4, "simSerial"
20991 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20993 + goto :goto_28
20994 +.end method
20996 +.method public getSubscriberId()Ljava/lang/String;
20997 + .registers 8
20999 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21001 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21003 + move-result-object v1
21005 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21007 + move-result v2
21009 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21011 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21013 + move-result-object v6
21015 + if-eqz v6, :cond_29
21017 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21019 + move-result v0
21021 + if-eqz v0, :cond_29
21023 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
21025 + move-result-object v5
21027 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21029 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21031 + move-result v3
21033 + const-string/jumbo v4, "subscriberID"
21035 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21037 + :goto_28
21038 + return-object v5
21040 + :cond_29
21041 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
21043 + move-result-object v5
21045 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21047 + const/4 v3, 0x0
21049 + const-string/jumbo v4, "subscriberID"
21051 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21053 + goto :goto_28
21054 +.end method
21056 +.method public getVoiceMailNumber()Ljava/lang/String;
21057 + .registers 8
21059 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21061 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21063 + move-result-object v1
21065 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21067 + move-result v2
21069 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21071 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21073 + move-result-object v6
21075 + if-eqz v6, :cond_28
21077 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21079 + move-result v0
21081 + if-eqz v0, :cond_28
21083 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21085 + move-result-object v5
21087 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21089 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21091 + move-result v3
21093 + const-string v4, "line1Number"
21095 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21097 + :goto_27
21098 + return-object v5
21100 + :cond_28
21101 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
21103 + move-result-object v5
21105 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21107 + const/4 v3, 0x0
21109 + const-string v4, "line1Number"
21111 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21113 + goto :goto_27
21114 +.end method
21116 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
21117 + .registers 4
21119 + and-int/lit8 v0, p2, 0x10
21121 + if-nez v0, :cond_8
21123 + and-int/lit8 v0, p2, 0x20
21125 + if-eqz v0, :cond_21
21127 + :cond_8
21128 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21130 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
21132 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21134 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21136 + move-result-object v0
21138 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
21140 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21142 + move-result v0
21144 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setUid(I)V
21146 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21148 + :goto_20
21149 + return-void
21151 + :cond_21
21152 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21154 + goto :goto_20
21155 +.end method
21156 diff -Npru stock-framework/smali/android/server/BluetoothService.smali pdroid-framework/smali/android/server/BluetoothService.smali
21157 --- stock-framework/smali/android/server/BluetoothService.smali 2012-05-10 15:14:12.718353826 -0500
21158 +++ pdroid-framework/smali/android/server/BluetoothService.smali 2012-05-10 15:14:35.826468410 -0500
21159 @@ -2367,9 +2367,9 @@
21161 invoke-direct {v4, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
21162 :try_end_19
21163 - .catchall {:try_start_d .. :try_end_19} :catchall_83
21164 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_63
21165 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_73
21166 + .catchall {:try_start_d .. :try_end_19} :catchall_7e
21167 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_60
21168 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_70
21170 const/16 v7, 0x11
21172 @@ -2396,9 +2396,9 @@
21174 sget-object v5, Landroid/server/BluetoothService;->mDockAddress:Ljava/lang/String;
21175 :try_end_33
21176 - .catchall {:try_start_1b .. :try_end_33} :catchall_8c
21177 - .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_92
21178 - .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8f
21179 + .catchall {:try_start_1b .. :try_end_33} :catchall_89
21180 + .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_8f
21181 + .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8c
21183 if-eqz v4, :cond_a
21185 @@ -2439,18 +2439,20 @@
21187 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21188 :try_end_53
21189 - .catchall {:try_start_3b .. :try_end_53} :catchall_8c
21190 - .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_92
21191 - .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8f
21192 + .catchall {:try_start_3b .. :try_end_53} :catchall_89
21193 + .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_8f
21194 + .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8c
21196 - if-eqz v4, :cond_95
21197 + if-eqz v4, :cond_58
21199 :try_start_55
21200 invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
21201 :try_end_58
21202 .catchall {:try_start_55 .. :try_end_58} :catchall_5d
21203 - .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_60
21204 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_87
21206 + :cond_58
21207 + :goto_58
21208 move-object v3, v4
21210 :cond_59
21211 @@ -2472,117 +2474,105 @@
21212 throw v5
21214 :catch_60
21215 - move-exception v7
21217 - move-object v3, v4
21219 - goto :goto_59
21221 - :catch_63
21222 move-exception v2
21224 - :goto_64
21225 - :try_start_64
21226 + :goto_61
21227 + :try_start_61
21228 const-string v7, "BluetoothService"
21230 const-string v8, "FileNotFoundException while trying to read dock address"
21232 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21233 - :try_end_6b
21234 - .catchall {:try_start_64 .. :try_end_6b} :catchall_83
21235 + :try_end_68
21236 + .catchall {:try_start_61 .. :try_end_68} :catchall_7e
21238 if-eqz v3, :cond_59
21240 - :try_start_6d
21241 + :try_start_6a
21242 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21243 - :try_end_70
21244 - .catchall {:try_start_6d .. :try_end_70} :catchall_5d
21245 - .catch Ljava/io/IOException; {:try_start_6d .. :try_end_70} :catch_71
21246 + :try_end_6d
21247 + .catchall {:try_start_6a .. :try_end_6d} :catchall_5d
21248 + .catch Ljava/io/IOException; {:try_start_6a .. :try_end_6d} :catch_6e
21250 goto :goto_59
21252 - :catch_71
21253 + :catch_6e
21254 move-exception v7
21256 goto :goto_59
21258 - :catch_73
21259 + :catch_70
21260 move-exception v2
21262 - :goto_74
21263 - :try_start_74
21264 + :goto_71
21265 + :try_start_71
21266 const-string v7, "BluetoothService"
21268 const-string v8, "IOException while trying to read dock address"
21270 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21271 - :try_end_7b
21272 - .catchall {:try_start_74 .. :try_end_7b} :catchall_83
21273 + :try_end_78
21274 + .catchall {:try_start_71 .. :try_end_78} :catchall_7e
21276 if-eqz v3, :cond_59
21278 - :try_start_7d
21279 + :try_start_7a
21280 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21281 - :try_end_80
21282 - .catchall {:try_start_7d .. :try_end_80} :catchall_5d
21283 - .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81
21285 - goto :goto_59
21287 - :catch_81
21288 - move-exception v7
21289 + :try_end_7d
21290 + .catchall {:try_start_7a .. :try_end_7d} :catchall_5d
21291 + .catch Ljava/io/IOException; {:try_start_7a .. :try_end_7d} :catch_6e
21293 goto :goto_59
21295 - :catchall_83
21296 + :catchall_7e
21297 move-exception v5
21299 - :goto_84
21300 - if-eqz v3, :cond_89
21301 + :goto_7f
21302 + if-eqz v3, :cond_84
21304 - :try_start_86
21305 + :try_start_81
21306 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21307 - :try_end_89
21308 - .catchall {:try_start_86 .. :try_end_89} :catchall_5d
21309 - .catch Ljava/io/IOException; {:try_start_86 .. :try_end_89} :catch_8a
21311 - :cond_89
21312 - :goto_89
21313 - :try_start_89
21314 + :try_end_84
21315 + .catchall {:try_start_81 .. :try_end_84} :catchall_5d
21316 + .catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
21318 + :cond_84
21319 + :goto_84
21320 + :try_start_84
21321 throw v5
21322 - :try_end_8a
21323 - .catchall {:try_start_89 .. :try_end_8a} :catchall_5d
21324 + :try_end_85
21325 + .catchall {:try_start_84 .. :try_end_85} :catchall_5d
21327 - :catch_8a
21328 + :catch_85
21329 move-exception v7
21331 - goto :goto_89
21332 + goto :goto_84
21334 + :catch_87
21335 + move-exception v7
21337 - :catchall_8c
21338 + goto :goto_58
21340 + :catchall_89
21341 move-exception v5
21343 move-object v3, v4
21345 - goto :goto_84
21346 + goto :goto_7f
21348 - :catch_8f
21349 + :catch_8c
21350 move-exception v2
21352 move-object v3, v4
21354 - goto :goto_74
21355 + goto :goto_71
21357 - :catch_92
21358 + :catch_8f
21359 move-exception v2
21361 move-object v3, v4
21363 - goto :goto_64
21365 - :cond_95
21366 - move-object v3, v4
21368 - goto :goto_59
21369 + goto :goto_61
21370 .end method
21372 .method private readIncomingConnectionState()V
21373 @@ -2601,9 +2591,9 @@
21375 invoke-direct {v3, v9}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
21376 :try_end_b
21377 - .catchall {:try_start_4 .. :try_end_b} :catchall_a2
21378 - .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b9
21379 - .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7f
21380 + .catchall {:try_start_4 .. :try_end_b} :catchall_9f
21381 + .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b6
21382 + .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7c
21384 :try_start_b
21385 new-instance v4, Ljava/io/DataInputStream;
21386 @@ -2678,9 +2668,9 @@
21388 invoke-virtual {v9, v11, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
21389 :try_end_51
21390 - .catchall {:try_start_b .. :try_end_51} :catchall_b3
21391 + .catchall {:try_start_b .. :try_end_51} :catchall_b0
21392 .catch Ljava/io/FileNotFoundException; {:try_start_b .. :try_end_51} :catch_52
21393 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b6
21394 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b3
21396 goto :goto_1a
21398 @@ -2715,50 +2705,45 @@
21400 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21401 :try_end_6e
21402 - .catchall {:try_start_54 .. :try_end_6e} :catchall_a2
21403 + .catchall {:try_start_54 .. :try_end_6e} :catchall_9f
21405 if-eqz v2, :cond_73
21407 :try_start_70
21408 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21409 :try_end_73
21410 - .catchall {:try_start_70 .. :try_end_73} :catchall_a9
21411 - .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_ac
21412 + .catchall {:try_start_70 .. :try_end_73} :catchall_a6
21413 + .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_9d
21415 :cond_73
21416 :goto_73
21417 :try_start_73
21418 monitor-exit v10
21419 :try_end_74
21420 - .catchall {:try_start_73 .. :try_end_74} :catchall_a9
21421 + .catchall {:try_start_73 .. :try_end_74} :catchall_a6
21423 return-void
21425 :cond_75
21426 - if-eqz v3, :cond_bb
21427 + if-eqz v3, :cond_7a
21429 :try_start_77
21430 invoke-virtual {v3}, Ljava/io/FileInputStream;->close()V
21431 :try_end_7a
21432 - .catchall {:try_start_77 .. :try_end_7a} :catchall_b0
21433 - .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_7c
21434 + .catchall {:try_start_77 .. :try_end_7a} :catchall_ad
21435 + .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_ab
21437 + :cond_7a
21438 + :goto_7a
21439 move-object v2, v3
21441 goto :goto_73
21443 :catch_7c
21444 - move-exception v9
21446 - move-object v2, v3
21448 - goto :goto_73
21450 - :catch_7f
21451 move-exception v0
21453 - :goto_80
21454 - :try_start_80
21455 + :goto_7d
21456 + :try_start_7d
21457 new-instance v9, Ljava/lang/StringBuilder;
21459 invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
21460 @@ -2782,91 +2767,86 @@
21461 move-result-object v9
21463 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21464 - :try_end_9a
21465 - .catchall {:try_start_80 .. :try_end_9a} :catchall_a2
21466 + :try_end_97
21467 + .catchall {:try_start_7d .. :try_end_97} :catchall_9f
21469 if-eqz v2, :cond_73
21471 - :try_start_9c
21472 + :try_start_99
21473 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21474 - :try_end_9f
21475 - .catchall {:try_start_9c .. :try_end_9f} :catchall_a9
21476 - .catch Ljava/io/IOException; {:try_start_9c .. :try_end_9f} :catch_a0
21477 + :try_end_9c
21478 + .catchall {:try_start_99 .. :try_end_9c} :catchall_a6
21479 + .catch Ljava/io/IOException; {:try_start_99 .. :try_end_9c} :catch_9d
21481 goto :goto_73
21483 - :catch_a0
21484 + :catch_9d
21485 move-exception v9
21487 goto :goto_73
21489 - :catchall_a2
21490 + :catchall_9f
21491 move-exception v9
21493 - :goto_a3
21494 - if-eqz v2, :cond_a8
21495 + :goto_a0
21496 + if-eqz v2, :cond_a5
21498 - :try_start_a5
21499 + :try_start_a2
21500 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21501 - :try_end_a8
21502 - .catchall {:try_start_a5 .. :try_end_a8} :catchall_a9
21503 - .catch Ljava/io/IOException; {:try_start_a5 .. :try_end_a8} :catch_ae
21504 + :try_end_a5
21505 + .catchall {:try_start_a2 .. :try_end_a5} :catchall_a6
21506 + .catch Ljava/io/IOException; {:try_start_a2 .. :try_end_a5} :catch_a9
21508 - :cond_a8
21509 - :goto_a8
21510 - :try_start_a8
21511 + :cond_a5
21512 + :goto_a5
21513 + :try_start_a5
21514 throw v9
21516 - :catchall_a9
21517 + :catchall_a6
21518 move-exception v9
21520 - :goto_aa
21521 + :goto_a7
21522 monitor-exit v10
21523 - :try_end_ab
21524 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_a9
21525 + :try_end_a8
21526 + .catchall {:try_start_a5 .. :try_end_a8} :catchall_a6
21528 throw v9
21530 - :catch_ac
21531 - move-exception v9
21532 + :catch_a9
21533 + move-exception v11
21535 - goto :goto_73
21536 + goto :goto_a5
21538 - :catch_ae
21539 - move-exception v11
21540 + :catch_ab
21541 + move-exception v9
21543 - goto :goto_a8
21544 + goto :goto_7a
21546 - :catchall_b0
21547 + :catchall_ad
21548 move-exception v9
21550 move-object v2, v3
21552 - goto :goto_aa
21553 + goto :goto_a7
21555 - :catchall_b3
21556 + :catchall_b0
21557 move-exception v9
21559 move-object v2, v3
21561 - goto :goto_a3
21562 + goto :goto_a0
21564 - :catch_b6
21565 + :catch_b3
21566 move-exception v0
21568 move-object v2, v3
21570 - goto :goto_80
21571 + goto :goto_7d
21573 - :catch_b9
21574 + :catch_b6
21575 move-exception v0
21577 goto :goto_54
21579 - :cond_bb
21580 - move-object v2, v3
21582 - goto :goto_73
21583 .end method
21585 .method private registerForAirplaneMode(Landroid/content/IntentFilter;)V
21586 @@ -3164,26 +3144,28 @@
21588 invoke-direct {v2, v3, v4}, Ljava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V
21589 :try_end_b
21590 - .catchall {:try_start_1 .. :try_end_b} :catchall_60
21591 - .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_1a
21592 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3d
21593 + .catchall {:try_start_1 .. :try_end_b} :catchall_5b
21594 + .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_17
21595 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3a
21597 const-wide/16 v3, 0x0
21599 :try_start_d
21600 invoke-virtual {v2, v3, v4}, Ljava/io/RandomAccessFile;->setLength(J)V
21601 :try_end_10
21602 - .catchall {:try_start_d .. :try_end_10} :catchall_69
21603 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6f
21604 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_6c
21605 + .catchall {:try_start_d .. :try_end_10} :catchall_66
21606 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6c
21607 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_69
21609 - if-eqz v2, :cond_72
21610 + if-eqz v2, :cond_15
21612 :try_start_12
21613 invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V
21614 :try_end_15
21615 - .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_17
21616 + .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_64
21618 + :cond_15
21619 + :goto_15
21620 move-object v1, v2
21622 :cond_16
21623 @@ -3191,17 +3173,10 @@
21624 return-void
21626 :catch_17
21627 - move-exception v3
21629 - move-object v1, v2
21631 - goto :goto_16
21633 - :catch_1a
21634 move-exception v0
21636 - :goto_1b
21637 - :try_start_1b
21638 + :goto_18
21639 + :try_start_18
21640 new-instance v3, Ljava/lang/StringBuilder;
21642 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21643 @@ -3225,28 +3200,28 @@
21644 move-result-object v3
21646 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21647 - :try_end_35
21648 - .catchall {:try_start_1b .. :try_end_35} :catchall_60
21649 + :try_end_32
21650 + .catchall {:try_start_18 .. :try_end_32} :catchall_5b
21652 if-eqz v1, :cond_16
21654 - :try_start_37
21655 + :try_start_34
21656 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21657 - :try_end_3a
21658 - .catch Ljava/io/IOException; {:try_start_37 .. :try_end_3a} :catch_3b
21659 + :try_end_37
21660 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_37} :catch_38
21662 goto :goto_16
21664 - :catch_3b
21665 + :catch_38
21666 move-exception v3
21668 goto :goto_16
21670 - :catch_3d
21671 + :catch_3a
21672 move-exception v0
21674 - :goto_3e
21675 - :try_start_3e
21676 + :goto_3b
21677 + :try_start_3b
21678 new-instance v3, Ljava/lang/StringBuilder;
21680 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
21681 @@ -3270,68 +3245,63 @@
21682 move-result-object v3
21684 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21685 - :try_end_58
21686 - .catchall {:try_start_3e .. :try_end_58} :catchall_60
21687 + :try_end_55
21688 + .catchall {:try_start_3b .. :try_end_55} :catchall_5b
21690 if-eqz v1, :cond_16
21692 - :try_start_5a
21693 + :try_start_57
21694 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21695 - :try_end_5d
21696 - .catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
21698 - goto :goto_16
21700 - :catch_5e
21701 - move-exception v3
21702 + :try_end_5a
21703 + .catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_38
21705 goto :goto_16
21707 - :catchall_60
21708 + :catchall_5b
21709 move-exception v3
21711 - :goto_61
21712 - if-eqz v1, :cond_66
21713 + :goto_5c
21714 + if-eqz v1, :cond_61
21716 - :try_start_63
21717 + :try_start_5e
21718 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
21719 - :try_end_66
21720 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67
21721 + :try_end_61
21722 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
21724 - :cond_66
21725 - :goto_66
21726 + :cond_61
21727 + :goto_61
21728 throw v3
21730 - :catch_67
21731 + :catch_62
21732 move-exception v4
21734 - goto :goto_66
21735 + goto :goto_61
21737 - :catchall_69
21738 + :catch_64
21739 move-exception v3
21741 - move-object v1, v2
21743 - goto :goto_61
21744 + goto :goto_15
21746 - :catch_6c
21747 - move-exception v0
21748 + :catchall_66
21749 + move-exception v3
21751 move-object v1, v2
21753 - goto :goto_3e
21754 + goto :goto_5c
21756 - :catch_6f
21757 + :catch_69
21758 move-exception v0
21760 move-object v1, v2
21762 - goto :goto_1b
21763 + goto :goto_3b
21765 + :catch_6c
21766 + move-exception v0
21768 - :cond_72
21769 move-object v1, v2
21771 - goto :goto_16
21772 + goto :goto_18
21773 .end method
21775 .method private updateCountersAndCheckForConnectionStateChange(II)Z
21776 @@ -3784,17 +3754,17 @@
21778 invoke-virtual {v2, v6}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
21779 :try_end_36
21780 - .catchall {:try_start_10 .. :try_end_36} :catchall_70
21781 - .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_76
21782 - .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_73
21783 + .catchall {:try_start_10 .. :try_end_36} :catchall_6e
21784 + .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_74
21785 + .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_71
21787 if-eqz v2, :cond_3b
21789 :try_start_38
21790 invoke-virtual {v2}, Ljava/io/BufferedWriter;->close()V
21791 :try_end_3b
21792 - .catchall {:try_start_38 .. :try_end_3b} :catchall_79
21793 - .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6a
21794 + .catchall {:try_start_38 .. :try_end_3b} :catchall_77
21795 + .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6c
21797 :cond_3b
21798 :goto_3b
21799 @@ -3824,7 +3794,7 @@
21800 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21801 :try_end_4b
21802 .catchall {:try_start_48 .. :try_end_4b} :catchall_67
21803 - .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_6c
21804 + .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_5e
21806 :cond_4b
21807 :goto_4b
21808 @@ -3877,7 +3847,7 @@
21809 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
21810 :try_end_66
21811 .catchall {:try_start_63 .. :try_end_66} :catchall_67
21812 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6e
21813 + .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6a
21815 :cond_66
21816 :goto_66
21817 @@ -3897,40 +3867,35 @@
21818 :catch_6a
21819 move-exception v5
21821 - goto :goto_3b
21822 + goto :goto_66
21824 :catch_6c
21825 - move-exception v4
21827 - goto :goto_4b
21829 - :catch_6e
21830 move-exception v5
21832 - goto :goto_66
21833 + goto :goto_3b
21835 - :catchall_70
21836 + :catchall_6e
21837 move-exception v4
21839 move-object v1, v2
21841 goto :goto_61
21843 - :catch_73
21844 + :catch_71
21845 move-exception v0
21847 move-object v1, v2
21849 goto :goto_51
21851 - :catch_76
21852 + :catch_74
21853 move-exception v0
21855 move-object v1, v2
21857 goto :goto_3f
21859 - :catchall_79
21860 + :catchall_77
21861 move-exception v4
21863 move-object v1, v2
21864 @@ -4865,8 +4830,8 @@
21866 invoke-interface {v4}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOff()V
21867 :try_end_47
21868 - .catchall {:try_start_42 .. :try_end_47} :catchall_51
21869 - .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_4c
21870 + .catchall {:try_start_42 .. :try_end_47} :catchall_4c
21871 + .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_51
21873 :try_start_47
21874 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21875 @@ -4878,22 +4843,22 @@
21877 return-void
21879 - :catch_4c
21880 + :catchall_4c
21881 move-exception v4
21883 :try_start_4d
21884 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21886 - goto :goto_4a
21887 + throw v4
21889 - :catchall_51
21890 + :catch_51
21891 move-exception v4
21893 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21894 + :try_end_55
21895 + .catchall {:try_start_4d .. :try_end_55} :catchall_24
21897 - throw v4
21898 - :try_end_56
21899 - .catchall {:try_start_4d .. :try_end_56} :catchall_24
21900 + goto :goto_4a
21901 .end method
21903 .method clearApplicationStateChangeTracker()V
21904 @@ -9245,12 +9210,12 @@
21906 invoke-interface {v3}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOn()V
21907 :try_end_c
21908 - .catchall {:try_start_7 .. :try_end_c} :catchall_1c
21909 + .catchall {:try_start_7 .. :try_end_c} :catchall_19
21910 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_c} :catch_10
21912 + :goto_c
21913 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21915 - :goto_f
21916 return-void
21918 :catch_10
21919 @@ -9263,13 +9228,11 @@
21921 invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
21922 :try_end_18
21923 - .catchall {:try_start_11 .. :try_end_18} :catchall_1c
21925 - invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21926 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
21928 - goto :goto_f
21929 + goto :goto_c
21931 - :catchall_1c
21932 + :catchall_19
21933 move-exception v3
21935 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
21936 @@ -11420,7 +11383,7 @@
21938 invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
21939 :try_end_11
21940 - .catchall {:try_start_3 .. :try_end_11} :catchall_bf
21941 + .catchall {:try_start_3 .. :try_end_11} :catchall_bc
21943 :try_start_11
21944 new-instance v4, Ljava/io/BufferedWriter;
21945 @@ -11435,9 +11398,9 @@
21947 invoke-direct {v4, v7}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
21948 :try_end_1e
21949 - .catchall {:try_start_11 .. :try_end_1e} :catchall_b8
21950 - .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_cc
21951 - .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_95
21952 + .catchall {:try_start_11 .. :try_end_1e} :catchall_b5
21953 + .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_c9
21954 + .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_92
21956 :try_start_1e
21957 iget-object v7, p0, Landroid/server/BluetoothService;->mIncomingConnections:Ljava/util/HashMap;
21958 @@ -11501,9 +11464,9 @@
21960 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21961 :try_end_60
21962 - .catchall {:try_start_1e .. :try_end_60} :catchall_c6
21963 + .catchall {:try_start_1e .. :try_end_60} :catchall_c3
21964 .catch Ljava/io/FileNotFoundException; {:try_start_1e .. :try_end_60} :catch_61
21965 - .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c9
21966 + .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c6
21968 goto :goto_28
21970 @@ -11538,22 +11501,22 @@
21972 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21973 :try_end_7d
21974 - .catchall {:try_start_63 .. :try_end_7d} :catchall_b8
21975 + .catchall {:try_start_63 .. :try_end_7d} :catchall_b5
21977 if-eqz v3, :cond_82
21979 :try_start_7f
21980 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
21981 :try_end_82
21982 - .catchall {:try_start_7f .. :try_end_82} :catchall_bf
21983 - .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_c2
21984 + .catchall {:try_start_7f .. :try_end_82} :catchall_bc
21985 + .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_b3
21987 :cond_82
21988 :goto_82
21989 :try_start_82
21990 monitor-exit v8
21991 :try_end_83
21992 - .catchall {:try_start_82 .. :try_end_83} :catchall_bf
21993 + .catchall {:try_start_82 .. :try_end_83} :catchall_bc
21995 return-void
21997 @@ -11565,34 +11528,29 @@
21999 invoke-virtual {v4, v7}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22000 :try_end_8b
22001 - .catchall {:try_start_84 .. :try_end_8b} :catchall_c6
22002 + .catchall {:try_start_84 .. :try_end_8b} :catchall_c3
22003 .catch Ljava/io/FileNotFoundException; {:try_start_84 .. :try_end_8b} :catch_61
22004 - .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c9
22005 + .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c6
22007 - if-eqz v4, :cond_ce
22008 + if-eqz v4, :cond_90
22010 :try_start_8d
22011 invoke-virtual {v4}, Ljava/io/BufferedWriter;->close()V
22012 :try_end_90
22013 - .catchall {:try_start_8d .. :try_end_90} :catchall_bf
22014 - .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_92
22015 + .catchall {:try_start_8d .. :try_end_90} :catchall_bc
22016 + .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_c1
22018 + :cond_90
22019 + :goto_90
22020 move-object v3, v4
22022 goto :goto_82
22024 :catch_92
22025 - move-exception v7
22027 - move-object v3, v4
22029 - goto :goto_82
22031 - :catch_95
22032 move-exception v1
22034 - :goto_96
22035 - :try_start_96
22036 + :goto_93
22037 + :try_start_93
22038 new-instance v7, Ljava/lang/StringBuilder;
22040 invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
22041 @@ -11616,81 +11574,76 @@
22042 move-result-object v7
22044 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22045 - :try_end_b0
22046 - .catchall {:try_start_96 .. :try_end_b0} :catchall_b8
22047 + :try_end_ad
22048 + .catchall {:try_start_93 .. :try_end_ad} :catchall_b5
22050 if-eqz v3, :cond_82
22052 - :try_start_b2
22053 + :try_start_af
22054 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22055 - :try_end_b5
22056 - .catchall {:try_start_b2 .. :try_end_b5} :catchall_bf
22057 - .catch Ljava/io/IOException; {:try_start_b2 .. :try_end_b5} :catch_b6
22058 + :try_end_b2
22059 + .catchall {:try_start_af .. :try_end_b2} :catchall_bc
22060 + .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_b3
22062 goto :goto_82
22064 - :catch_b6
22065 + :catch_b3
22066 move-exception v7
22068 goto :goto_82
22070 - :catchall_b8
22071 + :catchall_b5
22072 move-exception v7
22074 - :goto_b9
22075 - if-eqz v3, :cond_be
22076 + :goto_b6
22077 + if-eqz v3, :cond_bb
22079 - :try_start_bb
22080 + :try_start_b8
22081 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22082 - :try_end_be
22083 - .catchall {:try_start_bb .. :try_end_be} :catchall_bf
22084 - .catch Ljava/io/IOException; {:try_start_bb .. :try_end_be} :catch_c4
22085 + :try_end_bb
22086 + .catchall {:try_start_b8 .. :try_end_bb} :catchall_bc
22087 + .catch Ljava/io/IOException; {:try_start_b8 .. :try_end_bb} :catch_bf
22089 - :cond_be
22090 - :goto_be
22091 - :try_start_be
22092 + :cond_bb
22093 + :goto_bb
22094 + :try_start_bb
22095 throw v7
22097 - :catchall_bf
22098 + :catchall_bc
22099 move-exception v7
22101 monitor-exit v8
22102 - :try_end_c1
22103 - .catchall {:try_start_be .. :try_end_c1} :catchall_bf
22104 + :try_end_be
22105 + .catchall {:try_start_bb .. :try_end_be} :catchall_bc
22107 throw v7
22109 - :catch_c2
22110 - move-exception v7
22111 + :catch_bf
22112 + move-exception v9
22114 - goto :goto_82
22115 + goto :goto_bb
22117 - :catch_c4
22118 - move-exception v9
22119 + :catch_c1
22120 + move-exception v7
22122 - goto :goto_be
22123 + goto :goto_90
22125 - :catchall_c6
22126 + :catchall_c3
22127 move-exception v7
22129 move-object v3, v4
22131 - goto :goto_b9
22132 + goto :goto_b6
22134 - :catch_c9
22135 + :catch_c6
22136 move-exception v1
22138 move-object v3, v4
22140 - goto :goto_96
22141 + goto :goto_93
22143 - :catch_cc
22144 + :catch_c9
22145 move-exception v1
22147 goto :goto_63
22149 - :cond_ce
22150 - move-object v3, v4
22152 - goto :goto_82
22153 .end method
22154 diff -Npru stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali
22155 --- stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-05-10 15:14:12.730353889 -0500
22156 +++ pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-05-10 15:14:35.838468471 -0500
22157 @@ -161,25 +161,23 @@
22159 invoke-interface {v1, v2}, Lcom/android/internal/textservice/ISpellCheckerSessionListener;->onGetSuggestions([Landroid/view/textservice/SuggestionsInfo;)V
22160 :try_end_18
22161 - .catchall {:try_start_a .. :try_end_18} :catchall_21
22162 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_1c
22163 + .catchall {:try_start_a .. :try_end_18} :catchall_1c
22164 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_21
22166 + :goto_18
22167 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22169 - :goto_1b
22170 return-void
22172 - :catch_1c
22173 + :catchall_1c
22174 move-exception v1
22176 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22178 - goto :goto_1b
22179 + throw v1
22181 - :catchall_21
22182 + :catch_21
22183 move-exception v1
22185 - invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22187 - throw v1
22188 + goto :goto_18
22189 .end method
22190 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener$1.smali pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali
22191 --- stock-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-05-10 15:14:13.086355649 -0500
22192 +++ pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-05-10 15:14:35.898468770 -0500
22193 @@ -64,47 +64,317 @@
22194 .end method
22196 .method public onCallStateChanged(ILjava/lang/String;)V
22197 - .registers 6
22198 + .registers 19
22200 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22201 + move-object/from16 v0, p0
22203 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22204 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22206 - const/16 v1, 0x20
22207 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22208 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22210 - const/4 v2, 0x0
22211 + move-result-object v3
22213 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22214 + if-eqz v3, :cond_99
22216 - move-result-object v0
22217 + if-eqz p2, :cond_99
22219 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
22221 + move-result v3
22223 + if-nez v3, :cond_99
22225 + move-object/from16 v0, p0
22227 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22229 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22230 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22232 + move-result-object v3
22234 + const-string/jumbo v4, "privacy"
22236 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22238 + move-result-object v2
22240 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
22242 + move-object/from16 v0, p0
22244 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22246 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22247 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22249 + move-result-object v3
22251 + move-object/from16 v0, p0
22253 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22255 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22256 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22258 + move-result v4
22260 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22262 + move-result-object v8
22264 + if-eqz v8, :cond_6a
22266 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
22268 + move-result v3
22270 + if-eqz v3, :cond_6a
22272 + const-string v7, ""
22274 + move-object/from16 v0, p0
22276 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22278 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22280 + const/16 v4, 0x20
22282 + const/4 v5, 0x0
22284 + move/from16 v0, p1
22286 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22288 + move-result-object v3
22290 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
22291 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22293 + move-object/from16 v0, p0
22295 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22297 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22298 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22300 + move-result-object v3
22302 + move-object/from16 v0, p0
22304 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22306 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22307 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22309 + move-result v4
22311 + const/4 v5, 0x1
22313 + const-string v6, "incomingCall"
22315 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22317 + :goto_69
22318 return-void
22320 + :cond_6a
22321 + move-object/from16 v0, p0
22323 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22325 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22327 + const/16 v4, 0x20
22329 + const/4 v5, 0x0
22331 + move/from16 v0, p1
22333 + move-object/from16 v1, p2
22335 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22337 + move-result-object v3
22339 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22341 + move-object/from16 v0, p0
22343 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22345 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22346 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22348 + move-result-object v10
22350 + move-object/from16 v0, p0
22352 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22354 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22355 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22357 + move-result v11
22359 + const/4 v12, 0x0
22361 + const-string v13, "incomingCall"
22363 + move-object v9, v2
22365 + move-object/from16 v14, p2
22367 + move-object v15, v8
22369 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22371 + goto :goto_69
22373 + :cond_99
22374 + move-object/from16 v0, p0
22376 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22378 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22380 + const/16 v4, 0x20
22382 + const/4 v5, 0x0
22384 + move/from16 v0, p1
22386 + move-object/from16 v1, p2
22388 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22390 + move-result-object v3
22392 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22394 + goto :goto_69
22395 .end method
22397 .method public onCellLocationChanged(Landroid/os/Bundle;)V
22398 - .registers 6
22399 + .registers 10
22401 + const/4 v5, 0x0
22403 const/4 v3, 0x0
22405 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
22407 + move-result-object v7
22409 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22411 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22412 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22414 + move-result-object v1
22416 + if-eqz v1, :cond_4a
22418 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22420 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22421 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22423 + move-result-object v1
22425 + const-string/jumbo v2, "privacy"
22427 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22429 move-result-object v0
22431 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
22433 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22435 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22436 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22438 + move-result-object v1
22440 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22442 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22443 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22445 + move-result v2
22447 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22449 + move-result-object v6
22451 + if-eqz v6, :cond_4b
22453 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22455 + move-result v1
22457 + if-eqz v1, :cond_4b
22459 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22461 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22462 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22464 + move-result-object v1
22466 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22468 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22469 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22471 + move-result v2
22473 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22475 + move-result v3
22477 + const-string v4, "locationNetwork"
22479 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22481 + :cond_4a
22482 + :goto_4a
22483 + return-void
22485 + :cond_4b
22486 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22488 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22490 const/16 v2, 0x10
22492 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22493 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22495 move-result-object v1
22497 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
22499 - return-void
22500 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22502 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22503 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22505 + move-result-object v1
22507 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22509 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22510 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22512 + move-result v2
22514 + const-string v4, "locationNetwork"
22516 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22518 + goto :goto_4a
22519 .end method
22521 .method public onDataActivity(I)V
22522 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener.smali pdroid-framework/smali/android/telephony/PhoneStateListener.smali
22523 --- stock-framework/smali/android/telephony/PhoneStateListener.smali 2012-05-10 15:14:11.394347264 -0500
22524 +++ pdroid-framework/smali/android/telephony/PhoneStateListener.smali 2012-05-10 15:14:33.654457647 -0500
22525 @@ -29,12 +29,20 @@
22527 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
22529 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
22532 # instance fields
22533 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
22535 +.field private context:Landroid/content/Context;
22537 .field mHandler:Landroid/os/Handler;
22539 +.field private packageName:Ljava/lang/String;
22541 +.field private uid:I
22544 # direct methods
22545 .method public constructor <init>()V
22546 @@ -57,6 +65,30 @@
22547 return-void
22548 .end method
22550 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22551 + .registers 2
22553 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22555 + return-object v0
22556 +.end method
22558 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22559 + .registers 2
22561 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22563 + return-object v0
22564 +.end method
22566 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
22567 + .registers 2
22569 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
22571 + return v0
22572 +.end method
22575 # virtual methods
22576 .method public onCallForwardingIndicatorChanged(Z)V
22577 @@ -126,3 +158,27 @@
22579 return-void
22580 .end method
22582 +.method public setContext(Landroid/content/Context;)V
22583 + .registers 2
22585 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22587 + return-void
22588 +.end method
22590 +.method public setPackageName(Ljava/lang/String;)V
22591 + .registers 2
22593 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22595 + return-void
22596 +.end method
22598 +.method public setUid(I)V
22599 + .registers 2
22601 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
22603 + return-void
22604 +.end method
22605 diff -Npru stock-framework/smali/android/view/accessibility/AccessibilityManager.smali pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali
22606 --- stock-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-05-10 15:14:14.102360687 -0500
22607 +++ pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-05-10 15:14:36.970474089 -0500
22608 @@ -637,15 +637,15 @@
22610 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22611 :try_end_21
22612 - .catchall {:try_start_d .. :try_end_21} :catchall_4c
22613 + .catchall {:try_start_d .. :try_end_21} :catchall_49
22614 .catch Landroid/os/RemoteException; {:try_start_d .. :try_end_21} :catch_27
22616 if-eqz v0, :cond_26
22618 + :goto_23
22619 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22621 :cond_26
22622 - :goto_26
22623 return-void
22625 :catch_27
22626 @@ -680,21 +680,19 @@
22628 invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22629 :try_end_46
22630 - .catchall {:try_start_28 .. :try_end_46} :catchall_4c
22631 + .catchall {:try_start_28 .. :try_end_46} :catchall_49
22633 if-eqz v0, :cond_26
22635 - invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22637 - goto :goto_26
22638 + goto :goto_23
22640 - :catchall_4c
22641 + :catchall_49
22642 move-exception v4
22644 - if-eqz v0, :cond_52
22645 + if-eqz v0, :cond_4f
22647 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
22649 - :cond_52
22650 + :cond_4f
22651 throw v4
22652 .end method
22653 diff -Npru stock-framework/smali/android/view/SurfaceView.smali pdroid-framework/smali/android/view/SurfaceView.smali
22654 --- stock-framework/smali/android/view/SurfaceView.smali 2012-05-10 15:14:12.002350274 -0500
22655 +++ pdroid-framework/smali/android/view/SurfaceView.smali 2012-05-10 15:14:35.190465260 -0500
22656 @@ -1342,7 +1342,7 @@
22658 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback;->surfaceDestroyed(Landroid/view/SurfaceHolder;)V
22659 :try_end_29b
22660 - .catchall {:try_start_262 .. :try_end_29b} :catchall_3c6
22661 + .catchall {:try_start_262 .. :try_end_29b} :catchall_3a7
22663 add-int/lit8 v22, v22, 0x1
22665 @@ -1486,7 +1486,7 @@
22667 invoke-virtual {v3, v4}, Landroid/view/Surface;->transferFrom(Landroid/view/Surface;)V
22669 - if-eqz v34, :cond_3a7
22670 + if-eqz v34, :cond_3c6
22672 move-object/from16 v0, p0
22674 @@ -1608,7 +1608,7 @@
22675 goto :goto_35e
22677 :cond_37a
22678 - if-eqz p2, :cond_3a7
22679 + if-eqz p2, :cond_3c6
22681 if-nez v19, :cond_382
22683 @@ -1632,7 +1632,7 @@
22685 move/from16 v1, v23
22687 - if-ge v0, v1, :cond_3a7
22688 + if-ge v0, v1, :cond_3c6
22690 aget-object v18, v17, v22
22692 @@ -1652,81 +1652,81 @@
22694 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback2;->surfaceRedrawNeeded(Landroid/view/SurfaceHolder;)V
22695 :try_end_3a4
22696 - .catchall {:try_start_301 .. :try_end_3a4} :catchall_3c6
22697 + .catchall {:try_start_301 .. :try_end_3a4} :catchall_3a7
22699 :cond_3a4
22700 add-int/lit8 v22, v22, 0x1
22702 goto :goto_38b
22704 - :cond_3a7
22705 - const/4 v3, 0x0
22706 + :catchall_3a7
22707 + move-exception v3
22709 - :try_start_3a8
22710 + const/4 v4, 0x0
22712 + :try_start_3a9
22713 move-object/from16 v0, p0
22715 - iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22716 + iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22718 - if-eqz p2, :cond_3b9
22719 + if-eqz p2, :cond_3ba
22721 move-object/from16 v0, p0
22723 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22724 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22726 move-object/from16 v0, p0
22728 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22729 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22731 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22732 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22734 - :cond_3b9
22735 + :cond_3ba
22736 move-object/from16 v0, p0
22738 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22739 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22741 move-object/from16 v0, p0
22743 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22745 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22746 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22748 - goto/16 :goto_6
22749 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22751 - :catchall_3c6
22752 - move-exception v3
22753 + throw v3
22755 - const/4 v4, 0x0
22756 + :cond_3c6
22757 + const/4 v3, 0x0
22759 move-object/from16 v0, p0
22761 - iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22762 + iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
22764 - if-eqz p2, :cond_3d9
22765 + if-eqz p2, :cond_3d8
22767 move-object/from16 v0, p0
22769 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22770 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22772 move-object/from16 v0, p0
22774 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22775 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22777 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22778 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
22780 - :cond_3d9
22781 + :cond_3d8
22782 move-object/from16 v0, p0
22784 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22785 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
22787 move-object/from16 v0, p0
22789 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22790 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
22792 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22793 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
22794 + :try_end_3e3
22795 + .catch Landroid/os/RemoteException; {:try_start_3a9 .. :try_end_3e3} :catch_2f6
22797 - throw v3
22798 - :try_end_3e5
22799 - .catch Landroid/os/RemoteException; {:try_start_3a8 .. :try_end_3e5} :catch_2f6
22800 + goto/16 :goto_6
22801 .end method
22804 diff -Npru stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali
22805 --- stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-05-10 15:14:14.062360491 -0500
22806 +++ pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-05-10 15:14:36.930473889 -0500
22807 @@ -364,7 +364,7 @@
22808 :try_start_13
22809 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22810 :try_end_16
22811 - .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1c
22812 + .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1e
22814 :goto_16
22815 return-void
22816 @@ -375,20 +375,20 @@
22817 :try_start_18
22818 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22819 :try_end_1b
22820 - .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1e
22821 + .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1c
22823 :goto_1b
22824 throw v5
22826 :catch_1c
22827 - move-exception v5
22828 + move-exception v6
22830 - goto :goto_16
22831 + goto :goto_1b
22833 :catch_1e
22834 - move-exception v6
22835 + move-exception v5
22837 - goto :goto_1b
22838 + goto :goto_16
22839 .end method
22841 .method public findAccessibilityNodeInfoByViewIdClientThread(IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22842 @@ -491,7 +491,7 @@
22843 :try_start_1d
22844 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22845 :try_end_20
22846 - .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_26
22847 + .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_28
22849 :goto_20
22850 return-void
22851 @@ -502,20 +502,20 @@
22852 :try_start_22
22853 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
22854 :try_end_25
22855 - .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_28
22856 + .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_26
22858 :goto_25
22859 throw v6
22861 :catch_26
22862 - move-exception v6
22863 + move-exception v7
22865 - goto :goto_20
22866 + goto :goto_25
22868 :catch_28
22869 - move-exception v7
22870 + move-exception v6
22872 - goto :goto_25
22873 + goto :goto_20
22874 .end method
22876 .method public findAccessibilityNodeInfosByViewTextClientThread(Ljava/lang/String;IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22877 @@ -639,7 +639,7 @@
22879 invoke-virtual {v8}, Landroid/view/View;->getVisibility()I
22880 :try_end_2c
22881 - .catchall {:try_start_16 .. :try_end_2c} :catchall_70
22882 + .catchall {:try_start_16 .. :try_end_2c} :catchall_6a
22884 move-result v11
22886 @@ -649,7 +649,7 @@
22887 :try_start_2f
22888 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22889 :try_end_32
22890 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_75
22891 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_46
22893 :goto_32
22894 return-void
22895 @@ -669,7 +669,7 @@
22897 invoke-virtual {v4}, Ljava/util/ArrayList;->isEmpty()Z
22898 :try_end_3f
22899 - .catchall {:try_start_33 .. :try_end_3f} :catchall_70
22900 + .catchall {:try_start_33 .. :try_end_3f} :catchall_6a
22902 move-result v11
22904 @@ -700,7 +700,7 @@
22905 const/4 v5, 0x0
22907 :goto_52
22908 - if-ge v5, v10, :cond_6a
22909 + if-ge v5, v10, :cond_71
22911 invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
22913 @@ -720,46 +720,36 @@
22915 invoke-interface {v6, v11}, Ljava/util/List;->add(Ljava/lang/Object;)Z
22916 :try_end_67
22917 - .catchall {:try_start_48 .. :try_end_67} :catchall_70
22918 + .catchall {:try_start_48 .. :try_end_67} :catchall_6a
22920 :cond_67
22921 add-int/lit8 v5, v5, 0x1
22923 goto :goto_52
22925 - :cond_6a
22926 - :try_start_6a
22927 - invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22928 - :try_end_6d
22929 - .catch Landroid/os/RemoteException; {:try_start_6a .. :try_end_6d} :catch_6e
22930 + :catchall_6a
22931 + move-exception v11
22933 - goto :goto_32
22934 + :try_start_6b
22935 + invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22936 + :try_end_6e
22937 + .catch Landroid/os/RemoteException; {:try_start_6b .. :try_end_6e} :catch_6f
22939 - :catch_6e
22940 - move-exception v11
22941 + :goto_6e
22942 + throw v11
22944 - goto :goto_32
22945 + :catch_6f
22946 + move-exception v12
22948 - :catchall_70
22949 - move-exception v11
22950 + goto :goto_6e
22952 + :cond_71
22953 :try_start_71
22954 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
22955 :try_end_74
22956 - .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_77
22958 - :goto_74
22959 - throw v11
22961 - :catch_75
22962 - move-exception v11
22963 + .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_46
22965 goto :goto_32
22967 - :catch_77
22968 - move-exception v12
22970 - goto :goto_74
22971 .end method
22973 .method public performAccessibilityActionClientThread(IIILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
22974 @@ -864,7 +854,7 @@
22975 :try_start_17
22976 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
22977 :try_end_1a
22978 - .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_34
22979 + .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_36
22981 :goto_1a
22982 return-void
22983 @@ -906,20 +896,20 @@
22984 :try_start_30
22985 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
22986 :try_end_33
22987 - .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_36
22988 + .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_34
22990 :goto_33
22991 throw v6
22993 :catch_34
22994 - move-exception v6
22995 + move-exception v7
22997 - goto :goto_1a
22998 + goto :goto_33
23000 :catch_36
23001 - move-exception v7
23002 + move-exception v6
23004 - goto :goto_33
23005 + goto :goto_1a
23007 :pswitch_data_38
23008 .packed-switch 0x1
23009 diff -Npru stock-framework/smali/android/view/ViewRootImpl$W.smali pdroid-framework/smali/android/view/ViewRootImpl$W.smali
23010 --- stock-framework/smali/android/view/ViewRootImpl$W.smali 2012-05-10 15:14:14.062360491 -0500
23011 +++ pdroid-framework/smali/android/view/ViewRootImpl$W.smali 2012-05-10 15:14:36.930473889 -0500
23012 @@ -301,21 +301,21 @@
23014 invoke-direct {v1, p3}, Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V
23015 :try_end_47
23016 - .catchall {:try_start_42 .. :try_end_47} :catchall_64
23017 - .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_55
23018 + .catchall {:try_start_42 .. :try_end_47} :catchall_5f
23019 + .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_50
23021 :try_start_47
23022 invoke-static {v3, p1, p2, v1}, Landroid/view/ViewDebug;->dispatchCommand(Landroid/view/View;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;)V
23023 :try_end_4a
23024 - .catchall {:try_start_47 .. :try_end_4a} :catchall_70
23025 - .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_73
23026 + .catchall {:try_start_47 .. :try_end_4a} :catchall_6d
23027 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_70
23029 if-eqz v1, :cond_4f
23031 :try_start_4c
23032 invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
23033 :try_end_4f
23034 - .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50
23035 + .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_6b
23037 :cond_4f
23038 :goto_4f
23039 @@ -324,70 +324,69 @@
23040 :catch_50
23041 move-exception v2
23043 + :goto_51
23044 + :try_start_51
23045 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23047 - goto :goto_4f
23049 - :catch_55
23050 - move-exception v2
23052 - :goto_56
23053 - :try_start_56
23054 - invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23055 - :try_end_59
23056 - .catchall {:try_start_56 .. :try_end_59} :catchall_64
23057 + :try_end_54
23058 + .catchall {:try_start_51 .. :try_end_54} :catchall_5f
23060 if-eqz v0, :cond_4f
23062 - :try_start_5b
23063 + :try_start_56
23064 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23065 - :try_end_5e
23066 - .catch Ljava/io/IOException; {:try_start_5b .. :try_end_5e} :catch_5f
23067 + :try_end_59
23068 + .catch Ljava/io/IOException; {:try_start_56 .. :try_end_59} :catch_5a
23070 goto :goto_4f
23072 - :catch_5f
23073 + :catch_5a
23074 move-exception v2
23076 + :goto_5b
23077 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23079 goto :goto_4f
23081 - :catchall_64
23082 + :catchall_5f
23083 move-exception v5
23085 - :goto_65
23086 - if-eqz v0, :cond_6a
23087 + :goto_60
23088 + if-eqz v0, :cond_65
23090 - :try_start_67
23091 + :try_start_62
23092 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23093 - :try_end_6a
23094 - .catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_6b
23095 + :try_end_65
23096 + .catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
23098 - :cond_6a
23099 - :goto_6a
23100 + :cond_65
23101 + :goto_65
23102 throw v5
23104 - :catch_6b
23105 + :catch_66
23106 move-exception v2
23108 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23110 - goto :goto_6a
23111 + goto :goto_65
23113 - :catchall_70
23114 + :catch_6b
23115 + move-exception v2
23117 + goto :goto_5b
23119 + :catchall_6d
23120 move-exception v5
23122 move-object v0, v1
23124 - goto :goto_65
23125 + goto :goto_60
23127 - :catch_73
23128 + :catch_70
23129 move-exception v2
23131 move-object v0, v1
23133 - goto :goto_56
23134 + goto :goto_51
23135 .end method
23137 .method public resized(IILandroid/graphics/Rect;Landroid/graphics/Rect;ZLandroid/content/res/Configuration;)V
23138 diff -Npru stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali
23139 --- stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-05-10 15:14:14.198361170 -0500
23140 +++ pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-05-10 15:14:37.066474566 -0500
23141 @@ -123,28 +123,26 @@
23143 invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
23144 :try_end_a
23145 - .catchall {:try_start_5 .. :try_end_a} :catchall_11
23146 - .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_d
23147 + .catchall {:try_start_5 .. :try_end_a} :catchall_d
23148 + .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_11
23150 + :goto_a
23151 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23153 :cond_c
23154 - :goto_c
23155 return-void
23157 - :catch_d
23158 + :catchall_d
23159 move-exception v0
23161 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23163 - goto :goto_c
23164 + throw v0
23166 - :catchall_11
23167 + :catch_11
23168 move-exception v0
23170 - iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23172 - throw v0
23173 + goto :goto_a
23174 .end method
23176 .method private releaseQueue()V
23177 diff -Npru stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali
23178 --- stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-05-10 15:14:14.226361305 -0500
23179 +++ pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-05-10 15:14:37.090474685 -0500
23180 @@ -189,7 +189,7 @@
23182 invoke-interface {v6}, Landroid/database/Cursor;->moveToNext()Z
23183 :try_end_40
23184 - .catchall {:try_start_1e .. :try_end_40} :catchall_57
23185 + .catchall {:try_start_1e .. :try_end_40} :catchall_54
23186 .catch Ljava/lang/IllegalStateException; {:try_start_1e .. :try_end_40} :catch_49
23188 move-result v1
23189 @@ -199,10 +199,10 @@
23190 :cond_43
23191 if-eqz v6, :cond_48
23193 + :goto_45
23194 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23196 :cond_48
23197 - :goto_48
23198 return-void
23200 :catch_49
23201 @@ -215,22 +215,20 @@
23203 invoke-static {v1, v2, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23204 :try_end_51
23205 - .catchall {:try_start_4a .. :try_end_51} :catchall_57
23206 + .catchall {:try_start_4a .. :try_end_51} :catchall_54
23208 if-eqz v6, :cond_48
23210 - invoke-interface {v6}, Landroid/database/Cursor;->close()V
23212 - goto :goto_48
23213 + goto :goto_45
23215 - :catchall_57
23216 + :catchall_54
23217 move-exception v1
23219 - if-eqz v6, :cond_5d
23220 + if-eqz v6, :cond_5a
23222 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23224 - :cond_5d
23225 + :cond_5a
23226 throw v1
23227 .end method
23229 diff -Npru stock-framework/smali/android/webkit/WebView$6.smali pdroid-framework/smali/android/webkit/WebView$6.smali
23230 --- stock-framework/smali/android/webkit/WebView$6.smali 2012-05-10 15:14:14.246361402 -0500
23231 +++ pdroid-framework/smali/android/webkit/WebView$6.smali 2012-05-10 15:14:37.110474781 -0500
23232 @@ -58,8 +58,8 @@
23234 invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
23235 :try_end_8
23236 - .catchall {:try_start_1 .. :try_end_8} :catchall_2c
23237 - .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_20
23238 + .catchall {:try_start_1 .. :try_end_8} :catchall_20
23239 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_2c
23241 :try_start_8
23242 iget-object v2, p0, Landroid/webkit/WebView$6;->val$p:Landroid/graphics/Picture;
23243 @@ -80,7 +80,7 @@
23244 :try_start_16
23245 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23246 :try_end_19
23247 - .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_38
23248 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_3c
23250 :cond_19
23251 :goto_19
23252 @@ -93,7 +93,7 @@
23253 :goto_1f
23254 return-void
23256 - :catch_20
23257 + :catchall_20
23258 move-exception v2
23260 :goto_21
23261 @@ -106,13 +106,13 @@
23263 :cond_26
23264 :goto_26
23265 - iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23266 + iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23268 - invoke-virtual {v2}, Ljava/io/File;->delete()Z
23269 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
23271 - goto :goto_1f
23272 + throw v2
23274 - :catchall_2c
23275 + :catch_2c
23276 move-exception v2
23278 :goto_2d
23279 @@ -121,42 +121,42 @@
23280 :try_start_2f
23281 invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
23282 :try_end_32
23283 - .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_3c
23284 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_38
23286 :cond_32
23287 :goto_32
23288 - iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23289 + iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23291 - invoke-virtual {v3}, Ljava/io/File;->delete()Z
23292 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
23294 - throw v2
23295 + goto :goto_1f
23297 :catch_38
23298 move-exception v2
23300 - goto :goto_19
23301 + goto :goto_32
23303 :catch_3a
23304 - move-exception v2
23305 + move-exception v3
23307 goto :goto_26
23309 :catch_3c
23310 - move-exception v3
23311 + move-exception v2
23313 - goto :goto_32
23314 + goto :goto_19
23316 :catchall_3e
23317 move-exception v2
23319 move-object v0, v1
23321 - goto :goto_2d
23322 + goto :goto_21
23324 :catch_41
23325 move-exception v2
23327 move-object v0, v1
23329 - goto :goto_21
23330 + goto :goto_2d
23331 .end method
23332 diff -Npru stock-framework/smali/android/webkit/WebView$7.smali pdroid-framework/smali/android/webkit/WebView$7.smali
23333 --- stock-framework/smali/android/webkit/WebView$7.smali 2012-05-10 15:14:14.250361427 -0500
23334 +++ pdroid-framework/smali/android/webkit/WebView$7.smali 2012-05-10 15:14:37.110474781 -0500
23335 @@ -72,7 +72,7 @@
23337 invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
23338 :try_end_19
23339 - .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_23
23340 + .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_21
23342 :goto_19
23343 return-void
23344 @@ -85,18 +85,18 @@
23346 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
23347 :try_end_20
23348 - .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_21
23349 + .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_23
23351 :goto_20
23352 throw v1
23354 :catch_21
23355 - move-exception v2
23356 + move-exception v1
23358 - goto :goto_20
23359 + goto :goto_19
23361 :catch_23
23362 - move-exception v1
23363 + move-exception v2
23365 - goto :goto_19
23366 + goto :goto_20
23367 .end method
23368 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali
23369 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-05-10 15:14:14.350361923 -0500
23370 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-05-10 15:14:37.214475294 -0500
23371 @@ -140,7 +140,7 @@
23373 throw v21
23374 :try_end_51
23375 - .catchall {:try_start_19 .. :try_end_51} :catchall_15b
23376 + .catchall {:try_start_19 .. :try_end_51} :catchall_158
23377 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_19 .. :try_end_51} :catch_51
23378 .catch Ljava/io/IOException; {:try_start_19 .. :try_end_51} :catch_ed
23380 @@ -189,7 +189,7 @@
23382 invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23383 :try_end_7c
23384 - .catchall {:try_start_52 .. :try_end_7c} :catchall_15b
23385 + .catchall {:try_start_52 .. :try_end_7c} :catchall_158
23387 if-eqz v4, :cond_3c
23389 @@ -238,7 +238,7 @@
23391 monitor-enter v22
23392 :try_end_a0
23393 - .catchall {:try_start_84 .. :try_end_a0} :catchall_15b
23394 + .catchall {:try_start_84 .. :try_end_a0} :catchall_158
23395 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_84 .. :try_end_a0} :catch_51
23396 .catch Ljava/io/IOException; {:try_start_84 .. :try_end_a0} :catch_ed
23398 @@ -267,7 +267,7 @@
23399 add-int/lit8 v9, v8, -0x1
23401 :goto_b7
23402 - if-ltz v9, :cond_162
23403 + if-ltz v9, :cond_15f
23405 invoke-interface {v7, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
23407 @@ -279,7 +279,7 @@
23409 invoke-interface {v0, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
23410 :try_end_c4
23411 - .catchall {:try_start_a0 .. :try_end_c4} :catchall_1b3
23412 + .catchall {:try_start_a0 .. :try_end_c4} :catchall_1aa
23414 add-int/lit8 v9, v9, -0x1
23416 @@ -315,7 +315,7 @@
23418 move-result v21
23420 - if-nez v21, :cond_120
23421 + if-nez v21, :cond_11d
23423 new-instance v21, Lorg/xmlpull/v1/XmlPullParserException;
23425 @@ -325,7 +325,7 @@
23427 throw v21
23428 :try_end_ed
23429 - .catchall {:try_start_d7 .. :try_end_ed} :catchall_15b
23430 + .catchall {:try_start_d7 .. :try_end_ed} :catchall_158
23431 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_d7 .. :try_end_ed} :catch_51
23432 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_ed} :catch_ed
23434 @@ -372,26 +372,21 @@
23436 invoke-static {v0, v1, v10}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23437 :try_end_116
23438 - .catchall {:try_start_ee .. :try_end_116} :catchall_15b
23439 + .catchall {:try_start_ee .. :try_end_116} :catchall_158
23441 if-eqz v4, :cond_3c
23443 :try_start_118
23444 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23445 :try_end_11b
23446 - .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_11d
23447 + .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_82
23449 goto/16 :goto_3c
23451 - :catch_11d
23452 - move-exception v21
23454 - goto/16 :goto_3c
23456 - :cond_120
23457 + :cond_11d
23458 const/16 v21, 0x0
23460 - :try_start_122
23461 + :try_start_11f
23462 const-string v22, "activity"
23464 move-object/from16 v0, v21
23465 @@ -443,29 +438,29 @@
23466 invoke-direct {v13, v3, v0, v1, v2}, Landroid/widget/ActivityChooserModel$HistoricalRecord;-><init>(Ljava/lang/String;JF)V
23468 invoke-interface {v14, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23469 - :try_end_159
23470 - .catchall {:try_start_122 .. :try_end_159} :catchall_15b
23471 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_122 .. :try_end_159} :catch_51
23472 - .catch Ljava/io/IOException; {:try_start_122 .. :try_end_159} :catch_ed
23473 + :try_end_156
23474 + .catchall {:try_start_11f .. :try_end_156} :catchall_158
23475 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_11f .. :try_end_156} :catch_51
23476 + .catch Ljava/io/IOException; {:try_start_11f .. :try_end_156} :catch_ed
23478 goto/16 :goto_89
23480 - :catchall_15b
23481 + :catchall_158
23482 move-exception v21
23484 - if-eqz v4, :cond_161
23485 + if-eqz v4, :cond_15e
23487 - :try_start_15e
23488 + :try_start_15b
23489 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23490 - :try_end_161
23491 - .catch Ljava/io/IOException; {:try_start_15e .. :try_end_161} :catch_1b6
23492 + :try_end_15e
23493 + .catch Ljava/io/IOException; {:try_start_15b .. :try_end_15e} :catch_1ad
23495 - :cond_161
23496 - :goto_161
23497 + :cond_15e
23498 + :goto_15e
23499 throw v21
23501 - :cond_162
23502 - :try_start_162
23503 + :cond_15f
23504 + :try_start_15f
23505 invoke-interface {v7}, Ljava/util/List;->size()I
23507 move-result v21
23508 @@ -478,28 +473,23 @@
23510 move/from16 v1, v23
23512 - if-ne v0, v1, :cond_17b
23513 + if-ne v0, v1, :cond_175
23515 monitor-exit v22
23516 - :try_end_171
23517 - .catchall {:try_start_162 .. :try_end_171} :catchall_1b3
23518 + :try_end_16e
23519 + .catchall {:try_start_15f .. :try_end_16e} :catchall_1aa
23521 if-eqz v4, :cond_3c
23523 - :try_start_173
23524 + :try_start_170
23525 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23526 - :try_end_176
23527 - .catch Ljava/io/IOException; {:try_start_173 .. :try_end_176} :catch_178
23529 - goto/16 :goto_3c
23531 - :catch_178
23532 - move-exception v21
23533 + :try_end_173
23534 + .catch Ljava/io/IOException; {:try_start_170 .. :try_end_173} :catch_82
23536 goto/16 :goto_3c
23538 - :cond_17b
23539 - :try_start_17b
23540 + :cond_175
23541 + :try_start_175
23542 invoke-interface {v7}, Ljava/util/List;->clear()V
23544 move-object/from16 v0, v18
23545 @@ -543,40 +533,35 @@
23546 invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
23548 monitor-exit v22
23549 - :try_end_1a9
23550 - .catchall {:try_start_17b .. :try_end_1a9} :catchall_1b3
23551 + :try_end_1a3
23552 + .catchall {:try_start_175 .. :try_end_1a3} :catchall_1aa
23554 if-eqz v4, :cond_3c
23556 - :try_start_1ab
23557 + :try_start_1a5
23558 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23559 - :try_end_1ae
23560 - .catch Ljava/io/IOException; {:try_start_1ab .. :try_end_1ae} :catch_1b0
23561 + :try_end_1a8
23562 + .catch Ljava/io/IOException; {:try_start_1a5 .. :try_end_1a8} :catch_82
23564 goto/16 :goto_3c
23566 - :catch_1b0
23567 + :catchall_1aa
23568 move-exception v21
23570 - goto/16 :goto_3c
23572 - :catchall_1b3
23573 - move-exception v21
23575 - :try_start_1b4
23576 + :try_start_1ab
23577 monitor-exit v22
23578 - :try_end_1b5
23579 - .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_1b3
23580 + :try_end_1ac
23581 + .catchall {:try_start_1ab .. :try_end_1ac} :catchall_1aa
23583 - :try_start_1b5
23584 + :try_start_1ac
23585 throw v21
23586 - :try_end_1b6
23587 - .catchall {:try_start_1b5 .. :try_end_1b6} :catchall_15b
23588 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1b5 .. :try_end_1b6} :catch_51
23589 - .catch Ljava/io/IOException; {:try_start_1b5 .. :try_end_1b6} :catch_ed
23590 + :try_end_1ad
23591 + .catchall {:try_start_1ac .. :try_end_1ad} :catchall_158
23592 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1ac .. :try_end_1ad} :catch_51
23593 + .catch Ljava/io/IOException; {:try_start_1ac .. :try_end_1ad} :catch_ed
23595 - :catch_1b6
23596 + :catch_1ad
23597 move-exception v22
23599 - goto :goto_161
23600 + goto :goto_15e
23601 .end method
23602 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali
23603 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-05-10 15:14:14.354361939 -0500
23604 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-05-10 15:14:37.214475294 -0500
23605 @@ -75,7 +75,7 @@
23606 :try_start_14
23607 monitor-exit v12
23608 :try_end_15
23609 - .catchall {:try_start_14 .. :try_end_15} :catchall_13d
23610 + .catchall {:try_start_14 .. :try_end_15} :catchall_136
23612 :try_start_15
23613 iget-object v11, p0, Landroid/widget/ActivityChooserModel$HistoryPersister;->this$0:Landroid/widget/ActivityChooserModel;
23614 @@ -190,10 +190,10 @@
23616 invoke-interface {v10, v11, v12}, Lorg/xmlpull/v1/XmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
23617 :try_end_7e
23618 - .catchall {:try_start_2b .. :try_end_7e} :catchall_134
23619 + .catchall {:try_start_2b .. :try_end_7e} :catchall_12d
23620 .catch Ljava/lang/IllegalArgumentException; {:try_start_2b .. :try_end_7e} :catch_b7
23621 - .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_e0
23622 - .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_109
23623 + .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_de
23624 + .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_105
23626 add-int/lit8 v2, v2, 0x1
23628 @@ -258,10 +258,10 @@
23630 invoke-interface {v10}, Lorg/xmlpull/v1/XmlSerializer;->endDocument()V
23631 :try_end_af
23632 - .catchall {:try_start_a7 .. :try_end_af} :catchall_134
23633 + .catchall {:try_start_a7 .. :try_end_af} :catchall_12d
23634 .catch Ljava/lang/IllegalArgumentException; {:try_start_a7 .. :try_end_af} :catch_b7
23635 - .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_e0
23636 - .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_109
23637 + .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_de
23638 + .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_105
23640 if-eqz v1, :cond_a5
23642 @@ -312,26 +312,21 @@
23644 invoke-static {v11, v12, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23645 :try_end_d8
23646 - .catchall {:try_start_b8 .. :try_end_d8} :catchall_134
23647 + .catchall {:try_start_b8 .. :try_end_d8} :catchall_12d
23649 if-eqz v1, :cond_a5
23651 :try_start_da
23652 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23653 :try_end_dd
23654 - .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_de
23655 + .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_b5
23657 goto :goto_a5
23659 :catch_de
23660 - move-exception v11
23662 - goto :goto_a5
23664 - :catch_e0
23665 move-exception v5
23667 - :try_start_e1
23668 + :try_start_df
23669 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23671 move-result-object v11
23672 @@ -362,27 +357,22 @@
23673 move-result-object v12
23675 invoke-static {v11, v12, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23676 - :try_end_101
23677 - .catchall {:try_start_e1 .. :try_end_101} :catchall_134
23678 + :try_end_ff
23679 + .catchall {:try_start_df .. :try_end_ff} :catchall_12d
23681 if-eqz v1, :cond_a5
23683 - :try_start_103
23684 + :try_start_101
23685 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23686 - :try_end_106
23687 - .catch Ljava/io/IOException; {:try_start_103 .. :try_end_106} :catch_107
23689 - goto :goto_a5
23691 - :catch_107
23692 - move-exception v11
23693 + :try_end_104
23694 + .catch Ljava/io/IOException; {:try_start_101 .. :try_end_104} :catch_b5
23696 goto :goto_a5
23698 - :catch_109
23699 + :catch_105
23700 move-exception v4
23702 - :try_start_10a
23703 + :try_start_106
23704 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
23706 move-result-object v11
23707 @@ -413,43 +403,38 @@
23708 move-result-object v12
23710 invoke-static {v11, v12, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23711 - :try_end_12a
23712 - .catchall {:try_start_10a .. :try_end_12a} :catchall_134
23713 + :try_end_126
23714 + .catchall {:try_start_106 .. :try_end_126} :catchall_12d
23716 if-eqz v1, :cond_a5
23718 - :try_start_12c
23719 + :try_start_128
23720 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23721 - :try_end_12f
23722 - .catch Ljava/io/IOException; {:try_start_12c .. :try_end_12f} :catch_131
23724 - goto/16 :goto_a5
23726 - :catch_131
23727 - move-exception v11
23728 + :try_end_12b
23729 + .catch Ljava/io/IOException; {:try_start_128 .. :try_end_12b} :catch_b5
23731 goto/16 :goto_a5
23733 - :catchall_134
23734 + :catchall_12d
23735 move-exception v11
23737 - if-eqz v1, :cond_13a
23738 + if-eqz v1, :cond_133
23740 - :try_start_137
23741 + :try_start_130
23742 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23743 - :try_end_13a
23744 - .catch Ljava/io/IOException; {:try_start_137 .. :try_end_13a} :catch_13b
23745 + :try_end_133
23746 + .catch Ljava/io/IOException; {:try_start_130 .. :try_end_133} :catch_134
23748 - :cond_13a
23749 - :goto_13a
23750 + :cond_133
23751 + :goto_133
23752 throw v11
23754 - :catch_13b
23755 + :catch_134
23756 move-exception v12
23758 - goto :goto_13a
23759 + goto :goto_133
23761 - :catchall_13d
23762 + :catchall_136
23763 move-exception v11
23765 move-object v8, v9
23766 diff -Npru stock-framework/smali/android/widget/Filter$RequestHandler.smali pdroid-framework/smali/android/widget/Filter$RequestHandler.smali
23767 --- stock-framework/smali/android/widget/Filter$RequestHandler.smali 2012-05-10 15:14:14.426362299 -0500
23768 +++ pdroid-framework/smali/android/widget/Filter$RequestHandler.smali 2012-05-10 15:14:37.286475652 -0500
23769 @@ -36,7 +36,7 @@
23771 iget v4, p1, Landroid/os/Message;->what:I
23773 - sparse-switch v4, :sswitch_data_a8
23774 + sparse-switch v4, :sswitch_data_a4
23776 :goto_5
23777 return-void
23778 @@ -57,7 +57,7 @@
23780 iput-object v5, v0, Landroid/widget/Filter$RequestArguments;->results:Landroid/widget/Filter$FilterResults;
23781 :try_end_14
23782 - .catchall {:try_start_a .. :try_end_14} :catchall_6e
23783 + .catchall {:try_start_a .. :try_end_14} :catchall_6b
23784 .catch Ljava/lang/Exception; {:try_start_a .. :try_end_14} :catch_4f
23786 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23787 @@ -73,9 +73,9 @@
23789 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23791 + :goto_20
23792 invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23794 - :goto_23
23795 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23797 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23798 @@ -149,7 +149,7 @@
23800 invoke-static {v5, v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23801 :try_end_5e
23802 - .catchall {:try_start_50 .. :try_end_5e} :catchall_6e
23803 + .catchall {:try_start_50 .. :try_end_5e} :catchall_6b
23805 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23807 @@ -164,11 +164,9 @@
23809 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
23811 - invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
23813 - goto :goto_23
23814 + goto :goto_20
23816 - :catchall_6e
23817 + :catchall_6b
23818 move-exception v5
23820 iget-object v6, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23821 @@ -188,7 +186,7 @@
23823 throw v5
23825 - :sswitch_7f
23826 + :sswitch_7c
23827 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23829 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
23830 @@ -198,7 +196,7 @@
23832 monitor-enter v6
23834 - :try_start_86
23835 + :try_start_83
23836 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23838 #getter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23839 @@ -206,7 +204,7 @@
23841 move-result-object v5
23843 - if-eqz v5, :cond_a1
23844 + if-eqz v5, :cond_9e
23846 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
23848 @@ -228,25 +226,23 @@
23849 #setter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
23850 invoke-static {v5, v7}, Landroid/widget/Filter;->access$402(Landroid/widget/Filter;Landroid/os/Handler;)Landroid/os/Handler;
23852 - :cond_a1
23853 + :cond_9e
23854 monitor-exit v6
23856 goto/16 :goto_5
23858 - :catchall_a4
23859 + :catchall_a1
23860 move-exception v5
23862 monitor-exit v6
23863 - :try_end_a6
23864 - .catchall {:try_start_86 .. :try_end_a6} :catchall_a4
23865 + :try_end_a3
23866 + .catchall {:try_start_83 .. :try_end_a3} :catchall_a1
23868 throw v5
23870 - nop
23872 - :sswitch_data_a8
23873 + :sswitch_data_a4
23874 .sparse-switch
23875 -0x2f2f0ff3 -> :sswitch_6
23876 - -0x21524111 -> :sswitch_7f
23877 + -0x21524111 -> :sswitch_7c
23878 .end sparse-switch
23879 .end method
23880 diff -Npru stock-framework/smali/android/widget/GridView.smali pdroid-framework/smali/android/widget/GridView.smali
23881 --- stock-framework/smali/android/widget/GridView.smali 2012-05-10 15:14:14.446362395 -0500
23882 +++ pdroid-framework/smali/android/widget/GridView.smali 2012-05-10 15:14:37.306475750 -0500
23883 @@ -4243,10 +4243,11 @@
23885 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
23886 :try_end_22
23887 - .catchall {:try_start_e .. :try_end_22} :catchall_1c6
23888 + .catchall {:try_start_e .. :try_end_22} :catchall_1b5
23890 if-nez v3, :cond_2c
23892 + :goto_24
23893 const/16 v19, 0x0
23895 move/from16 v0, v19
23896 @@ -4256,7 +4257,6 @@
23897 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
23899 :cond_2c
23900 - :goto_2c
23901 return-void
23903 :cond_2d
23904 @@ -4317,7 +4317,7 @@
23906 move/from16 v19, v0
23908 - packed-switch v19, :pswitch_data_304
23909 + packed-switch v19, :pswitch_data_2f2
23911 move-object/from16 v0, p0
23913 @@ -4372,28 +4372,17 @@
23915 move/from16 v19, v0
23917 - if-nez v19, :cond_d9
23918 + if-nez v19, :cond_d1
23920 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->resetList()V
23922 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
23923 - :try_end_9e
23924 - .catchall {:try_start_2d .. :try_end_9e} :catchall_1c6
23926 if-nez v3, :cond_2c
23928 - const/16 v19, 0x0
23930 - move/from16 v0, v19
23932 - move-object/from16 v1, p0
23934 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
23936 - goto :goto_2c
23937 + goto :goto_24
23939 - :pswitch_a9
23940 - :try_start_a9
23941 + :pswitch_a1
23942 move-object/from16 v0, p0
23944 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
23945 @@ -4420,7 +4409,7 @@
23947 goto :goto_87
23949 - :pswitch_c2
23950 + :pswitch_ba
23951 move-object/from16 v0, p0
23953 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
23954 @@ -4445,7 +4434,7 @@
23956 goto :goto_87
23958 - :cond_d9
23959 + :cond_d1
23960 move-object/from16 v0, p0
23962 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
23963 @@ -4468,12 +4457,12 @@
23965 move-object/from16 v17, v0
23967 - if-eqz v8, :cond_109
23968 + if-eqz v8, :cond_101
23970 const/4 v11, 0x0
23972 - :goto_f3
23973 - if-ge v11, v5, :cond_10e
23974 + :goto_eb
23975 + if-ge v11, v5, :cond_106
23977 move-object/from16 v0, p0
23979 @@ -4493,14 +4482,14 @@
23981 add-int/lit8 v11, v11, 0x1
23983 - goto :goto_f3
23984 + goto :goto_eb
23986 - :cond_109
23987 + :cond_101
23988 move-object/from16 v0, v17
23990 invoke-virtual {v0, v5, v10}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
23992 - :cond_10e
23993 + :cond_106
23994 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->detachAllViewsFromParent()V
23996 move-object/from16 v0, p0
23997 @@ -4509,9 +4498,9 @@
23999 move/from16 v19, v0
24001 - packed-switch v19, :pswitch_data_314
24002 + packed-switch v19, :pswitch_data_302
24004 - if-nez v5, :cond_24d
24005 + if-nez v5, :cond_23c
24007 move-object/from16 v0, p0
24009 @@ -4519,7 +4508,7 @@
24011 move/from16 v19, v0
24013 - if-nez v19, :cond_223
24014 + if-nez v19, :cond_212
24016 move-object/from16 v0, p0
24018 @@ -4527,18 +4516,18 @@
24020 move-object/from16 v19, v0
24022 - if-eqz v19, :cond_132
24023 + if-eqz v19, :cond_12a
24025 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24027 move-result v19
24029 - if-eqz v19, :cond_21f
24030 + if-eqz v19, :cond_20e
24032 - :cond_132
24033 + :cond_12a
24034 const/16 v19, -0x1
24036 - :goto_134
24037 + :goto_12c
24038 move-object/from16 v0, p0
24040 move/from16 v1, v19
24041 @@ -4551,10 +4540,10 @@
24043 move-result-object v18
24045 - :goto_141
24046 + :goto_139
24047 invoke-virtual/range {v17 .. v17}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24049 - if-eqz v18, :cond_2b3
24050 + if-eqz v18, :cond_2a2
24052 const/16 v19, -0x1
24054 @@ -4576,8 +4565,8 @@
24056 iput v0, v1, Landroid/widget/GridView;->mSelectedTop:I
24058 - :cond_15b
24059 - :goto_15b
24060 + :cond_153
24061 + :goto_153
24062 const/16 v19, 0x0
24064 move/from16 v0, v19
24065 @@ -4622,31 +4611,20 @@
24067 move/from16 v19, v0
24069 - if-lez v19, :cond_18e
24070 + if-lez v19, :cond_186
24072 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->checkSelectionChanged()V
24074 - :cond_18e
24075 + :cond_186
24076 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24077 - :try_end_191
24078 - .catchall {:try_start_a9 .. :try_end_191} :catchall_1c6
24080 if-nez v3, :cond_2c
24082 - const/16 v19, 0x0
24084 - move/from16 v0, v19
24085 + goto/16 :goto_24
24087 - move-object/from16 v1, p0
24088 + :pswitch_18d
24089 + if-eqz v14, :cond_19c
24091 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24093 - goto/16 :goto_2c
24095 - :pswitch_19d
24096 - if-eqz v14, :cond_1ac
24098 - :try_start_19f
24099 invoke-virtual {v14}, Landroid/view/View;->getTop()I
24101 move-result v19
24102 @@ -4659,18 +4637,18 @@
24104 move-result-object v18
24106 - goto :goto_141
24107 + goto :goto_139
24109 - :cond_1ac
24110 + :cond_19c
24111 move-object/from16 v0, p0
24113 invoke-direct {v0, v7, v6}, Landroid/widget/GridView;->fillSelection(II)Landroid/view/View;
24115 move-result-object v18
24117 - goto :goto_141
24118 + goto :goto_139
24120 - :pswitch_1b3
24121 + :pswitch_1a3
24122 const/16 v19, 0x0
24124 move/from16 v0, v19
24125 @@ -4686,15 +4664,15 @@
24126 move-result-object v18
24128 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24129 - :try_end_1c4
24130 - .catchall {:try_start_19f .. :try_end_1c4} :catchall_1c6
24131 + :try_end_1b4
24132 + .catchall {:try_start_2d .. :try_end_1b4} :catchall_1b5
24134 - goto/16 :goto_141
24135 + goto :goto_139
24137 - :catchall_1c6
24138 + :catchall_1b5
24139 move-exception v19
24141 - if-nez v3, :cond_1d1
24142 + if-nez v3, :cond_1c0
24144 const/16 v20, 0x0
24146 @@ -4704,11 +4682,11 @@
24148 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24150 - :cond_1d1
24151 + :cond_1c0
24152 throw v19
24154 - :pswitch_1d2
24155 - :try_start_1d2
24156 + :pswitch_1c1
24157 + :try_start_1c1
24158 move-object/from16 v0, p0
24160 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24161 @@ -4727,9 +4705,9 @@
24163 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24165 - goto/16 :goto_141
24166 + goto/16 :goto_139
24168 - :pswitch_1e7
24169 + :pswitch_1d6
24170 move-object/from16 v0, p0
24172 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24173 @@ -4752,9 +4730,9 @@
24175 move-result-object v18
24177 - goto/16 :goto_141
24178 + goto/16 :goto_139
24180 - :pswitch_1ff
24181 + :pswitch_1ee
24182 move-object/from16 v0, p0
24184 iget v0, v0, Landroid/widget/GridView;->mSyncPosition:I
24185 @@ -4777,23 +4755,23 @@
24187 move-result-object v18
24189 - goto/16 :goto_141
24190 + goto/16 :goto_139
24192 - :pswitch_217
24193 + :pswitch_206
24194 move-object/from16 v0, p0
24196 invoke-direct {v0, v9, v7, v6}, Landroid/widget/GridView;->moveSelection(III)Landroid/view/View;
24198 move-result-object v18
24200 - goto/16 :goto_141
24201 + goto/16 :goto_139
24203 - :cond_21f
24204 + :cond_20e
24205 const/16 v19, 0x0
24207 - goto/16 :goto_134
24208 + goto/16 :goto_12c
24210 - :cond_223
24211 + :cond_212
24212 move-object/from16 v0, p0
24214 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24215 @@ -4808,18 +4786,18 @@
24217 move-object/from16 v19, v0
24219 - if-eqz v19, :cond_239
24220 + if-eqz v19, :cond_228
24222 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24224 move-result v19
24226 - if-eqz v19, :cond_24a
24227 + if-eqz v19, :cond_239
24229 - :cond_239
24230 + :cond_228
24231 const/16 v19, -0x1
24233 - :goto_23b
24234 + :goto_22a
24235 move-object/from16 v0, p0
24237 move/from16 v1, v19
24238 @@ -4832,21 +4810,21 @@
24240 move-result-object v18
24242 - goto/16 :goto_141
24243 + goto/16 :goto_139
24245 - :cond_24a
24246 + :cond_239
24247 move/from16 v19, v13
24249 - goto :goto_23b
24250 + goto :goto_22a
24252 - :cond_24d
24253 + :cond_23c
24254 move-object/from16 v0, p0
24256 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24258 move/from16 v19, v0
24260 - if-ltz v19, :cond_27e
24261 + if-ltz v19, :cond_26d
24263 move-object/from16 v0, p0
24265 @@ -4864,7 +4842,7 @@
24267 move/from16 v1, v20
24269 - if-ge v0, v1, :cond_27e
24270 + if-ge v0, v1, :cond_26d
24272 move-object/from16 v0, p0
24274 @@ -4872,9 +4850,9 @@
24276 move/from16 v19, v0
24278 - if-nez v16, :cond_279
24279 + if-nez v16, :cond_268
24281 - :goto_26f
24282 + :goto_25e
24283 move-object/from16 v0, p0
24285 move/from16 v1, v19
24286 @@ -4883,16 +4861,16 @@
24288 move-result-object v18
24290 - goto/16 :goto_141
24291 + goto/16 :goto_139
24293 - :cond_279
24294 + :cond_268
24295 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->getTop()I
24297 move-result v7
24299 - goto :goto_26f
24300 + goto :goto_25e
24302 - :cond_27e
24303 + :cond_26d
24304 move-object/from16 v0, p0
24306 iget v0, v0, Landroid/widget/GridView;->mFirstPosition:I
24307 @@ -4909,7 +4887,7 @@
24309 move/from16 v1, v20
24311 - if-ge v0, v1, :cond_2a7
24312 + if-ge v0, v1, :cond_296
24314 move-object/from16 v0, p0
24316 @@ -4917,9 +4895,9 @@
24318 move/from16 v19, v0
24320 - if-nez v15, :cond_2a2
24321 + if-nez v15, :cond_291
24323 - :goto_298
24324 + :goto_287
24325 move-object/from16 v0, p0
24327 move/from16 v1, v19
24328 @@ -4928,16 +4906,16 @@
24330 move-result-object v18
24332 - goto/16 :goto_141
24333 + goto/16 :goto_139
24335 - :cond_2a2
24336 + :cond_291
24337 invoke-virtual {v15}, Landroid/view/View;->getTop()I
24339 move-result v7
24341 - goto :goto_298
24342 + goto :goto_287
24344 - :cond_2a7
24345 + :cond_296
24346 const/16 v19, 0x0
24348 move-object/from16 v0, p0
24349 @@ -4948,16 +4926,16 @@
24351 move-result-object v18
24353 - goto/16 :goto_141
24354 + goto/16 :goto_139
24356 - :cond_2b3
24357 + :cond_2a2
24358 move-object/from16 v0, p0
24360 iget v0, v0, Landroid/widget/GridView;->mTouchMode:I
24362 move/from16 v19, v0
24364 - if-lez v19, :cond_2f0
24365 + if-lez v19, :cond_2df
24367 move-object/from16 v0, p0
24369 @@ -4971,7 +4949,7 @@
24371 move/from16 v1, v20
24373 - if-ge v0, v1, :cond_2f0
24374 + if-ge v0, v1, :cond_2df
24376 move-object/from16 v0, p0
24378 @@ -4995,7 +4973,7 @@
24380 move-result-object v4
24382 - if-eqz v4, :cond_15b
24383 + if-eqz v4, :cond_153
24385 move-object/from16 v0, p0
24387 @@ -5009,9 +4987,9 @@
24389 invoke-virtual {v0, v1, v4}, Landroid/widget/GridView;->positionSelector(ILandroid/view/View;)V
24391 - goto/16 :goto_15b
24392 + goto/16 :goto_153
24394 - :cond_2f0
24395 + :cond_2df
24396 const/16 v19, 0x0
24398 move/from16 v0, v19
24399 @@ -5027,31 +5005,29 @@
24400 move-object/from16 v19, v0
24402 invoke-virtual/range {v19 .. v19}, Landroid/graphics/Rect;->setEmpty()V
24403 - :try_end_301
24404 - .catchall {:try_start_1d2 .. :try_end_301} :catchall_1c6
24406 - goto/16 :goto_15b
24407 + :try_end_2f0
24408 + .catchall {:try_start_1c1 .. :try_end_2f0} :catchall_1b5
24410 - nop
24411 + goto/16 :goto_153
24413 - :pswitch_data_304
24414 + :pswitch_data_2f2
24415 .packed-switch 0x1
24416 :pswitch_87
24417 - :pswitch_a9
24418 + :pswitch_a1
24419 :pswitch_87
24420 :pswitch_87
24421 :pswitch_87
24422 - :pswitch_c2
24423 + :pswitch_ba
24424 .end packed-switch
24426 - :pswitch_data_314
24427 + :pswitch_data_302
24428 .packed-switch 0x1
24429 - :pswitch_1b3
24430 - :pswitch_19d
24431 - :pswitch_1d2
24432 - :pswitch_1e7
24433 - :pswitch_1ff
24434 - :pswitch_217
24435 + :pswitch_1a3
24436 + :pswitch_18d
24437 + :pswitch_1c1
24438 + :pswitch_1d6
24439 + :pswitch_1ee
24440 + :pswitch_206
24441 .end packed-switch
24442 .end method
24444 diff -Npru stock-framework/smali/android/widget/ListView.smali pdroid-framework/smali/android/widget/ListView.smali
24445 --- stock-framework/smali/android/widget/ListView.smali 2012-05-10 15:14:14.414362240 -0500
24446 +++ pdroid-framework/smali/android/widget/ListView.smali 2012-05-10 15:14:37.278475617 -0500
24447 @@ -6868,10 +6868,11 @@
24449 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24450 :try_end_1d
24451 - .catchall {:try_start_b .. :try_end_1d} :catchall_125
24452 + .catchall {:try_start_b .. :try_end_1d} :catchall_120
24454 if-nez v8, :cond_24
24456 + :goto_1f
24457 const/4 v2, 0x0
24459 move-object/from16 v0, p0
24460 @@ -6879,7 +6880,6 @@
24461 iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24463 :cond_24
24464 - :goto_24
24465 return-void
24467 :cond_25
24468 @@ -6936,7 +6936,7 @@
24470 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24472 - packed-switch v2, :pswitch_data_36e
24473 + packed-switch v2, :pswitch_data_364
24475 move-object/from16 v0, p0
24477 @@ -7016,26 +7016,17 @@
24479 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24481 - if-nez v2, :cond_cc
24482 + if-nez v2, :cond_c7
24484 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->resetList()V
24486 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24487 - :try_end_a8
24488 - .catchall {:try_start_25 .. :try_end_a8} :catchall_125
24490 if-nez v8, :cond_24
24492 - const/4 v2, 0x0
24494 - move-object/from16 v0, p0
24496 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24498 - goto/16 :goto_24
24499 + goto/16 :goto_1f
24501 - :pswitch_b1
24502 - :try_start_b1
24503 + :pswitch_ac
24504 move-object/from16 v0, p0
24506 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24507 @@ -7064,7 +7055,7 @@
24509 goto :goto_93
24511 - :cond_cc
24512 + :cond_c7
24513 move-object/from16 v0, p0
24515 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24516 @@ -7081,7 +7072,7 @@
24518 move/from16 v0, v24
24520 - if-eq v2, v0, :cond_131
24521 + if-eq v2, v0, :cond_12c
24523 new-instance v2, Ljava/lang/IllegalStateException;
24525 @@ -7152,13 +7143,13 @@
24526 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
24528 throw v2
24529 - :try_end_125
24530 - .catchall {:try_start_b1 .. :try_end_125} :catchall_125
24531 + :try_end_120
24532 + .catchall {:try_start_25 .. :try_end_120} :catchall_120
24534 - :catchall_125
24535 + :catchall_120
24536 move-exception v2
24538 - if-nez v8, :cond_130
24539 + if-nez v8, :cond_12b
24541 const/16 v24, 0x0
24543 @@ -7168,11 +7159,11 @@
24545 iput-boolean v0, v1, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24547 - :cond_130
24548 + :cond_12b
24549 throw v2
24551 - :cond_131
24552 - :try_start_131
24553 + :cond_12c
24554 + :try_start_12c
24555 move-object/from16 v0, p0
24557 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
24558 @@ -7193,14 +7184,14 @@
24560 const/4 v13, 0x0
24562 - if-eqz v11, :cond_161
24563 + if-eqz v11, :cond_15c
24565 const/16 v18, 0x0
24567 - :goto_149
24568 + :goto_144
24569 move/from16 v0, v18
24571 - if-ge v0, v10, :cond_166
24572 + if-ge v0, v10, :cond_161
24574 move-object/from16 v0, p0
24576 @@ -7220,21 +7211,21 @@
24578 add-int/lit8 v18, v18, 0x1
24580 - goto :goto_149
24581 + goto :goto_144
24583 - :cond_161
24584 + :cond_15c
24585 move-object/from16 v0, v22
24587 invoke-virtual {v0, v10, v12}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24589 - :cond_166
24590 + :cond_161
24591 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24593 move-result-object v17
24595 - if-eqz v17, :cond_186
24596 + if-eqz v17, :cond_181
24598 - if-eqz v11, :cond_178
24599 + if-eqz v11, :cond_173
24601 move-object/from16 v0, p0
24603 @@ -7244,38 +7235,38 @@
24605 move-result v2
24607 - if-eqz v2, :cond_183
24608 + if-eqz v2, :cond_17e
24610 - :cond_178
24611 + :cond_173
24612 move-object/from16 v13, v17
24614 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->findFocus()Landroid/view/View;
24616 move-result-object v14
24618 - if-eqz v14, :cond_183
24619 + if-eqz v14, :cond_17e
24621 invoke-virtual {v14}, Landroid/view/View;->onStartTemporaryDetach()V
24623 - :cond_183
24624 + :cond_17e
24625 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->requestFocus()Z
24627 - :cond_186
24628 + :cond_181
24629 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->detachAllViewsFromParent()V
24631 move-object/from16 v0, p0
24633 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
24635 - packed-switch v2, :pswitch_data_37c
24636 + packed-switch v2, :pswitch_data_372
24638 - if-nez v10, :cond_2ba
24639 + if-nez v10, :cond_2b0
24641 move-object/from16 v0, p0
24643 iget-boolean v2, v0, Landroid/widget/ListView;->mStackFromBottom:Z
24645 - if-nez v2, :cond_295
24646 + if-nez v2, :cond_28b
24648 const/4 v2, 0x0
24650 @@ -7301,61 +7292,61 @@
24652 move-result-object v23
24654 - :goto_1b0
24655 + :goto_1ab
24656 invoke-virtual/range {v22 .. v22}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24658 - if-eqz v23, :cond_327
24659 + if-eqz v23, :cond_31d
24661 move-object/from16 v0, p0
24663 iget-boolean v2, v0, Landroid/widget/ListView;->mItemsCanFocus:Z
24665 - if-eqz v2, :cond_31d
24666 + if-eqz v2, :cond_313
24668 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
24670 move-result v2
24672 - if-eqz v2, :cond_31d
24673 + if-eqz v2, :cond_313
24675 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->hasFocus()Z
24677 move-result v2
24679 - if-nez v2, :cond_31d
24680 + if-nez v2, :cond_313
24682 move-object/from16 v0, v23
24684 - if-ne v0, v13, :cond_1d1
24685 + if-ne v0, v13, :cond_1cc
24687 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
24689 move-result v2
24691 - if-nez v2, :cond_1d7
24692 + if-nez v2, :cond_1d2
24694 - :cond_1d1
24695 + :cond_1cc
24696 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->requestFocus()Z
24698 move-result v2
24700 - if-eqz v2, :cond_30b
24701 + if-eqz v2, :cond_301
24703 - :cond_1d7
24704 + :cond_1d2
24705 const/4 v15, 0x1
24707 - :goto_1d8
24708 - if-nez v15, :cond_30e
24709 + :goto_1d3
24710 + if-nez v15, :cond_304
24712 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
24714 move-result-object v16
24716 - if-eqz v16, :cond_1e3
24717 + if-eqz v16, :cond_1de
24719 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->clearFocus()V
24721 - :cond_1e3
24722 + :cond_1de
24723 const/4 v2, -0x1
24725 move-object/from16 v0, p0
24726 @@ -7364,7 +7355,7 @@
24728 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
24730 - :goto_1eb
24731 + :goto_1e6
24732 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->getTop()I
24734 move-result v2
24735 @@ -7373,19 +7364,19 @@
24737 iput v2, v0, Landroid/widget/ListView;->mSelectedTop:I
24739 - :cond_1f3
24740 - :goto_1f3
24741 - if-eqz v14, :cond_1fe
24742 + :cond_1ee
24743 + :goto_1ee
24744 + if-eqz v14, :cond_1f9
24746 invoke-virtual {v14}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
24748 move-result-object v2
24750 - if-eqz v2, :cond_1fe
24751 + if-eqz v2, :cond_1f9
24753 invoke-virtual {v14}, Landroid/view/View;->onFinishTemporaryDetach()V
24755 - :cond_1fe
24756 + :cond_1f9
24757 const/4 v2, 0x0
24759 move-object/from16 v0, p0
24760 @@ -7418,29 +7409,20 @@
24762 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24764 - if-lez v2, :cond_222
24765 + if-lez v2, :cond_21d
24767 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->checkSelectionChanged()V
24769 - :cond_222
24770 + :cond_21d
24771 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24772 - :try_end_225
24773 - .catchall {:try_start_131 .. :try_end_225} :catchall_125
24775 if-nez v8, :cond_24
24777 - const/4 v2, 0x0
24779 - move-object/from16 v0, p0
24781 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
24783 - goto/16 :goto_24
24784 + goto/16 :goto_1f
24786 - :pswitch_22e
24787 - if-eqz v4, :cond_23c
24788 + :pswitch_224
24789 + if-eqz v4, :cond_232
24791 - :try_start_230
24792 invoke-virtual {v4}, Landroid/view/View;->getTop()I
24794 move-result v2
24795 @@ -7451,18 +7433,18 @@
24797 move-result-object v23
24799 - goto/16 :goto_1b0
24800 + goto/16 :goto_1ab
24802 - :cond_23c
24803 + :cond_232
24804 move-object/from16 v0, p0
24806 invoke-direct {v0, v6, v7}, Landroid/widget/ListView;->fillFromMiddle(II)Landroid/view/View;
24808 move-result-object v23
24810 - goto/16 :goto_1b0
24811 + goto/16 :goto_1ab
24813 - :pswitch_244
24814 + :pswitch_23a
24815 move-object/from16 v0, p0
24817 iget v2, v0, Landroid/widget/ListView;->mSyncPosition:I
24818 @@ -7481,9 +7463,9 @@
24820 move-result-object v23
24822 - goto/16 :goto_1b0
24823 + goto/16 :goto_1ab
24825 - :pswitch_258
24826 + :pswitch_24e
24827 move-object/from16 v0, p0
24829 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24830 @@ -7498,9 +7480,9 @@
24832 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24834 - goto/16 :goto_1b0
24835 + goto/16 :goto_1ab
24837 - :pswitch_269
24838 + :pswitch_25f
24839 const/4 v2, 0x0
24841 move-object/from16 v0, p0
24842 @@ -7515,9 +7497,9 @@
24844 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
24846 - goto/16 :goto_1b0
24847 + goto/16 :goto_1ab
24849 - :pswitch_279
24850 + :pswitch_26f
24851 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->reconcileSelectedPosition()I
24853 move-result v2
24854 @@ -7536,18 +7518,18 @@
24856 move-result-object v23
24858 - goto/16 :goto_1b0
24859 + goto/16 :goto_1ab
24861 - :pswitch_28d
24862 + :pswitch_283
24863 move-object/from16 v2, p0
24865 invoke-direct/range {v2 .. v7}, Landroid/widget/ListView;->moveSelection(Landroid/view/View;Landroid/view/View;III)Landroid/view/View;
24867 move-result-object v23
24869 - goto/16 :goto_1b0
24870 + goto/16 :goto_1ab
24872 - :cond_295
24873 + :cond_28b
24874 move-object/from16 v0, p0
24876 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
24877 @@ -7582,14 +7564,14 @@
24879 move-result-object v23
24881 - goto/16 :goto_1b0
24882 + goto/16 :goto_1ab
24884 - :cond_2ba
24885 + :cond_2b0
24886 move-object/from16 v0, p0
24888 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24890 - if-ltz v2, :cond_2e1
24891 + if-ltz v2, :cond_2d7
24893 move-object/from16 v0, p0
24895 @@ -7603,31 +7585,31 @@
24897 move/from16 v0, v24
24899 - if-ge v2, v0, :cond_2e1
24900 + if-ge v2, v0, :cond_2d7
24902 move-object/from16 v0, p0
24904 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
24906 - if-nez v3, :cond_2dc
24907 + if-nez v3, :cond_2d2
24909 - :goto_2d4
24910 + :goto_2ca
24911 move-object/from16 v0, p0
24913 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
24915 move-result-object v23
24917 - goto/16 :goto_1b0
24918 + goto/16 :goto_1ab
24920 - :cond_2dc
24921 + :cond_2d2
24922 invoke-virtual {v3}, Landroid/view/View;->getTop()I
24924 move-result v6
24926 - goto :goto_2d4
24927 + goto :goto_2ca
24929 - :cond_2e1
24930 + :cond_2d7
24931 move-object/from16 v0, p0
24933 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
24934 @@ -7640,31 +7622,31 @@
24936 move/from16 v0, v24
24938 - if-ge v2, v0, :cond_302
24939 + if-ge v2, v0, :cond_2f8
24941 move-object/from16 v0, p0
24943 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
24945 - if-nez v20, :cond_2fd
24946 + if-nez v20, :cond_2f3
24948 - :goto_2f5
24949 + :goto_2eb
24950 move-object/from16 v0, p0
24952 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
24954 move-result-object v23
24956 - goto/16 :goto_1b0
24957 + goto/16 :goto_1ab
24959 - :cond_2fd
24960 + :cond_2f3
24961 invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getTop()I
24963 move-result v6
24965 - goto :goto_2f5
24966 + goto :goto_2eb
24968 - :cond_302
24969 + :cond_2f8
24970 const/4 v2, 0x0
24972 move-object/from16 v0, p0
24973 @@ -7673,14 +7655,14 @@
24975 move-result-object v23
24977 - goto/16 :goto_1b0
24978 + goto/16 :goto_1ab
24980 - :cond_30b
24981 + :cond_301
24982 const/4 v15, 0x0
24984 - goto/16 :goto_1d8
24985 + goto/16 :goto_1d3
24987 - :cond_30e
24988 + :cond_304
24989 const/4 v2, 0x0
24991 move-object/from16 v0, v23
24992 @@ -7693,9 +7675,9 @@
24994 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
24996 - goto/16 :goto_1eb
24997 + goto/16 :goto_1e6
24999 - :cond_31d
25000 + :cond_313
25001 const/4 v2, -0x1
25003 move-object/from16 v0, p0
25004 @@ -7704,14 +7686,14 @@
25006 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25008 - goto/16 :goto_1eb
25009 + goto/16 :goto_1e6
25011 - :cond_327
25012 + :cond_31d
25013 move-object/from16 v0, p0
25015 iget v2, v0, Landroid/widget/ListView;->mTouchMode:I
25017 - if-lez v2, :cond_361
25018 + if-lez v2, :cond_357
25020 move-object/from16 v0, p0
25022 @@ -7721,7 +7703,7 @@
25024 move/from16 v0, v24
25026 - if-ge v2, v0, :cond_361
25027 + if-ge v2, v0, :cond_357
25029 move-object/from16 v0, p0
25031 @@ -7741,7 +7723,7 @@
25033 move-result-object v9
25035 - if-eqz v9, :cond_354
25036 + if-eqz v9, :cond_34a
25038 move-object/from16 v0, p0
25040 @@ -7751,21 +7733,21 @@
25042 invoke-virtual {v0, v2, v9}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25044 - :cond_354
25045 - :goto_354
25046 + :cond_34a
25047 + :goto_34a
25048 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25050 move-result v2
25052 - if-eqz v2, :cond_1f3
25053 + if-eqz v2, :cond_1ee
25055 - if-eqz v14, :cond_1f3
25056 + if-eqz v14, :cond_1ee
25058 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25060 - goto/16 :goto_1f3
25061 + goto/16 :goto_1ee
25063 - :cond_361
25064 + :cond_357
25065 const/4 v2, 0x0
25067 move-object/from16 v0, p0
25068 @@ -7777,28 +7759,28 @@
25069 iget-object v2, v0, Landroid/widget/ListView;->mSelectorRect:Landroid/graphics/Rect;
25071 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25072 - :try_end_36d
25073 - .catchall {:try_start_230 .. :try_end_36d} :catchall_125
25074 + :try_end_363
25075 + .catchall {:try_start_12c .. :try_end_363} :catchall_120
25077 - goto :goto_354
25078 + goto :goto_34a
25080 - :pswitch_data_36e
25081 + :pswitch_data_364
25082 .packed-switch 0x1
25083 :pswitch_93
25084 - :pswitch_b1
25085 + :pswitch_ac
25086 :pswitch_93
25087 :pswitch_93
25088 :pswitch_93
25089 .end packed-switch
25091 - :pswitch_data_37c
25092 + :pswitch_data_372
25093 .packed-switch 0x1
25094 - :pswitch_269
25095 - :pswitch_22e
25096 - :pswitch_258
25097 - :pswitch_279
25098 - :pswitch_244
25099 - :pswitch_28d
25100 + :pswitch_25f
25101 + :pswitch_224
25102 + :pswitch_24e
25103 + :pswitch_26f
25104 + :pswitch_23a
25105 + :pswitch_283
25106 .end packed-switch
25107 .end method
25109 diff -Npru stock-framework/smali/android/widget/TextView.smali pdroid-framework/smali/android/widget/TextView.smali
25110 --- stock-framework/smali/android/widget/TextView.smali 2012-05-10 15:14:11.218346387 -0500
25111 +++ pdroid-framework/smali/android/widget/TextView.smali 2012-05-10 15:14:33.570457230 -0500
25112 @@ -5274,18 +5274,18 @@
25113 return v2
25115 :cond_b
25116 - sparse-switch p1, :sswitch_data_ec
25117 + sparse-switch p1, :sswitch_data_e8
25119 :cond_e
25120 iget-object v2, p0, Landroid/widget/TextView;->mInput:Landroid/text/method/KeyListener;
25122 - if-eqz v2, :cond_bb
25123 + if-eqz v2, :cond_b7
25125 invoke-virtual {p0}, Landroid/widget/TextView;->resetErrorChangedFlag()V
25127 const/4 v0, 0x1
25129 - if-eqz p3, :cond_97
25130 + if-eqz p3, :cond_9d
25132 :try_start_18
25133 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25134 @@ -5302,12 +5302,12 @@
25136 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25137 :try_end_28
25138 - .catchall {:try_start_18 .. :try_end_28} :catchall_b6
25139 - .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_b1
25140 + .catchall {:try_start_18 .. :try_end_28} :catchall_94
25141 + .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_99
25143 const/4 v0, 0x0
25145 - if-eqz v1, :cond_94
25146 + if-eqz v1, :cond_9a
25148 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25150 @@ -5433,12 +5433,21 @@
25152 goto/16 :goto_a
25154 - :cond_94
25155 + :catchall_94
25156 + move-exception v2
25158 + invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25160 + throw v2
25162 + :catch_99
25163 + move-exception v2
25165 + :cond_9a
25166 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25168 - :cond_97
25169 - :goto_97
25170 - if-eqz v0, :cond_bb
25171 + :cond_9d
25172 + if-eqz v0, :cond_b7
25174 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25176 @@ -5456,40 +5465,26 @@
25178 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25180 - if-eqz v1, :cond_bb
25181 + if-eqz v1, :cond_b7
25183 move v2, v5
25185 goto/16 :goto_a
25187 - :catch_b1
25188 - move-exception v2
25190 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25192 - goto :goto_97
25194 - :catchall_b6
25195 - move-exception v2
25197 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25199 - throw v2
25201 - :cond_bb
25202 + :cond_b7
25203 iget-object v2, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25205 - if-eqz v2, :cond_e8
25206 + if-eqz v2, :cond_e4
25208 iget-object v2, p0, Landroid/widget/TextView;->mLayout:Landroid/text/Layout;
25210 - if-eqz v2, :cond_e8
25211 + if-eqz v2, :cond_e4
25213 const/4 v0, 0x1
25215 - if-eqz p3, :cond_d7
25216 + if-eqz p3, :cond_d3
25218 - :try_start_c6
25219 + :try_start_c2
25220 iget-object v5, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25222 iget-object v2, p0, Landroid/widget/TextView;->mText:Ljava/lang/CharSequence;
25223 @@ -5497,24 +5492,24 @@
25224 check-cast v2, Landroid/text/Spannable;
25226 invoke-interface {v5, p0, v2, p3}, Landroid/text/method/MovementMethod;->onKeyOther(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
25227 - :try_end_cf
25228 - .catch Ljava/lang/AbstractMethodError; {:try_start_c6 .. :try_end_cf} :catch_d6
25229 + :try_end_cb
25230 + .catch Ljava/lang/AbstractMethodError; {:try_start_c2 .. :try_end_cb} :catch_d2
25232 move-result v1
25234 const/4 v0, 0x0
25236 - if-eqz v1, :cond_d7
25237 + if-eqz v1, :cond_d3
25239 move v2, v4
25241 goto/16 :goto_a
25243 - :catch_d6
25244 + :catch_d2
25245 move-exception v2
25247 - :cond_d7
25248 - if-eqz v0, :cond_e8
25249 + :cond_d3
25250 + if-eqz v0, :cond_e4
25252 iget-object v4, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25254 @@ -5526,20 +5521,20 @@
25256 move-result v2
25258 - if-eqz v2, :cond_e8
25259 + if-eqz v2, :cond_e4
25261 const/4 v2, 0x2
25263 goto/16 :goto_a
25265 - :cond_e8
25266 + :cond_e4
25267 move v2, v3
25269 goto/16 :goto_a
25273 - :sswitch_data_ec
25274 + :sswitch_data_e8
25275 .sparse-switch
25276 0x4 -> :sswitch_8a
25277 0x17 -> :sswitch_68
25278 diff -Npru stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali
25279 --- stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-05-10 15:14:14.790364106 -0500
25280 +++ pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-05-10 15:14:38.786483096 -0500
25281 @@ -4343,13 +4343,14 @@
25283 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->commit()V
25284 :try_end_30
25285 - .catchall {:try_start_10 .. :try_end_30} :catchall_52
25286 + .catchall {:try_start_10 .. :try_end_30} :catchall_4f
25287 .catch Ljava/io/IOException; {:try_start_10 .. :try_end_30} :catch_3c
25289 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25291 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25293 + :goto_35
25294 invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25296 goto :goto_9
25297 @@ -4378,17 +4379,15 @@
25299 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->rollback()V
25300 :try_end_49
25301 - .catchall {:try_start_3d .. :try_end_49} :catchall_52
25302 + .catchall {:try_start_3d .. :try_end_49} :catchall_4f
25304 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25306 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25308 - invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25310 - goto :goto_9
25311 + goto :goto_35
25313 - :catchall_52
25314 + :catchall_4f
25315 move-exception v3
25317 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25318 diff -Npru stock-framework/smali/com/android/internal/telephony/BaseCommands.smali pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali
25319 --- stock-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-05-10 15:14:14.886364578 -0500
25320 +++ pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-05-10 15:14:38.826483292 -0500
25321 @@ -555,8 +555,8 @@
25323 invoke-direct {v6, v7}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
25324 :try_end_a
25325 - .catchall {:try_start_3 .. :try_end_a} :catchall_5e
25326 - .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3d
25327 + .catchall {:try_start_3 .. :try_end_a} :catchall_5b
25328 + .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3a
25330 const/16 v7, 0x800
25332 @@ -575,19 +575,21 @@
25334 invoke-direct {v2, v0, v7, v3}, Ljava/lang/String;-><init>([BII)V
25335 :try_end_1a
25336 - .catchall {:try_start_c .. :try_end_1a} :catchall_67
25337 - .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_6a
25338 + .catchall {:try_start_c .. :try_end_1a} :catchall_66
25339 + .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_69
25341 move-object v1, v2
25343 :cond_1b
25344 - if-eqz v6, :cond_6d
25345 + if-eqz v6, :cond_20
25347 :try_start_1d
25348 invoke-virtual {v6}, Ljava/io/FileInputStream;->close()V
25349 :try_end_20
25350 - .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_3a
25351 + .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_64
25353 + :cond_20
25354 + :goto_20
25355 move-object v5, v6
25357 :cond_21
25358 @@ -617,17 +619,10 @@
25359 return-object v1
25361 :catch_3a
25362 - move-exception v7
25364 - move-object v5, v6
25366 - goto :goto_21
25368 - :catch_3d
25369 move-exception v4
25371 - :goto_3e
25372 - :try_start_3e
25373 + :goto_3b
25374 + :try_start_3b
25375 const-string v7, "RILB"
25377 new-instance v8, Ljava/lang/StringBuilder;
25378 @@ -649,61 +644,61 @@
25379 move-result-object v8
25381 invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25382 - :try_end_56
25383 - .catchall {:try_start_3e .. :try_end_56} :catchall_5e
25384 + :try_end_53
25385 + .catchall {:try_start_3b .. :try_end_53} :catchall_5b
25387 if-eqz v5, :cond_21
25389 - :try_start_58
25390 + :try_start_55
25391 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25392 - :try_end_5b
25393 - .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c
25394 + :try_end_58
25395 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_59
25397 goto :goto_21
25399 - :catch_5c
25400 + :catch_59
25401 move-exception v7
25403 goto :goto_21
25405 - :catchall_5e
25406 + :catchall_5b
25407 move-exception v7
25409 - :goto_5f
25410 - if-eqz v5, :cond_64
25411 + :goto_5c
25412 + if-eqz v5, :cond_61
25414 - :try_start_61
25415 + :try_start_5e
25416 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25417 - :try_end_64
25418 - .catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
25419 + :try_end_61
25420 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
25422 - :cond_64
25423 - :goto_64
25424 + :cond_61
25425 + :goto_61
25426 throw v7
25428 - :catch_65
25429 + :catch_62
25430 move-exception v8
25432 - goto :goto_64
25433 + goto :goto_61
25435 - :catchall_67
25436 + :catch_64
25437 move-exception v7
25439 - move-object v5, v6
25440 + goto :goto_20
25442 - goto :goto_5f
25444 - :catch_6a
25445 - move-exception v4
25446 + :catchall_66
25447 + move-exception v7
25449 move-object v5, v6
25451 - goto :goto_3e
25452 + goto :goto_5c
25454 + :catch_69
25455 + move-exception v4
25457 - :cond_6d
25458 move-object v5, v6
25460 - goto :goto_21
25461 + goto :goto_3b
25462 .end method
25465 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali
25466 --- stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-05-10 15:14:15.814369182 -0500
25467 +++ pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-05-10 15:14:39.078484537 -0500
25468 @@ -666,8 +666,8 @@
25470 invoke-static {v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25471 :try_end_34
25472 - .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_20c
25473 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_207
25474 + .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_209
25475 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_204
25477 move-object/from16 v15, v16
25479 @@ -872,7 +872,7 @@
25480 :try_start_f8
25481 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25482 :try_end_fb
25483 - .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_202
25484 + .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_15c
25486 :cond_fb
25487 :goto_fb
25488 @@ -1058,7 +1058,7 @@
25489 :try_start_190
25490 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
25491 :try_end_193
25492 - .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_205
25493 + .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_202
25495 :cond_193
25496 :goto_193
25497 @@ -1184,23 +1184,18 @@
25498 goto/16 :goto_96
25500 :catch_202
25501 - move-exception v2
25503 - goto/16 :goto_fb
25505 - :catch_205
25506 move-exception v18
25508 goto :goto_193
25510 - :catch_207
25511 + :catch_204
25512 move-exception v9
25514 move-object/from16 v15, v16
25516 goto/16 :goto_10a
25518 - :catch_20c
25519 + :catch_209
25520 move-exception v9
25522 move-object/from16 v15, v16
25523 diff -Npru stock-framework/smali/com/android/internal/telephony/IccRecords.smali pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali
25524 --- stock-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-05-10 15:14:15.610368167 -0500
25525 +++ pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-05-10 15:14:38.918483745 -0500
25526 @@ -260,7 +260,7 @@
25528 iget v3, p1, Landroid/os/Message;->what:I
25530 - packed-switch v3, :pswitch_data_70
25531 + packed-switch v3, :pswitch_data_6c
25533 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V
25535 @@ -327,7 +327,7 @@
25537 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25538 :try_end_47
25539 - .catchall {:try_start_9 .. :try_end_47} :catchall_6a
25540 + .catchall {:try_start_9 .. :try_end_47} :catchall_67
25541 .catch Ljava/lang/RuntimeException; {:try_start_9 .. :try_end_47} :catch_4f
25543 :goto_47
25544 @@ -339,7 +339,7 @@
25545 :try_start_4b
25546 invoke-interface {v2, v0}, Lcom/android/internal/telephony/IccRecords$IccRecordLoaded;->onRecordLoaded(Landroid/os/AsyncResult;)V
25547 :try_end_4e
25548 - .catchall {:try_start_4b .. :try_end_4e} :catchall_6a
25549 + .catchall {:try_start_4b .. :try_end_4e} :catchall_67
25550 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_4e} :catch_4f
25552 goto :goto_47
25553 @@ -368,22 +368,18 @@
25555 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
25556 :try_end_66
25557 - .catchall {:try_start_50 .. :try_end_66} :catchall_6a
25558 + .catchall {:try_start_50 .. :try_end_66} :catchall_67
25560 - invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25562 - goto :goto_8
25563 + goto :goto_47
25565 - :catchall_6a
25566 + :catchall_67
25567 move-exception v3
25569 invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
25571 throw v3
25573 - nop
25575 - :pswitch_data_70
25576 + :pswitch_data_6c
25577 .packed-switch 0x64
25578 :pswitch_9
25579 .end packed-switch
25580 diff -Npru stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali
25581 --- stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-05-10 15:14:15.662368423 -0500
25582 +++ pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-05-10 15:14:38.966483988 -0500
25583 @@ -1777,14 +1777,15 @@
25585 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
25586 :try_end_9b
25587 - .catchall {:try_start_5 .. :try_end_9b} :catchall_1a2
25588 - .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_192
25589 + .catchall {:try_start_5 .. :try_end_9b} :catchall_19c
25590 + .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_18f
25592 :cond_9b
25593 const/4 v3, 0x1
25595 if-eqz v9, :cond_a1
25597 + :goto_9e
25598 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25600 :cond_a1
25601 @@ -1829,7 +1830,7 @@
25603 add-int/lit8 v3, p5, -0x1
25605 - if-eq v10, v3, :cond_130
25606 + if-eq v10, v3, :cond_12d
25608 new-instance v23, Landroid/content/ContentValues;
25610 @@ -1919,20 +1920,14 @@
25611 move-object/from16 v0, v23
25613 invoke-virtual {v3, v4, v0}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
25614 - :try_end_128
25615 - .catchall {:try_start_a2 .. :try_end_128} :catchall_1a2
25616 - .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_128} :catch_192
25618 const/4 v3, 0x1
25620 if-eqz v9, :cond_a1
25622 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
25624 - goto/16 :goto_a1
25625 + goto/16 :goto_9e
25627 - :cond_130
25628 - :try_start_130
25629 + :cond_12d
25630 move/from16 v0, p5
25632 new-array v0, v0, [[B
25633 @@ -1941,8 +1936,8 @@
25635 const/4 v15, 0x0
25637 - :goto_137
25638 - if-ge v15, v10, :cond_161
25639 + :goto_134
25640 + if-ge v15, v10, :cond_15e
25642 invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
25644 @@ -1952,11 +1947,11 @@
25646 move-result v11
25648 - if-nez p9, :cond_145
25649 + if-nez p9, :cond_142
25651 add-int/lit8 v11, v11, -0x1
25653 - :cond_145
25654 + :cond_142
25655 const/4 v3, 0x0
25657 invoke-interface {v9, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
25658 @@ -1969,7 +1964,7 @@
25660 aput-object v3, v20, v11
25662 - if-nez v11, :cond_15e
25663 + if-nez v11, :cond_15b
25665 const/4 v3, 0x2
25667 @@ -1977,7 +1972,7 @@
25669 move-result v3
25671 - if-nez v3, :cond_15e
25672 + if-nez v3, :cond_15b
25674 const/4 v3, 0x2
25676 @@ -1985,17 +1980,17 @@
25678 move-result p8
25680 - :cond_15e
25681 + :cond_15b
25682 add-int/lit8 v15, v15, 0x1
25684 - goto :goto_137
25685 + goto :goto_134
25687 - :cond_161
25688 - if-eqz p9, :cond_18d
25689 + :cond_15e
25690 + if-eqz p9, :cond_18a
25692 aput-object p1, v20, p4
25694 - :goto_165
25695 + :goto_162
25696 move-object/from16 v0, p0
25698 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mResolver:Landroid/content/ContentResolver;
25699 @@ -2003,16 +1998,16 @@
25700 sget-object v4, Lcom/android/internal/telephony/SMSDispatcher;->mRawUri:Landroid/net/Uri;
25702 invoke-virtual {v3, v4, v6, v7}, Landroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
25703 - :try_end_16e
25704 - .catchall {:try_start_130 .. :try_end_16e} :catchall_1a2
25705 - .catch Landroid/database/SQLException; {:try_start_130 .. :try_end_16e} :catch_192
25706 + :try_end_16b
25707 + .catchall {:try_start_a2 .. :try_end_16b} :catchall_19c
25708 + .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_16b} :catch_18f
25710 - if-eqz v9, :cond_173
25711 + if-eqz v9, :cond_170
25713 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25715 - :cond_173
25716 - if-eqz p9, :cond_1d1
25717 + :cond_170
25718 + if-eqz p9, :cond_1cb
25720 new-instance v19, Ljava/io/ByteArrayOutputStream;
25722 @@ -2020,10 +2015,10 @@
25724 const/4 v15, 0x0
25726 - :goto_17b
25727 + :goto_178
25728 move/from16 v0, p5
25730 - if-ge v15, v0, :cond_1a9
25731 + if-ge v15, v0, :cond_1a3
25733 aget-object v3, v20, v15
25735 @@ -2039,50 +2034,48 @@
25737 add-int/lit8 v15, v15, 0x1
25739 - goto :goto_17b
25740 + goto :goto_178
25742 - :cond_18d
25743 + :cond_18a
25744 add-int/lit8 v3, p4, -0x1
25746 - :try_start_18f
25747 + :try_start_18c
25748 aput-object p1, v20, v3
25749 - :try_end_191
25750 - .catchall {:try_start_18f .. :try_end_191} :catchall_1a2
25751 - .catch Landroid/database/SQLException; {:try_start_18f .. :try_end_191} :catch_192
25752 + :try_end_18e
25753 + .catchall {:try_start_18c .. :try_end_18e} :catchall_19c
25754 + .catch Landroid/database/SQLException; {:try_start_18c .. :try_end_18e} :catch_18f
25756 - goto :goto_165
25757 + goto :goto_162
25759 - :catch_192
25760 + :catch_18f
25761 move-exception v14
25763 - :try_start_193
25764 + :try_start_190
25765 const-string v3, "SMS"
25767 const-string v4, "Can\'t access multipart SMS database"
25769 invoke-static {v3, v4, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
25770 - :try_end_19a
25771 - .catchall {:try_start_193 .. :try_end_19a} :catchall_1a2
25772 + :try_end_197
25773 + .catchall {:try_start_190 .. :try_end_197} :catchall_19c
25775 const/4 v3, 0x2
25777 if-eqz v9, :cond_a1
25779 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
25781 - goto/16 :goto_a1
25782 + goto/16 :goto_9e
25784 - :catchall_1a2
25785 + :catchall_19c
25786 move-exception v3
25788 - if-eqz v9, :cond_1a8
25789 + if-eqz v9, :cond_1a2
25791 invoke-interface {v9}, Landroid/database/Cursor;->close()V
25793 - :cond_1a8
25794 + :cond_1a2
25795 throw v3
25797 - :cond_1a9
25798 + :cond_1a3
25799 invoke-virtual/range {v19 .. v19}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
25801 move-result-object v13
25802 @@ -2091,7 +2084,7 @@
25804 move/from16 v0, p8
25806 - if-ne v0, v3, :cond_1bd
25807 + if-ne v0, v3, :cond_1b7
25809 move-object/from16 v0, p0
25811 @@ -2103,7 +2096,7 @@
25813 goto/16 :goto_a1
25815 - :cond_1bd
25816 + :cond_1b7
25817 const/4 v3, 0x1
25819 new-array v0, v3, [[B
25820 @@ -2126,18 +2119,18 @@
25822 goto/16 :goto_a1
25824 - :cond_1d1
25825 + :cond_1cb
25826 const/4 v3, -0x1
25828 move/from16 v0, p8
25830 - if-eq v0, v3, :cond_218
25831 + if-eq v0, v3, :cond_212
25833 const/16 v3, 0xb84
25835 move/from16 v0, p8
25837 - if-ne v0, v3, :cond_20c
25838 + if-ne v0, v3, :cond_206
25840 new-instance v19, Ljava/io/ByteArrayOutputStream;
25842 @@ -2145,10 +2138,10 @@
25844 const/4 v15, 0x0
25846 - :goto_1e2
25847 + :goto_1dc
25848 move/from16 v0, p5
25850 - if-ge v15, v0, :cond_1fe
25851 + if-ge v15, v0, :cond_1f8
25853 aget-object v3, v20, v15
25855 @@ -2174,9 +2167,9 @@
25857 add-int/lit8 v15, v15, 0x1
25859 - goto :goto_1e2
25860 + goto :goto_1dc
25862 - :cond_1fe
25863 + :cond_1f8
25864 move-object/from16 v0, p0
25866 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
25867 @@ -2191,7 +2184,7 @@
25869 goto/16 :goto_a1
25871 - :cond_20c
25872 + :cond_206
25873 move-object/from16 v0, p0
25875 move-object/from16 v1, v20
25876 @@ -2200,19 +2193,19 @@
25878 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPortAddressedPdus([[BI)V
25880 - :goto_215
25881 + :goto_20f
25882 const/4 v3, -0x1
25884 goto/16 :goto_a1
25886 - :cond_218
25887 + :cond_212
25888 move-object/from16 v0, p0
25890 move-object/from16 v1, v20
25892 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPdus([[B)V
25894 - goto :goto_215
25895 + goto :goto_20f
25896 .end method
25898 .method protected abstract sendData(Ljava/lang/String;Ljava/lang/String;I[BLandroid/app/PendingIntent;Landroid/app/PendingIntent;)V