Fixed pdroid security hole (ported from OpenPDroid)
[auto-patcher.git] / patches / pdroid / 4.0 / cm / 20120615 / framework.patch
blobac8f0471163217a1dbefe76a28ebfd473309e3dc
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-06-14 15:24:19.132521819 -0500
3 +++ pdroid-framework/smali/android/accounts/AccountAuthenticatorCache.smali 2012-06-14 15:23:24.520251025 -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-06-14 15:24:19.196522143 -0500
43 +++ pdroid-framework/smali/android/accounts/AccountManager$AmsTask.smali 2012-06-14 15:23:24.636251577 -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-06-14 15:24:19.168521998 -0500
280 +++ pdroid-framework/smali/android/accounts/AccountManager$Future2Task.smali 2012-06-14 15:23:24.588251352 -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-06-14 15:24:19.544523860 -0500
500 +++ pdroid-framework/smali/android/accounts/AccountManagerService.smali 2012-06-14 15:23:25.152254133 -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-06-14 15:24:21.032531239 -0500
811 +++ pdroid-framework/smali/android/app/ActivityThread.smali 2012-06-14 15:23:27.384265204 -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 @@ -10122,7 +10120,7 @@
835 .method final handleDumpHeap(ZLandroid/app/ActivityThread$DumpHeapData;)V
836 .registers 7
838 - if-eqz p1, :cond_5c
839 + if-eqz p1, :cond_4a
841 :try_start_2
842 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->path:Ljava/lang/String;
843 @@ -10135,15 +10133,15 @@
845 invoke-static {v1, v2}, Landroid/os/Debug;->dumpHprofData(Ljava/lang/String;Ljava/io/FileDescriptor;)V
846 :try_end_d
847 - .catchall {:try_start_2 .. :try_end_d} :catchall_4c
848 - .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_1c
849 + .catchall {:try_start_2 .. :try_end_d} :catchall_43
850 + .catch Ljava/io/IOException; {:try_start_2 .. :try_end_d} :catch_13
852 :try_start_d
853 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
855 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
856 :try_end_12
857 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_13
858 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_5d
860 :goto_12
861 return-void
862 @@ -10151,18 +10149,7 @@
863 :catch_13
864 move-exception v0
866 - const-string v1, "ActivityThread"
868 - const-string v2, "Failure closing profile fd"
870 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
872 - goto :goto_12
874 - :catch_1c
875 - move-exception v0
877 - :try_start_1d
878 + :try_start_14
879 const-string v1, "ActivityThread"
881 new-instance v2, Ljava/lang/StringBuilder;
882 @@ -10192,43 +10179,55 @@
883 move-result-object v2
885 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
886 - :try_end_3d
887 - .catchall {:try_start_1d .. :try_end_3d} :catchall_4c
888 + :try_end_34
889 + .catchall {:try_start_14 .. :try_end_34} :catchall_43
891 - :try_start_3d
892 + :try_start_34
893 iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
895 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
896 - :try_end_42
897 - .catch Ljava/io/IOException; {:try_start_3d .. :try_end_42} :catch_43
898 + :try_end_39
899 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_39} :catch_3a
901 goto :goto_12
903 - :catch_43
904 + :catch_3a
905 move-exception v0
907 const-string v1, "ActivityThread"
909 const-string v2, "Failure closing profile fd"
911 + :goto_3f
912 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
914 goto :goto_12
916 - :catchall_4c
917 + :catchall_43
918 move-exception v1
920 - :try_start_4d
921 + :try_start_44
922 iget-object v2, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
924 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
925 - :try_end_52
926 - .catch Ljava/io/IOException; {:try_start_4d .. :try_end_52} :catch_53
927 + :try_end_49
928 + .catch Ljava/io/IOException; {:try_start_44 .. :try_end_49} :catch_54
930 - :goto_52
931 + :goto_49
932 throw v1
934 - :catch_53
935 + :cond_4a
936 + iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
938 + invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
940 + move-result-object v1
942 + invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
944 + goto :goto_12
946 + :catch_54
947 move-exception v0
949 const-string v2, "ActivityThread"
950 @@ -10237,18 +10236,16 @@
952 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
954 - goto :goto_52
956 - :cond_5c
957 - iget-object v1, p2, Landroid/app/ActivityThread$DumpHeapData;->fd:Landroid/os/ParcelFileDescriptor;
958 + goto :goto_49
960 - invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
961 + :catch_5d
962 + move-exception v0
964 - move-result-object v1
965 + const-string v1, "ActivityThread"
967 - invoke-static {v1}, Landroid/os/Debug;->dumpNativeHeap(Ljava/io/FileDescriptor;)V
968 + const-string v2, "Failure closing profile fd"
970 - goto :goto_12
971 + goto :goto_3f
972 .end method
974 .method final handleLowMemory()V
975 @@ -10332,9 +10329,9 @@
976 .method final handleProfilerControl(ZLandroid/app/ActivityThread$ProfilerControlData;I)V
977 .registers 8
979 - if-eqz p1, :cond_73
980 + if-eqz p1, :cond_61
982 - packed-switch p3, :pswitch_data_80
983 + packed-switch p3, :pswitch_data_7e
985 :try_start_5
986 iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
987 @@ -10355,7 +10352,7 @@
989 invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->startProfiling()V
990 :try_end_18
991 - .catchall {:try_start_5 .. :try_end_18} :catchall_63
992 + .catchall {:try_start_5 .. :try_end_18} :catchall_5a
993 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_18} :catch_2a
995 :goto_18
996 @@ -10364,7 +10361,7 @@
998 invoke-virtual {v1}, Landroid/os/ParcelFileDescriptor;->close()V
999 :try_end_1d
1000 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_5a
1001 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1d} :catch_77
1003 :goto_1d
1004 return-void
1005 @@ -10381,7 +10378,7 @@
1007 invoke-static {v1, v2}, Landroid/view/ViewDebug;->startLooperProfiling(Ljava/lang/String;Ljava/io/FileDescriptor;)V
1008 :try_end_29
1009 - .catchall {:try_start_1e .. :try_end_29} :catchall_63
1010 + .catchall {:try_start_1e .. :try_end_29} :catchall_5a
1011 .catch Ljava/lang/RuntimeException; {:try_start_1e .. :try_end_29} :catch_2a
1013 goto :goto_18
1014 @@ -10420,7 +10417,7 @@
1016 invoke-static {v1, v2}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
1017 :try_end_4b
1018 - .catchall {:try_start_2b .. :try_end_4b} :catchall_63
1019 + .catchall {:try_start_2b .. :try_end_4b} :catchall_5a
1021 :try_start_4b
1022 iget-object v1, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1023 @@ -10438,35 +10435,39 @@
1025 const-string v2, "Failure closing profile fd"
1027 + :goto_56
1028 invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1030 goto :goto_1d
1032 - :catch_5a
1033 - move-exception v0
1034 + :catchall_5a
1035 + move-exception v1
1037 - const-string v1, "ActivityThread"
1038 + :try_start_5b
1039 + iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1041 - const-string v2, "Failure closing profile fd"
1042 + invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1043 + :try_end_60
1044 + .catch Ljava/io/IOException; {:try_start_5b .. :try_end_60} :catch_6e
1046 - invoke-static {v1, v2, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1047 + :goto_60
1048 + throw v1
1050 - goto :goto_1d
1051 + :cond_61
1052 + packed-switch p3, :pswitch_data_84
1054 - :catchall_63
1055 - move-exception v1
1056 + iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1058 - :try_start_64
1059 - iget-object v2, p2, Landroid/app/ActivityThread$ProfilerControlData;->fd:Landroid/os/ParcelFileDescriptor;
1060 + invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1062 - invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
1063 - :try_end_69
1064 - .catch Ljava/io/IOException; {:try_start_64 .. :try_end_69} :catch_6a
1065 + goto :goto_1d
1067 - :goto_69
1068 - throw v1
1069 + :pswitch_6a
1070 + invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1072 - :catch_6a
1073 + goto :goto_1d
1075 + :catch_6e
1076 move-exception v0
1078 const-string v2, "ActivityThread"
1079 @@ -10475,30 +10476,27 @@
1081 invoke-static {v2, v3, v0}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1083 - goto :goto_69
1085 - :cond_73
1086 - packed-switch p3, :pswitch_data_86
1087 + goto :goto_60
1089 - iget-object v1, p0, Landroid/app/ActivityThread;->mProfiler:Landroid/app/ActivityThread$Profiler;
1090 + :catch_77
1091 + move-exception v0
1093 - invoke-virtual {v1}, Landroid/app/ActivityThread$Profiler;->stopProfiling()V
1094 + const-string v1, "ActivityThread"
1096 - goto :goto_1d
1097 + const-string v2, "Failure closing profile fd"
1099 - :pswitch_7c
1100 - invoke-static {}, Landroid/view/ViewDebug;->stopLooperProfiling()V
1101 + goto :goto_56
1103 - goto :goto_1d
1104 + nop
1106 - :pswitch_data_80
1107 + :pswitch_data_7e
1108 .packed-switch 0x1
1109 :pswitch_1e
1110 .end packed-switch
1112 - :pswitch_data_86
1113 + :pswitch_data_84
1114 .packed-switch 0x1
1115 - :pswitch_7c
1116 + :pswitch_6a
1117 .end packed-switch
1118 .end method
1120 diff -Npru stock-framework/smali/android/app/BackStackRecord.smali pdroid-framework/smali/android/app/BackStackRecord.smali
1121 --- stock-framework/smali/android/app/BackStackRecord.smali 2012-06-14 15:24:21.144531791 -0500
1122 +++ pdroid-framework/smali/android/app/BackStackRecord.smali 2012-06-14 15:23:27.656266556 -0500
1123 @@ -790,12 +790,12 @@
1125 iget v4, p0, Landroid/app/BackStackRecord;->mPopExitAnim:I
1127 - if-eqz v4, :cond_93
1128 + if-eqz v4, :cond_94
1130 :cond_74
1131 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1133 - const-string v4, "mPopEnterAnim=#"
1134 + const-string/jumbo v4, "mPopEnterAnim=#"
1136 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1138 @@ -819,16 +819,16 @@
1140 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1142 - :cond_93
1143 + :cond_94
1144 iget v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbTitleRes:I
1146 - if-nez v4, :cond_9b
1147 + if-nez v4, :cond_9c
1149 iget-object v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbTitleText:Ljava/lang/CharSequence;
1151 - if-eqz v4, :cond_b6
1152 + if-eqz v4, :cond_b7
1154 - :cond_9b
1155 + :cond_9c
1156 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1158 const-string v4, "mBreadCrumbTitleRes=#"
1159 @@ -851,16 +851,16 @@
1161 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1163 - :cond_b6
1164 + :cond_b7
1165 iget v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbShortTitleRes:I
1167 - if-nez v4, :cond_be
1168 + if-nez v4, :cond_bf
1170 iget-object v4, p0, Landroid/app/BackStackRecord;->mBreadCrumbShortTitleText:Ljava/lang/CharSequence;
1172 - if-eqz v4, :cond_d9
1173 + if-eqz v4, :cond_da
1175 - :cond_be
1176 + :cond_bf
1177 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1179 const-string v4, "mBreadCrumbShortTitleRes=#"
1180 @@ -883,10 +883,10 @@
1182 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
1184 - :cond_d9
1185 + :cond_da
1186 iget-object v4, p0, Landroid/app/BackStackRecord;->mHead:Landroid/app/BackStackRecord$Op;
1188 - if-eqz v4, :cond_1bf
1189 + if-eqz v4, :cond_1c0
1191 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1193 @@ -916,8 +916,8 @@
1195 const/4 v2, 0x0
1197 - :goto_fb
1198 - if-eqz v3, :cond_1bf
1199 + :goto_fc
1200 + if-eqz v3, :cond_1c0
1202 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1204 @@ -951,13 +951,13 @@
1206 iget v4, v3, Landroid/app/BackStackRecord$Op;->enterAnim:I
1208 - if-nez v4, :cond_12c
1209 + if-nez v4, :cond_12d
1211 iget v4, v3, Landroid/app/BackStackRecord$Op;->exitAnim:I
1213 - if-eqz v4, :cond_14b
1214 + if-eqz v4, :cond_14c
1216 - :cond_12c
1217 + :cond_12d
1218 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1220 const-string v4, "enterAnim=#"
1221 @@ -984,16 +984,16 @@
1223 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1225 - :cond_14b
1226 + :cond_14c
1227 iget v4, v3, Landroid/app/BackStackRecord$Op;->popEnterAnim:I
1229 - if-nez v4, :cond_153
1230 + if-nez v4, :cond_154
1232 iget v4, v3, Landroid/app/BackStackRecord$Op;->popExitAnim:I
1234 - if-eqz v4, :cond_173
1235 + if-eqz v4, :cond_174
1237 - :cond_153
1238 + :cond_154
1239 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1241 const-string/jumbo v4, "popEnterAnim=#"
1242 @@ -1020,10 +1020,10 @@
1244 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1246 - :cond_173
1247 + :cond_174
1248 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1250 - if-eqz v4, :cond_1bb
1251 + if-eqz v4, :cond_1bc
1253 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1255 @@ -1031,18 +1031,18 @@
1257 move-result v4
1259 - if-lez v4, :cond_1bb
1260 + if-lez v4, :cond_1bc
1262 const/4 v0, 0x0
1264 - :goto_180
1265 + :goto_181
1266 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1268 invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
1270 move-result v4
1272 - if-ge v0, v4, :cond_1bb
1273 + if-ge v0, v4, :cond_1bc
1275 invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1277 @@ -1054,13 +1054,13 @@
1279 const/4 v5, 0x1
1281 - if-ne v4, v5, :cond_1a5
1282 + if-ne v4, v5, :cond_1a6
1284 const-string v4, "Removed: "
1286 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1288 - :goto_199
1289 + :goto_19a
1290 iget-object v4, v3, Landroid/app/BackStackRecord$Op;->removed:Ljava/util/ArrayList;
1292 invoke-virtual {v4, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
1293 @@ -1071,9 +1071,9 @@
1295 add-int/lit8 v0, v0, 0x1
1297 - goto :goto_180
1298 + goto :goto_181
1300 - :cond_1a5
1301 + :cond_1a6
1302 const-string v4, "Removed:"
1304 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
1305 @@ -1090,14 +1090,14 @@
1307 invoke-virtual {p3, v4}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
1309 - goto :goto_199
1310 + goto :goto_19a
1312 - :cond_1bb
1313 + :cond_1bc
1314 iget-object v3, v3, Landroid/app/BackStackRecord$Op;->next:Landroid/app/BackStackRecord$Op;
1316 - goto/16 :goto_fb
1317 + goto/16 :goto_fc
1319 - :cond_1bf
1320 + :cond_1c0
1321 return-void
1322 .end method
1324 diff -Npru stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali
1325 --- stock-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-06-14 15:24:21.588534005 -0500
1326 +++ pdroid-framework/smali/android/app/backup/BackupAgent$BackupServiceBinder.smali 2012-06-14 15:23:28.964273049 -0500
1327 @@ -83,7 +83,7 @@
1328 :try_start_1c
1329 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1330 :try_end_1f
1331 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1332 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1334 :goto_1f
1335 return-void
1336 @@ -146,7 +146,7 @@
1337 :try_start_54
1338 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1339 :try_end_57
1340 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1341 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1343 :goto_57
1344 throw v4
1345 @@ -198,14 +198,14 @@
1346 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1348 :catch_83
1349 - move-exception v4
1350 + move-exception v5
1352 - goto :goto_1f
1353 + goto :goto_57
1355 :catch_85
1356 - move-exception v5
1357 + move-exception v4
1359 - goto :goto_57
1360 + goto :goto_1f
1361 .end method
1363 .method public doFullBackup(Landroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1364 @@ -230,9 +230,9 @@
1366 invoke-virtual {v6, v7}, Landroid/app/backup/BackupAgent;->onFullBackup(Landroid/app/backup/FullBackupDataOutput;)V
1367 :try_end_15
1368 - .catchall {:try_start_b .. :try_end_15} :catchall_64
1369 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_34
1370 - .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_7b
1371 + .catchall {:try_start_b .. :try_end_15} :catchall_5b
1372 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_15} :catch_2b
1373 + .catch Ljava/lang/RuntimeException; {:try_start_b .. :try_end_15} :catch_72
1375 :try_start_15
1376 new-instance v5, Ljava/io/FileOutputStream;
1377 @@ -249,7 +249,7 @@
1379 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1380 :try_end_24
1381 - .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_2b
1382 + .catch Ljava/io/IOException; {:try_start_15 .. :try_end_24} :catch_a8
1384 :goto_24
1385 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1386 @@ -257,26 +257,15 @@
1387 :try_start_27
1388 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1389 :try_end_2a
1390 - .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_af
1391 + .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_b2
1393 :goto_2a
1394 return-void
1396 :catch_2b
1397 - move-exception v1
1399 - const-string v6, "BackupServiceBinder"
1401 - const-string v7, "Unable to finalize backup stream!"
1403 - invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1405 - goto :goto_24
1407 - :catch_34
1408 move-exception v2
1410 - :try_start_35
1411 + :try_start_2c
1412 const-string v6, "BackupServiceBinder"
1414 new-instance v7, Ljava/lang/StringBuilder;
1415 @@ -320,13 +309,13 @@
1416 invoke-direct {v6, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
1418 throw v6
1419 - :try_end_64
1420 - .catchall {:try_start_35 .. :try_end_64} :catchall_64
1421 + :try_end_5b
1422 + .catchall {:try_start_2c .. :try_end_5b} :catchall_5b
1424 - :catchall_64
1425 + :catchall_5b
1426 move-exception v6
1428 - :try_start_65
1429 + :try_start_5c
1430 new-instance v5, Ljava/io/FileOutputStream;
1432 invoke-virtual {p1}, Landroid/os/ParcelFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
1433 @@ -340,24 +329,24 @@
1434 new-array v0, v7, [B
1436 invoke-virtual {v5, v0}, Ljava/io/FileOutputStream;->write([B)V
1437 - :try_end_74
1438 - .catch Ljava/io/IOException; {:try_start_65 .. :try_end_74} :catch_a6
1439 + :try_end_6b
1440 + .catch Ljava/io/IOException; {:try_start_5c .. :try_end_6b} :catch_9d
1442 - :goto_74
1443 + :goto_6b
1444 invoke-static {v3, v4}, Landroid/os/Binder;->restoreCallingIdentity(J)V
1446 - :try_start_77
1447 + :try_start_6e
1448 invoke-interface {p3, p2}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1449 - :try_end_7a
1450 - .catch Landroid/os/RemoteException; {:try_start_77 .. :try_end_7a} :catch_b2
1451 + :try_end_71
1452 + .catch Landroid/os/RemoteException; {:try_start_6e .. :try_end_71} :catch_a6
1454 - :goto_7a
1455 + :goto_71
1456 throw v6
1458 - :catch_7b
1459 + :catch_72
1460 move-exception v2
1462 - :try_start_7c
1463 + :try_start_73
1464 const-string v6, "BackupServiceBinder"
1466 new-instance v7, Ljava/lang/StringBuilder;
1467 @@ -397,10 +386,10 @@
1468 invoke-static {v6, v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
1470 throw v2
1471 - :try_end_a6
1472 - .catchall {:try_start_7c .. :try_end_a6} :catchall_64
1473 + :try_end_9d
1474 + .catchall {:try_start_73 .. :try_end_9d} :catchall_5b
1476 - :catch_a6
1477 + :catch_9d
1478 move-exception v1
1480 const-string v7, "BackupServiceBinder"
1481 @@ -409,17 +398,28 @@
1483 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1485 - goto :goto_74
1486 + goto :goto_6b
1488 - :catch_af
1489 - move-exception v6
1490 + :catch_a6
1491 + move-exception v7
1493 - goto/16 :goto_2a
1494 + goto :goto_71
1496 + :catch_a8
1497 + move-exception v1
1499 + const-string v6, "BackupServiceBinder"
1501 + const-string v7, "Unable to finalize backup stream!"
1503 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
1505 + goto/16 :goto_24
1507 :catch_b2
1508 - move-exception v7
1509 + move-exception v6
1511 - goto :goto_7a
1512 + goto/16 :goto_2a
1513 .end method
1515 .method public doRestore(Landroid/os/ParcelFileDescriptor;ILandroid/os/ParcelFileDescriptor;ILandroid/app/backup/IBackupManager;)V
1516 @@ -462,7 +462,7 @@
1517 :try_start_1c
1518 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1519 :try_end_1f
1520 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_83
1521 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_1f} :catch_85
1523 :goto_1f
1524 return-void
1525 @@ -525,7 +525,7 @@
1526 :try_start_54
1527 invoke-interface {p5, p4}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1528 :try_end_57
1529 - .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_85
1530 + .catch Landroid/os/RemoteException; {:try_start_54 .. :try_end_57} :catch_83
1532 :goto_57
1533 throw v4
1534 @@ -577,14 +577,14 @@
1535 .catchall {:try_start_59 .. :try_end_83} :catchall_50
1537 :catch_83
1538 - move-exception v4
1539 + move-exception v5
1541 - goto :goto_1f
1542 + goto :goto_57
1544 :catch_85
1545 - move-exception v5
1546 + move-exception v4
1548 - goto :goto_57
1549 + goto :goto_1f
1550 .end method
1552 .method public doRestoreFile(Landroid/os/ParcelFileDescriptor;JILjava/lang/String;Ljava/lang/String;JJILandroid/app/backup/IBackupManager;)V
1553 @@ -632,7 +632,7 @@
1555 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1556 :try_end_23
1557 - .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_37
1558 + .catch Landroid/os/RemoteException; {:try_start_1c .. :try_end_23} :catch_39
1560 :goto_23
1561 return-void
1562 @@ -661,18 +661,18 @@
1564 invoke-interface {v0, v1}, Landroid/app/backup/IBackupManager;->opComplete(I)V
1565 :try_end_36
1566 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_39
1567 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_36} :catch_37
1569 :goto_36
1570 throw v2
1572 :catch_37
1573 - move-exception v2
1574 + move-exception v3
1576 - goto :goto_23
1577 + goto :goto_36
1579 :catch_39
1580 - move-exception v3
1581 + move-exception v2
1583 - goto :goto_36
1584 + goto :goto_23
1585 .end method
1586 diff -Npru stock-framework/smali/android/app/backup/RestoreSession.smali pdroid-framework/smali/android/app/backup/RestoreSession.smali
1587 --- stock-framework/smali/android/app/backup/RestoreSession.smali 2012-06-14 15:24:21.628534192 -0500
1588 +++ pdroid-framework/smali/android/app/backup/RestoreSession.smali 2012-06-14 15:23:29.056273504 -0500
1589 @@ -52,12 +52,12 @@
1591 invoke-interface {v1}, Landroid/app/backup/IRestoreSession;->endRestoreSession()V
1592 :try_end_6
1593 - .catchall {:try_start_1 .. :try_end_6} :catchall_14
1594 + .catchall {:try_start_1 .. :try_end_6} :catchall_12
1595 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_6} :catch_9
1597 + :goto_6
1598 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1600 - :goto_8
1601 return-void
1603 :catch_9
1604 @@ -70,13 +70,11 @@
1606 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
1607 :try_end_11
1608 - .catchall {:try_start_a .. :try_end_11} :catchall_14
1609 + .catchall {:try_start_a .. :try_end_11} :catchall_12
1611 - iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1613 - goto :goto_8
1614 + goto :goto_6
1616 - :catchall_14
1617 + :catchall_12
1618 move-exception v1
1620 iput-object v3, p0, Landroid/app/backup/RestoreSession;->mBinder:Landroid/app/backup/IRestoreSession;
1621 diff -Npru stock-framework/smali/android/app/ContextImpl$18.smali pdroid-framework/smali/android/app/ContextImpl$18.smali
1622 --- stock-framework/smali/android/app/ContextImpl$18.smali 2012-06-14 15:24:21.156531857 -0500
1623 +++ pdroid-framework/smali/android/app/ContextImpl$18.smali 2012-06-14 15:23:27.716266859 -0500
1624 @@ -26,21 +26,25 @@
1626 # virtual methods
1627 .method public createStaticService()Ljava/lang/Object;
1628 - .registers 4
1629 + .registers 5
1631 - const-string v1, "location"
1632 + const-string v2, "location"
1634 - invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1635 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1637 move-result-object v0
1639 - new-instance v1, Landroid/location/LocationManager;
1641 invoke-static {v0}, Landroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;
1643 - move-result-object v2
1644 + move-result-object v1
1646 + new-instance v2, Landroid/privacy/surrogate/PrivacyLocationManager;
1648 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1650 + move-result-object v3
1652 - invoke-direct {v1, v2}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
1653 + invoke-direct {v2, v1, v3}, Landroid/privacy/surrogate/PrivacyLocationManager;-><init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
1655 - return-object v1
1656 + return-object v2
1657 .end method
1658 diff -Npru stock-framework/smali/android/app/ContextImpl$26.smali pdroid-framework/smali/android/app/ContextImpl$26.smali
1659 --- stock-framework/smali/android/app/ContextImpl$26.smali 2012-06-14 15:24:21.160531873 -0500
1660 +++ pdroid-framework/smali/android/app/ContextImpl$26.smali 2012-06-14 15:23:27.728266914 -0500
1661 @@ -28,13 +28,13 @@
1662 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
1663 .registers 4
1665 - new-instance v0, Landroid/telephony/TelephonyManager;
1666 + new-instance v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;
1668 invoke-virtual {p1}, Landroid/app/ContextImpl;->getOuterContext()Landroid/content/Context;
1670 move-result-object v1
1672 - invoke-direct {v0, v1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
1673 + invoke-direct {v0, v1}, Landroid/privacy/surrogate/PrivacyTelephonyManager;-><init>(Landroid/content/Context;)V
1675 return-object v0
1676 .end method
1677 diff -Npru stock-framework/smali/android/app/ContextImpl$36.smali pdroid-framework/smali/android/app/ContextImpl$36.smali
1678 --- stock-framework/smali/android/app/ContextImpl$36.smali 1969-12-31 18:00:00.000000000 -0600
1679 +++ pdroid-framework/smali/android/app/ContextImpl$36.smali 2012-06-14 15:23:27.756267071 -0500
1680 @@ -0,0 +1,50 @@
1681 +.class final Landroid/app/ContextImpl$36;
1682 +.super Landroid/app/ContextImpl$StaticServiceFetcher;
1683 +.source "ContextImpl.java"
1686 +# annotations
1687 +.annotation system Ldalvik/annotation/EnclosingClass;
1688 + value = Landroid/app/ContextImpl;
1689 +.end annotation
1691 +.annotation system Ldalvik/annotation/InnerClass;
1692 + accessFlags = 0x8
1693 + name = null
1694 +.end annotation
1697 +# direct methods
1698 +.method constructor <init>()V
1699 + .registers 1
1701 + invoke-direct {p0}, Landroid/app/ContextImpl$StaticServiceFetcher;-><init>()V
1703 + return-void
1704 +.end method
1707 +# virtual methods
1708 +.method public createStaticService()Ljava/lang/Object;
1709 + .registers 5
1711 + const-string/jumbo v2, "privacy"
1713 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1715 + move-result-object v0
1717 + invoke-static {v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1719 + move-result-object v1
1721 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
1723 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
1725 + move-result-object v3
1727 + invoke-direct {v2, v3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1729 + return-object v2
1730 +.end method
1731 diff -Npru stock-framework/smali/android/app/ContextImpl$3.smali pdroid-framework/smali/android/app/ContextImpl$3.smali
1732 --- stock-framework/smali/android/app/ContextImpl$3.smali 2012-06-14 15:24:21.164531895 -0500
1733 +++ pdroid-framework/smali/android/app/ContextImpl$3.smali 2012-06-14 15:23:27.760267083 -0500
1734 @@ -38,9 +38,9 @@
1736 move-result-object v1
1738 - new-instance v2, Landroid/accounts/AccountManager;
1739 + new-instance v2, Landroid/privacy/surrogate/PrivacyAccountManager;
1741 - invoke-direct {v2, p1, v1}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1742 + invoke-direct {v2, p1, v1}, Landroid/privacy/surrogate/PrivacyAccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
1744 return-object v2
1745 .end method
1746 diff -Npru stock-framework/smali/android/app/ContextImpl.smali pdroid-framework/smali/android/app/ContextImpl.smali
1747 --- stock-framework/smali/android/app/ContextImpl.smali 2012-06-14 15:24:21.180531973 -0500
1748 +++ pdroid-framework/smali/android/app/ContextImpl.smali 2012-06-14 15:23:27.848267515 -0500
1749 @@ -36,6 +36,8 @@
1751 .field private static sNextPerContextServiceCacheIndex:I
1753 +.field private static sOuterContext:Landroid/content/Context;
1755 .field private static final sSharedPrefs:Ljava/util/HashMap;
1756 .annotation system Ldalvik/annotation/Signature;
1757 value = {
1758 @@ -410,6 +412,14 @@
1760 invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1762 + const-string/jumbo v0, "privacy"
1764 + new-instance v1, Landroid/app/ContextImpl$36;
1766 + invoke-direct {v1}, Landroid/app/ContextImpl$36;-><init>()V
1768 + invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
1770 return-void
1771 .end method
1773 @@ -444,6 +454,8 @@
1775 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1777 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1779 return-void
1780 .end method
1782 @@ -498,6 +510,8 @@
1784 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1786 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1788 return-void
1789 .end method
1791 @@ -967,6 +981,14 @@
1792 throw v0
1793 .end method
1795 +.method static final getStaticOuterContext()Landroid/content/Context;
1796 + .registers 1
1798 + sget-object v0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1800 + return-object v0
1801 +.end method
1803 .method private getWallpaperManager()Landroid/app/WallpaperManager;
1804 .registers 2
1806 @@ -4132,6 +4154,8 @@
1808 iput-object p1, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
1810 + sput-object p1, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
1812 return-void
1813 .end method
1815 diff -Npru stock-framework/smali/android/app/DownloadManager.smali pdroid-framework/smali/android/app/DownloadManager.smali
1816 --- stock-framework/smali/android/app/DownloadManager.smali 2012-06-14 15:24:21.208532109 -0500
1817 +++ pdroid-framework/smali/android/app/DownloadManager.smali 2012-06-14 15:23:27.916267847 -0500
1818 @@ -618,7 +618,7 @@
1819 :try_start_11
1820 invoke-virtual {p0, v1}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1821 :try_end_14
1822 - .catchall {:try_start_11 .. :try_end_14} :catchall_3a
1823 + .catchall {:try_start_11 .. :try_end_14} :catchall_31
1825 move-result-object v0
1827 @@ -626,10 +626,10 @@
1829 if-eqz v0, :cond_1c
1831 + :goto_19
1832 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1834 :cond_1c
1835 - :goto_1c
1836 return-object v2
1838 :cond_1d
1839 @@ -638,7 +638,7 @@
1841 move-result v3
1843 - if-eqz v3, :cond_34
1844 + if-eqz v3, :cond_38
1846 const-string/jumbo v2, "media_type"
1848 @@ -648,32 +648,28 @@
1850 invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
1851 :try_end_2d
1852 - .catchall {:try_start_1d .. :try_end_2d} :catchall_3a
1853 + .catchall {:try_start_1d .. :try_end_2d} :catchall_31
1855 move-result-object v2
1857 if-eqz v0, :cond_1c
1859 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1861 - goto :goto_1c
1863 - :cond_34
1864 - if-eqz v0, :cond_1c
1866 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1867 + goto :goto_19
1869 - goto :goto_1c
1871 - :catchall_3a
1872 + :catchall_31
1873 move-exception v2
1875 - if-eqz v0, :cond_40
1876 + if-eqz v0, :cond_37
1878 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1880 - :cond_40
1881 + :cond_37
1882 throw v2
1884 + :cond_38
1885 + if-eqz v0, :cond_1c
1887 + goto :goto_19
1888 .end method
1890 .method public getUriForDownloadedFile(J)Landroid/net/Uri;
1891 @@ -702,7 +698,7 @@
1892 :try_start_11
1893 invoke-virtual {p0, v4}, Landroid/app/DownloadManager;->query(Landroid/app/DownloadManager$Query;)Landroid/database/Cursor;
1894 :try_end_14
1895 - .catchall {:try_start_11 .. :try_end_14} :catchall_72
1896 + .catchall {:try_start_11 .. :try_end_14} :catchall_66
1898 move-result-object v0
1900 @@ -710,10 +706,10 @@
1902 if-eqz v0, :cond_1c
1904 + :goto_19
1905 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1907 :cond_1c
1908 - :goto_1c
1909 return-object v6
1911 :cond_1d
1912 @@ -722,7 +718,7 @@
1914 move-result v7
1916 - if-eqz v7, :cond_6c
1917 + if-eqz v7, :cond_6d
1919 const-string/jumbo v7, "status"
1921 @@ -736,7 +732,7 @@
1923 const/16 v7, 0x8
1925 - if-ne v7, v5, :cond_6c
1926 + if-ne v7, v5, :cond_6d
1928 const-string v6, "destination"
1930 @@ -760,25 +756,20 @@
1932 const/4 v6, 0x2
1934 - if-ne v1, v6, :cond_53
1935 + if-ne v1, v6, :cond_50
1937 :cond_47
1938 sget-object v6, Landroid/provider/Downloads$Impl;->CONTENT_URI:Landroid/net/Uri;
1940 invoke-static {v6, p1, p2}, Landroid/content/ContentUris;->withAppendedId(Landroid/net/Uri;J)Landroid/net/Uri;
1941 - :try_end_4c
1942 - .catchall {:try_start_1d .. :try_end_4c} :catchall_72
1944 move-result-object v6
1946 if-eqz v0, :cond_1c
1948 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1950 - goto :goto_1c
1951 + goto :goto_19
1953 - :cond_53
1954 - :try_start_53
1955 + :cond_50
1956 const-string v6, "local_filename"
1958 invoke-interface {v0, v6}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
1959 @@ -794,33 +785,29 @@
1960 invoke-direct {v6, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
1962 invoke-static {v6}, Landroid/net/Uri;->fromFile(Ljava/io/File;)Landroid/net/Uri;
1963 - :try_end_65
1964 - .catchall {:try_start_53 .. :try_end_65} :catchall_72
1965 + :try_end_62
1966 + .catchall {:try_start_1d .. :try_end_62} :catchall_66
1968 move-result-object v6
1970 if-eqz v0, :cond_1c
1972 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1974 - goto :goto_1c
1976 - :cond_6c
1977 - if-eqz v0, :cond_1c
1979 - invoke-interface {v0}, Landroid/database/Cursor;->close()V
1981 - goto :goto_1c
1982 + goto :goto_19
1984 - :catchall_72
1985 + :catchall_66
1986 move-exception v6
1988 - if-eqz v0, :cond_78
1989 + if-eqz v0, :cond_6c
1991 invoke-interface {v0}, Landroid/database/Cursor;->close()V
1993 - :cond_78
1994 + :cond_6c
1995 throw v6
1997 + :cond_6d
1998 + if-eqz v0, :cond_1c
2000 + goto :goto_19
2001 .end method
2003 .method public varargs markRowDeleted([J)I
2004 diff -Npru stock-framework/smali/android/app/WallpaperManager$Globals.smali pdroid-framework/smali/android/app/WallpaperManager$Globals.smali
2005 --- stock-framework/smali/android/app/WallpaperManager$Globals.smali 2012-06-14 15:24:21.524533687 -0500
2006 +++ pdroid-framework/smali/android/app/WallpaperManager$Globals.smali 2012-06-14 15:23:28.880272624 -0500
2007 @@ -140,7 +140,7 @@
2008 :try_start_2f
2009 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2010 :try_end_32
2011 - .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_49
2012 + .catch Ljava/io/IOException; {:try_start_2f .. :try_end_32} :catch_4d
2013 .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_47
2015 :goto_32
2016 @@ -178,7 +178,7 @@
2017 :try_start_43
2018 invoke-virtual {v2}, Landroid/os/ParcelFileDescriptor;->close()V
2019 :try_end_46
2020 - .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_4d
2021 + .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_49
2022 .catch Landroid/os/RemoteException; {:try_start_43 .. :try_end_46} :catch_47
2024 :goto_46
2025 @@ -193,9 +193,9 @@
2026 goto :goto_40
2028 :catch_49
2029 - move-exception v8
2030 + move-exception v9
2032 - goto :goto_32
2033 + goto :goto_46
2035 :catch_4b
2036 move-exception v7
2037 @@ -203,9 +203,9 @@
2038 goto :goto_40
2040 :catch_4d
2041 - move-exception v9
2042 + move-exception v8
2044 - goto :goto_46
2045 + goto :goto_32
2046 .end method
2048 .method private getDefaultWallpaperLocked(Landroid/content/Context;)Landroid/graphics/Bitmap;
2049 @@ -261,7 +261,7 @@
2050 :try_start_28
2051 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2052 :try_end_2b
2053 - .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_42
2054 + .catch Ljava/io/IOException; {:try_start_28 .. :try_end_2b} :catch_46
2055 .catch Landroid/os/RemoteException; {:try_start_28 .. :try_end_2b} :catch_40
2057 :goto_2b
2058 @@ -299,7 +299,7 @@
2059 :try_start_3c
2060 invoke-virtual {v3}, Ljava/io/InputStream;->close()V
2061 :try_end_3f
2062 - .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_46
2063 + .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_42
2064 .catch Landroid/os/RemoteException; {:try_start_3c .. :try_end_3f} :catch_40
2066 :goto_3f
2067 @@ -314,9 +314,9 @@
2068 goto :goto_39
2070 :catch_42
2071 - move-exception v7
2072 + move-exception v8
2074 - goto :goto_2b
2075 + goto :goto_3f
2077 :catch_44
2078 move-exception v6
2079 @@ -324,9 +324,9 @@
2080 goto :goto_39
2082 :catch_46
2083 - move-exception v8
2084 + move-exception v7
2086 - goto :goto_3f
2087 + goto :goto_2b
2088 .end method
2091 diff -Npru stock-framework/smali/android/bluetooth/BluetoothSocket.smali pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali
2092 --- stock-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-06-14 15:24:21.800535051 -0500
2093 +++ pdroid-framework/smali/android/bluetooth/BluetoothSocket.smali 2012-06-14 15:23:29.340274915 -0500
2094 @@ -445,7 +445,7 @@
2096 sget-object v1, Landroid/bluetooth/BluetoothSocket$SocketState;->CLOSED:Landroid/bluetooth/BluetoothSocket$SocketState;
2097 :try_end_d
2098 - .catchall {:try_start_9 .. :try_end_d} :catchall_29
2099 + .catchall {:try_start_9 .. :try_end_d} :catchall_26
2101 if-ne v0, v1, :cond_1b
2103 @@ -457,16 +457,16 @@
2105 move-result-object v1
2107 + :goto_17
2108 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2110 - :goto_1a
2111 return v0
2113 :cond_1b
2114 :try_start_1b
2115 invoke-direct {p0}, Landroid/bluetooth/BluetoothSocket;->bindListenNative()I
2116 :try_end_1e
2117 - .catchall {:try_start_1b .. :try_end_1e} :catchall_29
2118 + .catchall {:try_start_1b .. :try_end_1e} :catchall_26
2120 move-result v0
2122 @@ -476,11 +476,9 @@
2124 move-result-object v1
2126 - invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V
2128 - goto :goto_1a
2129 + goto :goto_17
2131 - :catchall_29
2132 + :catchall_26
2133 move-exception v0
2135 iget-object v1, p0, Landroid/bluetooth/BluetoothSocket;->mLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock;
2136 diff -Npru stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali
2137 --- stock-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-06-14 15:24:21.880535453 -0500
2138 +++ pdroid-framework/smali/android/content/AbstractThreadedSyncAdapter$SyncThread.smali 2012-06-14 15:23:29.452275463 -0500
2139 @@ -102,11 +102,11 @@
2140 :try_start_b
2141 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2142 :try_end_e
2143 - .catchall {:try_start_b .. :try_end_e} :catchall_80
2144 + .catchall {:try_start_b .. :try_end_e} :catchall_7d
2146 move-result v0
2148 - if-eqz v0, :cond_38
2149 + if-eqz v0, :cond_35
2151 if-eqz v4, :cond_16
2153 @@ -146,21 +146,14 @@
2154 invoke-virtual {v0, v2}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2156 monitor-exit v1
2157 + :try_end_34
2158 + .catchall {:try_start_28 .. :try_end_34} :catchall_a5
2160 :goto_34
2161 return-void
2163 - :catchall_35
2164 - move-exception v0
2166 - monitor-exit v1
2167 - :try_end_37
2168 - .catchall {:try_start_28 .. :try_end_37} :catchall_35
2170 - throw v0
2172 - :cond_38
2173 - :try_start_38
2174 + :cond_35
2175 + :try_start_35
2176 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2178 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mContext:Landroid/content/Context;
2179 @@ -178,7 +171,7 @@
2181 move-result-object v4
2183 - if-eqz v4, :cond_7c
2184 + if-eqz v4, :cond_79
2186 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2188 @@ -189,26 +182,26 @@
2189 iget-object v3, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mAuthority:Ljava/lang/String;
2191 invoke-virtual/range {v0 .. v5}, Landroid/content/AbstractThreadedSyncAdapter;->onPerformSync(Landroid/accounts/Account;Landroid/os/Bundle;Ljava/lang/String;Landroid/content/ContentProviderClient;Landroid/content/SyncResult;)V
2192 - :try_end_55
2193 - .catchall {:try_start_38 .. :try_end_55} :catchall_80
2194 + :try_end_52
2195 + .catchall {:try_start_35 .. :try_end_52} :catchall_7d
2197 - :goto_55
2198 - if-eqz v4, :cond_5a
2199 + :goto_52
2200 + if-eqz v4, :cond_57
2202 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2204 - :cond_5a
2205 + :cond_57
2206 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2208 move-result v0
2210 - if-nez v0, :cond_65
2211 + if-nez v0, :cond_62
2213 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2215 invoke-virtual {v0, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2217 - :cond_65
2218 + :cond_62
2219 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2221 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2222 @@ -218,7 +211,7 @@
2224 monitor-enter v1
2226 - :try_start_6c
2227 + :try_start_69
2228 iget-object v0, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2230 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2231 @@ -234,44 +227,44 @@
2233 goto :goto_34
2235 - :catchall_79
2236 + :catchall_76
2237 move-exception v0
2239 monitor-exit v1
2240 - :try_end_7b
2241 - .catchall {:try_start_6c .. :try_end_7b} :catchall_79
2242 + :try_end_78
2243 + .catchall {:try_start_69 .. :try_end_78} :catchall_76
2245 throw v0
2247 - :cond_7c
2248 + :cond_79
2249 const/4 v0, 0x1
2251 - :try_start_7d
2252 + :try_start_7a
2253 iput-boolean v0, v5, Landroid/content/SyncResult;->databaseError:Z
2254 - :try_end_7f
2255 - .catchall {:try_start_7d .. :try_end_7f} :catchall_80
2256 + :try_end_7c
2257 + .catchall {:try_start_7a .. :try_end_7c} :catchall_7d
2259 - goto :goto_55
2260 + goto :goto_52
2262 - :catchall_80
2263 + :catchall_7d
2264 move-exception v0
2266 - if-eqz v4, :cond_86
2267 + if-eqz v4, :cond_83
2269 invoke-virtual {v4}, Landroid/content/ContentProviderClient;->release()Z
2271 - :cond_86
2272 + :cond_83
2273 invoke-direct {p0}, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->isCanceled()Z
2275 move-result v1
2277 - if-nez v1, :cond_91
2278 + if-nez v1, :cond_8e
2280 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->mSyncContext:Landroid/content/SyncContext;
2282 invoke-virtual {v1, v5}, Landroid/content/SyncContext;->onFinished(Landroid/content/SyncResult;)V
2284 - :cond_91
2285 + :cond_8e
2286 iget-object v1, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2288 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreadLock:Ljava/lang/Object;
2289 @@ -281,7 +274,7 @@
2291 monitor-enter v1
2293 - :try_start_98
2294 + :try_start_95
2295 iget-object v2, p0, Landroid/content/AbstractThreadedSyncAdapter$SyncThread;->this$0:Landroid/content/AbstractThreadedSyncAdapter;
2297 #getter for: Landroid/content/AbstractThreadedSyncAdapter;->mSyncThreads:Ljava/util/HashMap;
2298 @@ -294,8 +287,18 @@
2299 invoke-virtual {v2, v3}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
2301 monitor-exit v1
2302 + :try_end_a1
2303 + .catchall {:try_start_95 .. :try_end_a1} :catchall_a2
2305 + throw v0
2307 + :catchall_a2
2308 + move-exception v0
2310 + :try_start_a3
2311 + monitor-exit v1
2312 :try_end_a4
2313 - .catchall {:try_start_98 .. :try_end_a4} :catchall_a5
2314 + .catchall {:try_start_a3 .. :try_end_a4} :catchall_a2
2316 throw v0
2318 diff -Npru stock-framework/smali/android/content/ContentResolver.smali pdroid-framework/smali/android/content/ContentResolver.smali
2319 --- stock-framework/smali/android/content/ContentResolver.smali 2012-06-14 15:24:21.172531935 -0500
2320 +++ pdroid-framework/smali/android/content/ContentResolver.smali 2012-06-14 15:23:27.816267357 -0500
2321 @@ -1662,12 +1662,12 @@
2323 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2324 :try_end_35
2325 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2326 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2327 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2329 + :goto_35
2330 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2332 - :goto_38
2333 return v8
2335 :catch_39
2336 @@ -1675,11 +1675,9 @@
2338 const/4 v8, 0x0
2340 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2342 - goto :goto_38
2343 + goto :goto_35
2345 - :catchall_3f
2346 + :catchall_3c
2347 move-exception v0
2349 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2350 @@ -1746,14 +1744,14 @@
2351 :try_start_35
2352 invoke-interface {v1, p2, p3, p4}, Landroid/content/IContentProvider;->call(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
2353 :try_end_38
2354 - .catchall {:try_start_35 .. :try_end_38} :catchall_43
2355 + .catchall {:try_start_35 .. :try_end_38} :catchall_40
2356 .catch Landroid/os/RemoteException; {:try_start_35 .. :try_end_38} :catch_3d
2358 move-result-object v2
2360 + :goto_39
2361 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2363 - :goto_3c
2364 return-object v2
2366 :catch_3d
2367 @@ -1761,11 +1759,9 @@
2369 const/4 v2, 0x0
2371 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2373 - goto :goto_3c
2374 + goto :goto_39
2376 - :catchall_43
2377 + :catchall_40
2378 move-exception v2
2380 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2381 @@ -1856,12 +1852,12 @@
2383 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2384 :try_end_35
2385 - .catchall {:try_start_1f .. :try_end_35} :catchall_3f
2386 + .catchall {:try_start_1f .. :try_end_35} :catchall_3c
2387 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_35} :catch_39
2389 + :goto_35
2390 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2392 - :goto_38
2393 return v8
2395 :catch_39
2396 @@ -1869,11 +1865,9 @@
2398 const/4 v8, -0x1
2400 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2402 - goto :goto_38
2403 + goto :goto_35
2405 - :catchall_3f
2406 + :catchall_3c
2407 move-exception v0
2409 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2410 @@ -2160,11 +2154,12 @@
2411 :try_start_8
2412 invoke-interface {v1, p1, p2}, Landroid/content/IContentProvider;->getStreamTypes(Landroid/net/Uri;Ljava/lang/String;)[Ljava/lang/String;
2413 :try_end_b
2414 - .catchall {:try_start_8 .. :try_end_b} :catchall_15
2415 + .catchall {:try_start_8 .. :try_end_b} :catchall_12
2416 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_b} :catch_10
2418 move-result-object v2
2420 + :goto_c
2421 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2423 goto :goto_7
2424 @@ -2172,11 +2167,9 @@
2425 :catch_10
2426 move-exception v0
2428 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2429 + goto :goto_c
2431 - goto :goto_7
2433 - :catchall_15
2434 + :catchall_12
2435 move-exception v2
2437 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2438 @@ -2193,17 +2186,18 @@
2440 move-result-object v1
2442 - if-eqz v1, :cond_4a
2443 + if-eqz v1, :cond_44
2445 :try_start_7
2446 invoke-interface {v1, p1}, Landroid/content/IContentProvider;->getType(Landroid/net/Uri;)Ljava/lang/String;
2447 :try_end_a
2448 - .catchall {:try_start_7 .. :try_end_a} :catchall_45
2449 + .catchall {:try_start_7 .. :try_end_a} :catchall_3f
2450 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_a} :catch_f
2451 - .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_14
2452 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_11
2454 move-result-object v2
2456 + :goto_b
2457 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2459 :cond_e
2460 @@ -2213,14 +2207,12 @@
2461 :catch_f
2462 move-exception v0
2464 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2466 - goto :goto_e
2467 + goto :goto_b
2469 - :catch_14
2470 + :catch_11
2471 move-exception v0
2473 - :try_start_15
2474 + :try_start_12
2475 const-string v3, "ContentResolver"
2477 new-instance v4, Ljava/lang/StringBuilder;
2478 @@ -2262,21 +2254,19 @@
2479 move-result-object v4
2481 invoke-static {v3, v4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
2482 - :try_end_41
2483 - .catchall {:try_start_15 .. :try_end_41} :catchall_45
2485 - invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2486 + :try_end_3e
2487 + .catchall {:try_start_12 .. :try_end_3e} :catchall_3f
2489 - goto :goto_e
2490 + goto :goto_b
2492 - :catchall_45
2493 + :catchall_3f
2494 move-exception v3
2496 invoke-virtual {p0, v1}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2498 throw v3
2500 - :cond_4a
2501 + :cond_44
2502 const-string v3, "content"
2504 invoke-virtual {p1}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
2505 @@ -2289,26 +2279,26 @@
2507 if-eqz v3, :cond_e
2509 - :try_start_56
2510 + :try_start_50
2511 invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
2513 move-result-object v3
2515 invoke-interface {v3, p1}, Landroid/app/IActivityManager;->getProviderMimeType(Landroid/net/Uri;)Ljava/lang/String;
2516 - :try_end_5d
2517 - .catch Landroid/os/RemoteException; {:try_start_56 .. :try_end_5d} :catch_5f
2518 - .catch Ljava/lang/Exception; {:try_start_56 .. :try_end_5d} :catch_61
2519 + :try_end_57
2520 + .catch Landroid/os/RemoteException; {:try_start_50 .. :try_end_57} :catch_59
2521 + .catch Ljava/lang/Exception; {:try_start_50 .. :try_end_57} :catch_5b
2523 move-result-object v2
2525 goto :goto_e
2527 - :catch_5f
2528 + :catch_59
2529 move-exception v0
2531 goto :goto_e
2533 - :catch_61
2534 + :catch_5b
2535 move-exception v0
2537 const-string v3, "ContentResolver"
2538 @@ -2693,9 +2683,9 @@
2539 :try_start_a8
2540 invoke-interface {v9, p1, p2}, Landroid/content/IContentProvider;->openAssetFile(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
2541 :try_end_ab
2542 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_ec
2543 - .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_d2
2544 - .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_f3
2545 + .catchall {:try_start_a8 .. :try_end_ab} :catchall_e8
2546 + .catch Landroid/os/RemoteException; {:try_start_a8 .. :try_end_ab} :catch_ce
2547 + .catch Ljava/io/FileNotFoundException; {:try_start_a8 .. :try_end_ab} :catch_ef
2549 move-result-object v8
2551 @@ -2703,6 +2693,7 @@
2553 if-eqz v9, :cond_3b
2555 + :goto_b0
2556 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2558 goto :goto_3b
2559 @@ -2731,20 +2722,18 @@
2561 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2562 :try_end_cb
2563 - .catchall {:try_start_b4 .. :try_end_cb} :catchall_ec
2564 - .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_d2
2565 - .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_f3
2566 + .catchall {:try_start_b4 .. :try_end_cb} :catchall_e8
2567 + .catch Landroid/os/RemoteException; {:try_start_b4 .. :try_end_cb} :catch_ce
2568 + .catch Ljava/io/FileNotFoundException; {:try_start_b4 .. :try_end_cb} :catch_ef
2570 if-eqz v9, :cond_3b
2572 - invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2574 - goto/16 :goto_3b
2575 + goto :goto_b0
2577 - :catch_d2
2578 + :catch_ce
2579 move-exception v6
2581 - :try_start_d3
2582 + :try_start_cf
2583 new-instance v0, Ljava/io/FileNotFoundException;
2585 new-instance v2, Ljava/lang/StringBuilder;
2586 @@ -2768,26 +2757,26 @@
2587 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2589 throw v0
2590 - :try_end_ec
2591 - .catchall {:try_start_d3 .. :try_end_ec} :catchall_ec
2592 + :try_end_e8
2593 + .catchall {:try_start_cf .. :try_end_e8} :catchall_e8
2595 - :catchall_ec
2596 + :catchall_e8
2597 move-exception v0
2599 - if-eqz v9, :cond_f2
2600 + if-eqz v9, :cond_ee
2602 invoke-virtual {p0, v9}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2604 - :cond_f2
2605 + :cond_ee
2606 throw v0
2608 - :catch_f3
2609 + :catch_ef
2610 move-exception v6
2612 - :try_start_f4
2613 + :try_start_f0
2614 throw v6
2615 - :try_end_f5
2616 - .catchall {:try_start_f4 .. :try_end_f5} :catchall_ec
2617 + :try_end_f1
2618 + .catchall {:try_start_f0 .. :try_end_f1} :catchall_e8
2619 .end method
2621 .method public final openFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/os/ParcelFileDescriptor;
2622 @@ -3069,9 +3058,9 @@
2623 :try_start_1f
2624 invoke-interface {v8, p1, p2, p3}, Landroid/content/IContentProvider;->openTypedAssetFile(Landroid/net/Uri;Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/res/AssetFileDescriptor;
2625 :try_end_22
2626 - .catchall {:try_start_1f .. :try_end_22} :catchall_63
2627 - .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_49
2628 - .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_6a
2629 + .catchall {:try_start_1f .. :try_end_22} :catchall_60
2630 + .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_22} :catch_46
2631 + .catch Ljava/io/FileNotFoundException; {:try_start_1f .. :try_end_22} :catch_67
2633 move-result-object v7
2635 @@ -3081,10 +3070,10 @@
2637 if-eqz v8, :cond_2b
2639 + :goto_28
2640 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2642 :cond_2b
2643 - :goto_2b
2644 return-object v0
2646 :cond_2c
2647 @@ -3111,20 +3100,18 @@
2649 invoke-direct/range {v0 .. v5}, Landroid/content/res/AssetFileDescriptor;-><init>(Landroid/os/ParcelFileDescriptor;JJ)V
2650 :try_end_43
2651 - .catchall {:try_start_2c .. :try_end_43} :catchall_63
2652 - .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_49
2653 - .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_6a
2654 + .catchall {:try_start_2c .. :try_end_43} :catchall_60
2655 + .catch Landroid/os/RemoteException; {:try_start_2c .. :try_end_43} :catch_46
2656 + .catch Ljava/io/FileNotFoundException; {:try_start_2c .. :try_end_43} :catch_67
2658 if-eqz v8, :cond_2b
2660 - invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2662 - goto :goto_2b
2663 + goto :goto_28
2665 - :catch_49
2666 + :catch_46
2667 move-exception v6
2669 - :try_start_4a
2670 + :try_start_47
2671 new-instance v0, Ljava/io/FileNotFoundException;
2673 new-instance v2, Ljava/lang/StringBuilder;
2674 @@ -3148,26 +3135,26 @@
2675 invoke-direct {v0, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V
2677 throw v0
2678 - :try_end_63
2679 - .catchall {:try_start_4a .. :try_end_63} :catchall_63
2680 + :try_end_60
2681 + .catchall {:try_start_47 .. :try_end_60} :catchall_60
2683 - :catchall_63
2684 + :catchall_60
2685 move-exception v0
2687 - if-eqz v8, :cond_69
2688 + if-eqz v8, :cond_66
2690 invoke-virtual {p0, v8}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2692 - :cond_69
2693 + :cond_66
2694 throw v0
2696 - :catch_6a
2697 + :catch_67
2698 move-exception v6
2700 - :try_start_6b
2701 + :try_start_68
2702 throw v6
2703 - :try_end_6c
2704 - .catchall {:try_start_6b .. :try_end_6c} :catchall_63
2705 + :try_end_69
2706 + .catchall {:try_start_68 .. :try_end_69} :catchall_60
2707 .end method
2709 .method public final query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
2710 @@ -3204,7 +3191,13 @@
2712 move-result-object v9
2714 - if-nez v9, :cond_1e
2715 + iget-object v1, p0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2717 + invoke-static {p1, p2, v1, v9}, Landroid/privacy/surrogate/PrivacyContentResolver;->enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
2719 + move-result-object v9
2721 + if-nez v9, :cond_24
2723 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2725 @@ -3212,7 +3205,7 @@
2727 goto :goto_7
2729 - :cond_1e
2730 + :cond_24
2731 invoke-interface {v9}, Landroid/database/Cursor;->getCount()I
2733 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2734 @@ -3236,13 +3229,13 @@
2735 new-instance v1, Landroid/content/ContentResolver$CursorWrapperInner;
2737 invoke-direct {v1, p0, v9, v0}, Landroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V
2738 - :try_end_35
2739 - .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_35} :catch_36
2740 - .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_35} :catch_3c
2741 + :try_end_3b
2742 + .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_3b} :catch_3c
2743 + .catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_3b} :catch_42
2745 goto :goto_7
2747 - :catch_36
2748 + :catch_3c
2749 move-exception v8
2751 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2752 @@ -3251,7 +3244,7 @@
2754 goto :goto_7
2756 - :catch_3c
2757 + :catch_42
2758 move-exception v8
2760 invoke-virtual {p0, v0}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2761 @@ -3424,12 +3417,12 @@
2763 invoke-direct/range {v0 .. v5}, Landroid/content/ContentResolver;->maybeLogUpdateToEventLog(JLandroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)V
2764 :try_end_36
2765 - .catchall {:try_start_1f .. :try_end_36} :catchall_40
2766 + .catchall {:try_start_1f .. :try_end_36} :catchall_3d
2767 .catch Landroid/os/RemoteException; {:try_start_1f .. :try_end_36} :catch_3a
2769 + :goto_36
2770 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2772 - :goto_39
2773 return v8
2775 :catch_3a
2776 @@ -3437,11 +3430,9 @@
2778 const/4 v8, -0x1
2780 - invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2781 + goto :goto_36
2783 - goto :goto_39
2785 - :catchall_40
2786 + :catchall_3d
2787 move-exception v0
2789 invoke-virtual {p0, v7}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2790 diff -Npru stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali
2791 --- stock-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-06-14 15:24:22.052536304 -0500
2792 +++ pdroid-framework/smali/android/content/SyncManager$InitializerServiceConnection.smali 2012-06-14 15:23:29.840277391 -0500
2793 @@ -139,7 +139,7 @@
2795 invoke-interface {v1, v2, v3}, Landroid/content/ISyncAdapter;->initialize(Landroid/accounts/Account;Ljava/lang/String;)V
2796 :try_end_43
2797 - .catchall {:try_start_2 .. :try_end_43} :catchall_80
2798 + .catchall {:try_start_2 .. :try_end_43} :catchall_7d
2799 .catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_43} :catch_4e
2801 :cond_43
2802 @@ -149,9 +149,9 @@
2804 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2806 + :goto_4a
2807 invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2809 - :goto_4d
2810 return-void
2812 :catch_4e
2813 @@ -194,7 +194,7 @@
2815 invoke-static {v1, v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2816 :try_end_75
2817 - .catchall {:try_start_4f .. :try_end_75} :catchall_80
2818 + .catchall {:try_start_4f .. :try_end_75} :catchall_7d
2820 iget-object v1, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2822 @@ -202,11 +202,9 @@
2824 invoke-direct {v2, p0}, Landroid/content/SyncManager$InitializerServiceConnection$1;-><init>(Landroid/content/SyncManager$InitializerServiceConnection;)V
2826 - invoke-virtual {v1, v2, v4, v5}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
2828 - goto :goto_4d
2829 + goto :goto_4a
2831 - :catchall_80
2832 + :catchall_7d
2833 move-exception v1
2835 iget-object v2, p0, Landroid/content/SyncManager$InitializerServiceConnection;->mHandler:Landroid/os/Handler;
2836 diff -Npru stock-framework/smali/android/content/SyncStorageEngine.smali pdroid-framework/smali/android/content/SyncStorageEngine.smali
2837 --- stock-framework/smali/android/content/SyncStorageEngine.smali 2012-06-14 15:24:22.124536658 -0500
2838 +++ pdroid-framework/smali/android/content/SyncStorageEngine.smali 2012-06-14 15:23:29.964278014 -0500
2839 @@ -487,7 +487,7 @@
2840 :try_start_18
2841 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2842 :try_end_1b
2843 - .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_34
2844 + .catch Ljava/io/IOException; {:try_start_18 .. :try_end_1b} :catch_2d
2846 :goto_1b
2847 return-void
2848 @@ -529,17 +529,12 @@
2849 :try_start_30
2850 invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
2851 :try_end_33
2852 - .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_36
2853 + .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34
2855 :goto_33
2856 throw v4
2858 :catch_34
2859 - move-exception v4
2861 - goto :goto_1b
2863 - :catch_36
2864 move-exception v5
2866 goto :goto_33
2867 @@ -1750,7 +1745,7 @@
2869 invoke-interface {v9, v14, v15}, Lorg/xmlpull/v1/XmlPullParser;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
2870 :try_end_43
2871 - .catchall {:try_start_2 .. :try_end_43} :catchall_12c
2872 + .catchall {:try_start_2 .. :try_end_43} :catchall_12a
2873 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_2 .. :try_end_43} :catch_e6
2874 .catch Ljava/io/IOException; {:try_start_2 .. :try_end_43} :catch_104
2876 @@ -1774,8 +1769,8 @@
2878 iput v14, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2879 :try_end_53
2880 - .catchall {:try_start_47 .. :try_end_53} :catchall_12c
2881 - .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_148
2882 + .catchall {:try_start_47 .. :try_end_53} :catchall_12a
2883 + .catch Ljava/lang/NumberFormatException; {:try_start_47 .. :try_end_53} :catch_146
2884 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_47 .. :try_end_53} :catch_e6
2885 .catch Ljava/io/IOException; {:try_start_47 .. :try_end_53} :catch_104
2887 @@ -1848,7 +1843,7 @@
2888 :goto_89
2889 invoke-interface {v9}, Lorg/xmlpull/v1/XmlPullParser;->next()I
2890 :try_end_8c
2891 - .catchall {:try_start_55 .. :try_end_8c} :catchall_12c
2892 + .catchall {:try_start_55 .. :try_end_8c} :catchall_12a
2893 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_55 .. :try_end_8c} :catch_e6
2894 .catch Ljava/io/IOException; {:try_start_55 .. :try_end_8c} :catch_104
2896 @@ -1892,7 +1887,7 @@
2897 :try_start_a7
2898 invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2899 :try_end_aa
2900 - .catchall {:try_start_a7 .. :try_end_aa} :catchall_12c
2901 + .catchall {:try_start_a7 .. :try_end_aa} :catchall_12a
2902 .catch Ljava/lang/NumberFormatException; {:try_start_a7 .. :try_end_aa} :catch_ac
2903 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_a7 .. :try_end_aa} :catch_e6
2904 .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_aa} :catch_104
2905 @@ -1912,8 +1907,8 @@
2906 :try_start_af
2907 invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2908 :try_end_b2
2909 - .catchall {:try_start_af .. :try_end_b2} :catchall_12c
2910 - .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_148
2911 + .catchall {:try_start_af .. :try_end_b2} :catchall_12a
2912 + .catch Ljava/lang/NumberFormatException; {:try_start_af .. :try_end_b2} :catch_146
2913 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_af .. :try_end_b2} :catch_e6
2914 .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_104
2916 @@ -1977,7 +1972,7 @@
2918 invoke-direct {v0, v9, v10}, Landroid/content/SyncStorageEngine;->parseExtra(Lorg/xmlpull/v1/XmlPullParser;Landroid/util/Pair;)V
2919 :try_end_e5
2920 - .catchall {:try_start_b6 .. :try_end_e5} :catchall_12c
2921 + .catchall {:try_start_b6 .. :try_end_e5} :catchall_12a
2922 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_b6 .. :try_end_e5} :catch_e6
2923 .catch Ljava/io/IOException; {:try_start_b6 .. :try_end_e5} :catch_104
2925 @@ -1993,7 +1988,7 @@
2927 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2928 :try_end_ee
2929 - .catchall {:try_start_e7 .. :try_end_ee} :catchall_12c
2930 + .catchall {:try_start_e7 .. :try_end_ee} :catchall_12a
2932 add-int/lit8 v14, v5, 0x1
2934 @@ -2026,7 +2021,7 @@
2935 :catch_104
2936 move-exception v2
2938 - if-nez v4, :cond_124
2939 + if-nez v4, :cond_122
2941 :try_start_107
2942 const-string v14, "SyncManager"
2943 @@ -2035,7 +2030,7 @@
2945 invoke-static {v14, v15}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2946 :try_end_10e
2947 - .catchall {:try_start_107 .. :try_end_10e} :catchall_12c
2948 + .catchall {:try_start_107 .. :try_end_10e} :catchall_12a
2950 :goto_10e
2951 add-int/lit8 v14, v5, 0x1
2952 @@ -2057,28 +2052,23 @@
2953 :try_start_11e
2954 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2955 :try_end_121
2956 - .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_122
2957 + .catch Ljava/io/IOException; {:try_start_11e .. :try_end_121} :catch_102
2959 goto :goto_a6
2961 - :catch_122
2962 - move-exception v14
2964 - goto :goto_a6
2966 - :cond_124
2967 - :try_start_124
2968 + :cond_122
2969 + :try_start_122
2970 const-string v14, "SyncManager"
2972 const-string v15, "Error reading accounts"
2974 invoke-static {v14, v15, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
2975 - :try_end_12b
2976 - .catchall {:try_start_124 .. :try_end_12b} :catchall_12c
2977 + :try_end_129
2978 + .catchall {:try_start_122 .. :try_end_129} :catchall_12a
2980 goto :goto_10e
2982 - :catchall_12c
2983 + :catchall_12a
2984 move-exception v14
2986 add-int/lit8 v15, v5, 0x1
2987 @@ -2097,28 +2087,28 @@
2989 iput v15, v0, Landroid/content/SyncStorageEngine;->mNextAuthorityId:I
2991 - if-eqz v4, :cond_142
2992 + if-eqz v4, :cond_140
2994 - :try_start_13f
2995 + :try_start_13d
2996 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
2997 - :try_end_142
2998 - .catch Ljava/io/IOException; {:try_start_13f .. :try_end_142} :catch_146
2999 + :try_end_140
3000 + .catch Ljava/io/IOException; {:try_start_13d .. :try_end_140} :catch_141
3002 - :cond_142
3003 - :goto_142
3004 + :cond_140
3005 + :goto_140
3006 throw v14
3008 + :catch_141
3009 + move-exception v15
3011 + goto :goto_140
3013 :catch_143
3014 move-exception v14
3016 goto/16 :goto_a3
3018 :catch_146
3019 - move-exception v15
3021 - goto :goto_142
3023 - :catch_148
3024 move-exception v14
3026 goto/16 :goto_53
3027 @@ -3473,14 +3463,14 @@
3029 invoke-virtual {v2}, Landroid/os/Parcel;->readBundle()Landroid/os/Bundle;
3030 :try_end_10
3031 - .catchall {:try_start_5 .. :try_end_10} :catchall_1f
3032 + .catchall {:try_start_5 .. :try_end_10} :catchall_1c
3033 .catch Ljava/lang/RuntimeException; {:try_start_5 .. :try_end_10} :catch_15
3035 move-result-object v0
3037 + :goto_11
3038 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3040 - :goto_14
3041 return-object v0
3043 :catch_15
3044 @@ -3491,13 +3481,11 @@
3046 invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
3047 :try_end_1b
3048 - .catchall {:try_start_16 .. :try_end_1b} :catchall_1f
3050 - invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3051 + .catchall {:try_start_16 .. :try_end_1b} :catchall_1c
3053 - goto :goto_14
3054 + goto :goto_11
3056 - :catchall_1f
3057 + :catchall_1c
3058 move-exception v3
3060 invoke-virtual {v2}, Landroid/os/Parcel;->recycle()V
3061 diff -Npru stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali
3062 --- stock-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-06-14 15:24:22.328537667 -0500
3063 +++ pdroid-framework/smali/android/database/BulkCursorToCursorAdaptor.smali 2012-06-14 15:23:30.436280344 -0500
3064 @@ -105,13 +105,13 @@
3066 invoke-interface {v1}, Landroid/database/IBulkCursor;->close()V
3067 :try_end_d
3068 - .catchall {:try_start_8 .. :try_end_d} :catchall_1b
3069 + .catchall {:try_start_8 .. :try_end_d} :catchall_19
3070 .catch Landroid/os/RemoteException; {:try_start_8 .. :try_end_d} :catch_10
3072 + :goto_d
3073 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3075 :cond_f
3076 - :goto_f
3077 return-void
3079 :catch_10
3080 @@ -124,13 +124,11 @@
3082 invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
3083 :try_end_18
3084 - .catchall {:try_start_11 .. :try_end_18} :catchall_1b
3085 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
3087 - iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3089 - goto :goto_f
3090 + goto :goto_d
3092 - :catchall_1b
3093 + :catchall_19
3094 move-exception v1
3096 iput-object v3, p0, Landroid/database/BulkCursorToCursorAdaptor;->mBulkCursor:Landroid/database/IBulkCursor;
3097 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteCursor.smali pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali
3098 --- stock-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-06-14 15:24:22.392537981 -0500
3099 +++ pdroid-framework/smali/android/database/sqlite/SQLiteCursor.smali 2012-06-14 15:23:30.548280896 -0500
3100 @@ -116,7 +116,7 @@
3101 const/4 v2, 0x0
3103 :goto_4a
3104 - if-ge v2, v0, :cond_66
3105 + if-ge v2, v0, :cond_6d
3107 iget-object v3, p0, Landroid/database/sqlite/SQLiteCursor;->mQuery:Landroid/database/sqlite/SQLiteQuery;
3109 @@ -138,7 +138,7 @@
3111 iput v2, p0, Landroid/database/sqlite/SQLiteCursor;->mRowIdColumnIndex:I
3112 :try_end_60
3113 - .catchall {:try_start_3f .. :try_end_60} :catchall_6c
3114 + .catchall {:try_start_3f .. :try_end_60} :catchall_66
3116 :cond_60
3117 add-int/lit8 v2, v2, 0x1
3118 @@ -150,14 +150,7 @@
3120 goto :goto_30
3122 - :cond_66
3123 - iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3125 - invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3127 - return-void
3129 - :catchall_6c
3130 + :catchall_66
3131 move-exception v3
3133 iget-object v4, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3134 @@ -165,6 +158,13 @@
3135 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3137 throw v3
3139 + :cond_6d
3140 + iget-object v3, p3, Landroid/database/sqlite/SQLiteQuery;->mDatabase:Landroid/database/sqlite/SQLiteDatabase;
3142 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3144 + return-void
3145 .end method
3147 .method public constructor <init>(Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
3148 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali
3149 --- stock-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-06-14 15:24:22.432538181 -0500
3150 +++ pdroid-framework/smali/android/database/sqlite/SQLiteDatabase.smali 2012-06-14 15:23:30.584281075 -0500
3151 @@ -459,19 +459,19 @@
3153 if-nez v2, :cond_32
3155 + :goto_2f
3156 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3158 :cond_32
3159 - :goto_32
3160 return-void
3162 :cond_33
3163 - if-eqz p2, :cond_58
3164 + if-eqz p2, :cond_55
3166 :try_start_35
3167 iget-object v3, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3169 - if-nez v3, :cond_58
3170 + if-nez v3, :cond_55
3172 const-string v3, "BEGIN EXCLUSIVE;"
3174 @@ -502,26 +502,24 @@
3175 invoke-interface {p1}, Landroid/database/sqlite/SQLiteTransactionListener;->onBegin()V
3176 :try_end_51
3177 .catchall {:try_start_4e .. :try_end_51} :catchall_25
3178 - .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5e
3179 + .catch Ljava/lang/RuntimeException; {:try_start_4e .. :try_end_51} :catch_5b
3181 :cond_51
3182 const/4 v2, 0x1
3184 if-nez v2, :cond_32
3186 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3188 - goto :goto_32
3189 + goto :goto_2f
3191 - :cond_58
3192 - :try_start_58
3193 + :cond_55
3194 + :try_start_55
3195 const-string v3, "BEGIN IMMEDIATE;"
3197 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3199 goto :goto_3e
3201 - :catch_5e
3202 + :catch_5b
3203 move-exception v0
3205 const-string v3, "ROLLBACK;"
3206 @@ -529,8 +527,8 @@
3207 invoke-virtual {p0, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3209 throw v0
3210 - :try_end_65
3211 - .catchall {:try_start_58 .. :try_end_65} :catchall_25
3212 + :try_end_62
3213 + .catchall {:try_start_55 .. :try_end_62} :catchall_25
3214 .end method
3216 .method private checkLockHoldTime()V
3217 @@ -2993,6 +2991,8 @@
3219 if-nez v0, :cond_43
3221 + :cond_3f
3222 + :goto_3f
3223 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3225 goto :goto_7
3226 @@ -3009,7 +3009,7 @@
3228 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3230 - if-eqz v0, :cond_7f
3231 + if-eqz v0, :cond_3f
3233 const-string v0, "SQLiteDatabase"
3235 @@ -3063,10 +3063,7 @@
3236 :try_end_7f
3237 .catchall {:try_start_6f .. :try_end_7f} :catchall_6a
3239 - :cond_7f
3240 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3242 - goto :goto_7
3243 + goto :goto_3f
3244 .end method
3246 .method closeDatabase()V
3247 @@ -3507,13 +3504,13 @@
3248 :try_start_3
3249 iget-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3250 :try_end_5
3251 - .catchall {:try_start_3 .. :try_end_5} :catchall_1e
3252 + .catchall {:try_start_3 .. :try_end_5} :catchall_1b
3254 if-nez v0, :cond_b
3256 + :goto_7
3257 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3259 - :goto_a
3260 return-void
3262 :cond_b
3263 @@ -3532,13 +3529,11 @@
3265 iput-object v0, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3266 :try_end_1a
3267 - .catchall {:try_start_b .. :try_end_1a} :catchall_1e
3269 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3270 + .catchall {:try_start_b .. :try_end_1a} :catchall_1b
3272 - goto :goto_a
3273 + goto :goto_7
3275 - :catchall_1e
3276 + :catchall_1b
3277 move-exception v0
3279 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3280 @@ -3568,7 +3563,7 @@
3281 :try_start_c
3282 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mConnectionPool:Landroid/database/sqlite/DatabaseConnectionPool;
3283 :try_end_e
3284 - .catchall {:try_start_c .. :try_end_e} :catchall_6f
3285 + .catchall {:try_start_c .. :try_end_e} :catchall_59
3287 if-eqz v2, :cond_15
3289 @@ -3596,8 +3591,10 @@
3291 invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
3292 :try_end_26
3293 - .catchall {:try_start_15 .. :try_end_26} :catchall_6f
3294 + .catchall {:try_start_15 .. :try_end_26} :catchall_59
3296 + :cond_26
3297 + :goto_26
3298 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3300 goto :goto_8
3301 @@ -3606,7 +3603,7 @@
3302 :try_start_2a
3303 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mHasAttachedDbs:Z
3305 - if-eqz v2, :cond_5c
3306 + if-eqz v2, :cond_5e
3308 const-string v1, "SQLiteDatabase"
3310 @@ -3616,7 +3613,7 @@
3312 move-result v1
3314 - if-eqz v1, :cond_58
3315 + if-eqz v1, :cond_26
3317 const-string v1, "SQLiteDatabase"
3319 @@ -3648,15 +3645,19 @@
3321 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
3322 :try_end_58
3323 - .catchall {:try_start_2a .. :try_end_58} :catchall_6f
3324 + .catchall {:try_start_2a .. :try_end_58} :catchall_59
3326 + goto :goto_26
3328 + :catchall_59
3329 + move-exception v0
3331 - :cond_58
3332 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3334 - goto :goto_8
3335 + throw v0
3337 - :cond_5c
3338 - :try_start_5c
3339 + :cond_5e
3340 + :try_start_5e
3341 new-instance v0, Landroid/database/sqlite/DatabaseConnectionPool;
3343 invoke-direct {v0, p0}, Landroid/database/sqlite/DatabaseConnectionPool;-><init>(Landroid/database/sqlite/SQLiteDatabase;)V
3344 @@ -3668,21 +3669,14 @@
3345 const-string v2, "WAL"
3347 invoke-direct {p0, v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->setJournalMode(Ljava/lang/String;Ljava/lang/String;)V
3348 - :try_end_6a
3349 - .catchall {:try_start_5c .. :try_end_6a} :catchall_6f
3350 + :try_end_6c
3351 + .catchall {:try_start_5e .. :try_end_6c} :catchall_59
3353 invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3355 move v0, v1
3357 goto :goto_8
3359 - :catchall_6f
3360 - move-exception v0
3362 - invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlock()V
3364 - throw v0
3365 .end method
3367 .method public endTransaction()V
3368 @@ -3716,9 +3710,9 @@
3370 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3372 + :goto_16
3373 invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3375 - :goto_19
3376 return-void
3378 :cond_1a
3379 @@ -3753,21 +3747,21 @@
3380 :try_start_2a
3381 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3383 - if-eqz v2, :cond_56
3384 + if-eqz v2, :cond_53
3386 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3388 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onCommit()V
3389 :try_end_33
3390 .catchall {:try_start_2a .. :try_end_33} :catchall_1e
3391 - .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_5c
3392 + .catch Ljava/lang/RuntimeException; {:try_start_2a .. :try_end_33} :catch_59
3394 :cond_33
3395 :goto_33
3396 :try_start_33
3397 iget-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3399 - if-eqz v2, :cond_62
3400 + if-eqz v2, :cond_5f
3402 const-string v2, "COMMIT;"
3404 @@ -3797,37 +3791,35 @@
3405 :goto_50
3406 iput-object v4, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3408 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteDatabase;->unlockForced()V
3410 - goto :goto_19
3411 + goto :goto_16
3413 - :cond_56
3414 - :try_start_56
3415 + :cond_53
3416 + :try_start_53
3417 iget-object v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionListener:Landroid/database/sqlite/SQLiteTransactionListener;
3419 invoke-interface {v2}, Landroid/database/sqlite/SQLiteTransactionListener;->onRollback()V
3420 - :try_end_5b
3421 - .catchall {:try_start_56 .. :try_end_5b} :catchall_1e
3422 - .catch Ljava/lang/RuntimeException; {:try_start_56 .. :try_end_5b} :catch_5c
3423 + :try_end_58
3424 + .catchall {:try_start_53 .. :try_end_58} :catchall_1e
3425 + .catch Ljava/lang/RuntimeException; {:try_start_53 .. :try_end_58} :catch_59
3427 goto :goto_33
3429 - :catch_5c
3430 + :catch_59
3431 move-exception v0
3433 move-object v1, v0
3435 const/4 v2, 0x0
3437 - :try_start_5f
3438 + :try_start_5c
3439 iput-boolean v2, p0, Landroid/database/sqlite/SQLiteDatabase;->mTransactionIsSuccessful:Z
3440 - :try_end_61
3441 - .catchall {:try_start_5f .. :try_end_61} :catchall_1e
3442 + :try_end_5e
3443 + .catchall {:try_start_5c .. :try_end_5e} :catchall_1e
3445 goto :goto_33
3447 - :cond_62
3448 - :try_start_62
3449 + :cond_5f
3450 + :try_start_5f
3451 const-string v2, "ROLLBACK;"
3453 invoke-virtual {p0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
3454 @@ -3835,11 +3827,11 @@
3455 if-eqz v1, :cond_50
3457 throw v1
3458 - :try_end_6a
3459 - .catchall {:try_start_62 .. :try_end_6a} :catchall_1e
3460 - .catch Landroid/database/SQLException; {:try_start_62 .. :try_end_6a} :catch_6a
3461 + :try_end_67
3462 + .catchall {:try_start_5f .. :try_end_67} :catchall_1e
3463 + .catch Landroid/database/SQLException; {:try_start_5f .. :try_end_67} :catch_67
3465 - :catch_6a
3466 + :catch_67
3467 move-exception v2
3469 goto :goto_50
3470 @@ -4806,7 +4798,7 @@
3472 move-result v6
3474 - if-nez v6, :cond_af
3475 + if-nez v6, :cond_b6
3477 const-string v7, "SQLiteDatabase"
3479 @@ -4844,7 +4836,7 @@
3481 invoke-static {v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3482 :try_end_a8
3483 - .catchall {:try_start_54 .. :try_end_a8} :catchall_b7
3484 + .catchall {:try_start_54 .. :try_end_a8} :catchall_af
3486 const/4 v6, 0x0
3488 @@ -4856,25 +4848,25 @@
3489 :goto_ae
3490 return v6
3492 - :cond_af
3493 - if-eqz v4, :cond_b4
3494 + :catchall_af
3495 + move-exception v6
3497 - invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3498 + if-eqz v4, :cond_b5
3500 - :cond_b4
3501 - add-int/lit8 v2, v2, 0x1
3503 - goto :goto_47
3504 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3506 - :catchall_b7
3507 - move-exception v6
3508 + :cond_b5
3509 + throw v6
3511 - if-eqz v4, :cond_bd
3512 + :cond_b6
3513 + if-eqz v4, :cond_bb
3515 invoke-virtual {v4}, Landroid/database/sqlite/SQLiteStatement;->close()V
3517 - :cond_bd
3518 - throw v6
3519 + :cond_bb
3520 + add-int/lit8 v2, v2, 0x1
3522 + goto :goto_47
3524 :cond_be
3525 const/4 v6, 0x1
3526 diff -Npru stock-framework/smali/android/database/sqlite/SQLiteStatement.smali pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali
3527 --- stock-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-06-14 15:24:22.468538360 -0500
3528 +++ pdroid-framework/smali/android/database/sqlite/SQLiteStatement.smali 2012-06-14 15:23:30.632281320 -0500
3529 @@ -417,13 +417,13 @@
3531 invoke-virtual {v5, v6, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->logTimeStat(Ljava/lang/String;J)V
3532 :try_end_10
3533 - .catchall {:try_start_1 .. :try_end_10} :catchall_3e
3534 + .catchall {:try_start_1 .. :try_end_10} :catchall_3b
3535 .catch Ljava/io/IOException; {:try_start_1 .. :try_end_10} :catch_14
3536 - .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_22
3537 + .catch Landroid/database/sqlite/SQLiteDoneException; {:try_start_1 .. :try_end_10} :catch_1f
3539 + :goto_10
3540 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3542 - :goto_13
3543 return-object v2
3545 :catch_14
3546 @@ -435,19 +435,14 @@
3547 const-string/jumbo v6, "simpleQueryForBlobFileDescriptor() failed"
3549 invoke-static {v5, v6, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
3550 - :try_end_1d
3551 - .catchall {:try_start_15 .. :try_end_1d} :catchall_3e
3553 const/4 v2, 0x0
3555 - invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3557 - goto :goto_13
3558 + goto :goto_10
3560 - :catch_22
3561 + :catch_1f
3562 move-exception v0
3564 - :try_start_23
3565 new-instance v5, Landroid/database/sqlite/SQLiteDoneException;
3567 new-instance v6, Ljava/lang/StringBuilder;
3568 @@ -473,10 +468,10 @@
3569 invoke-direct {v5, v6}, Landroid/database/sqlite/SQLiteDoneException;-><init>(Ljava/lang/String;)V
3571 throw v5
3572 - :try_end_3e
3573 - .catchall {:try_start_23 .. :try_end_3e} :catchall_3e
3574 + :try_end_3b
3575 + .catchall {:try_start_15 .. :try_end_3b} :catchall_3b
3577 - :catchall_3e
3578 + :catchall_3b
3579 move-exception v5
3581 invoke-direct {p0}, Landroid/database/sqlite/SQLiteStatement;->releaseAndUnlock()V
3582 diff -Npru stock-framework/smali/android/media/MediaPlayer.smali pdroid-framework/smali/android/media/MediaPlayer.smali
3583 --- stock-framework/smali/android/media/MediaPlayer.smali 2012-06-14 15:24:23.668544312 -0500
3584 +++ pdroid-framework/smali/android/media/MediaPlayer.smali 2012-06-14 15:23:32.000288102 -0500
3585 @@ -985,9 +985,9 @@
3587 invoke-virtual {v7, p2, v0}, Landroid/content/ContentResolver;->openAssetFileDescriptor(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
3588 :try_end_21
3589 - .catchall {:try_start_17 .. :try_end_21} :catchall_6e
3590 - .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_52
3591 - .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_67
3592 + .catchall {:try_start_17 .. :try_end_21} :catchall_64
3593 + .catch Ljava/lang/SecurityException; {:try_start_17 .. :try_end_21} :catch_4f
3594 + .catch Ljava/io/IOException; {:try_start_17 .. :try_end_21} :catch_6b
3596 move-result-object v6
3598 @@ -995,6 +995,7 @@
3600 if-eqz v6, :cond_15
3602 + :goto_26
3603 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3605 goto :goto_15
3606 @@ -1009,27 +1010,20 @@
3608 cmp-long v0, v0, v2
3610 - if-gez v0, :cond_41
3611 + if-gez v0, :cond_3e
3613 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3615 move-result-object v0
3617 invoke-virtual {p0, v0}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;)V
3618 - :try_end_3b
3619 - .catchall {:try_start_2a .. :try_end_3b} :catchall_6e
3620 - .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_3b} :catch_52
3621 - .catch Ljava/io/IOException; {:try_start_2a .. :try_end_3b} :catch_67
3623 :goto_3b
3624 if-eqz v6, :cond_15
3626 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3628 - goto :goto_15
3629 + goto :goto_26
3631 - :cond_41
3632 - :try_start_41
3633 + :cond_3e
3634 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;
3636 move-result-object v1
3637 @@ -1045,22 +1039,22 @@
3638 move-object v0, p0
3640 invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V
3641 - :try_end_51
3642 - .catchall {:try_start_41 .. :try_end_51} :catchall_6e
3643 - .catch Ljava/lang/SecurityException; {:try_start_41 .. :try_end_51} :catch_52
3644 - .catch Ljava/io/IOException; {:try_start_41 .. :try_end_51} :catch_67
3645 + :try_end_4e
3646 + .catchall {:try_start_2a .. :try_end_4e} :catchall_64
3647 + .catch Ljava/lang/SecurityException; {:try_start_2a .. :try_end_4e} :catch_4f
3648 + .catch Ljava/io/IOException; {:try_start_2a .. :try_end_4e} :catch_6b
3650 goto :goto_3b
3652 - :catch_52
3653 + :catch_4f
3654 move-exception v0
3656 - if-eqz v6, :cond_58
3657 + if-eqz v6, :cond_55
3659 + :goto_52
3660 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3662 - :cond_58
3663 - :goto_58
3664 + :cond_55
3665 const-string v0, "MediaPlayer"
3667 const-string v1, "Couldn\'t open file on client side, trying server side"
3668 @@ -1075,24 +1069,22 @@
3670 goto :goto_15
3672 - :catch_67
3673 + :catchall_64
3674 move-exception v0
3676 - if-eqz v6, :cond_58
3677 + if-eqz v6, :cond_6a
3679 invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3681 - goto :goto_58
3682 + :cond_6a
3683 + throw v0
3685 - :catchall_6e
3686 + :catch_6b
3687 move-exception v0
3689 - if-eqz v6, :cond_74
3690 + if-eqz v6, :cond_55
3692 - invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
3694 - :cond_74
3695 - throw v0
3696 + goto :goto_52
3697 .end method
3699 .method public setDataSource(Ljava/io/FileDescriptor;)V
3700 diff -Npru stock-framework/smali/android/net/sip/SipAudioCall.smali pdroid-framework/smali/android/net/sip/SipAudioCall.smali
3701 --- stock-framework/smali/android/net/sip/SipAudioCall.smali 2012-06-14 15:24:24.116546529 -0500
3702 +++ pdroid-framework/smali/android/net/sip/SipAudioCall.smali 2012-06-14 15:23:32.360289899 -0500
3703 @@ -1191,7 +1191,7 @@
3705 iget-object v15, v0, Landroid/net/sip/SipAudioCall;->mPeerSd:Ljava/lang/String;
3707 - if-nez v15, :cond_1a
3708 + if-nez v15, :cond_1b
3710 sget-object v15, Landroid/net/sip/SipAudioCall;->TAG:Ljava/lang/String;
3712 @@ -1201,25 +1201,25 @@
3714 new-instance v15, Ljava/lang/IllegalStateException;
3716 - const-string v16, "mPeerSd = null"
3717 + const-string/jumbo v16, "mPeerSd = null"
3719 invoke-direct/range {v15 .. v16}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
3721 throw v15
3722 - :try_end_17
3723 - .catchall {:try_start_1 .. :try_end_17} :catchall_17
3724 + :try_end_18
3725 + .catchall {:try_start_1 .. :try_end_18} :catchall_18
3727 - :catchall_17
3728 + :catchall_18
3729 move-exception v15
3731 monitor-exit p0
3733 throw v15
3735 - :cond_1a
3736 + :cond_1b
3737 const/4 v15, 0x0
3739 - :try_start_1b
3740 + :try_start_1c
3741 move-object/from16 v0, p0
3743 invoke-direct {v0, v15}, Landroid/net/sip/SipAudioCall;->stopCall(Z)V
3744 @@ -1254,18 +1254,18 @@
3746 move v7, v6
3748 - :goto_3a
3749 - if-ge v7, v8, :cond_c6
3750 + :goto_3b
3751 + if-ge v7, v8, :cond_c7
3753 aget-object v10, v2, v7
3755 - if-nez v5, :cond_10d
3756 + if-nez v5, :cond_10e
3758 invoke-virtual {v10}, Landroid/net/sip/SimpleSessionDescription$Media;->getPort()I
3760 move-result v15
3762 - if-lez v15, :cond_10d
3763 + if-lez v15, :cond_10e
3765 const-string v15, "audio"
3767 @@ -1277,7 +1277,7 @@
3769 move-result v15
3771 - if-eqz v15, :cond_10d
3772 + if-eqz v15, :cond_10e
3774 const-string v15, "RTP/AVP"
3776 @@ -1289,7 +1289,7 @@
3778 move-result v15
3780 - if-eqz v15, :cond_10d
3781 + if-eqz v15, :cond_10e
3783 invoke-virtual {v10}, Landroid/net/sip/SimpleSessionDescription$Media;->getRtpPayloadTypes()[I
3785 @@ -1299,8 +1299,8 @@
3787 const/4 v6, 0x0
3789 - :goto_64
3790 - if-ge v6, v9, :cond_76
3791 + :goto_65
3792 + if-ge v6, v9, :cond_77
3794 aget v14, v3, v6
3796 @@ -1316,22 +1316,22 @@
3798 move-result-object v5
3800 - if-eqz v5, :cond_b9
3801 + if-eqz v5, :cond_ba
3803 - :cond_76
3804 - if-eqz v5, :cond_10d
3805 + :cond_77
3806 + if-eqz v5, :cond_10e
3808 invoke-virtual {v10}, Landroid/net/sip/SimpleSessionDescription$Media;->getAddress()Ljava/lang/String;
3810 move-result-object v1
3812 - if-nez v1, :cond_82
3813 + if-nez v1, :cond_83
3815 invoke-virtual {v11}, Landroid/net/sip/SimpleSessionDescription;->getAddress()Ljava/lang/String;
3817 move-result-object v1
3819 - :cond_82
3820 + :cond_83
3821 invoke-static {v1}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress;
3823 move-result-object v15
3824 @@ -1358,8 +1358,8 @@
3826 const/4 v6, 0x0
3828 - :goto_9c
3829 - if-ge v6, v8, :cond_bc
3830 + :goto_9d
3831 + if-ge v6, v8, :cond_bd
3833 aget v14, v2, v6
3835 @@ -1369,9 +1369,9 @@
3837 iget v15, v5, Landroid/net/rtp/AudioCodec;->type:I
3839 - if-eq v14, v15, :cond_b6
3840 + if-eq v14, v15, :cond_b7
3842 - if-eqz v12, :cond_b6
3843 + if-eqz v12, :cond_b7
3845 const-string/jumbo v15, "telephone-event"
3847 @@ -1379,34 +1379,34 @@
3849 move-result v15
3851 - if-eqz v15, :cond_b6
3852 + if-eqz v15, :cond_b7
3854 invoke-virtual {v13, v14}, Landroid/net/rtp/AudioStream;->setDtmfType(I)V
3856 - :cond_b6
3857 + :cond_b7
3858 add-int/lit8 v6, v6, 0x1
3860 - goto :goto_9c
3861 + goto :goto_9d
3863 - :cond_b9
3864 + :cond_ba
3865 add-int/lit8 v6, v6, 0x1
3867 - goto :goto_64
3868 + goto :goto_65
3870 - :cond_bc
3871 + :cond_bd
3872 move-object/from16 v0, p0
3874 iget-boolean v15, v0, Landroid/net/sip/SipAudioCall;->mHold:Z
3876 - if-eqz v15, :cond_d0
3877 + if-eqz v15, :cond_d1
3879 const/4 v15, 0x0
3881 invoke-virtual {v13, v15}, Landroid/net/rtp/AudioStream;->setMode(I)V
3883 - :cond_c6
3884 - :goto_c6
3885 - if-nez v5, :cond_112
3886 + :cond_c7
3887 + :goto_c7
3888 + if-nez v5, :cond_113
3890 new-instance v15, Ljava/lang/IllegalStateException;
3892 @@ -1416,90 +1416,90 @@
3894 throw v15
3896 - :cond_d0
3897 + :cond_d1
3898 const-string/jumbo v15, "recvonly"
3900 invoke-virtual {v10, v15}, Landroid/net/sip/SimpleSessionDescription$Media;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
3902 move-result-object v15
3904 - if-eqz v15, :cond_de
3905 + if-eqz v15, :cond_df
3907 const/4 v15, 0x1
3909 invoke-virtual {v13, v15}, Landroid/net/rtp/AudioStream;->setMode(I)V
3911 - goto :goto_c6
3912 + goto :goto_c7
3914 - :cond_de
3915 + :cond_df
3916 const-string/jumbo v15, "sendonly"
3918 invoke-virtual {v10, v15}, Landroid/net/sip/SimpleSessionDescription$Media;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
3920 move-result-object v15
3922 - if-eqz v15, :cond_ec
3923 + if-eqz v15, :cond_ed
3925 const/4 v15, 0x2
3927 invoke-virtual {v13, v15}, Landroid/net/rtp/AudioStream;->setMode(I)V
3929 - goto :goto_c6
3930 + goto :goto_c7
3932 - :cond_ec
3933 + :cond_ed
3934 const-string/jumbo v15, "recvonly"
3936 invoke-virtual {v11, v15}, Landroid/net/sip/SimpleSessionDescription;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
3938 move-result-object v15
3940 - if-eqz v15, :cond_fa
3941 + if-eqz v15, :cond_fb
3943 const/4 v15, 0x1
3945 invoke-virtual {v13, v15}, Landroid/net/rtp/AudioStream;->setMode(I)V
3947 - goto :goto_c6
3948 + goto :goto_c7
3950 - :cond_fa
3951 + :cond_fb
3952 const-string/jumbo v15, "sendonly"
3954 invoke-virtual {v11, v15}, Landroid/net/sip/SimpleSessionDescription;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
3956 move-result-object v15
3958 - if-eqz v15, :cond_108
3959 + if-eqz v15, :cond_109
3961 const/4 v15, 0x2
3963 invoke-virtual {v13, v15}, Landroid/net/rtp/AudioStream;->setMode(I)V
3965 - goto :goto_c6
3966 + goto :goto_c7
3968 - :cond_108
3969 + :cond_109
3970 const/4 v15, 0x0
3972 invoke-virtual {v13, v15}, Landroid/net/rtp/AudioStream;->setMode(I)V
3974 - goto :goto_c6
3975 + goto :goto_c7
3977 - :cond_10d
3978 + :cond_10e
3979 add-int/lit8 v6, v7, 0x1
3981 move v7, v6
3983 - goto/16 :goto_3a
3984 + goto/16 :goto_3b
3986 - :cond_112
3987 + :cond_113
3988 invoke-direct/range {p0 .. p0}, Landroid/net/sip/SipAudioCall;->isWifiOn()Z
3990 move-result v15
3992 - if-eqz v15, :cond_11b
3993 + if-eqz v15, :cond_11c
3995 invoke-direct/range {p0 .. p0}, Landroid/net/sip/SipAudioCall;->grabWifiHighPerfLock()V
3997 - :cond_11b
3998 + :cond_11c
3999 invoke-virtual/range {p0 .. p0}, Landroid/net/sip/SipAudioCall;->getAudioGroup()Landroid/net/rtp/AudioGroup;
4001 move-result-object v4
4002 @@ -1508,31 +1508,31 @@
4004 iget-boolean v15, v0, Landroid/net/sip/SipAudioCall;->mHold:Z
4006 - if-eqz v15, :cond_12a
4007 + if-eqz v15, :cond_12b
4009 - :goto_125
4010 + :goto_126
4011 invoke-direct/range {p0 .. p0}, Landroid/net/sip/SipAudioCall;->setAudioGroupMode()V
4012 - :try_end_128
4013 - .catchall {:try_start_1b .. :try_end_128} :catchall_17
4014 + :try_end_129
4015 + .catchall {:try_start_1c .. :try_end_129} :catchall_18
4017 monitor-exit p0
4019 return-void
4021 - :cond_12a
4022 - if-nez v4, :cond_131
4023 + :cond_12b
4024 + if-nez v4, :cond_132
4026 - :try_start_12c
4027 + :try_start_12d
4028 new-instance v4, Landroid/net/rtp/AudioGroup;
4030 invoke-direct {v4}, Landroid/net/rtp/AudioGroup;-><init>()V
4032 - :cond_131
4033 + :cond_132
4034 invoke-virtual {v13, v4}, Landroid/net/rtp/AudioStream;->join(Landroid/net/rtp/AudioGroup;)V
4035 - :try_end_134
4036 - .catchall {:try_start_12c .. :try_end_134} :catchall_17
4037 + :try_end_135
4038 + .catchall {:try_start_12d .. :try_end_135} :catchall_18
4040 - goto :goto_125
4041 + goto :goto_126
4042 .end method
4044 .method private stopCall(Z)V
4045 diff -Npru stock-framework/smali/android/net/VpnService.smali pdroid-framework/smali/android/net/VpnService.smali
4046 --- stock-framework/smali/android/net/VpnService.smali 2012-06-14 15:24:24.048546195 -0500
4047 +++ pdroid-framework/smali/android/net/VpnService.smali 2012-06-14 15:23:32.232289260 -0500
4048 @@ -155,8 +155,6 @@
4050 :try_start_d
4051 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
4052 - :try_end_10
4053 - .catch Ljava/lang/Exception; {:try_start_d .. :try_end_10} :catch_1e
4055 :goto_10
4056 return v2
4057 @@ -166,10 +164,9 @@
4059 const/4 v2, 0x0
4061 - :try_start_13
4062 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
4063 :try_end_16
4064 - .catch Ljava/lang/Exception; {:try_start_13 .. :try_end_16} :catch_17
4065 + .catch Ljava/lang/Exception; {:try_start_d .. :try_end_16} :catch_17
4067 goto :goto_10
4069 @@ -184,7 +181,7 @@
4070 :try_start_1a
4071 invoke-virtual {v0}, Landroid/os/ParcelFileDescriptor;->close()V
4072 :try_end_1d
4073 - .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_20
4074 + .catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1d} :catch_1e
4076 :goto_1d
4077 throw v2
4078 @@ -192,11 +189,6 @@
4079 :catch_1e
4080 move-exception v3
4082 - goto :goto_10
4084 - :catch_20
4085 - move-exception v3
4087 goto :goto_1d
4088 .end method
4090 diff -Npru stock-framework/smali/android/net/wifi/WifiConfigStore.smali pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali
4091 --- stock-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-06-14 15:24:24.176546831 -0500
4092 +++ pdroid-framework/smali/android/net/wifi/WifiConfigStore.smali 2012-06-14 15:23:32.456290365 -0500
4093 @@ -2904,9 +2904,9 @@
4095 invoke-direct {v9, v0}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
4096 :try_end_14
4097 - .catchall {:try_start_1 .. :try_end_14} :catchall_247
4098 - .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_24d
4099 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_24a
4100 + .catchall {:try_start_1 .. :try_end_14} :catchall_244
4101 + .catch Ljava/io/EOFException; {:try_start_1 .. :try_end_14} :catch_24a
4102 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_14} :catch_247
4104 const/4 v14, 0x0
4106 @@ -2935,7 +2935,7 @@
4108 invoke-static/range {v20 .. v20}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4109 :try_end_2e
4110 - .catchall {:try_start_15 .. :try_end_2e} :catchall_178
4111 + .catchall {:try_start_15 .. :try_end_2e} :catchall_175
4112 .catch Ljava/io/EOFException; {:try_start_15 .. :try_end_2e} :catch_cf
4113 .catch Ljava/io/IOException; {:try_start_15 .. :try_end_2e} :catch_105
4115 @@ -2959,14 +2959,14 @@
4117 move/from16 v0, v20
4119 - if-eq v7, v0, :cond_23a
4120 + if-eq v7, v0, :cond_237
4122 :try_start_3b
4123 sget-object v21, Landroid/net/wifi/WifiConfigStore;->sConfiguredNetworks:Ljava/util/HashMap;
4125 monitor-enter v21
4126 :try_end_3e
4127 - .catchall {:try_start_3b .. :try_end_3e} :catchall_178
4128 + .catchall {:try_start_3b .. :try_end_3e} :catchall_175
4129 .catch Ljava/io/EOFException; {:try_start_3b .. :try_end_3e} :catch_cf
4130 .catch Ljava/io/IOException; {:try_start_3b .. :try_end_3e} :catch_105
4132 @@ -2993,7 +2993,7 @@
4134 check-cast v2, Landroid/net/wifi/WifiConfiguration;
4136 - if-nez v2, :cond_1f6
4137 + if-nez v2, :cond_1f3
4139 const-string v20, "configuration found for missing network, ignored"
4141 @@ -3003,7 +3003,7 @@
4142 :pswitch_5b
4143 monitor-exit v21
4144 :try_end_5c
4145 - .catchall {:try_start_3e .. :try_end_5c} :catchall_21a
4146 + .catchall {:try_start_3e .. :try_end_5c} :catchall_217
4148 :cond_5c
4149 :goto_5c
4150 @@ -3027,7 +3027,7 @@
4151 :goto_6a
4152 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4153 :try_end_6d
4154 - .catchall {:try_start_5d .. :try_end_6d} :catchall_178
4155 + .catchall {:try_start_5d .. :try_end_6d} :catchall_175
4156 .catch Ljava/io/EOFException; {:try_start_5d .. :try_end_6d} :catch_cf
4157 .catch Ljava/io/IOException; {:try_start_5d .. :try_end_6d} :catch_105
4159 @@ -3107,7 +3107,7 @@
4161 invoke-virtual {v13, v12}, Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)V
4162 :try_end_b4
4163 - .catchall {:try_start_6e .. :try_end_b4} :catchall_178
4164 + .catchall {:try_start_6e .. :try_end_b4} :catchall_175
4165 .catch Ljava/lang/IllegalArgumentException; {:try_start_6e .. :try_end_b4} :catch_b5
4166 .catch Ljava/io/EOFException; {:try_start_6e .. :try_end_b4} :catch_cf
4167 .catch Ljava/io/IOException; {:try_start_6e .. :try_end_b4} :catch_105
4168 @@ -3140,7 +3140,7 @@
4170 invoke-static/range {v20 .. v20}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4171 :try_end_ce
4172 - .catchall {:try_start_b6 .. :try_end_ce} :catchall_178
4173 + .catchall {:try_start_b6 .. :try_end_ce} :catchall_175
4174 .catch Ljava/io/EOFException; {:try_start_b6 .. :try_end_ce} :catch_cf
4175 .catch Ljava/io/IOException; {:try_start_b6 .. :try_end_ce} :catch_105
4177 @@ -3176,7 +3176,7 @@
4179 move-result v20
4181 - if-eqz v20, :cond_15f
4182 + if-eqz v20, :cond_15c
4184 const/4 v3, 0x0
4186 @@ -3188,7 +3188,7 @@
4188 move/from16 v1, v20
4190 - if-ne v0, v1, :cond_129
4191 + if-ne v0, v1, :cond_126
4193 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4195 @@ -3210,7 +3210,7 @@
4197 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)V
4198 :try_end_103
4199 - .catchall {:try_start_db .. :try_end_103} :catchall_178
4200 + .catchall {:try_start_db .. :try_end_103} :catchall_175
4201 .catch Ljava/lang/IllegalArgumentException; {:try_start_db .. :try_end_103} :catch_b5
4202 .catch Ljava/io/EOFException; {:try_start_db .. :try_end_103} :catch_cf
4203 .catch Ljava/io/IOException; {:try_start_db .. :try_end_103} :catch_105
4204 @@ -3246,24 +3246,19 @@
4206 invoke-static/range {v20 .. v20}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4207 :try_end_11f
4208 - .catchall {:try_start_107 .. :try_end_11f} :catchall_247
4209 + .catchall {:try_start_107 .. :try_end_11f} :catchall_244
4211 if-eqz v8, :cond_34
4213 :try_start_121
4214 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
4215 :try_end_124
4216 - .catch Ljava/lang/Exception; {:try_start_121 .. :try_end_124} :catch_126
4217 + .catch Ljava/lang/Exception; {:try_start_121 .. :try_end_124} :catch_d8
4219 goto/16 :goto_34
4221 - :catch_126
4222 - move-exception v20
4224 - goto/16 :goto_34
4226 - :cond_129
4227 - :try_start_129
4228 + :cond_126
4229 + :try_start_126
4230 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4232 move-result v20
4233 @@ -3274,7 +3269,7 @@
4235 move/from16 v1, v21
4237 - if-ne v0, v1, :cond_14a
4238 + if-ne v0, v1, :cond_147
4240 new-instance v3, Landroid/net/LinkAddress;
4242 @@ -3296,7 +3291,7 @@
4244 invoke-direct {v3, v0, v1}, Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
4246 - :cond_14a
4247 + :cond_147
4248 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4250 move-result v20
4251 @@ -3319,7 +3314,7 @@
4253 goto :goto_f7
4255 - :cond_15f
4256 + :cond_15c
4257 const-string v20, "dns"
4259 move-object/from16 v0, v20
4260 @@ -3328,7 +3323,7 @@
4262 move-result v20
4264 - if-eqz v20, :cond_180
4265 + if-eqz v20, :cond_17d
4267 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4269 @@ -3341,33 +3336,33 @@
4270 move-object/from16 v0, v20
4272 invoke-virtual {v13, v0}, Landroid/net/LinkProperties;->addDns(Ljava/net/InetAddress;)V
4273 - :try_end_176
4274 - .catchall {:try_start_129 .. :try_end_176} :catchall_178
4275 - .catch Ljava/lang/IllegalArgumentException; {:try_start_129 .. :try_end_176} :catch_b5
4276 - .catch Ljava/io/EOFException; {:try_start_129 .. :try_end_176} :catch_cf
4277 - .catch Ljava/io/IOException; {:try_start_129 .. :try_end_176} :catch_105
4278 + :try_end_173
4279 + .catchall {:try_start_126 .. :try_end_173} :catchall_175
4280 + .catch Ljava/lang/IllegalArgumentException; {:try_start_126 .. :try_end_173} :catch_b5
4281 + .catch Ljava/io/EOFException; {:try_start_126 .. :try_end_173} :catch_cf
4282 + .catch Ljava/io/IOException; {:try_start_126 .. :try_end_173} :catch_105
4284 goto/16 :goto_7c
4286 - :catchall_178
4287 + :catchall_175
4288 move-exception v20
4290 move-object v8, v9
4292 - :goto_17a
4293 - if-eqz v8, :cond_17f
4294 + :goto_177
4295 + if-eqz v8, :cond_17c
4297 - :try_start_17c
4298 + :try_start_179
4299 invoke-virtual {v8}, Ljava/io/DataInputStream;->close()V
4300 - :try_end_17f
4301 - .catch Ljava/lang/Exception; {:try_start_17c .. :try_end_17f} :catch_244
4302 + :try_end_17c
4303 + .catch Ljava/lang/Exception; {:try_start_179 .. :try_end_17c} :catch_23e
4305 - :cond_17f
4306 - :goto_17f
4307 + :cond_17c
4308 + :goto_17c
4309 throw v20
4311 - :cond_180
4312 - :try_start_180
4313 + :cond_17d
4314 + :try_start_17d
4315 const-string/jumbo v20, "proxySettings"
4317 move-object/from16 v0, v20
4318 @@ -3376,7 +3371,7 @@
4320 move-result v20
4322 - if-eqz v20, :cond_195
4323 + if-eqz v20, :cond_192
4325 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4327 @@ -3388,7 +3383,7 @@
4329 goto/16 :goto_7c
4331 - :cond_195
4332 + :cond_192
4333 const-string/jumbo v20, "proxyHost"
4335 move-object/from16 v0, v20
4336 @@ -3397,7 +3392,7 @@
4338 move-result v20
4340 - if-eqz v20, :cond_1a6
4341 + if-eqz v20, :cond_1a3
4343 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4345 @@ -3405,7 +3400,7 @@
4347 goto/16 :goto_7c
4349 - :cond_1a6
4350 + :cond_1a3
4351 const-string/jumbo v20, "proxyPort"
4353 move-object/from16 v0, v20
4354 @@ -3414,7 +3409,7 @@
4356 move-result v20
4358 - if-eqz v20, :cond_1b7
4359 + if-eqz v20, :cond_1b4
4361 invoke-virtual {v9}, Ljava/io/DataInputStream;->readInt()I
4363 @@ -3422,7 +3417,7 @@
4365 goto/16 :goto_7c
4367 - :cond_1b7
4368 + :cond_1b4
4369 const-string v20, "exclusionList"
4371 move-object/from16 v0, v20
4372 @@ -3431,7 +3426,7 @@
4374 move-result v20
4376 - if-eqz v20, :cond_1c7
4377 + if-eqz v20, :cond_1c4
4379 invoke-virtual {v9}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
4381 @@ -3439,7 +3434,7 @@
4383 goto/16 :goto_7c
4385 - :cond_1c7
4386 + :cond_1c4
4387 const-string v20, "eos"
4389 move-object/from16 v0, v20
4390 @@ -3448,13 +3443,13 @@
4392 move-result v20
4394 - if-eqz v20, :cond_1d5
4395 + if-eqz v20, :cond_1d2
4397 if-nez v14, :cond_35
4399 goto/16 :goto_6a
4401 - :cond_1d5
4402 + :cond_1d2
4403 new-instance v20, Ljava/lang/StringBuilder;
4405 invoke-direct/range {v20 .. v20}, Ljava/lang/StringBuilder;-><init>()V
4406 @@ -3482,16 +3477,16 @@
4407 move-result-object v20
4409 invoke-static/range {v20 .. v20}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4410 - :try_end_1f4
4411 - .catchall {:try_start_180 .. :try_end_1f4} :catchall_178
4412 - .catch Ljava/lang/IllegalArgumentException; {:try_start_180 .. :try_end_1f4} :catch_b5
4413 - .catch Ljava/io/EOFException; {:try_start_180 .. :try_end_1f4} :catch_cf
4414 - .catch Ljava/io/IOException; {:try_start_180 .. :try_end_1f4} :catch_105
4415 + :try_end_1f1
4416 + .catchall {:try_start_17d .. :try_end_1f1} :catchall_175
4417 + .catch Ljava/lang/IllegalArgumentException; {:try_start_17d .. :try_end_1f1} :catch_b5
4418 + .catch Ljava/io/EOFException; {:try_start_17d .. :try_end_1f1} :catch_cf
4419 + .catch Ljava/io/IOException; {:try_start_17d .. :try_end_1f1} :catch_105
4421 goto/16 :goto_7c
4423 - :cond_1f6
4424 - :try_start_1f6
4425 + :cond_1f3
4426 + :try_start_1f3
4427 iput-object v13, v2, Landroid/net/wifi/WifiConfiguration;->linkProperties:Landroid/net/LinkProperties;
4429 sget-object v20, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$IpAssignment:[I
4430 @@ -3502,14 +3497,14 @@
4432 aget v20, v20, v22
4434 - packed-switch v20, :pswitch_data_250
4435 + packed-switch v20, :pswitch_data_24e
4437 const-string v20, "Ignore invalid ip assignment while reading"
4439 invoke-static/range {v20 .. v20}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4441 - :goto_208
4442 - :pswitch_208
4443 + :goto_205
4444 + :pswitch_205
4445 sget-object v20, Landroid/net/wifi/WifiConfigStore$1;->$SwitchMap$android$net$wifi$WifiConfiguration$ProxySettings:[I
4447 invoke-virtual/range {v18 .. v18}, Landroid/net/wifi/WifiConfiguration$ProxySettings;->ordinal()I
4448 @@ -3518,7 +3513,7 @@
4450 aget v20, v20, v22
4452 - packed-switch v20, :pswitch_data_25a
4453 + packed-switch v20, :pswitch_data_258
4455 const-string v20, "Ignore invalid proxy settings while reading"
4457 @@ -3526,27 +3521,27 @@
4459 goto/16 :goto_5b
4461 - :catchall_21a
4462 + :catchall_217
4463 move-exception v20
4465 monitor-exit v21
4466 - :try_end_21c
4467 - .catchall {:try_start_1f6 .. :try_end_21c} :catchall_21a
4468 + :try_end_219
4469 + .catchall {:try_start_1f3 .. :try_end_219} :catchall_217
4471 - :try_start_21c
4472 + :try_start_219
4473 throw v20
4474 - :try_end_21d
4475 - .catchall {:try_start_21c .. :try_end_21d} :catchall_178
4476 - .catch Ljava/io/EOFException; {:try_start_21c .. :try_end_21d} :catch_cf
4477 - .catch Ljava/io/IOException; {:try_start_21c .. :try_end_21d} :catch_105
4478 + :try_end_21a
4479 + .catchall {:try_start_219 .. :try_end_21a} :catchall_175
4480 + .catch Ljava/io/EOFException; {:try_start_219 .. :try_end_21a} :catch_cf
4481 + .catch Ljava/io/IOException; {:try_start_219 .. :try_end_21a} :catch_105
4483 - :pswitch_21d
4484 - :try_start_21d
4485 + :pswitch_21a
4486 + :try_start_21a
4487 iput-object v10, v2, Landroid/net/wifi/WifiConfiguration;->ipAssignment:Landroid/net/wifi/WifiConfiguration$IpAssignment;
4489 - goto :goto_208
4490 + goto :goto_205
4492 - :pswitch_220
4493 + :pswitch_21d
4494 move-object/from16 v0, v18
4496 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4497 @@ -3565,63 +3560,65 @@
4499 goto/16 :goto_5b
4501 - :pswitch_234
4502 + :pswitch_231
4503 move-object/from16 v0, v18
4505 iput-object v0, v2, Landroid/net/wifi/WifiConfiguration;->proxySettings:Landroid/net/wifi/WifiConfiguration$ProxySettings;
4506 - :try_end_238
4507 - .catchall {:try_start_21d .. :try_end_238} :catchall_21a
4508 + :try_end_235
4509 + .catchall {:try_start_21a .. :try_end_235} :catchall_217
4511 goto/16 :goto_5b
4513 - :cond_23a
4514 - :try_start_23a
4515 + :cond_237
4516 + :try_start_237
4517 const-string v20, "Missing id while parsing configuration"
4519 invoke-static/range {v20 .. v20}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4520 - :try_end_23f
4521 - .catchall {:try_start_23a .. :try_end_23f} :catchall_178
4522 - .catch Ljava/io/EOFException; {:try_start_23a .. :try_end_23f} :catch_cf
4523 - .catch Ljava/io/IOException; {:try_start_23a .. :try_end_23f} :catch_105
4524 + :try_end_23c
4525 + .catchall {:try_start_237 .. :try_end_23c} :catchall_175
4526 + .catch Ljava/io/EOFException; {:try_start_237 .. :try_end_23c} :catch_cf
4527 + .catch Ljava/io/IOException; {:try_start_237 .. :try_end_23c} :catch_105
4529 goto/16 :goto_5c
4531 + :catch_23e
4532 + move-exception v21
4534 + goto/16 :goto_17c
4536 :catch_241
4537 move-exception v20
4539 goto/16 :goto_33
4541 - :catch_244
4542 - move-exception v21
4544 - goto/16 :goto_17f
4546 - :catchall_247
4547 + :catchall_244
4548 move-exception v20
4550 - goto/16 :goto_17a
4551 + goto/16 :goto_177
4553 - :catch_24a
4554 + :catch_247
4555 move-exception v4
4557 goto/16 :goto_107
4559 - :catch_24d
4560 + :catch_24a
4561 move-exception v20
4563 goto/16 :goto_d1
4565 - :pswitch_data_250
4566 + nop
4568 + :pswitch_data_24e
4569 .packed-switch 0x1
4570 - :pswitch_21d
4571 - :pswitch_21d
4572 - :pswitch_208
4573 + :pswitch_21a
4574 + :pswitch_21a
4575 + :pswitch_205
4576 .end packed-switch
4578 - :pswitch_data_25a
4579 + :pswitch_data_258
4580 .packed-switch 0x1
4581 - :pswitch_220
4582 - :pswitch_234
4583 + :pswitch_21d
4584 + :pswitch_231
4585 :pswitch_5b
4586 .end packed-switch
4587 .end method
4588 @@ -4762,8 +4759,8 @@
4590 invoke-direct {v11, v15}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
4591 :try_end_12
4592 - .catchall {:try_start_1 .. :try_end_12} :catchall_1c1
4593 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1d0
4594 + .catchall {:try_start_1 .. :try_end_12} :catchall_1bd
4595 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_12} :catch_1ce
4597 const/4 v15, 0x2
4599 @@ -4774,7 +4771,7 @@
4601 monitor-enter v16
4602 :try_end_19
4603 - .catchall {:try_start_13 .. :try_end_19} :catchall_1cd
4604 + .catchall {:try_start_13 .. :try_end_19} :catchall_1cb
4605 .catch Ljava/io/IOException; {:try_start_13 .. :try_end_19} :catch_71
4607 :try_start_19
4608 @@ -4820,7 +4817,7 @@
4610 aget v15, v15, v17
4612 - packed-switch v15, :pswitch_data_1d6
4613 + packed-switch v15, :pswitch_data_1d2
4615 const-string v15, "Ignore invalid ip assignment while writing"
4617 @@ -4840,7 +4837,7 @@
4619 aget v15, v15, v17
4621 - packed-switch v15, :pswitch_data_1e0
4622 + packed-switch v15, :pswitch_data_1dc
4624 const-string v15, "Ignore invalid proxy settings while writing"
4626 @@ -4882,7 +4879,7 @@
4627 :try_start_70
4628 throw v15
4629 :try_end_71
4630 - .catchall {:try_start_70 .. :try_end_71} :catchall_1cd
4631 + .catchall {:try_start_70 .. :try_end_71} :catchall_1cb
4632 .catch Ljava/io/IOException; {:try_start_70 .. :try_end_71} :catch_71
4634 :catch_71
4635 @@ -4896,14 +4893,14 @@
4637 invoke-static {v15}, Landroid/net/wifi/WifiConfigStore;->loge(Ljava/lang/String;)V
4638 :try_end_78
4639 - .catchall {:try_start_73 .. :try_end_78} :catchall_1c1
4640 + .catchall {:try_start_73 .. :try_end_78} :catchall_1bd
4642 if-eqz v10, :cond_7d
4644 :try_start_7a
4645 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4646 :try_end_7d
4647 - .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c8
4648 + .catch Ljava/lang/Exception; {:try_start_7a .. :try_end_7d} :catch_1c6
4650 :cond_7d
4651 :goto_7d
4652 @@ -5232,74 +5229,71 @@
4653 :try_end_1b5
4654 .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_6e
4656 - if-eqz v11, :cond_1d3
4657 + if-eqz v11, :cond_1ba
4659 :try_start_1b7
4660 invoke-virtual {v11}, Ljava/io/DataOutputStream;->close()V
4661 :try_end_1ba
4662 - .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1bd
4664 - move-object v10, v11
4666 - goto/16 :goto_7d
4668 - :catch_1bd
4669 - move-exception v15
4670 + .catch Ljava/lang/Exception; {:try_start_1b7 .. :try_end_1ba} :catch_1c9
4672 + :cond_1ba
4673 + :goto_1ba
4674 move-object v10, v11
4676 goto/16 :goto_7d
4678 - :catchall_1c1
4679 + :catchall_1bd
4680 move-exception v15
4682 - :goto_1c2
4683 - if-eqz v10, :cond_1c7
4684 + :goto_1be
4685 + if-eqz v10, :cond_1c3
4687 - :try_start_1c4
4688 + :try_start_1c0
4689 invoke-virtual {v10}, Ljava/io/DataOutputStream;->close()V
4690 - :try_end_1c7
4691 - .catch Ljava/lang/Exception; {:try_start_1c4 .. :try_end_1c7} :catch_1cb
4692 + :try_end_1c3
4693 + .catch Ljava/lang/Exception; {:try_start_1c0 .. :try_end_1c3} :catch_1c4
4695 - :cond_1c7
4696 - :goto_1c7
4697 + :cond_1c3
4698 + :goto_1c3
4699 throw v15
4701 - :catch_1c8
4702 + :catch_1c4
4703 + move-exception v16
4705 + goto :goto_1c3
4707 + :catch_1c6
4708 move-exception v15
4710 goto/16 :goto_7d
4712 - :catch_1cb
4713 - move-exception v16
4714 + :catch_1c9
4715 + move-exception v15
4717 - goto :goto_1c7
4718 + goto :goto_1ba
4720 - :catchall_1cd
4721 + :catchall_1cb
4722 move-exception v15
4724 move-object v10, v11
4726 - goto :goto_1c2
4727 + goto :goto_1be
4729 - :catch_1d0
4730 + :catch_1ce
4731 move-exception v3
4733 goto/16 :goto_73
4735 - :cond_1d3
4736 - move-object v10, v11
4738 - goto/16 :goto_7d
4739 + nop
4741 - :pswitch_data_1d6
4742 + :pswitch_data_1d2
4743 .packed-switch 0x1
4744 :pswitch_7e
4745 :pswitch_155
4746 :pswitch_46
4747 .end packed-switch
4749 - :pswitch_data_1e0
4750 + :pswitch_data_1dc
4751 .packed-switch 0x1
4752 :pswitch_166
4753 :pswitch_1a2
4754 diff -Npru stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali
4755 --- stock-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-06-14 15:24:24.384547861 -0500
4756 +++ pdroid-framework/smali/android/opengl/GLSurfaceView$GLThread.smali 2012-06-14 15:23:32.836292249 -0500
4757 @@ -161,7 +161,7 @@
4759 monitor-enter v14
4760 :try_end_26
4761 - .catchall {:try_start_21 .. :try_end_26} :catchall_160
4762 + .catchall {:try_start_21 .. :try_end_26} :catchall_15d
4764 :goto_26
4765 :try_start_26
4766 @@ -169,11 +169,11 @@
4768 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldExit:Z
4770 - if-eqz v13, :cond_3d
4771 + if-eqz v13, :cond_3a
4773 monitor-exit v14
4774 :try_end_2d
4775 - .catchall {:try_start_26 .. :try_end_2d} :catchall_15d
4776 + .catchall {:try_start_26 .. :try_end_2d} :catchall_15a
4778 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4780 @@ -187,21 +187,14 @@
4781 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4783 monitor-exit v14
4784 + :try_end_39
4785 + .catchall {:try_start_32 .. :try_end_39} :catchall_212
4787 :goto_39
4788 return-void
4790 - :catchall_3a
4791 - move-exception v13
4793 - monitor-exit v14
4794 - :try_end_3c
4795 - .catchall {:try_start_32 .. :try_end_3c} :catchall_3a
4797 - throw v13
4799 - :cond_3d
4800 - :try_start_3d
4801 + :cond_3a
4802 + :try_start_3a
4803 move-object/from16 v0, p0
4805 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEventQueue:Ljava/util/ArrayList;
4806 @@ -210,7 +203,7 @@
4808 move-result v13
4810 - if-nez v13, :cond_5c
4811 + if-nez v13, :cond_59
4813 move-object/from16 v0, p0
4815 @@ -228,24 +221,24 @@
4817 move-object v5, v0
4819 - :goto_54
4820 + :goto_51
4821 monitor-exit v14
4822 - :try_end_55
4823 - .catchall {:try_start_3d .. :try_end_55} :catchall_15d
4824 + :try_end_52
4825 + .catchall {:try_start_3a .. :try_end_52} :catchall_15a
4827 - if-eqz v5, :cond_1a9
4828 + if-eqz v5, :cond_1a6
4830 - :try_start_57
4831 + :try_start_54
4832 invoke-interface {v5}, Ljava/lang/Runnable;->run()V
4833 - :try_end_5a
4834 - .catchall {:try_start_57 .. :try_end_5a} :catchall_160
4835 + :try_end_57
4836 + .catchall {:try_start_54 .. :try_end_57} :catchall_15d
4838 const/4 v5, 0x0
4840 goto :goto_21
4842 - :cond_5c
4843 - :try_start_5c
4844 + :cond_59
4845 + :try_start_59
4846 move-object/from16 v0, p0
4848 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4849 @@ -254,7 +247,7 @@
4851 iget-boolean v15, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestPaused:Z
4853 - if-eq v13, v15, :cond_75
4854 + if-eq v13, v15, :cond_72
4856 move-object/from16 v0, p0
4858 @@ -270,12 +263,12 @@
4860 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4862 - :cond_75
4863 + :cond_72
4864 move-object/from16 v0, p0
4866 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mShouldReleaseEglContext:Z
4868 - if-eqz v13, :cond_87
4869 + if-eqz v13, :cond_84
4871 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4873 @@ -289,8 +282,8 @@
4875 const/4 v1, 0x1
4877 - :cond_87
4878 - if-eqz v8, :cond_90
4879 + :cond_84
4880 + if-eqz v8, :cond_8d
4882 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4884 @@ -298,18 +291,18 @@
4886 const/4 v8, 0x0
4888 - :cond_90
4889 + :cond_8d
4890 move-object/from16 v0, p0
4892 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4894 - if-eqz v13, :cond_c7
4895 + if-eqz v13, :cond_c4
4897 move-object/from16 v0, p0
4899 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mPaused:Z
4901 - if-eqz v13, :cond_c7
4902 + if-eqz v13, :cond_c4
4904 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4906 @@ -322,7 +315,7 @@
4908 move-result v13
4910 - if-eqz v13, :cond_b3
4911 + if-eqz v13, :cond_b0
4913 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4915 @@ -332,12 +325,12 @@
4917 move-result v13
4919 - if-eqz v13, :cond_b6
4920 + if-eqz v13, :cond_b3
4922 - :cond_b3
4923 + :cond_b0
4924 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
4926 - :cond_b6
4927 + :cond_b3
4928 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
4930 move-result-object v13
4931 @@ -346,7 +339,7 @@
4933 move-result v13
4935 - if-eqz v13, :cond_c7
4936 + if-eqz v13, :cond_c4
4938 move-object/from16 v0, p0
4940 @@ -354,28 +347,28 @@
4942 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->finish()V
4944 - :cond_c7
4945 + :cond_c4
4946 move-object/from16 v0, p0
4948 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4950 - if-nez v13, :cond_e8
4951 + if-nez v13, :cond_e5
4953 move-object/from16 v0, p0
4955 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4957 - if-nez v13, :cond_e8
4958 + if-nez v13, :cond_e5
4960 move-object/from16 v0, p0
4962 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
4964 - if-eqz v13, :cond_dc
4965 + if-eqz v13, :cond_d9
4967 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
4969 - :cond_dc
4970 + :cond_d9
4971 const/4 v13, 0x1
4973 move-object/from16 v0, p0
4974 @@ -388,18 +381,18 @@
4976 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
4978 - :cond_e8
4979 + :cond_e5
4980 move-object/from16 v0, p0
4982 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHasSurface:Z
4984 - if-eqz v13, :cond_100
4985 + if-eqz v13, :cond_fd
4987 move-object/from16 v0, p0
4989 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mWaitingForSurface:Z
4991 - if-eqz v13, :cond_100
4992 + if-eqz v13, :cond_fd
4994 const/4 v13, 0x0
4996 @@ -413,8 +406,8 @@
4998 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
5000 - :cond_100
5001 - if-eqz v4, :cond_110
5002 + :cond_fd
5003 + if-eqz v4, :cond_10d
5005 const/4 v12, 0x0
5007 @@ -432,36 +425,36 @@
5009 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
5011 - :cond_110
5012 + :cond_10d
5013 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->readyToDraw()Z
5015 move-result v13
5017 - if-eqz v13, :cond_1a0
5018 + if-eqz v13, :cond_19d
5020 move-object/from16 v0, p0
5022 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
5024 - if-nez v13, :cond_11f
5025 + if-nez v13, :cond_11c
5027 - if-eqz v1, :cond_16e
5028 + if-eqz v1, :cond_16b
5030 const/4 v1, 0x0
5032 - :cond_11f
5033 - :goto_11f
5034 + :cond_11c
5035 + :goto_11c
5036 move-object/from16 v0, p0
5038 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
5040 - if-eqz v13, :cond_132
5041 + if-eqz v13, :cond_12f
5043 move-object/from16 v0, p0
5045 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
5047 - if-nez v13, :cond_132
5048 + if-nez v13, :cond_12f
5050 const/4 v13, 0x1
5052 @@ -473,12 +466,12 @@
5054 const/4 v9, 0x1
5056 - :cond_132
5057 + :cond_12f
5058 move-object/from16 v0, p0
5060 iget-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglSurface:Z
5062 - if-eqz v13, :cond_1a0
5063 + if-eqz v13, :cond_19d
5065 move-object/from16 v0, p0
5067 @@ -489,7 +482,7 @@
5069 move-result v13
5071 - if-eqz v13, :cond_19a
5072 + if-eqz v13, :cond_197
5074 const/4 v9, 0x1
5076 @@ -512,28 +505,28 @@
5077 #setter for: Landroid/opengl/GLSurfaceView;->mSizeChanged:Z
5078 invoke-static {v13, v15}, Landroid/opengl/GLSurfaceView;->access$1002(Landroid/opengl/GLSurfaceView;Z)Z
5080 - :goto_154
5081 + :goto_151
5082 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5084 move-result-object v13
5086 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
5088 - goto/16 :goto_54
5089 + goto/16 :goto_51
5091 - :catchall_15d
5092 + :catchall_15a
5093 move-exception v13
5095 monitor-exit v14
5096 - :try_end_15f
5097 - .catchall {:try_start_5c .. :try_end_15f} :catchall_15d
5098 + :try_end_15c
5099 + .catchall {:try_start_59 .. :try_end_15c} :catchall_15a
5101 - :try_start_15f
5102 + :try_start_15c
5103 throw v13
5104 - :try_end_160
5105 - .catchall {:try_start_15f .. :try_end_160} :catchall_160
5106 + :try_end_15d
5107 + .catchall {:try_start_15c .. :try_end_15d} :catchall_15d
5109 - :catchall_160
5110 + :catchall_15d
5111 move-exception v13
5113 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5114 @@ -542,19 +535,19 @@
5116 monitor-enter v14
5118 - :try_start_166
5119 + :try_start_163
5120 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
5122 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
5124 monitor-exit v14
5125 - :try_end_16d
5126 - .catchall {:try_start_166 .. :try_end_16d} :catchall_212
5127 + :try_end_16a
5128 + .catchall {:try_start_163 .. :try_end_16a} :catchall_20f
5130 throw v13
5132 - :cond_16e
5133 - :try_start_16e
5134 + :cond_16b
5135 + :try_start_16b
5136 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5138 move-result-object v13
5139 @@ -562,26 +555,26 @@
5140 move-object/from16 v0, p0
5142 invoke-virtual {v13, v0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->tryAcquireEglContextLocked(Landroid/opengl/GLSurfaceView$GLThread;)Z
5143 - :try_end_177
5144 - .catchall {:try_start_16e .. :try_end_177} :catchall_15d
5145 + :try_end_174
5146 + .catchall {:try_start_16b .. :try_end_174} :catchall_15a
5148 move-result v13
5150 - if-eqz v13, :cond_11f
5151 + if-eqz v13, :cond_11c
5153 - :try_start_17a
5154 + :try_start_177
5155 move-object/from16 v0, p0
5157 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
5159 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->start()V
5160 - :try_end_181
5161 - .catchall {:try_start_17a .. :try_end_181} :catchall_15d
5162 - .catch Ljava/lang/RuntimeException; {:try_start_17a .. :try_end_181} :catch_18f
5163 + :try_end_17e
5164 + .catchall {:try_start_177 .. :try_end_17e} :catchall_15a
5165 + .catch Ljava/lang/RuntimeException; {:try_start_177 .. :try_end_17e} :catch_18c
5167 const/4 v13, 0x1
5169 - :try_start_182
5170 + :try_start_17f
5171 move-object/from16 v0, p0
5173 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mHaveEglContext:Z
5174 @@ -594,9 +587,9 @@
5176 invoke-virtual {v13}, Ljava/lang/Object;->notifyAll()V
5178 - goto :goto_11f
5179 + goto :goto_11c
5181 - :catch_18f
5182 + :catch_18c
5183 move-exception v10
5185 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5186 @@ -609,30 +602,30 @@
5188 throw v10
5190 - :cond_19a
5191 + :cond_197
5192 const/4 v13, 0x0
5194 move-object/from16 v0, p0
5196 iput-boolean v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRequestRender:Z
5198 - goto :goto_154
5199 + goto :goto_151
5201 - :cond_1a0
5202 + :cond_19d
5203 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5205 move-result-object v13
5207 invoke-virtual {v13}, Ljava/lang/Object;->wait()V
5208 - :try_end_1a7
5209 - .catchall {:try_start_182 .. :try_end_1a7} :catchall_15d
5210 + :try_end_1a4
5211 + .catchall {:try_start_17f .. :try_end_1a4} :catchall_15a
5213 goto/16 :goto_26
5215 - :cond_1a9
5216 - if-eqz v3, :cond_1da
5217 + :cond_1a6
5218 + if-eqz v3, :cond_1d7
5220 - :try_start_1ab
5221 + :try_start_1a8
5222 move-object/from16 v0, p0
5224 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
5225 @@ -654,10 +647,10 @@
5226 check-cast v0, Ljavax/microedition/khronos/opengles/GL10;
5228 move-object v6, v0
5229 - :try_end_1bf
5230 - .catchall {:try_start_1ab .. :try_end_1bf} :catchall_160
5231 + :try_end_1bc
5232 + .catchall {:try_start_1a8 .. :try_end_1bc} :catchall_15d
5234 - if-nez v6, :cond_1d2
5235 + if-nez v6, :cond_1cf
5237 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5239 @@ -665,7 +658,7 @@
5241 monitor-enter v14
5243 - :try_start_1c6
5244 + :try_start_1c3
5245 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglSurfaceLocked()V
5247 invoke-direct/range {p0 .. p0}, Landroid/opengl/GLSurfaceView$GLThread;->stopEglContextLocked()V
5248 @@ -674,17 +667,17 @@
5250 goto/16 :goto_39
5252 - :catchall_1cf
5253 + :catchall_1cc
5254 move-exception v13
5256 monitor-exit v14
5257 - :try_end_1d1
5258 - .catchall {:try_start_1c6 .. :try_end_1d1} :catchall_1cf
5259 + :try_end_1ce
5260 + .catchall {:try_start_1c3 .. :try_end_1ce} :catchall_1cc
5262 throw v13
5264 - :cond_1d2
5265 - :try_start_1d2
5266 + :cond_1cf
5267 + :try_start_1cf
5268 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5270 move-result-object v13
5271 @@ -693,8 +686,8 @@
5273 const/4 v3, 0x0
5275 - :cond_1da
5276 - if-eqz v2, :cond_1ea
5277 + :cond_1d7
5278 + if-eqz v2, :cond_1e7
5280 move-object/from16 v0, p0
5282 @@ -710,8 +703,8 @@
5284 const/4 v2, 0x0
5286 - :cond_1ea
5287 - if-eqz v9, :cond_1fb
5288 + :cond_1e7
5289 + if-eqz v9, :cond_1f8
5291 move-object/from16 v0, p0
5293 @@ -727,7 +720,7 @@
5295 const/4 v9, 0x0
5297 - :cond_1fb
5298 + :cond_1f8
5299 move-object/from16 v0, p0
5301 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mRenderer:Landroid/opengl/GLSurfaceView$Renderer;
5302 @@ -739,22 +732,32 @@
5303 iget-object v13, v0, Landroid/opengl/GLSurfaceView$GLThread;->mEglHelper:Landroid/opengl/GLSurfaceView$EglHelper;
5305 invoke-virtual {v13}, Landroid/opengl/GLSurfaceView$EglHelper;->swap()Z
5306 - :try_end_209
5307 - .catchall {:try_start_1d2 .. :try_end_209} :catchall_160
5308 + :try_end_206
5309 + .catchall {:try_start_1cf .. :try_end_206} :catchall_15d
5311 move-result v13
5313 - if-nez v13, :cond_20d
5314 + if-nez v13, :cond_20a
5316 const/4 v8, 0x1
5318 - :cond_20d
5319 + :cond_20a
5320 if-eqz v12, :cond_21
5322 const/4 v4, 0x1
5324 goto/16 :goto_21
5326 + :catchall_20f
5327 + move-exception v13
5329 + :try_start_210
5330 + monitor-exit v14
5331 + :try_end_211
5332 + .catchall {:try_start_210 .. :try_end_211} :catchall_20f
5334 + throw v13
5336 :catchall_212
5337 move-exception v13
5339 @@ -1371,39 +1374,37 @@
5340 :try_start_1a
5341 invoke-direct {p0}, Landroid/opengl/GLSurfaceView$GLThread;->guardedRun()V
5342 :try_end_1d
5343 - .catchall {:try_start_1a .. :try_end_1d} :catchall_2e
5344 - .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_25
5345 + .catchall {:try_start_1a .. :try_end_1d} :catchall_25
5346 + .catch Ljava/lang/InterruptedException; {:try_start_1a .. :try_end_1d} :catch_2e
5348 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5350 move-result-object v0
5352 + :goto_21
5353 invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5355 - :goto_24
5356 return-void
5358 - :catch_25
5359 + :catchall_25
5360 move-exception v0
5362 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5364 - move-result-object v0
5365 + move-result-object v1
5367 - invoke-virtual {v0, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5368 + invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5370 - goto :goto_24
5371 + throw v0
5373 - :catchall_2e
5374 + :catch_2e
5375 move-exception v0
5377 invoke-static {}, Landroid/opengl/GLSurfaceView;->access$800()Landroid/opengl/GLSurfaceView$GLThreadManager;
5379 - move-result-object v1
5381 - invoke-virtual {v1, p0}, Landroid/opengl/GLSurfaceView$GLThreadManager;->threadExiting(Landroid/opengl/GLSurfaceView$GLThread;)V
5382 + move-result-object v0
5384 - throw v0
5385 + goto :goto_21
5386 .end method
5388 .method public setRenderMode(I)V
5389 diff -Npru stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali
5390 --- stock-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-06-14 15:24:24.624549051 -0500
5391 +++ pdroid-framework/smali/android/os/StrictMode$AndroidBlockGuardPolicy.smali 2012-06-14 15:23:32.944292780 -0500
5392 @@ -582,14 +582,14 @@
5394 invoke-interface {v0, v1, v2, v3}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5395 :try_end_1fb
5396 - .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21d
5397 + .catchall {:try_start_1e5 .. :try_end_1fb} :catchall_21a
5398 .catch Landroid/os/RemoteException; {:try_start_1e5 .. :try_end_1fb} :catch_20d
5400 + :goto_1fb
5401 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5402 invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5404 :cond_1fe
5405 - :goto_1fe
5406 move-object/from16 v0, p1
5408 iget v0, v0, Landroid/os/StrictMode$ViolationInfo;->policy:I
5409 @@ -619,14 +619,11 @@
5411 invoke-static {v0, v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5412 :try_end_219
5413 - .catchall {:try_start_20e .. :try_end_219} :catchall_21d
5414 + .catchall {:try_start_20e .. :try_end_219} :catchall_21a
5416 - #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5417 - invoke-static {v13}, Landroid/os/StrictMode;->access$1200(I)V
5419 - goto :goto_1fe
5420 + goto :goto_1fb
5422 - :catchall_21d
5423 + :catchall_21a
5424 move-exception v19
5426 #calls: Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5427 diff -Npru stock-framework/smali/android/os/StrictMode.smali pdroid-framework/smali/android/os/StrictMode.smali
5428 --- stock-framework/smali/android/os/StrictMode.smali 2012-06-14 15:24:24.644549149 -0500
5429 +++ pdroid-framework/smali/android/os/StrictMode.smali 2012-06-14 15:23:32.956292850 -0500
5430 @@ -1686,13 +1686,13 @@
5432 invoke-interface {v0, v1, v2, v5}, Landroid/app/IActivityManager;->handleApplicationStrictModeViolation(Landroid/os/IBinder;ILandroid/os/StrictMode$ViolationInfo;)V
5433 :try_end_d3
5434 - .catchall {:try_start_bf .. :try_end_d3} :catchall_fc
5435 + .catchall {:try_start_bf .. :try_end_d3} :catchall_f9
5436 .catch Landroid/os/RemoteException; {:try_start_bf .. :try_end_d3} :catch_ec
5438 + :goto_d3
5439 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5441 :cond_d6
5442 - :goto_d6
5443 if-eqz v10, :cond_a4
5445 sget-object v17, Ljava/lang/System;->err:Ljava/io/PrintStream;
5446 @@ -1727,13 +1727,11 @@
5448 invoke-static {v0, v1, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
5449 :try_end_f8
5450 - .catchall {:try_start_ed .. :try_end_f8} :catchall_fc
5451 + .catchall {:try_start_ed .. :try_end_f8} :catchall_f9
5453 - invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5455 - goto :goto_d6
5456 + goto :goto_d3
5458 - :catchall_fc
5459 + :catchall_f9
5460 move-exception v17
5462 invoke-static {v13}, Landroid/os/StrictMode;->setThreadPolicyMask(I)V
5463 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali
5464 --- stock-framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
5465 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-06-14 15:23:33.024293175 -0500
5466 @@ -0,0 +1,104 @@
5467 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
5468 +.super Ljava/lang/Object;
5469 +.source "IPrivacySettingsManager.java"
5471 +# interfaces
5472 +.implements Landroid/os/IInterface;
5475 +# annotations
5476 +.annotation system Ldalvik/annotation/MemberClasses;
5477 + value = {
5478 + Landroid/privacy/IPrivacySettingsManager$Stub;
5480 +.end annotation
5483 +# virtual methods
5484 +.method public abstract addObserver(Ljava/lang/String;)V
5485 + .annotation system Ldalvik/annotation/Throws;
5486 + value = {
5487 + Landroid/os/RemoteException;
5489 + .end annotation
5490 +.end method
5492 +.method public abstract deleteSettings(Ljava/lang/String;)Z
5493 + .annotation system Ldalvik/annotation/Throws;
5494 + value = {
5495 + Landroid/os/RemoteException;
5497 + .end annotation
5498 +.end method
5500 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5501 + .annotation system Ldalvik/annotation/Throws;
5502 + value = {
5503 + Landroid/os/RemoteException;
5505 + .end annotation
5506 +.end method
5508 +.method public abstract getVersion()D
5509 + .annotation system Ldalvik/annotation/Throws;
5510 + value = {
5511 + Landroid/os/RemoteException;
5513 + .end annotation
5514 +.end method
5516 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5517 + .annotation system Ldalvik/annotation/Throws;
5518 + value = {
5519 + Landroid/os/RemoteException;
5521 + .end annotation
5522 +.end method
5524 +.method public abstract purgeSettings()Z
5525 + .annotation system Ldalvik/annotation/Throws;
5526 + value = {
5527 + Landroid/os/RemoteException;
5529 + .end annotation
5530 +.end method
5532 +.method public abstract registerObservers()V
5533 + .annotation system Ldalvik/annotation/Throws;
5534 + value = {
5535 + Landroid/os/RemoteException;
5537 + .end annotation
5538 +.end method
5540 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
5541 + .annotation system Ldalvik/annotation/Throws;
5542 + value = {
5543 + Landroid/os/RemoteException;
5545 + .end annotation
5546 +.end method
5548 +.method public abstract setBootCompleted()V
5549 + .annotation system Ldalvik/annotation/Throws;
5550 + value = {
5551 + Landroid/os/RemoteException;
5553 + .end annotation
5554 +.end method
5556 +.method public abstract setEnabled(Z)Z
5557 + .annotation system Ldalvik/annotation/Throws;
5558 + value = {
5559 + Landroid/os/RemoteException;
5561 + .end annotation
5562 +.end method
5564 +.method public abstract setNotificationsEnabled(Z)Z
5565 + .annotation system Ldalvik/annotation/Throws;
5566 + value = {
5567 + Landroid/os/RemoteException;
5569 + .end annotation
5570 +.end method
5571 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
5572 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 18:00:00.000000000 -0600
5573 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-06-14 15:23:33.024293175 -0500
5574 @@ -0,0 +1,743 @@
5575 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
5576 +.super Ljava/lang/Object;
5577 +.source "IPrivacySettingsManager.java"
5579 +# interfaces
5580 +.implements Landroid/privacy/IPrivacySettingsManager;
5583 +# annotations
5584 +.annotation system Ldalvik/annotation/EnclosingClass;
5585 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
5586 +.end annotation
5588 +.annotation system Ldalvik/annotation/InnerClass;
5589 + accessFlags = 0xa
5590 + name = "Proxy"
5591 +.end annotation
5594 +# instance fields
5595 +.field private mRemote:Landroid/os/IBinder;
5598 +# direct methods
5599 +.method constructor <init>(Landroid/os/IBinder;)V
5600 + .registers 2
5602 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5604 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5606 + return-void
5607 +.end method
5610 +# virtual methods
5611 +.method public addObserver(Ljava/lang/String;)V
5612 + .registers 7
5613 + .annotation system Ldalvik/annotation/Throws;
5614 + value = {
5615 + Landroid/os/RemoteException;
5617 + .end annotation
5619 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5621 + move-result-object v0
5623 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5625 + move-result-object v1
5627 + :try_start_8
5628 + const-string v2, "android.privacy.IPrivacySettingsManager"
5630 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5632 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5634 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5636 + const/4 v3, 0x6
5638 + const/4 v4, 0x0
5640 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5642 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5643 + :try_end_1a
5644 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
5646 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5648 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5650 + return-void
5652 + :catchall_21
5653 + move-exception v2
5655 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5657 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5659 + throw v2
5660 +.end method
5662 +.method public asBinder()Landroid/os/IBinder;
5663 + .registers 2
5665 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5667 + return-object v0
5668 +.end method
5670 +.method public deleteSettings(Ljava/lang/String;)Z
5671 + .registers 8
5672 + .annotation system Ldalvik/annotation/Throws;
5673 + value = {
5674 + Landroid/os/RemoteException;
5676 + .end annotation
5678 + const/4 v2, 0x0
5680 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5682 + move-result-object v0
5684 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5686 + move-result-object v1
5688 + :try_start_9
5689 + const-string v3, "android.privacy.IPrivacySettingsManager"
5691 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5693 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5695 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5697 + const/4 v4, 0x3
5699 + const/4 v5, 0x0
5701 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5703 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5705 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5706 + :try_end_1e
5707 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
5709 + move-result v3
5711 + if-eqz v3, :cond_22
5713 + const/4 v2, 0x1
5715 + :cond_22
5716 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5718 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5720 + return v2
5722 + :catchall_29
5723 + move-exception v3
5725 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5727 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5729 + throw v3
5730 +.end method
5732 +.method public getInterfaceDescriptor()Ljava/lang/String;
5733 + .registers 2
5735 + const-string v0, "android.privacy.IPrivacySettingsManager"
5737 + return-object v0
5738 +.end method
5740 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
5741 + .registers 8
5742 + .annotation system Ldalvik/annotation/Throws;
5743 + value = {
5744 + Landroid/os/RemoteException;
5746 + .end annotation
5748 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5750 + move-result-object v0
5752 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5754 + move-result-object v1
5756 + :try_start_8
5757 + const-string v3, "android.privacy.IPrivacySettingsManager"
5759 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5761 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5763 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5765 + const/4 v4, 0x1
5767 + const/4 v5, 0x0
5769 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5771 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5773 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5775 + move-result v3
5777 + if-eqz v3, :cond_2f
5779 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
5781 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
5783 + move-result-object v2
5785 + check-cast v2, Landroid/privacy/PrivacySettings;
5786 + :try_end_28
5787 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
5789 + :goto_28
5790 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5792 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5794 + return-object v2
5796 + :cond_2f
5797 + const/4 v2, 0x0
5799 + goto :goto_28
5801 + :catchall_31
5802 + move-exception v3
5804 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5806 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5808 + throw v3
5809 +.end method
5811 +.method public getVersion()D
5812 + .registers 8
5813 + .annotation system Ldalvik/annotation/Throws;
5814 + value = {
5815 + Landroid/os/RemoteException;
5817 + .end annotation
5819 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5821 + move-result-object v0
5823 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5825 + move-result-object v1
5827 + :try_start_8
5828 + const-string v4, "android.privacy.IPrivacySettingsManager"
5830 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5832 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5834 + const/16 v5, 0x8
5836 + const/4 v6, 0x0
5838 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5840 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5842 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
5843 + :try_end_1b
5844 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
5846 + move-result-wide v2
5848 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5850 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5852 + return-wide v2
5854 + :catchall_23
5855 + move-exception v4
5857 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5859 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5861 + throw v4
5862 +.end method
5864 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
5865 + .registers 10
5866 + .annotation system Ldalvik/annotation/Throws;
5867 + value = {
5868 + Landroid/os/RemoteException;
5870 + .end annotation
5872 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5874 + move-result-object v0
5876 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5878 + move-result-object v1
5880 + :try_start_8
5881 + const-string v2, "android.privacy.IPrivacySettingsManager"
5883 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5885 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5887 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
5889 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5891 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
5893 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5895 + const/4 v3, 0x4
5897 + const/4 v4, 0x0
5899 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5901 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5902 + :try_end_23
5903 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
5905 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5907 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5909 + return-void
5911 + :catchall_2a
5912 + move-exception v2
5914 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5916 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5918 + throw v2
5919 +.end method
5921 +.method public purgeSettings()Z
5922 + .registers 7
5923 + .annotation system Ldalvik/annotation/Throws;
5924 + value = {
5925 + Landroid/os/RemoteException;
5927 + .end annotation
5929 + const/4 v2, 0x0
5931 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5933 + move-result-object v0
5935 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5937 + move-result-object v1
5939 + :try_start_9
5940 + const-string v3, "android.privacy.IPrivacySettingsManager"
5942 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
5944 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
5946 + const/4 v4, 0x7
5948 + const/4 v5, 0x0
5950 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
5952 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
5954 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
5955 + :try_end_1b
5956 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
5958 + move-result v3
5960 + if-eqz v3, :cond_1f
5962 + const/4 v2, 0x1
5964 + :cond_1f
5965 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5967 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5969 + return v2
5971 + :catchall_26
5972 + move-exception v3
5974 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
5976 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
5978 + throw v3
5979 +.end method
5981 +.method public registerObservers()V
5982 + .registers 6
5983 + .annotation system Ldalvik/annotation/Throws;
5984 + value = {
5985 + Landroid/os/RemoteException;
5987 + .end annotation
5989 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5991 + move-result-object v0
5993 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
5995 + move-result-object v1
5997 + :try_start_8
5998 + const-string v2, "android.privacy.IPrivacySettingsManager"
6000 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
6002 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
6004 + const/4 v3, 0x5
6006 + const/4 v4, 0x0
6008 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6010 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
6011 + :try_end_17
6012 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
6014 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6016 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6018 + return-void
6020 + :catchall_1e
6021 + move-exception v2
6023 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6025 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6027 + throw v2
6028 +.end method
6030 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
6031 + .registers 9
6032 + .annotation system Ldalvik/annotation/Throws;
6033 + value = {
6034 + Landroid/os/RemoteException;
6036 + .end annotation
6038 + const/4 v2, 0x1
6040 + const/4 v3, 0x0
6042 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6044 + move-result-object v0
6046 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6048 + move-result-object v1
6050 + :try_start_a
6051 + const-string v4, "android.privacy.IPrivacySettingsManager"
6053 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
6055 + if-eqz p1, :cond_30
6057 + const/4 v4, 0x1
6059 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
6061 + const/4 v4, 0x0
6063 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6065 + :goto_19
6066 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
6068 + const/4 v5, 0x2
6070 + const/4 v6, 0x0
6072 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6074 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
6076 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
6077 + :try_end_26
6078 + .catchall {:try_start_a .. :try_end_26} :catchall_35
6080 + move-result v4
6082 + if-eqz v4, :cond_3d
6084 + :goto_29
6085 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6087 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6089 + return v2
6091 + :cond_30
6092 + const/4 v4, 0x0
6094 + :try_start_31
6095 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
6096 + :try_end_34
6097 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
6099 + goto :goto_19
6101 + :catchall_35
6102 + move-exception v3
6104 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6106 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6108 + throw v3
6110 + :cond_3d
6111 + move v2, v3
6113 + goto :goto_29
6114 +.end method
6116 +.method public setBootCompleted()V
6117 + .registers 6
6118 + .annotation system Ldalvik/annotation/Throws;
6119 + value = {
6120 + Landroid/os/RemoteException;
6122 + .end annotation
6124 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6126 + move-result-object v0
6128 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6130 + move-result-object v1
6132 + :try_start_8
6133 + const-string v2, "android.privacy.IPrivacySettingsManager"
6135 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
6137 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
6139 + const/16 v3, 0xb
6141 + const/4 v4, 0x0
6143 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6145 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
6146 + :try_end_18
6147 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
6149 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6151 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6153 + return-void
6155 + :catchall_1f
6156 + move-exception v2
6158 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6160 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6162 + throw v2
6163 +.end method
6165 +.method public setEnabled(Z)Z
6166 + .registers 9
6167 + .annotation system Ldalvik/annotation/Throws;
6168 + value = {
6169 + Landroid/os/RemoteException;
6171 + .end annotation
6173 + const/4 v2, 0x1
6175 + const/4 v3, 0x0
6177 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6179 + move-result-object v0
6181 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6183 + move-result-object v1
6185 + :try_start_a
6186 + const-string v4, "android.privacy.IPrivacySettingsManager"
6188 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
6190 + if-eqz p1, :cond_2d
6192 + move v4, v2
6194 + :goto_12
6195 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
6197 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
6199 + const/16 v5, 0x9
6201 + const/4 v6, 0x0
6203 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6205 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
6207 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
6208 + :try_end_23
6209 + .catchall {:try_start_a .. :try_end_23} :catchall_31
6211 + move-result v4
6213 + if-eqz v4, :cond_2f
6215 + :goto_26
6216 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6218 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6220 + return v2
6222 + :cond_2d
6223 + move v4, v3
6225 + goto :goto_12
6227 + :cond_2f
6228 + move v2, v3
6230 + goto :goto_26
6232 + :catchall_31
6233 + move-exception v3
6235 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6237 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6239 + throw v3
6240 +.end method
6242 +.method public setNotificationsEnabled(Z)Z
6243 + .registers 9
6244 + .annotation system Ldalvik/annotation/Throws;
6245 + value = {
6246 + Landroid/os/RemoteException;
6248 + .end annotation
6250 + const/4 v2, 0x1
6252 + const/4 v3, 0x0
6254 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6256 + move-result-object v0
6258 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
6260 + move-result-object v1
6262 + :try_start_a
6263 + const-string v4, "android.privacy.IPrivacySettingsManager"
6265 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
6267 + if-eqz p1, :cond_2d
6269 + move v4, v2
6271 + :goto_12
6272 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
6274 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
6276 + const/16 v5, 0xa
6278 + const/4 v6, 0x0
6280 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6282 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
6284 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
6285 + :try_end_23
6286 + .catchall {:try_start_a .. :try_end_23} :catchall_31
6288 + move-result v4
6290 + if-eqz v4, :cond_2f
6292 + :goto_26
6293 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6295 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6297 + return v2
6299 + :cond_2d
6300 + move v4, v3
6302 + goto :goto_12
6304 + :cond_2f
6305 + move v2, v3
6307 + goto :goto_26
6309 + :catchall_31
6310 + move-exception v3
6312 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
6314 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
6316 + throw v3
6317 +.end method
6318 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
6319 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 18:00:00.000000000 -0600
6320 +++ pdroid-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-06-14 15:23:33.024293175 -0500
6321 @@ -0,0 +1,412 @@
6322 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
6323 +.super Landroid/os/Binder;
6324 +.source "IPrivacySettingsManager.java"
6326 +# interfaces
6327 +.implements Landroid/privacy/IPrivacySettingsManager;
6330 +# annotations
6331 +.annotation system Ldalvik/annotation/EnclosingClass;
6332 + value = Landroid/privacy/IPrivacySettingsManager;
6333 +.end annotation
6335 +.annotation system Ldalvik/annotation/InnerClass;
6336 + accessFlags = 0x409
6337 + name = "Stub"
6338 +.end annotation
6340 +.annotation system Ldalvik/annotation/MemberClasses;
6341 + value = {
6342 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6344 +.end annotation
6347 +# static fields
6348 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
6350 +.field static final TRANSACTION_addObserver:I = 0x6
6352 +.field static final TRANSACTION_deleteSettings:I = 0x3
6354 +.field static final TRANSACTION_getSettings:I = 0x1
6356 +.field static final TRANSACTION_getVersion:I = 0x8
6358 +.field static final TRANSACTION_notification:I = 0x4
6360 +.field static final TRANSACTION_purgeSettings:I = 0x7
6362 +.field static final TRANSACTION_registerObservers:I = 0x5
6364 +.field static final TRANSACTION_saveSettings:I = 0x2
6366 +.field static final TRANSACTION_setBootCompleted:I = 0xb
6368 +.field static final TRANSACTION_setEnabled:I = 0x9
6370 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
6373 +# direct methods
6374 +.method public constructor <init>()V
6375 + .registers 2
6377 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
6379 + const-string v0, "android.privacy.IPrivacySettingsManager"
6381 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
6383 + return-void
6384 +.end method
6386 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
6387 + .registers 3
6389 + if-nez p0, :cond_4
6391 + const/4 v0, 0x0
6393 + :goto_3
6394 + return-object v0
6396 + :cond_4
6397 + const-string v1, "android.privacy.IPrivacySettingsManager"
6399 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
6401 + move-result-object v0
6403 + if-eqz v0, :cond_13
6405 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
6407 + if-eqz v1, :cond_13
6409 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
6411 + goto :goto_3
6413 + :cond_13
6414 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
6416 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
6418 + goto :goto_3
6419 +.end method
6422 +# virtual methods
6423 +.method public asBinder()Landroid/os/IBinder;
6424 + .registers 1
6426 + return-object p0
6427 +.end method
6429 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6430 + .registers 14
6431 + .annotation system Ldalvik/annotation/Throws;
6432 + value = {
6433 + Landroid/os/RemoteException;
6435 + .end annotation
6437 + const/4 v6, 0x0
6439 + const/4 v7, 0x1
6441 + sparse-switch p1, :sswitch_data_10e
6443 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
6445 + move-result v7
6447 + :goto_9
6448 + return v7
6450 + :sswitch_a
6451 + const-string v6, "android.privacy.IPrivacySettingsManager"
6453 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
6455 + goto :goto_9
6457 + :sswitch_10
6458 + const-string v8, "android.privacy.IPrivacySettingsManager"
6460 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6462 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6464 + move-result-object v0
6466 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6468 + move-result-object v4
6470 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6472 + if-eqz v4, :cond_29
6474 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
6476 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
6478 + goto :goto_9
6480 + :cond_29
6481 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6483 + goto :goto_9
6485 + :sswitch_2d
6486 + const-string v8, "android.privacy.IPrivacySettingsManager"
6488 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6490 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6492 + move-result v8
6494 + if-eqz v8, :cond_4e
6496 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
6498 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
6500 + move-result-object v0
6502 + check-cast v0, Landroid/privacy/PrivacySettings;
6504 + :goto_40
6505 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
6507 + move-result v4
6509 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6511 + if-eqz v4, :cond_4a
6513 + move v6, v7
6515 + :cond_4a
6516 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6518 + goto :goto_9
6520 + :cond_4e
6521 + const/4 v0, 0x0
6523 + goto :goto_40
6525 + :sswitch_50
6526 + const-string v8, "android.privacy.IPrivacySettingsManager"
6528 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6530 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6532 + move-result-object v0
6534 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
6536 + move-result v4
6538 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6540 + if-eqz v4, :cond_63
6542 + move v6, v7
6544 + :cond_63
6545 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6547 + goto :goto_9
6549 + :sswitch_67
6550 + const-string v6, "android.privacy.IPrivacySettingsManager"
6552 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6554 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6556 + move-result-object v0
6558 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
6560 + move-result v1
6562 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6564 + move-result-object v2
6566 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6568 + move-result-object v3
6570 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6572 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6574 + goto :goto_9
6576 + :sswitch_83
6577 + const-string v6, "android.privacy.IPrivacySettingsManager"
6579 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6581 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
6583 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6585 + goto/16 :goto_9
6587 + :sswitch_90
6588 + const-string v6, "android.privacy.IPrivacySettingsManager"
6590 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6592 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
6594 + move-result-object v0
6596 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
6598 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6600 + goto/16 :goto_9
6602 + :sswitch_a1
6603 + const-string v8, "android.privacy.IPrivacySettingsManager"
6605 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6607 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
6609 + move-result v4
6611 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6613 + if-eqz v4, :cond_b0
6615 + move v6, v7
6617 + :cond_b0
6618 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6620 + goto/16 :goto_9
6622 + :sswitch_b5
6623 + const-string v6, "android.privacy.IPrivacySettingsManager"
6625 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6627 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
6629 + move-result-wide v4
6631 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6633 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
6635 + goto/16 :goto_9
6637 + :sswitch_c6
6638 + const-string v8, "android.privacy.IPrivacySettingsManager"
6640 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6642 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6644 + move-result v8
6646 + if-eqz v8, :cond_e1
6648 + move v0, v7
6650 + :goto_d2
6651 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
6653 + move-result v4
6655 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6657 + if-eqz v4, :cond_dc
6659 + move v6, v7
6661 + :cond_dc
6662 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6664 + goto/16 :goto_9
6666 + :cond_e1
6667 + move v0, v6
6669 + goto :goto_d2
6671 + :sswitch_e3
6672 + const-string v8, "android.privacy.IPrivacySettingsManager"
6674 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6676 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
6678 + move-result v8
6680 + if-eqz v8, :cond_fe
6682 + move v0, v7
6684 + :goto_ef
6685 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
6687 + move-result v4
6689 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6691 + if-eqz v4, :cond_f9
6693 + move v6, v7
6695 + :cond_f9
6696 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
6698 + goto/16 :goto_9
6700 + :cond_fe
6701 + move v0, v6
6703 + goto :goto_ef
6705 + :sswitch_100
6706 + const-string v6, "android.privacy.IPrivacySettingsManager"
6708 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
6710 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
6712 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
6714 + goto/16 :goto_9
6716 + nop
6718 + :sswitch_data_10e
6719 + .sparse-switch
6720 + 0x1 -> :sswitch_10
6721 + 0x2 -> :sswitch_2d
6722 + 0x3 -> :sswitch_50
6723 + 0x4 -> :sswitch_67
6724 + 0x5 -> :sswitch_83
6725 + 0x6 -> :sswitch_90
6726 + 0x7 -> :sswitch_a1
6727 + 0x8 -> :sswitch_b5
6728 + 0x9 -> :sswitch_c6
6729 + 0xa -> :sswitch_e3
6730 + 0xb -> :sswitch_100
6731 + 0x5f4e5446 -> :sswitch_a
6732 + .end sparse-switch
6733 +.end method
6734 diff -Npru stock-framework/smali/android/privacy/PrivacyFileObserver.smali pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali
6735 --- stock-framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 18:00:00.000000000 -0600
6736 +++ pdroid-framework/smali/android/privacy/PrivacyFileObserver.smali 2012-06-14 15:23:33.024293175 -0500
6737 @@ -0,0 +1,217 @@
6738 +.class public Landroid/privacy/PrivacyFileObserver;
6739 +.super Landroid/os/FileObserver;
6740 +.source "PrivacyFileObserver.java"
6743 +# static fields
6744 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
6746 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
6749 +# instance fields
6750 +.field public absolutePath:Ljava/lang/String;
6752 +.field public children:Ljava/util/HashMap;
6753 + .annotation system Ldalvik/annotation/Signature;
6754 + value = {
6755 + "Ljava/util/HashMap",
6756 + "<",
6757 + "Ljava/lang/String;",
6758 + "Landroid/privacy/PrivacyFileObserver;",
6759 + ">;"
6761 + .end annotation
6762 +.end field
6764 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6767 +# direct methods
6768 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6769 + .registers 12
6771 + const/16 v8, 0xfff
6773 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
6775 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6777 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6779 + new-instance v8, Ljava/util/HashMap;
6781 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
6783 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6785 + new-instance v7, Ljava/io/File;
6787 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6789 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6791 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
6793 + move-result v8
6795 + if-eqz v8, :cond_42
6797 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
6799 + move-result-object v6
6801 + move-object v0, v6
6803 + array-length v4, v0
6805 + const/4 v3, 0x0
6807 + :goto_24
6808 + if-ge v3, v4, :cond_42
6810 + aget-object v2, v0, v3
6812 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6814 + move-result-object v5
6816 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
6818 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6820 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6822 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6824 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
6826 + move-result v8
6828 + if-eqz v8, :cond_3f
6830 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
6832 + :cond_3f
6833 + add-int/lit8 v3, v3, 0x1
6835 + goto :goto_24
6837 + :cond_42
6838 + return-void
6839 +.end method
6842 +# virtual methods
6843 +.method public addObserver(Ljava/lang/String;)V
6844 + .registers 6
6846 + new-instance v2, Ljava/lang/StringBuilder;
6848 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
6850 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6852 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6854 + move-result-object v2
6856 + const-string v3, "/"
6858 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6860 + move-result-object v2
6862 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6864 + move-result-object v2
6866 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6868 + move-result-object v1
6870 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6872 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
6874 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
6876 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6878 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
6880 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
6882 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
6884 + return-void
6885 +.end method
6887 +.method public onEvent(ILjava/lang/String;)V
6888 + .registers 11
6890 + and-int/lit8 v4, p1, 0x1
6892 + if-eqz v4, :cond_34
6894 + new-instance v3, Ljava/util/StringTokenizer;
6896 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
6898 + const-string v5, "/"
6900 + invoke-direct {v3, v4, v5}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
6902 + const/4 v0, 0x0
6904 + :goto_e
6905 + const/4 v4, 0x3
6907 + if-ge v0, v4, :cond_1d
6909 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->hasMoreElements()Z
6911 + move-result v4
6913 + if-eqz v4, :cond_1d
6915 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6917 + add-int/lit8 v0, v0, 0x1
6919 + goto :goto_e
6921 + :cond_1d
6922 + invoke-virtual {v3}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
6924 + move-result-object v2
6926 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6928 + invoke-virtual {v4, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
6930 + move-result-object v1
6932 + iget-object v4, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
6934 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
6936 + move-result v5
6938 + const-string/jumbo v6, "systemLogs"
6940 + const/4 v7, 0x0
6942 + invoke-virtual {v4, v2, v5, v6, v7}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
6944 + :cond_34
6945 + return-void
6946 +.end method
6948 +.method public startWatching()V
6949 + .registers 1
6951 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
6953 + return-void
6954 +.end method
6955 diff -Npru stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
6956 --- stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 18:00:00.000000000 -0600
6957 +++ pdroid-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-06-14 15:23:33.032293226 -0500
6958 @@ -0,0 +1,4581 @@
6959 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
6960 +.super Ljava/lang/Object;
6961 +.source "PrivacyPersistenceAdapter.java"
6964 +# static fields
6965 +.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) );"
6967 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
6969 +.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);"
6971 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
6973 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
6975 +.field private static final DATABASE_VERSION:I = 0x3
6977 +.field public static final DUMMY_UID:I = -0x1
6979 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
6981 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
6983 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
6985 +.field private static final RETRY_QUERY_COUNT:I = 0x5
6987 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
6989 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
6991 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
6993 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
6995 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
6997 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
6999 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
7001 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
7003 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
7005 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
7007 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
7009 +.field public static readingThreads:Ljava/lang/Integer;
7012 +# instance fields
7013 +.field private context:Landroid/content/Context;
7015 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
7018 +# direct methods
7019 +.method static constructor <clinit>()V
7020 + .registers 3
7022 + const/4 v2, 0x0
7024 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7026 + move-result-object v0
7028 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7030 + const/16 v0, 0x23
7032 + new-array v0, v0, [Ljava/lang/String;
7034 + const-string v1, "_id"
7036 + aput-object v1, v0, v2
7038 + const/4 v1, 0x1
7040 + const-string/jumbo v2, "packageName"
7042 + aput-object v2, v0, v1
7044 + const/4 v1, 0x2
7046 + const-string/jumbo v2, "uid"
7048 + aput-object v2, v0, v1
7050 + const/4 v1, 0x3
7052 + const-string v2, "deviceIdSetting"
7054 + aput-object v2, v0, v1
7056 + const/4 v1, 0x4
7058 + const-string v2, "deviceId"
7060 + aput-object v2, v0, v1
7062 + const/4 v1, 0x5
7064 + const-string v2, "line1NumberSetting"
7066 + aput-object v2, v0, v1
7068 + const/4 v1, 0x6
7070 + const-string v2, "line1Number"
7072 + aput-object v2, v0, v1
7074 + const/4 v1, 0x7
7076 + const-string v2, "locationGpsSetting"
7078 + aput-object v2, v0, v1
7080 + const/16 v1, 0x8
7082 + const-string v2, "locationGpsLat"
7084 + aput-object v2, v0, v1
7086 + const/16 v1, 0x9
7088 + const-string v2, "locationGpsLon"
7090 + aput-object v2, v0, v1
7092 + const/16 v1, 0xa
7094 + const-string v2, "locationNetworkSetting"
7096 + aput-object v2, v0, v1
7098 + const/16 v1, 0xb
7100 + const-string v2, "locationNetworkLat"
7102 + aput-object v2, v0, v1
7104 + const/16 v1, 0xc
7106 + const-string v2, "locationNetworkLon"
7108 + aput-object v2, v0, v1
7110 + const/16 v1, 0xd
7112 + const-string/jumbo v2, "networkInfoSetting"
7114 + aput-object v2, v0, v1
7116 + const/16 v1, 0xe
7118 + const-string/jumbo v2, "simInfoSetting"
7120 + aput-object v2, v0, v1
7122 + const/16 v1, 0xf
7124 + const-string/jumbo v2, "simSerialNumberSetting"
7126 + aput-object v2, v0, v1
7128 + const/16 v1, 0x10
7130 + const-string/jumbo v2, "simSerialNumber"
7132 + aput-object v2, v0, v1
7134 + const/16 v1, 0x11
7136 + const-string/jumbo v2, "subscriberIdSetting"
7138 + aput-object v2, v0, v1
7140 + const/16 v1, 0x12
7142 + const-string/jumbo v2, "subscriberId"
7144 + aput-object v2, v0, v1
7146 + const/16 v1, 0x13
7148 + const-string v2, "accountsSetting"
7150 + aput-object v2, v0, v1
7152 + const/16 v1, 0x14
7154 + const-string v2, "accountsAuthTokensSetting"
7156 + aput-object v2, v0, v1
7158 + const/16 v1, 0x15
7160 + const-string/jumbo v2, "outgoingCallsSetting"
7162 + aput-object v2, v0, v1
7164 + const/16 v1, 0x16
7166 + const-string v2, "incomingCallsSetting"
7168 + aput-object v2, v0, v1
7170 + const/16 v1, 0x17
7172 + const-string v2, "contactsSetting"
7174 + aput-object v2, v0, v1
7176 + const/16 v1, 0x18
7178 + const-string v2, "calendarSetting"
7180 + aput-object v2, v0, v1
7182 + const/16 v1, 0x19
7184 + const-string/jumbo v2, "mmsSetting"
7186 + aput-object v2, v0, v1
7188 + const/16 v1, 0x1a
7190 + const-string/jumbo v2, "smsSetting"
7192 + aput-object v2, v0, v1
7194 + const/16 v1, 0x1b
7196 + const-string v2, "callLogSetting"
7198 + aput-object v2, v0, v1
7200 + const/16 v1, 0x1c
7202 + const-string v2, "bookmarksSetting"
7204 + aput-object v2, v0, v1
7206 + const/16 v1, 0x1d
7208 + const-string/jumbo v2, "systemLogsSetting"
7210 + aput-object v2, v0, v1
7212 + const/16 v1, 0x1e
7214 + const-string v2, "externalStorageSetting"
7216 + aput-object v2, v0, v1
7218 + const/16 v1, 0x1f
7220 + const-string v2, "cameraSetting"
7222 + aput-object v2, v0, v1
7224 + const/16 v1, 0x20
7226 + const-string/jumbo v2, "recordAudioSetting"
7228 + aput-object v2, v0, v1
7230 + const/16 v1, 0x21
7232 + const-string/jumbo v2, "notificationSetting"
7234 + aput-object v2, v0, v1
7236 + const/16 v1, 0x22
7238 + const-string v2, "intentBootCompletedSetting"
7240 + aput-object v2, v0, v1
7242 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
7244 + return-void
7245 +.end method
7247 +.method public constructor <init>(Landroid/content/Context;)V
7248 + .registers 6
7250 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
7252 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
7254 + new-instance v2, Ljava/io/File;
7256 + const-string v3, "/data/system/"
7258 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7260 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
7262 + move-result v0
7264 + if-eqz v0, :cond_3c
7266 + new-instance v2, Ljava/io/File;
7268 + const-string v3, "/data/system/privacy.db"
7270 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7272 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
7274 + move-result v2
7276 + if-nez v2, :cond_22
7278 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7280 + :cond_22
7281 + new-instance v2, Ljava/io/File;
7283 + const-string v3, "/data/system/privacy"
7285 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7287 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
7289 + move-result v2
7291 + if-nez v2, :cond_32
7293 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
7295 + :cond_32
7296 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
7298 + move-result v1
7300 + const/4 v2, 0x3
7302 + if-ge v1, v2, :cond_3c
7304 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
7306 + :cond_3c
7307 + return-void
7308 +.end method
7310 +.method private declared-synchronized createDatabase()V
7311 + .registers 6
7313 + monitor-enter p0
7315 + :try_start_1
7316 + const-string v2, "PrivacyPersistenceAdapter"
7318 + const-string v3, "createDatabase - creating privacy database file"
7320 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7321 + :try_end_8
7322 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
7324 + :try_start_8
7325 + const-string v2, "/data/system/privacy.db"
7327 + const/4 v3, 0x0
7329 + const/high16 v4, 0x1000
7331 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7333 + move-result-object v0
7335 + const-string v2, "PrivacyPersistenceAdapter"
7337 + const-string v3, "createDatabase - creating privacy database"
7339 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7341 + 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);"
7343 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7345 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
7347 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7349 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
7351 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7353 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
7355 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7357 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
7359 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7361 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
7363 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
7365 + if-eqz v0, :cond_41
7367 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7369 + move-result v2
7371 + if-eqz v2, :cond_41
7373 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7374 + :try_end_41
7375 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
7376 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
7378 + :cond_41
7379 + :goto_41
7380 + monitor-exit p0
7382 + return-void
7384 + :catch_43
7385 + move-exception v1
7387 + :try_start_44
7388 + const-string v2, "PrivacyPersistenceAdapter"
7390 + const-string v3, "createDatabase - failed to create privacy database"
7392 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
7393 + :try_end_4b
7394 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
7396 + goto :goto_41
7398 + :catchall_4c
7399 + move-exception v2
7401 + monitor-exit p0
7403 + throw v2
7404 +.end method
7406 +.method private declared-synchronized createSettingsDir()V
7407 + .registers 4
7409 + monitor-enter p0
7411 + :try_start_1
7412 + new-instance v0, Ljava/io/File;
7414 + const-string v1, "/data/system/privacy/"
7416 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7418 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
7420 + const/4 v1, 0x1
7422 + const/4 v2, 0x0
7424 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
7426 + const/4 v1, 0x1
7428 + const/4 v2, 0x0
7430 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
7431 + :try_end_15
7432 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
7434 + monitor-exit p0
7436 + return-void
7438 + :catchall_17
7439 + move-exception v1
7441 + monitor-exit p0
7443 + throw v1
7444 +.end method
7446 +.method private deleteRecursive(Ljava/io/File;)V
7447 + .registers 7
7449 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
7451 + move-result v4
7453 + if-eqz v4, :cond_16
7455 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
7457 + move-result-object v0
7459 + array-length v3, v0
7461 + const/4 v2, 0x0
7463 + :goto_c
7464 + if-ge v2, v3, :cond_16
7466 + aget-object v1, v0, v2
7468 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
7470 + add-int/lit8 v2, v2, 0x1
7472 + goto :goto_c
7474 + :cond_16
7475 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
7477 + return-void
7478 +.end method
7480 +.method private getDbVersion()I
7481 + .registers 9
7483 + const/4 v4, 0x1
7485 + const/4 v3, -0x1
7487 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7489 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7491 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7493 + move-result v6
7495 + add-int/lit8 v6, v6, 0x1
7497 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7499 + move-result-object v6
7501 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7503 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7505 + move-result-object v1
7507 + :try_start_16
7508 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
7510 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7512 + move-result-object v0
7514 + if-eqz v0, :cond_5e
7516 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
7518 + move-result v6
7520 + if-nez v6, :cond_25
7522 + const/4 v3, 0x1
7524 + :cond_25
7525 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7527 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7529 + monitor-enter v7
7530 + :try_end_2b
7531 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
7533 + :try_start_2b
7534 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7536 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7538 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7540 + move-result v6
7542 + add-int/lit8 v6, v6, -0x1
7544 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7546 + move-result-object v6
7548 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7550 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
7552 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
7554 + move-result v6
7556 + if-nez v6, :cond_4e
7558 + if-eqz v1, :cond_4e
7560 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7562 + move-result v6
7564 + if-eqz v6, :cond_4e
7566 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7568 + :cond_4e
7569 + monitor-exit v7
7571 + :goto_4f
7572 + if-ne v3, v4, :cond_66
7574 + :goto_51
7575 + return v3
7577 + :catchall_52
7578 + move-exception v6
7580 + monitor-exit v7
7581 + :try_end_54
7582 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
7584 + :try_start_54
7585 + throw v6
7586 + :try_end_55
7587 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
7589 + :catch_55
7590 + move-exception v2
7592 + const-string v6, "PrivacyPersistenceAdapter"
7594 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
7596 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7598 + goto :goto_4f
7600 + :cond_5e
7601 + :try_start_5e
7602 + const-string v6, "PrivacyPersistenceAdapter"
7604 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
7606 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7607 + :try_end_65
7608 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
7610 + goto :goto_4f
7612 + :cond_66
7613 + const-string v6, "db_version"
7615 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
7617 + move-result-object v5
7619 + if-nez v5, :cond_70
7621 + move v3, v4
7623 + goto :goto_51
7625 + :cond_70
7626 + :try_start_70
7627 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7628 + :try_end_73
7629 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
7631 + move-result v4
7633 + move v3, v4
7635 + goto :goto_51
7637 + :catch_76
7638 + move-exception v2
7640 + const-string v6, "PrivacyPersistenceAdapter"
7642 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
7644 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7646 + move v3, v4
7648 + goto :goto_51
7649 +.end method
7651 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7652 + .registers 4
7654 + monitor-enter p0
7656 + :try_start_1
7657 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7659 + if-eqz v0, :cond_11
7661 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7663 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7665 + move-result v0
7667 + if-eqz v0, :cond_11
7669 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7670 + :try_end_f
7671 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
7673 + :goto_f
7674 + monitor-exit p0
7676 + return-object v0
7678 + :cond_11
7679 + :try_start_11
7680 + const-string v0, "/data/system/privacy.db"
7682 + const/4 v1, 0x0
7684 + const/4 v2, 0x1
7686 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7688 + move-result-object v0
7690 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7692 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7693 + :try_end_1d
7694 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
7696 + goto :goto_f
7698 + :catchall_1e
7699 + move-exception v0
7701 + monitor-exit p0
7703 + throw v0
7704 +.end method
7706 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7707 + .registers 4
7709 + monitor-enter p0
7711 + :try_start_1
7712 + new-instance v0, Ljava/io/File;
7714 + const-string v1, "/data/system/privacy.db"
7716 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7718 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
7720 + move-result v0
7722 + if-nez v0, :cond_11
7724 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
7726 + :cond_11
7727 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7729 + if-eqz v0, :cond_29
7731 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7733 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7735 + move-result v0
7737 + if-eqz v0, :cond_29
7739 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7741 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
7743 + move-result v0
7745 + if-nez v0, :cond_29
7747 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7748 + :try_end_27
7749 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
7751 + :goto_27
7752 + monitor-exit p0
7754 + return-object v0
7756 + :cond_29
7757 + :try_start_29
7758 + const-string v0, "/data/system/privacy.db"
7760 + const/4 v1, 0x0
7762 + const/4 v2, 0x0
7764 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
7766 + move-result-object v0
7768 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7770 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
7771 + :try_end_35
7772 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
7774 + goto :goto_27
7776 + :catchall_36
7777 + move-exception v0
7779 + monitor-exit p0
7781 + throw v0
7782 +.end method
7784 +.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;
7785 + .registers 16
7786 + .annotation system Ldalvik/annotation/Throws;
7787 + value = {
7788 + Ljava/lang/Exception;
7790 + .end annotation
7792 + const/4 v0, 0x0
7794 + const/4 v3, 0x0
7796 + const/4 v2, 0x0
7798 + :goto_3
7799 + if-nez v3, :cond_27
7801 + const/4 v4, 0x5
7803 + if-ge v2, v4, :cond_27
7805 + if-eqz v0, :cond_d
7807 + :try_start_a
7808 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7810 + :cond_d
7811 + 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;
7812 + :try_end_10
7813 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
7815 + move-result-object v0
7817 + const/4 v3, 0x1
7819 + :goto_12
7820 + add-int/lit8 v2, v2, 0x1
7822 + goto :goto_3
7824 + :catch_15
7825 + move-exception v1
7827 + const/4 v3, 0x0
7829 + if-eqz p1, :cond_22
7831 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7833 + move-result v4
7835 + if-eqz v4, :cond_22
7837 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7839 + :cond_22
7840 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7842 + move-result-object p1
7844 + goto :goto_12
7846 + :cond_27
7847 + if-nez v3, :cond_32
7849 + new-instance v4, Ljava/lang/Exception;
7851 + const-string/jumbo v5, "query - failed to execute query on the DB"
7853 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7855 + throw v4
7857 + :cond_32
7858 + return-object v0
7859 +.end method
7861 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
7862 + .registers 9
7863 + .annotation system Ldalvik/annotation/Throws;
7864 + value = {
7865 + Ljava/lang/Exception;
7867 + .end annotation
7869 + const/4 v0, 0x0
7871 + const/4 v3, 0x0
7873 + const/4 v2, 0x0
7875 + :goto_3
7876 + if-nez v3, :cond_28
7878 + const/4 v4, 0x5
7880 + if-ge v2, v4, :cond_28
7882 + if-eqz v0, :cond_d
7884 + :try_start_a
7885 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
7887 + :cond_d
7888 + const/4 v4, 0x0
7890 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
7891 + :try_end_11
7892 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
7894 + move-result-object v0
7896 + const/4 v3, 0x1
7898 + :goto_13
7899 + add-int/lit8 v2, v2, 0x1
7901 + goto :goto_3
7903 + :catch_16
7904 + move-exception v1
7906 + const/4 v3, 0x0
7908 + if-eqz p1, :cond_23
7910 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
7912 + move-result v4
7914 + if-eqz v4, :cond_23
7916 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
7918 + :cond_23
7919 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
7921 + move-result-object p1
7923 + goto :goto_13
7925 + :cond_28
7926 + if-nez v3, :cond_33
7928 + new-instance v4, Ljava/lang/Exception;
7930 + const-string/jumbo v5, "query - failed to execute query on the DB"
7932 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
7934 + throw v4
7936 + :cond_33
7937 + return-object v0
7938 +.end method
7940 +.method private declared-synchronized upgradeDatabase(I)V
7941 + .registers 23
7943 + monitor-enter p0
7945 + :try_start_1
7946 + const-string v17, "PrivacyPersistenceAdapter"
7948 + new-instance v18, Ljava/lang/StringBuilder;
7950 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
7952 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
7954 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7956 + move-result-object v18
7958 + move-object/from16 v0, v18
7960 + move/from16 v1, p1
7962 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7964 + move-result-object v18
7966 + const-string v19, " to "
7968 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7970 + move-result-object v18
7972 + const/16 v19, 0x3
7974 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
7976 + move-result-object v18
7978 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7980 + move-result-object v18
7982 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7984 + new-instance v6, Ljava/io/File;
7986 + const-string v17, "/data/system/privacy.db"
7988 + move-object/from16 v0, v17
7990 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7992 + new-instance v5, Ljava/io/File;
7994 + const-string v17, "/data/system/privacy.db.bak"
7996 + move-object/from16 v0, v17
7998 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7999 + :try_end_3c
8000 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
8002 + :try_start_3c
8003 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
8004 + :try_end_3f
8005 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
8006 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
8008 + :goto_3f
8009 + :try_start_3f
8010 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
8012 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
8014 + move-result-wide v17
8016 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
8018 + move-result-wide v19
8020 + sub-long v17, v17, v19
8022 + const-wide/16 v19, 0x7d0
8024 + cmp-long v17, v17, v19
8026 + if-lez v17, :cond_69
8028 + const-string v17, "PrivacyPersistenceAdapter"
8030 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
8032 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8033 + :try_end_5a
8034 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
8036 + :goto_5a
8037 + monitor-exit p0
8039 + return-void
8041 + :catch_5c
8042 + move-exception v7
8044 + :try_start_5d
8045 + const-string v17, "PrivacyPersistenceAdapter"
8047 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
8049 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
8050 + :try_end_65
8051 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
8053 + goto :goto_3f
8055 + :catchall_66
8056 + move-exception v17
8058 + monitor-exit p0
8060 + throw v17
8062 + :cond_69
8063 + :try_start_69
8064 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8066 + move-result-object v4
8068 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
8070 + packed-switch p1, :pswitch_data_164
8072 + :cond_73
8073 + :goto_73
8074 + if-eqz v4, :cond_159
8076 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8078 + move-result v17
8080 + if-eqz v17, :cond_159
8082 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8084 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8086 + :goto_81
8087 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
8088 + :try_end_84
8089 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
8091 + goto :goto_5a
8093 + :pswitch_85
8094 + if-eqz v4, :cond_73
8096 + :try_start_87
8097 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8099 + move-result v17
8101 + if-eqz v17, :cond_73
8103 + const-string v17, "DROP TABLE IF EXISTS version;"
8105 + move-object/from16 v0, v17
8107 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
8109 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
8111 + move-object/from16 v0, v17
8113 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
8115 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
8117 + move-object/from16 v0, v17
8119 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
8121 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 3);"
8123 + move-object/from16 v0, v17
8125 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
8127 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
8129 + move-object/from16 v0, v17
8131 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
8133 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
8135 + move-object/from16 v0, v17
8137 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
8139 + new-instance v14, Ljava/io/File;
8141 + const-string v17, "/data/system/privacy"
8143 + move-object/from16 v0, v17
8145 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8147 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
8149 + move-result-object v2
8151 + array-length v10, v2
8153 + const/4 v8, 0x0
8155 + move v9, v8
8157 + :goto_c7
8158 + if-ge v9, v10, :cond_127
8160 + aget-object v13, v2, v9
8162 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
8164 + move-result-object v3
8166 + array-length v11, v3
8168 + const/4 v8, 0x0
8170 + :goto_d1
8171 + if-ge v8, v11, :cond_123
8173 + aget-object v16, v3, v8
8175 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
8177 + move-result v17
8179 + if-eqz v17, :cond_120
8181 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
8183 + move-result-object v15
8185 + const/16 v17, 0x0
8187 + aget-object v17, v15, v17
8189 + if-eqz v17, :cond_120
8191 + new-instance v12, Ljava/io/File;
8193 + new-instance v17, Ljava/lang/StringBuilder;
8195 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
8197 + move-object/from16 v0, v17
8199 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
8201 + move-result-object v17
8203 + const-string v18, "/"
8205 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8207 + move-result-object v17
8209 + const/16 v18, 0x0
8211 + aget-object v18, v15, v18
8213 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
8215 + move-result-object v18
8217 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8219 + move-result-object v17
8221 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8223 + move-result-object v17
8225 + move-object/from16 v0, v17
8227 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8229 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8231 + const/16 v17, 0x0
8233 + aget-object v17, v15, v17
8235 + move-object/from16 v0, v17
8237 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
8239 + move-object/from16 v0, p0
8241 + move-object/from16 v1, v16
8243 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
8245 + :cond_120
8246 + add-int/lit8 v8, v8, 0x1
8248 + goto :goto_d1
8250 + :cond_123
8251 + add-int/lit8 v8, v9, 0x1
8253 + move v9, v8
8255 + goto :goto_c7
8257 + :cond_127
8258 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8259 + :try_end_12a
8260 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
8261 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
8263 + goto/16 :goto_73
8265 + :catch_12c
8266 + move-exception v7
8268 + if-eqz v4, :cond_13b
8270 + :try_start_12f
8271 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8273 + move-result v17
8275 + if-eqz v17, :cond_13b
8277 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8279 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8281 + :cond_13b
8282 + const-string v17, "PrivacyPersistenceAdapter"
8284 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
8286 + move-object/from16 v0, v17
8288 + move-object/from16 v1, v18
8290 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8292 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
8294 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
8296 + goto/16 :goto_73
8298 + :pswitch_14f
8299 + const-string v17, "PrivacyPersistenceAdapter"
8301 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
8303 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
8305 + goto/16 :goto_73
8307 + :cond_159
8308 + const-string v17, "PrivacyPersistenceAdapter"
8310 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
8312 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8313 + :try_end_161
8314 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
8316 + goto/16 :goto_81
8318 + nop
8320 + :pswitch_data_164
8321 + .packed-switch 0x1
8322 + :pswitch_85
8323 + :pswitch_85
8324 + :pswitch_14f
8325 + .end packed-switch
8326 +.end method
8329 +# virtual methods
8330 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
8331 + .registers 16
8333 + monitor-enter p0
8335 + const/4 v11, 0x1
8337 + :try_start_2
8338 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8340 + move-result-object v0
8342 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
8343 + :try_end_9
8344 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
8346 + :try_start_9
8347 + const-string/jumbo v1, "settings"
8349 + const/4 v2, 0x1
8351 + new-array v2, v2, [Ljava/lang/String;
8353 + const/4 v3, 0x0
8355 + const-string v4, "_id"
8357 + aput-object v4, v2, v3
8359 + const-string/jumbo v3, "packageName=?"
8361 + const/4 v4, 0x1
8363 + new-array v4, v4, [Ljava/lang/String;
8365 + const/4 v5, 0x0
8367 + aput-object p1, v4, v5
8369 + const/4 v5, 0x0
8371 + const/4 v6, 0x0
8373 + const/4 v7, 0x0
8375 + 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;
8377 + move-result-object v8
8379 + if-eqz v8, :cond_4c
8381 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
8383 + move-result v1
8385 + if-lez v1, :cond_4c
8387 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
8389 + move-result v1
8391 + if-eqz v1, :cond_4c
8393 + const/4 v1, 0x0
8395 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
8397 + move-result v10
8399 + const-string v1, "allowed_contacts"
8401 + const-string/jumbo v2, "settings_id=?"
8403 + const/4 v3, 0x1
8405 + new-array v3, v3, [Ljava/lang/String;
8407 + const/4 v4, 0x0
8409 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
8411 + move-result-object v5
8413 + aput-object v5, v3, v4
8415 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8417 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
8419 + :cond_4c
8420 + const-string/jumbo v1, "settings"
8422 + const-string/jumbo v2, "packageName=?"
8424 + const/4 v3, 0x1
8426 + new-array v3, v3, [Ljava/lang/String;
8428 + const/4 v4, 0x0
8430 + aput-object p1, v3, v4
8432 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
8434 + move-result v1
8436 + if-nez v1, :cond_8d
8438 + const-string v1, "PrivacyPersistenceAdapter"
8440 + new-instance v2, Ljava/lang/StringBuilder;
8442 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
8444 + const-string v3, "deleteSettings - database entry for "
8446 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8448 + move-result-object v2
8450 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8452 + move-result-object v2
8454 + const-string v3, " not found"
8456 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8458 + move-result-object v2
8460 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8462 + move-result-object v2
8464 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8465 + :try_end_7c
8466 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
8467 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
8469 + const/4 v1, 0x0
8471 + :try_start_7d
8472 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8474 + if-eqz v0, :cond_8b
8476 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8478 + move-result v2
8480 + if-eqz v2, :cond_8b
8482 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8483 + :try_end_8b
8484 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
8486 + :cond_8b
8487 + :goto_8b
8488 + monitor-exit p0
8490 + return v1
8492 + :cond_8d
8493 + :try_start_8d
8494 + new-instance v12, Ljava/io/File;
8496 + new-instance v1, Ljava/lang/StringBuilder;
8498 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8500 + const-string v2, "/data/system/privacy/"
8502 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8504 + move-result-object v1
8506 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8508 + move-result-object v1
8510 + const-string v2, "/"
8512 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8514 + move-result-object v1
8516 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8518 + move-result-object v1
8520 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8522 + new-instance v13, Ljava/io/File;
8524 + new-instance v1, Ljava/lang/StringBuilder;
8526 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8528 + const-string v2, "/data/system/privacy/"
8530 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8532 + move-result-object v1
8534 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8536 + move-result-object v1
8538 + const-string v2, "/systemLogsSetting"
8540 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8542 + move-result-object v1
8544 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8546 + move-result-object v1
8548 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
8550 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
8552 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8554 + move-result-object v1
8556 + if-eqz v1, :cond_d9
8558 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
8560 + move-result-object v1
8562 + array-length v1, v1
8564 + if-nez v1, :cond_dc
8566 + :cond_d9
8567 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
8569 + :cond_dc
8570 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
8571 + :try_end_df
8572 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
8573 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
8575 + :try_start_df
8576 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8578 + if-eqz v0, :cond_ed
8580 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8582 + move-result v1
8584 + if-eqz v1, :cond_ed
8586 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8587 + :try_end_ed
8588 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
8590 + :cond_ed
8591 + :goto_ed
8592 + move v1, v11
8594 + goto :goto_8b
8596 + :catch_ef
8597 + move-exception v9
8599 + const/4 v11, 0x0
8601 + :try_start_f1
8602 + const-string v1, "PrivacyPersistenceAdapter"
8604 + const-string v2, "deleteSettings - could not delete settings"
8606 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
8607 + :try_end_f8
8608 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
8610 + :try_start_f8
8611 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8613 + if-eqz v0, :cond_ed
8615 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8617 + move-result v1
8619 + if-eqz v1, :cond_ed
8621 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8622 + :try_end_106
8623 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
8625 + goto :goto_ed
8627 + :catchall_107
8628 + move-exception v1
8630 + monitor-exit p0
8632 + throw v1
8634 + :catchall_10a
8635 + move-exception v1
8637 + :try_start_10b
8638 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
8640 + if-eqz v0, :cond_119
8642 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
8644 + move-result v2
8646 + if-eqz v2, :cond_119
8648 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
8650 + :cond_119
8651 + throw v1
8652 + :try_end_11a
8653 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
8654 +.end method
8656 +.method public getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
8657 + .registers 47
8659 + const/16 v43, 0x0
8661 + if-nez p1, :cond_e
8663 + const-string v1, "PrivacyPersistenceAdapter"
8665 + const-string v4, "getSettings - insufficient application identifier - package name is required"
8667 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8669 + move-object/from16 v3, v43
8671 + :goto_d
8672 + return-object v43
8674 + :cond_e
8675 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8677 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8679 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
8681 + move-result v1
8683 + add-int/lit8 v1, v1, 0x1
8685 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8687 + move-result-object v1
8689 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
8691 + :try_start_1e
8692 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
8693 + :try_end_21
8694 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_1e .. :try_end_21} :catch_243
8696 + move-result-object v2
8698 + const/16 v41, 0x0
8700 + :try_start_24
8701 + const-string/jumbo v3, "settings"
8703 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
8705 + const-string/jumbo v5, "packageName=?"
8707 + const/4 v1, 0x1
8709 + new-array v6, v1, [Ljava/lang/String;
8711 + const/4 v1, 0x0
8713 + aput-object p1, v6, v1
8715 + const/4 v7, 0x0
8717 + const/4 v8, 0x0
8719 + const/4 v9, 0x0
8721 + const/4 v10, 0x0
8723 + move-object/from16 v1, p0
8725 + 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;
8727 + move-result-object v41
8729 + if-eqz v41, :cond_2d3
8731 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToFirst()Z
8733 + move-result v1
8735 + if-eqz v1, :cond_2d3
8737 + new-instance v3, Landroid/privacy/PrivacySettings;
8739 + const/4 v1, 0x0
8741 + move-object/from16 v0, v41
8743 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8745 + move-result v1
8747 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
8749 + move-result-object v4
8751 + const/4 v1, 0x1
8753 + move-object/from16 v0, v41
8755 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8757 + move-result-object v5
8759 + const/4 v1, 0x2
8761 + move-object/from16 v0, v41
8763 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
8765 + move-result v6
8767 + const/4 v1, 0x3
8769 + move-object/from16 v0, v41
8771 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8773 + move-result v1
8775 + int-to-byte v7, v1
8777 + const/4 v1, 0x4
8779 + move-object/from16 v0, v41
8781 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8783 + move-result-object v8
8785 + const/4 v1, 0x5
8787 + move-object/from16 v0, v41
8789 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8791 + move-result v1
8793 + int-to-byte v9, v1
8795 + const/4 v1, 0x6
8797 + move-object/from16 v0, v41
8799 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8801 + move-result-object v10
8803 + const/4 v1, 0x7
8805 + move-object/from16 v0, v41
8807 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8809 + move-result v1
8811 + int-to-byte v11, v1
8813 + const/16 v1, 0x8
8815 + move-object/from16 v0, v41
8817 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8819 + move-result-object v12
8821 + const/16 v1, 0x9
8823 + move-object/from16 v0, v41
8825 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8827 + move-result-object v13
8829 + const/16 v1, 0xa
8831 + move-object/from16 v0, v41
8833 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8835 + move-result v1
8837 + int-to-byte v14, v1
8839 + const/16 v1, 0xb
8841 + move-object/from16 v0, v41
8843 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8845 + move-result-object v15
8847 + const/16 v1, 0xc
8849 + move-object/from16 v0, v41
8851 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8853 + move-result-object v16
8855 + const/16 v1, 0xd
8857 + move-object/from16 v0, v41
8859 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8861 + move-result v1
8863 + int-to-byte v0, v1
8865 + move/from16 v17, v0
8867 + const/16 v1, 0xe
8869 + move-object/from16 v0, v41
8871 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8873 + move-result v1
8875 + int-to-byte v0, v1
8877 + move/from16 v18, v0
8879 + const/16 v1, 0xf
8881 + move-object/from16 v0, v41
8883 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8885 + move-result v1
8887 + int-to-byte v0, v1
8889 + move/from16 v19, v0
8891 + const/16 v1, 0x10
8893 + move-object/from16 v0, v41
8895 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8897 + move-result-object v20
8899 + const/16 v1, 0x11
8901 + move-object/from16 v0, v41
8903 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8905 + move-result v1
8907 + int-to-byte v0, v1
8909 + move/from16 v21, v0
8911 + const/16 v1, 0x12
8913 + move-object/from16 v0, v41
8915 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
8917 + move-result-object v22
8919 + const/16 v1, 0x13
8921 + move-object/from16 v0, v41
8923 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8925 + move-result v1
8927 + int-to-byte v0, v1
8929 + move/from16 v23, v0
8931 + const/16 v1, 0x14
8933 + move-object/from16 v0, v41
8935 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8937 + move-result v1
8939 + int-to-byte v0, v1
8941 + move/from16 v24, v0
8943 + const/16 v1, 0x15
8945 + move-object/from16 v0, v41
8947 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8949 + move-result v1
8951 + int-to-byte v0, v1
8953 + move/from16 v25, v0
8955 + const/16 v1, 0x16
8957 + move-object/from16 v0, v41
8959 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8961 + move-result v1
8963 + int-to-byte v0, v1
8965 + move/from16 v26, v0
8967 + const/16 v1, 0x17
8969 + move-object/from16 v0, v41
8971 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8973 + move-result v1
8975 + int-to-byte v0, v1
8977 + move/from16 v27, v0
8979 + const/16 v1, 0x18
8981 + move-object/from16 v0, v41
8983 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8985 + move-result v1
8987 + int-to-byte v0, v1
8989 + move/from16 v28, v0
8991 + const/16 v1, 0x19
8993 + move-object/from16 v0, v41
8995 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
8997 + move-result v1
8999 + int-to-byte v0, v1
9001 + move/from16 v29, v0
9003 + const/16 v1, 0x1a
9005 + move-object/from16 v0, v41
9007 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9009 + move-result v1
9011 + int-to-byte v0, v1
9013 + move/from16 v30, v0
9015 + const/16 v1, 0x1b
9017 + move-object/from16 v0, v41
9019 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9021 + move-result v1
9023 + int-to-byte v0, v1
9025 + move/from16 v31, v0
9027 + const/16 v1, 0x1c
9029 + move-object/from16 v0, v41
9031 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9033 + move-result v1
9035 + int-to-byte v0, v1
9037 + move/from16 v32, v0
9039 + const/16 v1, 0x1d
9041 + move-object/from16 v0, v41
9043 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9045 + move-result v1
9047 + int-to-byte v0, v1
9049 + move/from16 v33, v0
9051 + const/16 v1, 0x1e
9053 + move-object/from16 v0, v41
9055 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9057 + move-result v1
9059 + int-to-byte v0, v1
9061 + move/from16 v34, v0
9063 + const/16 v1, 0x1f
9065 + move-object/from16 v0, v41
9067 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9069 + move-result v1
9071 + int-to-byte v0, v1
9073 + move/from16 v35, v0
9075 + const/16 v1, 0x20
9077 + move-object/from16 v0, v41
9079 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9081 + move-result v1
9083 + int-to-byte v0, v1
9085 + move/from16 v36, v0
9087 + const/16 v1, 0x21
9089 + move-object/from16 v0, v41
9091 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9093 + move-result v1
9095 + int-to-byte v0, v1
9097 + move/from16 v37, v0
9099 + const/16 v1, 0x22
9101 + move-object/from16 v0, v41
9103 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
9105 + move-result v1
9107 + int-to-byte v0, v1
9109 + move/from16 v38, v0
9111 + const/16 v39, 0x0
9113 + 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
9114 + :try_end_19f
9115 + .catchall {:try_start_24 .. :try_end_19f} :catchall_299
9116 + .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_19f} :catch_2ce
9118 + :try_start_19f
9119 + new-instance v1, Ljava/lang/StringBuilder;
9121 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
9123 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
9125 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9127 + move-result-object v1
9129 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
9131 + move-result-object v4
9133 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
9135 + move-result v4
9137 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
9139 + move-result-object v4
9141 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9143 + move-result-object v1
9145 + const-string v4, ";"
9147 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9149 + move-result-object v1
9151 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9153 + move-result-object v1
9155 + move-object/from16 v0, p0
9157 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
9159 + move-result-object v41
9161 + if-eqz v41, :cond_266
9163 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
9165 + move-result v1
9167 + if-lez v1, :cond_266
9169 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getCount()I
9171 + move-result v1
9173 + new-array v0, v1, [I
9175 + move-object/from16 v40, v0
9177 + :goto_1da
9178 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->moveToNext()Z
9180 + move-result v1
9182 + if-eqz v1, :cond_261
9184 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->getPosition()I
9186 + move-result v1
9188 + const/4 v4, 0x1
9190 + move-object/from16 v0, v41
9192 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
9194 + move-result v4
9196 + aput v4, v40, v1
9197 + :try_end_1ed
9198 + .catchall {:try_start_19f .. :try_end_1ed} :catchall_2cc
9199 + .catch Ljava/lang/Exception; {:try_start_19f .. :try_end_1ed} :catch_1ee
9201 + goto :goto_1da
9203 + :catch_1ee
9204 + move-exception v42
9206 + :goto_1ef
9207 + :try_start_1ef
9208 + const-string v1, "PrivacyPersistenceAdapter"
9210 + new-instance v4, Ljava/lang/StringBuilder;
9212 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
9214 + const-string v5, "getSettings - failed to get settings for package: "
9216 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9218 + move-result-object v4
9220 + move-object/from16 v0, p1
9222 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9224 + move-result-object v4
9226 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9228 + move-result-object v4
9230 + move-object/from16 v0, v42
9232 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9234 + invoke-virtual/range {v42 .. v42}, Ljava/lang/Exception;->printStackTrace()V
9236 + if-eqz v41, :cond_213
9238 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9239 + :try_end_213
9240 + .catchall {:try_start_1ef .. :try_end_213} :catchall_2cc
9242 + :cond_213
9243 + if-eqz v41, :cond_218
9245 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9247 + :cond_218
9248 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9250 + monitor-enter v4
9252 + :try_start_21b
9253 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9255 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9257 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9259 + move-result v1
9261 + add-int/lit8 v1, v1, -0x1
9263 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9265 + move-result-object v1
9267 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9269 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9271 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9273 + move-result v1
9275 + if-nez v1, :cond_23e
9277 + if-eqz v2, :cond_23e
9279 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9281 + move-result v1
9283 + if-eqz v1, :cond_23e
9285 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9287 + :cond_23e
9288 + monitor-exit v4
9289 + :try_end_23f
9290 + .catchall {:try_start_21b .. :try_end_23f} :catchall_296
9292 + :goto_23f
9293 + move-object/from16 v43, v3
9295 + goto/16 :goto_d
9297 + :catch_243
9298 + move-exception v42
9300 + const-string v1, "PrivacyPersistenceAdapter"
9302 + const-string v4, "getSettings - database could not be opened"
9304 + move-object/from16 v0, v42
9306 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9308 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9310 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9312 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9314 + move-result v1
9316 + add-int/lit8 v1, v1, -0x1
9318 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9320 + move-result-object v1
9322 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9324 + move-object/from16 v3, v43
9326 + goto/16 :goto_d
9328 + :cond_261
9329 + :try_start_261
9330 + move-object/from16 v0, v40
9332 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
9333 + :try_end_266
9334 + .catchall {:try_start_261 .. :try_end_266} :catchall_2cc
9335 + .catch Ljava/lang/Exception; {:try_start_261 .. :try_end_266} :catch_1ee
9337 + :cond_266
9338 + :goto_266
9339 + if-eqz v41, :cond_26b
9341 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9343 + :cond_26b
9344 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9346 + monitor-enter v4
9348 + :try_start_26e
9349 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9351 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9353 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9355 + move-result v1
9357 + add-int/lit8 v1, v1, -0x1
9359 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9361 + move-result-object v1
9363 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9365 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9367 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
9369 + move-result v1
9371 + if-nez v1, :cond_291
9373 + if-eqz v2, :cond_291
9375 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9377 + move-result v1
9379 + if-eqz v1, :cond_291
9381 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9383 + :cond_291
9384 + monitor-exit v4
9386 + goto :goto_23f
9388 + :catchall_293
9389 + move-exception v1
9391 + monitor-exit v4
9392 + :try_end_295
9393 + .catchall {:try_start_26e .. :try_end_295} :catchall_293
9395 + throw v1
9397 + :catchall_296
9398 + move-exception v1
9400 + :try_start_297
9401 + monitor-exit v4
9402 + :try_end_298
9403 + .catchall {:try_start_297 .. :try_end_298} :catchall_296
9405 + throw v1
9407 + :catchall_299
9408 + move-exception v1
9410 + move-object/from16 v3, v43
9412 + :goto_29c
9413 + if-eqz v41, :cond_2a1
9415 + invoke-interface/range {v41 .. v41}, Landroid/database/Cursor;->close()V
9417 + :cond_2a1
9418 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9420 + monitor-enter v4
9422 + :try_start_2a4
9423 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9425 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9427 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9429 + move-result v5
9431 + add-int/lit8 v5, v5, -0x1
9433 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9435 + move-result-object v5
9437 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9439 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9441 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
9443 + move-result v5
9445 + if-nez v5, :cond_2c7
9447 + if-eqz v2, :cond_2c7
9449 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9451 + move-result v5
9453 + if-eqz v5, :cond_2c7
9455 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9457 + :cond_2c7
9458 + monitor-exit v4
9459 + :try_end_2c8
9460 + .catchall {:try_start_2a4 .. :try_end_2c8} :catchall_2c9
9462 + throw v1
9464 + :catchall_2c9
9465 + move-exception v1
9467 + :try_start_2ca
9468 + monitor-exit v4
9469 + :try_end_2cb
9470 + .catchall {:try_start_2ca .. :try_end_2cb} :catchall_2c9
9472 + throw v1
9474 + :catchall_2cc
9475 + move-exception v1
9477 + goto :goto_29c
9479 + :catch_2ce
9480 + move-exception v42
9482 + move-object/from16 v3, v43
9484 + goto/16 :goto_1ef
9486 + :cond_2d3
9487 + move-object/from16 v3, v43
9489 + goto :goto_266
9490 +.end method
9492 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
9493 + .registers 15
9495 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9497 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9499 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9501 + move-result v0
9503 + add-int/lit8 v0, v0, 0x1
9505 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9507 + move-result-object v0
9509 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9511 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9513 + move-result-object v1
9515 + const/4 v12, 0x0
9517 + :try_start_15
9518 + const-string/jumbo v2, "map"
9520 + const/4 v0, 0x1
9522 + new-array v3, v0, [Ljava/lang/String;
9524 + const/4 v0, 0x0
9526 + const-string/jumbo v4, "value"
9528 + aput-object v4, v3, v0
9530 + const-string/jumbo v4, "name=?"
9532 + const/4 v0, 0x1
9534 + new-array v5, v0, [Ljava/lang/String;
9536 + const/4 v0, 0x0
9538 + aput-object p1, v5, v0
9540 + const/4 v6, 0x0
9542 + const/4 v7, 0x0
9544 + const/4 v8, 0x0
9546 + const/4 v9, 0x0
9548 + move-object v0, p0
9550 + 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;
9552 + move-result-object v10
9554 + if-eqz v10, :cond_77
9556 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
9558 + move-result v0
9560 + if-lez v0, :cond_77
9562 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
9564 + move-result v0
9566 + if-eqz v0, :cond_77
9568 + const-string/jumbo v0, "value"
9570 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
9572 + move-result v0
9574 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9576 + move-result-object v12
9578 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
9579 + :try_end_4f
9580 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
9582 + :goto_4f
9583 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9585 + monitor-enter v2
9587 + :try_start_52
9588 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9590 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9592 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9594 + move-result v0
9596 + add-int/lit8 v0, v0, -0x1
9598 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9600 + move-result-object v0
9602 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9604 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9606 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
9608 + move-result v0
9610 + if-nez v0, :cond_75
9612 + if-eqz v1, :cond_75
9614 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9616 + move-result v0
9618 + if-eqz v0, :cond_75
9620 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9622 + :cond_75
9623 + monitor-exit v2
9624 + :try_end_76
9625 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
9627 + return-object v12
9629 + :cond_77
9630 + :try_start_77
9631 + const-string v0, "PrivacyPersistenceAdapter"
9633 + new-instance v2, Ljava/lang/StringBuilder;
9635 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9637 + const-string v3, "getValue - could not get value for name: "
9639 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9641 + move-result-object v2
9643 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9645 + move-result-object v2
9647 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9649 + move-result-object v2
9651 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
9652 + :try_end_8f
9653 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
9655 + goto :goto_4f
9657 + :catch_90
9658 + move-exception v11
9660 + const-string v0, "PrivacyPersistenceAdapter"
9662 + new-instance v2, Ljava/lang/StringBuilder;
9664 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9666 + const-string v3, "getValue - could not get value for name: "
9668 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9670 + move-result-object v2
9672 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9674 + move-result-object v2
9676 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9678 + move-result-object v2
9680 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9682 + goto :goto_4f
9684 + :catchall_aa
9685 + move-exception v0
9687 + :try_start_ab
9688 + monitor-exit v2
9689 + :try_end_ac
9690 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
9692 + throw v0
9693 +.end method
9695 +.method public purgeSettings()Z
9696 + .registers 28
9698 + const/16 v25, 0x1
9700 + new-instance v13, Ljava/util/ArrayList;
9702 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
9704 + move-object/from16 v0, p0
9706 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
9708 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
9710 + move-result-object v21
9712 + const/16 v2, 0x80
9714 + move-object/from16 v0, v21
9716 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
9718 + move-result-object v19
9720 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
9722 + move-result-object v18
9724 + :goto_1b
9725 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
9727 + move-result v2
9729 + if-eqz v2, :cond_2d
9731 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
9733 + move-result-object v12
9735 + check-cast v12, Landroid/content/pm/ApplicationInfo;
9737 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
9739 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
9741 + goto :goto_1b
9743 + :cond_2d
9744 + new-instance v26, Ljava/io/File;
9746 + const-string v2, "/data/system/privacy"
9748 + move-object/from16 v0, v26
9750 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9752 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
9754 + move-result-object v15
9756 + array-length v0, v15
9758 + move/from16 v20, v0
9760 + const/16 v18, 0x0
9762 + :goto_3f
9763 + move/from16 v0, v18
9765 + move/from16 v1, v20
9767 + if-ge v0, v1, :cond_5d
9769 + aget-object v23, v15, v18
9771 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
9773 + move-result-object v24
9775 + move-object/from16 v0, v24
9777 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9779 + move-result v2
9781 + if-nez v2, :cond_5a
9783 + move-object/from16 v0, p0
9785 + move-object/from16 v1, v23
9787 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
9789 + :cond_5a
9790 + add-int/lit8 v18, v18, 0x1
9792 + goto :goto_3f
9794 + :cond_5d
9795 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9797 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9799 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9801 + move-result v2
9803 + add-int/lit8 v2, v2, 0x1
9805 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9807 + move-result-object v2
9809 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9811 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
9813 + move-result-object v3
9815 + const/16 v16, 0x0
9817 + :try_start_73
9818 + const-string/jumbo v4, "settings"
9820 + const/4 v2, 0x1
9822 + new-array v5, v2, [Ljava/lang/String;
9824 + const/4 v2, 0x0
9826 + const-string/jumbo v6, "packageName"
9828 + aput-object v6, v5, v2
9830 + const/4 v6, 0x0
9832 + const/4 v7, 0x0
9834 + const/4 v8, 0x0
9836 + const/4 v9, 0x0
9838 + const/4 v10, 0x0
9840 + const/4 v11, 0x0
9842 + move-object/from16 v2, p0
9844 + 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;
9846 + move-result-object v16
9848 + new-instance v14, Ljava/util/ArrayList;
9850 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
9852 + :goto_90
9853 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
9855 + move-result v2
9857 + if-eqz v2, :cond_142
9859 + const/4 v2, 0x0
9861 + move-object/from16 v0, v16
9863 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
9865 + move-result-object v24
9867 + move-object/from16 v0, v24
9869 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9871 + move-result v2
9873 + if-nez v2, :cond_e7
9875 + move-object/from16 v0, p0
9877 + move-object/from16 v1, v24
9879 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9880 + :try_end_ac
9881 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
9882 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
9884 + goto :goto_90
9886 + :catch_ad
9887 + move-exception v17
9889 + :try_start_ae
9890 + const-string v2, "PrivacyPersistenceAdapter"
9892 + const-string/jumbo v4, "purgeSettings - purging DB failed"
9894 + move-object/from16 v0, v17
9896 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
9897 + :try_end_b8
9898 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
9900 + const/16 v25, 0x0
9902 + if-eqz v16, :cond_bf
9904 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9906 + :cond_bf
9907 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9909 + monitor-enter v4
9911 + :try_start_c2
9912 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9914 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9916 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9918 + move-result v2
9920 + add-int/lit8 v2, v2, -0x1
9922 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
9924 + move-result-object v2
9926 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9928 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
9930 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
9932 + move-result v2
9934 + if-nez v2, :cond_e5
9936 + if-eqz v3, :cond_e5
9938 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
9940 + move-result v2
9942 + if-eqz v2, :cond_e5
9944 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
9946 + :cond_e5
9947 + monitor-exit v4
9948 + :try_end_e6
9949 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
9951 + :goto_e6
9952 + return v25
9954 + :cond_e7
9955 + :try_start_e7
9956 + move-object/from16 v0, v24
9958 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
9960 + move-result v2
9962 + if-eqz v2, :cond_135
9964 + const/4 v2, 0x0
9966 + move-object/from16 v0, p0
9968 + move-object/from16 v1, v24
9970 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
9972 + move-result-object v22
9974 + move-object/from16 v0, p0
9976 + move-object/from16 v1, v24
9978 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
9980 + move-object/from16 v0, p0
9982 + move-object/from16 v1, v22
9984 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9985 + :try_end_106
9986 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
9987 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
9989 + goto :goto_90
9991 + :catchall_107
9992 + move-exception v2
9994 + if-eqz v16, :cond_10d
9996 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
9998 + :cond_10d
9999 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10001 + monitor-enter v4
10003 + :try_start_110
10004 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10006 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10008 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10010 + move-result v5
10012 + add-int/lit8 v5, v5, -0x1
10014 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10016 + move-result-object v5
10018 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10020 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10022 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10024 + move-result v5
10026 + if-nez v5, :cond_133
10028 + if-eqz v3, :cond_133
10030 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10032 + move-result v5
10034 + if-eqz v5, :cond_133
10036 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10038 + :cond_133
10039 + monitor-exit v4
10040 + :try_end_134
10041 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
10043 + throw v2
10045 + :cond_135
10046 + :try_start_135
10047 + move-object/from16 v0, v24
10049 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
10050 + :try_end_13a
10051 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
10052 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
10054 + goto/16 :goto_90
10056 + :catchall_13c
10057 + move-exception v2
10059 + :try_start_13d
10060 + monitor-exit v4
10061 + :try_end_13e
10062 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
10064 + throw v2
10066 + :catchall_13f
10067 + move-exception v2
10069 + :try_start_140
10070 + monitor-exit v4
10071 + :try_end_141
10072 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
10074 + throw v2
10076 + :cond_142
10077 + if-eqz v16, :cond_147
10079 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
10081 + :cond_147
10082 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10084 + monitor-enter v4
10086 + :try_start_14a
10087 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10089 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10091 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
10093 + move-result v2
10095 + add-int/lit8 v2, v2, -0x1
10097 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10099 + move-result-object v2
10101 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10103 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10105 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
10107 + move-result v2
10109 + if-nez v2, :cond_16d
10111 + if-eqz v3, :cond_16d
10113 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10115 + move-result v2
10117 + if-eqz v2, :cond_16d
10119 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10121 + :cond_16d
10122 + monitor-exit v4
10124 + goto/16 :goto_e6
10126 + :catchall_170
10127 + move-exception v2
10129 + monitor-exit v4
10130 + :try_end_172
10131 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
10133 + throw v2
10134 +.end method
10136 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
10137 + .registers 27
10139 + monitor-enter p0
10141 + const/16 v18, 0x1
10143 + :try_start_3
10144 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10146 + move-result-object v17
10148 + if-eqz v17, :cond_f
10150 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->isEmpty()Z
10152 + move-result v3
10154 + if-eqz v3, :cond_1a
10156 + :cond_f
10157 + const-string v3, "PrivacyPersistenceAdapter"
10159 + const-string/jumbo v4, "saveSettings - either package name, UID or both is missing"
10161 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
10162 + :try_end_17
10163 + .catchall {:try_start_3 .. :try_end_17} :catchall_2c2
10165 + const/4 v3, 0x0
10167 + :goto_18
10168 + monitor-exit p0
10170 + return v3
10172 + :cond_1a
10173 + :try_start_1a
10174 + new-instance v23, Landroid/content/ContentValues;
10176 + invoke-direct/range {v23 .. v23}, Landroid/content/ContentValues;-><init>()V
10178 + const-string/jumbo v3, "packageName"
10180 + move-object/from16 v0, v23
10182 + move-object/from16 v1, v17
10184 + invoke-virtual {v0, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10186 + const-string/jumbo v3, "uid"
10188 + const/4 v4, -0x1
10190 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10192 + move-result-object v4
10194 + move-object/from16 v0, v23
10196 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10198 + const-string v3, "deviceIdSetting"
10200 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
10202 + move-result v4
10204 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10206 + move-result-object v4
10208 + move-object/from16 v0, v23
10210 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10212 + const-string v3, "deviceId"
10214 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
10216 + move-result-object v4
10218 + move-object/from16 v0, v23
10220 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10222 + const-string v3, "line1NumberSetting"
10224 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
10226 + move-result v4
10228 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10230 + move-result-object v4
10232 + move-object/from16 v0, v23
10234 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10236 + const-string v3, "line1Number"
10238 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
10240 + move-result-object v4
10242 + move-object/from16 v0, v23
10244 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10246 + const-string v3, "locationGpsSetting"
10248 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
10250 + move-result v4
10252 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10254 + move-result-object v4
10256 + move-object/from16 v0, v23
10258 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10260 + const-string v3, "locationGpsLat"
10262 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
10264 + move-result-object v4
10266 + move-object/from16 v0, v23
10268 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10270 + const-string v3, "locationGpsLon"
10272 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
10274 + move-result-object v4
10276 + move-object/from16 v0, v23
10278 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10280 + const-string v3, "locationNetworkSetting"
10282 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
10284 + move-result v4
10286 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10288 + move-result-object v4
10290 + move-object/from16 v0, v23
10292 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10294 + const-string v3, "locationNetworkLat"
10296 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
10298 + move-result-object v4
10300 + move-object/from16 v0, v23
10302 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10304 + const-string v3, "locationNetworkLon"
10306 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
10308 + move-result-object v4
10310 + move-object/from16 v0, v23
10312 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10314 + const-string/jumbo v3, "networkInfoSetting"
10316 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
10318 + move-result v4
10320 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10322 + move-result-object v4
10324 + move-object/from16 v0, v23
10326 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10328 + const-string/jumbo v3, "simInfoSetting"
10330 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
10332 + move-result v4
10334 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10336 + move-result-object v4
10338 + move-object/from16 v0, v23
10340 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10342 + const-string/jumbo v3, "simSerialNumberSetting"
10344 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
10346 + move-result v4
10348 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10350 + move-result-object v4
10352 + move-object/from16 v0, v23
10354 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10356 + const-string/jumbo v3, "simSerialNumber"
10358 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
10360 + move-result-object v4
10362 + move-object/from16 v0, v23
10364 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10366 + const-string/jumbo v3, "subscriberIdSetting"
10368 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
10370 + move-result v4
10372 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10374 + move-result-object v4
10376 + move-object/from16 v0, v23
10378 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10380 + const-string/jumbo v3, "subscriberId"
10382 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
10384 + move-result-object v4
10386 + move-object/from16 v0, v23
10388 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
10390 + const-string v3, "accountsSetting"
10392 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
10394 + move-result v4
10396 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10398 + move-result-object v4
10400 + move-object/from16 v0, v23
10402 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10404 + const-string v3, "accountsAuthTokensSetting"
10406 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
10408 + move-result v4
10410 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10412 + move-result-object v4
10414 + move-object/from16 v0, v23
10416 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10418 + const-string/jumbo v3, "outgoingCallsSetting"
10420 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
10422 + move-result v4
10424 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10426 + move-result-object v4
10428 + move-object/from16 v0, v23
10430 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10432 + const-string v3, "incomingCallsSetting"
10434 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
10436 + move-result v4
10438 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10440 + move-result-object v4
10442 + move-object/from16 v0, v23
10444 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10446 + const-string v3, "contactsSetting"
10448 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
10450 + move-result v4
10452 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10454 + move-result-object v4
10456 + move-object/from16 v0, v23
10458 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10460 + const-string v3, "calendarSetting"
10462 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
10464 + move-result v4
10466 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10468 + move-result-object v4
10470 + move-object/from16 v0, v23
10472 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10474 + const-string/jumbo v3, "mmsSetting"
10476 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
10478 + move-result v4
10480 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10482 + move-result-object v4
10484 + move-object/from16 v0, v23
10486 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10488 + const-string/jumbo v3, "smsSetting"
10490 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
10492 + move-result v4
10494 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10496 + move-result-object v4
10498 + move-object/from16 v0, v23
10500 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10502 + const-string v3, "callLogSetting"
10504 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
10506 + move-result v4
10508 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10510 + move-result-object v4
10512 + move-object/from16 v0, v23
10514 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10516 + const-string v3, "bookmarksSetting"
10518 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
10520 + move-result v4
10522 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10524 + move-result-object v4
10526 + move-object/from16 v0, v23
10528 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10530 + const-string/jumbo v3, "systemLogsSetting"
10532 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10534 + move-result v4
10536 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10538 + move-result-object v4
10540 + move-object/from16 v0, v23
10542 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10544 + const-string/jumbo v3, "notificationSetting"
10546 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
10548 + move-result v4
10550 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10552 + move-result-object v4
10554 + move-object/from16 v0, v23
10556 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10558 + const-string v3, "intentBootCompletedSetting"
10560 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
10562 + move-result v4
10564 + invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
10566 + move-result-object v4
10568 + move-object/from16 v0, v23
10570 + invoke-virtual {v0, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
10572 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10574 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10576 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10578 + move-result v3
10580 + add-int/lit8 v3, v3, 0x1
10582 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10584 + move-result-object v3
10586 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10588 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10590 + move-result-object v2
10592 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
10593 + :try_end_1eb
10594 + .catchall {:try_start_1a .. :try_end_1eb} :catchall_2c2
10596 + const/4 v11, 0x0
10598 + :try_start_1ec
10599 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
10601 + move-result-object v15
10603 + if-eqz v15, :cond_2c8
10605 + const-string/jumbo v3, "settings"
10607 + const-string v4, "_id=?"
10609 + const/4 v5, 0x1
10611 + new-array v5, v5, [Ljava/lang/String;
10613 + const/4 v6, 0x0
10615 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10617 + move-result-object v7
10619 + aput-object v7, v5, v6
10621 + move-object/from16 v0, v23
10623 + 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
10625 + move-result v3
10627 + const/4 v4, 0x1
10629 + if-ge v3, v4, :cond_249
10631 + new-instance v3, Ljava/lang/Exception;
10633 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10635 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10637 + throw v3
10638 + :try_end_213
10639 + .catchall {:try_start_1ec .. :try_end_213} :catchall_291
10640 + .catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_213} :catch_213
10642 + :catch_213
10643 + move-exception v13
10645 + const/16 v18, 0x0
10647 + :try_start_216
10648 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10650 + if-eqz v11, :cond_21e
10652 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10654 + :cond_21e
10655 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10657 + monitor-enter v4
10658 + :try_end_221
10659 + .catchall {:try_start_216 .. :try_end_221} :catchall_2c2
10661 + :try_start_221
10662 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10664 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10666 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10668 + move-result v3
10670 + add-int/lit8 v3, v3, -0x1
10672 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10674 + move-result-object v3
10676 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10678 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10680 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
10682 + move-result v3
10684 + if-nez v3, :cond_244
10686 + if-eqz v2, :cond_244
10688 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10690 + move-result v3
10692 + if-eqz v3, :cond_244
10694 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10696 + :cond_244
10697 + monitor-exit v4
10698 + :try_end_245
10699 + .catchall {:try_start_221 .. :try_end_245} :catchall_4ca
10701 + :goto_245
10702 + move/from16 v3, v18
10704 + goto/16 :goto_18
10706 + :cond_249
10707 + :try_start_249
10708 + const-string v3, "allowed_contacts"
10710 + const-string/jumbo v4, "settings_id=?"
10712 + const/4 v5, 0x1
10714 + new-array v5, v5, [Ljava/lang/String;
10716 + const/4 v6, 0x0
10718 + invoke-virtual {v15}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10720 + move-result-object v7
10722 + aput-object v7, v5, v6
10724 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10726 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10728 + move-result-object v10
10730 + if-eqz v10, :cond_3f2
10732 + new-instance v12, Landroid/content/ContentValues;
10734 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10736 + const/4 v14, 0x0
10738 + :goto_267
10739 + array-length v3, v10
10741 + if-ge v14, v3, :cond_3f2
10743 + const-string/jumbo v3, "settings_id"
10745 + invoke-virtual {v12, v3, v15}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10747 + const-string v3, "contact_id"
10749 + aget v4, v10, v14
10751 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10753 + move-result-object v4
10755 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10757 + const-string v3, "allowed_contacts"
10759 + const/4 v4, 0x0
10761 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
10763 + move-result-wide v3
10765 + const-wide/16 v5, -0x1
10767 + cmp-long v3, v3, v5
10769 + if-nez v3, :cond_2c5
10771 + new-instance v3, Ljava/lang/Exception;
10773 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
10775 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10777 + throw v3
10778 + :try_end_291
10779 + .catchall {:try_start_249 .. :try_end_291} :catchall_291
10780 + .catch Ljava/lang/Exception; {:try_start_249 .. :try_end_291} :catch_213
10782 + :catchall_291
10783 + move-exception v3
10785 + :try_start_292
10786 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
10788 + if-eqz v11, :cond_29a
10790 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
10792 + :cond_29a
10793 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10795 + monitor-enter v4
10796 + :try_end_29d
10797 + .catchall {:try_start_292 .. :try_end_29d} :catchall_2c2
10799 + :try_start_29d
10800 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10802 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10804 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10806 + move-result v5
10808 + add-int/lit8 v5, v5, -0x1
10810 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10812 + move-result-object v5
10814 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10816 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10818 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
10820 + move-result v5
10822 + if-nez v5, :cond_2c0
10824 + if-eqz v2, :cond_2c0
10826 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10828 + move-result v5
10830 + if-eqz v5, :cond_2c0
10832 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10834 + :cond_2c0
10835 + monitor-exit v4
10836 + :try_end_2c1
10837 + .catchall {:try_start_29d .. :try_end_2c1} :catchall_4cd
10839 + :try_start_2c1
10840 + throw v3
10841 + :try_end_2c2
10842 + .catchall {:try_start_2c1 .. :try_end_2c2} :catchall_2c2
10844 + :catchall_2c2
10845 + move-exception v3
10847 + monitor-exit p0
10849 + throw v3
10851 + :cond_2c5
10852 + add-int/lit8 v14, v14, 0x1
10854 + goto :goto_267
10856 + :cond_2c8
10857 + :try_start_2c8
10858 + const-string/jumbo v3, "settings"
10860 + const/4 v4, 0x1
10862 + new-array v4, v4, [Ljava/lang/String;
10864 + const/4 v5, 0x0
10866 + const-string v6, "_id"
10868 + aput-object v6, v4, v5
10870 + const-string/jumbo v5, "packageName=?"
10872 + const/4 v6, 0x1
10874 + new-array v6, v6, [Ljava/lang/String;
10876 + const/4 v7, 0x0
10878 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10880 + move-result-object v8
10882 + aput-object v8, v6, v7
10884 + const/4 v7, 0x0
10886 + const/4 v8, 0x0
10888 + const/4 v9, 0x0
10890 + 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;
10892 + move-result-object v11
10894 + if-eqz v11, :cond_3e7
10896 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
10898 + move-result v3
10900 + const/4 v4, 0x1
10902 + if-ne v3, v4, :cond_36e
10904 + const-string/jumbo v3, "settings"
10906 + const-string/jumbo v4, "packageName=?"
10908 + const/4 v5, 0x1
10910 + new-array v5, v5, [Ljava/lang/String;
10912 + const/4 v6, 0x0
10914 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
10916 + move-result-object v7
10918 + aput-object v7, v5, v6
10920 + move-object/from16 v0, v23
10922 + 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
10924 + move-result v3
10926 + const/4 v4, 0x1
10928 + if-ge v3, v4, :cond_312
10930 + new-instance v3, Ljava/lang/Exception;
10932 + const-string/jumbo v4, "saveSettings - failed to update database entry"
10934 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
10936 + throw v3
10938 + :cond_312
10939 + invoke-interface {v11}, Landroid/database/Cursor;->moveToFirst()Z
10941 + move-result v3
10943 + if-eqz v3, :cond_3f2
10945 + const/4 v3, 0x0
10947 + invoke-interface {v11, v3}, Landroid/database/Cursor;->getInt(I)I
10949 + move-result v3
10951 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10953 + move-result-object v16
10955 + const-string v3, "allowed_contacts"
10957 + const-string/jumbo v4, "settings_id=?"
10959 + const/4 v5, 0x1
10961 + new-array v5, v5, [Ljava/lang/String;
10963 + const/4 v6, 0x0
10965 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
10967 + move-result-object v7
10969 + aput-object v7, v5, v6
10971 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
10973 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
10975 + move-result-object v10
10977 + if-eqz v10, :cond_3f2
10979 + new-instance v12, Landroid/content/ContentValues;
10981 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
10983 + const/4 v14, 0x0
10985 + :goto_33f
10986 + array-length v3, v10
10988 + if-ge v14, v3, :cond_3f2
10990 + const-string/jumbo v3, "settings_id"
10992 + move-object/from16 v0, v16
10994 + invoke-virtual {v12, v3, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
10996 + const-string v3, "contact_id"
10998 + aget v4, v10, v14
11000 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11002 + move-result-object v4
11004 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
11006 + const-string v3, "allowed_contacts"
11008 + const/4 v4, 0x0
11010 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11012 + move-result-wide v3
11014 + const-wide/16 v5, -0x1
11016 + cmp-long v3, v3, v5
11018 + if-nez v3, :cond_36b
11020 + new-instance v3, Ljava/lang/Exception;
11022 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
11024 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11026 + throw v3
11028 + :cond_36b
11029 + add-int/lit8 v14, v14, 0x1
11031 + goto :goto_33f
11033 + :cond_36e
11034 + invoke-interface {v11}, Landroid/database/Cursor;->getCount()I
11036 + move-result v3
11038 + if-nez v3, :cond_3dc
11040 + const-string/jumbo v3, "settings"
11042 + const/4 v4, 0x0
11044 + move-object/from16 v0, v23
11046 + invoke-virtual {v2, v3, v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11048 + move-result-wide v19
11050 + const-wide/16 v3, -0x1
11052 + cmp-long v3, v19, v3
11054 + if-nez v3, :cond_38d
11056 + new-instance v3, Ljava/lang/Exception;
11058 + const-string/jumbo v4, "saveSettings - failed to insert new record into DB"
11060 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11062 + throw v3
11064 + :cond_38d
11065 + const-string v3, "allowed_contacts"
11067 + const-string/jumbo v4, "settings_id=?"
11069 + const/4 v5, 0x1
11071 + new-array v5, v5, [Ljava/lang/String;
11073 + const/4 v6, 0x0
11075 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
11077 + move-result-object v7
11079 + aput-object v7, v5, v6
11081 + invoke-virtual {v2, v3, v4, v5}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
11083 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
11085 + move-result-object v10
11087 + if-eqz v10, :cond_3f2
11089 + new-instance v12, Landroid/content/ContentValues;
11091 + invoke-direct {v12}, Landroid/content/ContentValues;-><init>()V
11093 + const/4 v14, 0x0
11095 + :goto_3ab
11096 + array-length v3, v10
11098 + if-ge v14, v3, :cond_3f2
11100 + const-string/jumbo v3, "settings_id"
11102 + invoke-static/range {v19 .. v20}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
11104 + move-result-object v4
11106 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
11108 + const-string v3, "contact_id"
11110 + aget v4, v10, v14
11112 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11114 + move-result-object v4
11116 + invoke-virtual {v12, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
11118 + const-string v3, "allowed_contacts"
11120 + const/4 v4, 0x0
11122 + invoke-virtual {v2, v3, v4, v12}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11124 + move-result-wide v3
11126 + const-wide/16 v5, -0x1
11128 + cmp-long v3, v3, v5
11130 + if-nez v3, :cond_3d9
11132 + new-instance v3, Ljava/lang/Exception;
11134 + const-string/jumbo v4, "saveSettings - failed to update database entry (contacts)"
11136 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11138 + throw v3
11140 + :cond_3d9
11141 + add-int/lit8 v14, v14, 0x1
11143 + goto :goto_3ab
11145 + :cond_3dc
11146 + const/16 v18, 0x0
11148 + new-instance v3, Ljava/lang/Exception;
11150 + const-string/jumbo v4, "saveSettings - duplicate entries in the privacy.db"
11152 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11154 + throw v3
11156 + :cond_3e7
11157 + const/16 v18, 0x0
11159 + new-instance v3, Ljava/lang/Exception;
11161 + const-string/jumbo v4, "saveSettings - cursor is null, database access failed"
11163 + invoke-direct {v3, v4}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11165 + throw v3
11167 + :cond_3f2
11168 + new-instance v21, Ljava/io/File;
11170 + new-instance v3, Ljava/lang/StringBuilder;
11172 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
11174 + const-string v4, "/data/system/privacy/"
11176 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11178 + move-result-object v3
11180 + move-object/from16 v0, v17
11182 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11184 + move-result-object v3
11186 + const-string v4, "/"
11188 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11190 + move-result-object v3
11192 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11194 + move-result-object v3
11196 + move-object/from16 v0, v21
11198 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11200 + new-instance v22, Ljava/io/File;
11202 + new-instance v3, Ljava/lang/StringBuilder;
11204 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
11206 + const-string v4, "/data/system/privacy/"
11208 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11210 + move-result-object v3
11212 + move-object/from16 v0, v17
11214 + invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11216 + move-result-object v3
11218 + const-string v4, "/"
11220 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11222 + move-result-object v3
11224 + const-string v4, "/systemLogsSetting"
11226 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11228 + move-result-object v3
11230 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11232 + move-result-object v3
11234 + move-object/from16 v0, v22
11236 + invoke-direct {v0, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11237 + :try_end_43c
11238 + .catchall {:try_start_2c8 .. :try_end_43c} :catchall_291
11239 + .catch Ljava/lang/Exception; {:try_start_2c8 .. :try_end_43c} :catch_213
11241 + :try_start_43c
11242 + invoke-virtual/range {v21 .. v21}, Ljava/io/File;->mkdirs()Z
11244 + const/4 v3, 0x1
11246 + const/4 v4, 0x0
11248 + move-object/from16 v0, v21
11250 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
11252 + const/4 v3, 0x1
11254 + const/4 v4, 0x0
11256 + move-object/from16 v0, v21
11258 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setExecutable(ZZ)Z
11260 + invoke-virtual/range {v22 .. v22}, Ljava/io/File;->createNewFile()Z
11262 + const/4 v3, 0x1
11264 + const/4 v4, 0x0
11266 + move-object/from16 v0, v22
11268 + invoke-virtual {v0, v3, v4}, Ljava/io/File;->setReadable(ZZ)Z
11270 + new-instance v24, Ljava/io/OutputStreamWriter;
11272 + new-instance v3, Ljava/io/FileOutputStream;
11274 + move-object/from16 v0, v22
11276 + invoke-direct {v3, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
11278 + move-object/from16 v0, v24
11280 + invoke-direct {v0, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
11282 + new-instance v3, Ljava/lang/StringBuilder;
11284 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
11286 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
11288 + move-result v4
11290 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11292 + move-result-object v3
11294 + const-string v4, ""
11296 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11298 + move-result-object v3
11300 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11302 + move-result-object v3
11304 + move-object/from16 v0, v24
11306 + invoke-virtual {v0, v3}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
11308 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->flush()V
11310 + invoke-virtual/range {v24 .. v24}, Ljava/io/OutputStreamWriter;->close()V
11311 + :try_end_487
11312 + .catchall {:try_start_43c .. :try_end_487} :catchall_291
11313 + .catch Ljava/io/IOException; {:try_start_43c .. :try_end_487} :catch_4be
11314 + .catch Ljava/lang/Exception; {:try_start_43c .. :try_end_487} :catch_213
11316 + :try_start_487
11317 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11318 + :try_end_48a
11319 + .catchall {:try_start_487 .. :try_end_48a} :catchall_291
11320 + .catch Ljava/lang/Exception; {:try_start_487 .. :try_end_48a} :catch_213
11322 + :try_start_48a
11323 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11325 + if-eqz v11, :cond_492
11327 + invoke-interface {v11}, Landroid/database/Cursor;->close()V
11329 + :cond_492
11330 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11332 + monitor-enter v4
11333 + :try_end_495
11334 + .catchall {:try_start_48a .. :try_end_495} :catchall_2c2
11336 + :try_start_495
11337 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11339 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11341 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11343 + move-result v3
11345 + add-int/lit8 v3, v3, -0x1
11347 + invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
11349 + move-result-object v3
11351 + sput-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11353 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11355 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11357 + move-result v3
11359 + if-nez v3, :cond_4b8
11361 + if-eqz v2, :cond_4b8
11363 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11365 + move-result v3
11367 + if-eqz v3, :cond_4b8
11369 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11371 + :cond_4b8
11372 + monitor-exit v4
11374 + goto/16 :goto_245
11376 + :catchall_4bb
11377 + move-exception v3
11379 + monitor-exit v4
11380 + :try_end_4bd
11381 + .catchall {:try_start_495 .. :try_end_4bd} :catchall_4bb
11383 + :try_start_4bd
11384 + throw v3
11385 + :try_end_4be
11386 + .catchall {:try_start_4bd .. :try_end_4be} :catchall_2c2
11388 + :catch_4be
11389 + move-exception v13
11391 + const/16 v18, 0x0
11393 + :try_start_4c1
11394 + new-instance v3, Ljava/lang/Exception;
11396 + const-string/jumbo v4, "saveSettings - could not write settings to file"
11398 + invoke-direct {v3, v4, v13}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
11400 + throw v3
11401 + :try_end_4ca
11402 + .catchall {:try_start_4c1 .. :try_end_4ca} :catchall_291
11403 + .catch Ljava/lang/Exception; {:try_start_4c1 .. :try_end_4ca} :catch_213
11405 + :catchall_4ca
11406 + move-exception v3
11408 + :try_start_4cb
11409 + monitor-exit v4
11410 + :try_end_4cc
11411 + .catchall {:try_start_4cb .. :try_end_4cc} :catchall_4ca
11413 + :try_start_4cc
11414 + throw v3
11415 + :try_end_4cd
11416 + .catchall {:try_start_4cc .. :try_end_4cd} :catchall_2c2
11418 + :catchall_4cd
11419 + move-exception v3
11421 + :try_start_4ce
11422 + monitor-exit v4
11423 + :try_end_4cf
11424 + .catchall {:try_start_4ce .. :try_end_4cf} :catchall_4cd
11426 + :try_start_4cf
11427 + throw v3
11428 + :try_end_4d0
11429 + .catchall {:try_start_4cf .. :try_end_4d0} :catchall_2c2
11430 +.end method
11432 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
11433 + .registers 10
11435 + monitor-enter p0
11437 + :try_start_1
11438 + const-string v3, "PrivacyPersistenceAdapter"
11440 + new-instance v4, Ljava/lang/StringBuilder;
11442 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11444 + const-string/jumbo v5, "setValue - name "
11446 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11448 + move-result-object v4
11450 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11452 + move-result-object v4
11454 + const-string v5, " value "
11456 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11458 + move-result-object v4
11460 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11462 + move-result-object v4
11464 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11466 + move-result-object v4
11468 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11470 + new-instance v2, Landroid/content/ContentValues;
11472 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
11474 + const-string/jumbo v3, "name"
11476 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11478 + const-string/jumbo v3, "value"
11480 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
11482 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11484 + move-result-object v0
11486 + const-string/jumbo v3, "map"
11488 + const/4 v4, 0x0
11490 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
11492 + move-result-wide v3
11494 + const-wide/16 v5, -0x1
11496 + cmp-long v3, v3, v5
11498 + if-eqz v3, :cond_5d
11500 + const/4 v1, 0x1
11502 + :goto_48
11503 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
11505 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
11507 + move-result v3
11509 + if-nez v3, :cond_5b
11511 + if-eqz v0, :cond_5b
11513 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11515 + move-result v3
11517 + if-eqz v3, :cond_5b
11519 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11520 + :try_end_5b
11521 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
11523 + :cond_5b
11524 + monitor-exit p0
11526 + return v1
11528 + :cond_5d
11529 + const/4 v1, 0x0
11531 + goto :goto_48
11533 + :catchall_5f
11534 + move-exception v3
11536 + monitor-exit p0
11538 + throw v3
11539 +.end method
11540 diff -Npru stock-framework/smali/android/privacy/PrivacySettings$1.smali pdroid-framework/smali/android/privacy/PrivacySettings$1.smali
11541 --- stock-framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 18:00:00.000000000 -0600
11542 +++ pdroid-framework/smali/android/privacy/PrivacySettings$1.smali 2012-06-14 15:23:33.032293226 -0500
11543 @@ -0,0 +1,77 @@
11544 +.class final Landroid/privacy/PrivacySettings$1;
11545 +.super Ljava/lang/Object;
11546 +.source "PrivacySettings.java"
11548 +# interfaces
11549 +.implements Landroid/os/Parcelable$Creator;
11552 +# annotations
11553 +.annotation system Ldalvik/annotation/EnclosingClass;
11554 + value = Landroid/privacy/PrivacySettings;
11555 +.end annotation
11557 +.annotation system Ldalvik/annotation/InnerClass;
11558 + accessFlags = 0x8
11559 + name = null
11560 +.end annotation
11562 +.annotation system Ldalvik/annotation/Signature;
11563 + value = {
11564 + "Ljava/lang/Object;",
11565 + "Landroid/os/Parcelable$Creator",
11566 + "<",
11567 + "Landroid/privacy/PrivacySettings;",
11568 + ">;"
11570 +.end annotation
11573 +# direct methods
11574 +.method constructor <init>()V
11575 + .registers 1
11577 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
11579 + return-void
11580 +.end method
11583 +# virtual methods
11584 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11585 + .registers 3
11587 + new-instance v0, Landroid/privacy/PrivacySettings;
11589 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
11591 + return-object v0
11592 +.end method
11594 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
11595 + .registers 3
11597 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
11599 + move-result-object v0
11601 + return-object v0
11602 +.end method
11604 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
11605 + .registers 3
11607 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
11609 + return-object v0
11610 +.end method
11612 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
11613 + .registers 3
11615 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
11617 + move-result-object v0
11619 + return-object v0
11620 +.end method
11621 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali
11622 --- stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 18:00:00.000000000 -0600
11623 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-06-14 15:23:33.788296984 -0500
11624 @@ -0,0 +1,535 @@
11625 +.class public final Landroid/privacy/PrivacySettingsManagerService;
11626 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
11627 +.source "PrivacySettingsManagerService.java"
11630 +# static fields
11631 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
11633 +.field private static final VERSION:D = 1.32
11635 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
11637 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
11640 +# instance fields
11641 +.field private bootCompleted:Z
11643 +.field private context:Landroid/content/Context;
11645 +.field private enabled:Z
11647 +.field private notificationsEnabled:Z
11649 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11652 +# direct methods
11653 +.method public constructor <init>(Landroid/content/Context;)V
11654 + .registers 5
11656 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
11658 + const-string v0, "PrivacySettingsManagerService"
11660 + new-instance v1, Ljava/lang/StringBuilder;
11662 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11664 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
11666 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11668 + move-result-object v1
11670 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11672 + move-result-object v2
11674 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11676 + move-result-object v1
11678 + const-string v2, " UID: "
11680 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11682 + move-result-object v1
11684 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11686 + move-result v2
11688 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11690 + move-result-object v1
11692 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11694 + move-result-object v1
11696 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11698 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11700 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
11702 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
11704 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11706 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11708 + const-string v1, "/data/system/privacy"
11710 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11712 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11714 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11716 + const-string v1, "enabled"
11718 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11720 + move-result-object v0
11722 + const-string v1, "1"
11724 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11726 + move-result v0
11728 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11730 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11732 + const-string/jumbo v1, "notifications_enabled"
11734 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
11736 + move-result-object v0
11738 + const-string v1, "1"
11740 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11742 + move-result v0
11744 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11746 + const/4 v0, 0x0
11748 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11750 + return-void
11751 +.end method
11754 +# virtual methods
11755 +.method public addObserver(Ljava/lang/String;)V
11756 + .registers 5
11758 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11760 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11762 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11764 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11766 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11768 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11770 + return-void
11771 +.end method
11773 +.method public deleteSettings(Ljava/lang/String;)Z
11774 + .registers 8
11776 + const/4 v5, 0x1
11778 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11780 + move-result v2
11782 + const/16 v3, 0x3e8
11784 + if-eq v2, v3, :cond_12
11786 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11788 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
11790 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
11792 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11794 + :cond_12
11795 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11797 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
11799 + move-result v1
11801 + new-instance v2, Ljava/lang/StringBuilder;
11803 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11805 + const-string v3, "/data/system/privacy/"
11807 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11809 + move-result-object v2
11811 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11813 + move-result-object v2
11815 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11817 + move-result-object v0
11819 + new-instance v2, Ljava/io/File;
11821 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11823 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
11825 + move-result v2
11827 + if-eqz v2, :cond_3e
11829 + if-ne v1, v5, :cond_3e
11831 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11833 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
11835 + :cond_3d
11836 + :goto_3d
11837 + return v1
11839 + :cond_3e
11840 + if-ne v1, v5, :cond_3d
11842 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11844 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
11846 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
11848 + goto :goto_3d
11849 +.end method
11851 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
11852 + .registers 4
11854 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
11856 + if-nez v0, :cond_12
11858 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11860 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
11862 + move-result-object v0
11864 + const-string v1, "com.privacy.pdroid"
11866 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11868 + move-result v0
11870 + if-eqz v0, :cond_1a
11872 + :cond_12
11873 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11875 + const/4 v1, 0x0
11877 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
11879 + move-result-object v0
11881 + :goto_19
11882 + return-object v0
11884 + :cond_1a
11885 + const/4 v0, 0x0
11887 + goto :goto_19
11888 +.end method
11890 +.method public getVersion()D
11891 + .registers 3
11893 + const-wide v0, 0x3ff51eb851eb851fL
11895 + return-wide v0
11896 +.end method
11898 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
11899 + .registers 8
11901 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
11903 + if-eqz v1, :cond_34
11905 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
11907 + if-eqz v1, :cond_34
11909 + new-instance v0, Landroid/content/Intent;
11911 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
11913 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
11915 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
11917 + const-string/jumbo v1, "packageName"
11919 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11921 + const-string/jumbo v1, "uid"
11923 + const/4 v2, -0x1
11925 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
11927 + const-string v1, "accessMode"
11929 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
11931 + const-string v1, "dataType"
11933 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11935 + const-string/jumbo v1, "output"
11937 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
11939 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11941 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
11943 + :cond_34
11944 + return-void
11945 +.end method
11947 +.method public purgeSettings()Z
11948 + .registers 2
11950 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
11952 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11954 + move-result v0
11956 + return v0
11957 +.end method
11959 +.method public registerObservers()V
11960 + .registers 4
11962 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
11964 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
11966 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
11968 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
11970 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
11972 + const-string v1, "/data/system/privacy"
11974 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
11976 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
11978 + return-void
11979 +.end method
11981 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
11982 + .registers 6
11984 + const-string v1, "PrivacySettingsManagerService"
11986 + new-instance v2, Ljava/lang/StringBuilder;
11988 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11990 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
11992 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11994 + move-result-object v2
11996 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
11998 + move-result v3
12000 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
12002 + move-result-object v2
12004 + const-string v3, ") has sufficient permissions"
12006 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12008 + move-result-object v2
12010 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12012 + move-result-object v2
12014 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
12016 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
12018 + move-result v1
12020 + const/16 v2, 0x3e8
12022 + if-eq v1, v2, :cond_34
12024 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
12026 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
12028 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
12030 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
12032 + :cond_34
12033 + const-string v1, "PrivacySettingsManagerService"
12035 + new-instance v2, Ljava/lang/StringBuilder;
12037 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
12039 + const-string/jumbo v3, "saveSettings - "
12041 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12043 + move-result-object v2
12045 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12047 + move-result-object v2
12049 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12051 + move-result-object v2
12053 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
12055 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
12057 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12059 + move-result v0
12061 + const/4 v1, 0x1
12063 + if-ne v0, v1, :cond_5f
12065 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
12067 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
12069 + move-result-object v2
12071 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
12073 + :cond_5f
12074 + return v0
12075 +.end method
12077 +.method public setBootCompleted()V
12078 + .registers 2
12080 + const/4 v0, 0x1
12082 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
12084 + return-void
12085 +.end method
12087 +.method public setEnabled(Z)Z
12088 + .registers 6
12090 + const/4 v1, 0x1
12092 + if-eqz p1, :cond_12
12094 + const-string v0, "1"
12096 + :goto_5
12097 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
12099 + const-string v3, "enabled"
12101 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
12103 + move-result v2
12105 + if-eqz v2, :cond_15
12107 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
12109 + :goto_11
12110 + return v1
12112 + :cond_12
12113 + return v1
12114 + const-string v0, "0"
12116 + goto :goto_5
12118 + :cond_15
12119 + const/4 v1, 0x0
12121 + goto :goto_11
12122 +.end method
12124 +.method public setNotificationsEnabled(Z)Z
12125 + .registers 6
12127 + const/4 v1, 0x1
12129 + if-eqz p1, :cond_15
12131 + const-string v0, "1"
12133 + :goto_5
12134 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
12136 + const-string/jumbo v3, "notifications_enabled"
12138 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
12140 + move-result v2
12142 + if-eqz v2, :cond_18
12144 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
12146 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
12148 + :goto_14
12149 + return v1
12151 + :cond_15
12152 + const-string v0, "0"
12154 + goto :goto_5
12156 + :cond_18
12157 + const/4 v1, 0x0
12159 + goto :goto_14
12160 +.end method
12161 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManager.smali pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali
12162 --- stock-framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
12163 +++ pdroid-framework/smali/android/privacy/PrivacySettingsManager.smali 2012-06-14 15:23:33.044293268 -0500
12164 @@ -0,0 +1,531 @@
12165 +.class public final Landroid/privacy/PrivacySettingsManager;
12166 +.super Ljava/lang/Object;
12167 +.source "PrivacySettingsManager.java"
12170 +# static fields
12171 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
12173 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
12176 +# instance fields
12177 +.field private service:Landroid/privacy/IPrivacySettingsManager;
12180 +# direct methods
12181 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
12182 + .registers 3
12184 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12186 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12188 + return-void
12189 +.end method
12192 +# virtual methods
12193 +.method public addObserver(Ljava/lang/String;)V
12194 + .registers 5
12196 + :try_start_0
12197 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12199 + if-eqz v1, :cond_a
12201 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12203 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
12205 + :goto_9
12206 + return-void
12208 + :cond_a
12209 + const-string v1, "PrivacySettingsManager"
12211 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12213 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12214 + :try_end_11
12215 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12217 + goto :goto_9
12219 + :catch_12
12220 + move-exception v0
12222 + const-string v1, "PrivacySettingsManager"
12224 + const-string v2, "RemoteException in addObserver: "
12226 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12228 + goto :goto_9
12229 +.end method
12231 +.method public deleteSettings(Ljava/lang/String;)Z
12232 + .registers 3
12234 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
12236 + move-result v0
12238 + return v0
12239 +.end method
12241 +.method public deleteSettings(Ljava/lang/String;I)Z
12242 + .registers 7
12244 + const/4 v1, 0x0
12246 + :try_start_1
12247 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12249 + if-eqz v2, :cond_c
12251 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12253 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
12255 + move-result v1
12257 + :goto_b
12258 + return v1
12260 + :cond_c
12261 + const-string v2, "PrivacySettingsManager"
12263 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
12265 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12266 + :try_end_13
12267 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
12269 + goto :goto_b
12271 + :catch_14
12272 + move-exception v0
12274 + const-string v2, "PrivacySettingsManager"
12276 + const-string v3, "RemoteException in deleteSettings: "
12278 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12280 + goto :goto_b
12281 +.end method
12283 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12284 + .registers 6
12286 + const/4 v1, 0x0
12288 + :try_start_1
12289 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12291 + if-eqz v2, :cond_c
12293 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12295 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12297 + move-result-object v1
12299 + :goto_b
12300 + return-object v1
12302 + :cond_c
12303 + const-string v2, "PrivacySettingsManager"
12305 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
12307 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12308 + :try_end_13
12309 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
12311 + goto :goto_b
12313 + :catch_14
12314 + move-exception v0
12316 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
12318 + goto :goto_b
12319 +.end method
12321 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
12322 + .registers 4
12324 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
12326 + move-result-object v0
12328 + return-object v0
12329 +.end method
12331 +.method public getVersion()D
12332 + .registers 4
12334 + :try_start_0
12335 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12337 + if-eqz v1, :cond_b
12339 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12341 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
12343 + move-result-wide v1
12345 + :goto_a
12346 + return-wide v1
12348 + :cond_b
12349 + const-string v1, "PrivacySettingsManager"
12351 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
12353 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12354 + :try_end_12
12355 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
12357 + :goto_12
12358 + const-wide/16 v1, 0x0
12360 + goto :goto_a
12362 + :catch_15
12363 + move-exception v0
12365 + const-string v1, "PrivacySettingsManager"
12367 + const-string v2, "RemoteException in getVersion: "
12369 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12371 + goto :goto_12
12372 +.end method
12374 +.method public isServiceAvailable()Z
12375 + .registers 2
12377 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12379 + if-eqz v0, :cond_6
12381 + const/4 v0, 0x1
12383 + :goto_5
12384 + return v0
12386 + :cond_6
12387 + const/4 v0, 0x0
12389 + goto :goto_5
12390 +.end method
12392 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12393 + .registers 9
12395 + :try_start_0
12396 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12398 + if-eqz v1, :cond_a
12400 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12402 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
12404 + :goto_9
12405 + return-void
12407 + :cond_a
12408 + const-string v1, "PrivacySettingsManager"
12410 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12412 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12413 + :try_end_11
12414 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12416 + goto :goto_9
12418 + :catch_12
12419 + move-exception v0
12421 + const-string v1, "PrivacySettingsManager"
12423 + const-string v2, "RemoteException in notification: "
12425 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12427 + goto :goto_9
12428 +.end method
12430 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12431 + .registers 13
12433 + move-object v0, p0
12435 + move-object v1, p1
12437 + move v2, p3
12439 + move-object v3, p4
12441 + move-object v4, p5
12443 + move-object v5, p6
12445 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
12447 + return-void
12448 +.end method
12450 +.method public purgeSettings()Z
12451 + .registers 4
12453 + :try_start_0
12454 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12456 + if-eqz v1, :cond_b
12458 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12460 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
12462 + move-result v1
12464 + :goto_a
12465 + return v1
12467 + :cond_b
12468 + const-string v1, "PrivacySettingsManager"
12470 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12472 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12473 + :try_end_12
12474 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
12476 + :goto_12
12477 + const/4 v1, 0x0
12479 + goto :goto_a
12481 + :catch_14
12482 + move-exception v0
12484 + const-string v1, "PrivacySettingsManager"
12486 + const-string v2, "RemoteException in purgeSettings: "
12488 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12490 + goto :goto_12
12491 +.end method
12493 +.method public registerObservers()V
12494 + .registers 4
12496 + :try_start_0
12497 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12499 + if-eqz v1, :cond_a
12501 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12503 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
12505 + :goto_9
12506 + return-void
12508 + :cond_a
12509 + const-string v1, "PrivacySettingsManager"
12511 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
12513 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12514 + :try_end_11
12515 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
12517 + goto :goto_9
12519 + :catch_12
12520 + move-exception v0
12522 + const-string v1, "PrivacySettingsManager"
12524 + const-string v2, "RemoteException in registerObservers: "
12526 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12528 + goto :goto_9
12529 +.end method
12531 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
12532 + .registers 6
12534 + const/4 v1, 0x0
12536 + :try_start_1
12537 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12539 + if-eqz v2, :cond_c
12541 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12543 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
12545 + move-result v1
12547 + :goto_b
12548 + return v1
12550 + :cond_c
12551 + const-string v2, "PrivacySettingsManager"
12553 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
12555 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12556 + :try_end_14
12557 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
12559 + goto :goto_b
12561 + :catch_15
12562 + move-exception v0
12564 + const-string v2, "PrivacySettingsManager"
12566 + const-string v3, "RemoteException in saveSettings: "
12568 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12570 + goto :goto_b
12571 +.end method
12573 +.method public setBootCompleted()V
12574 + .registers 4
12576 + :try_start_0
12577 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12579 + if-eqz v1, :cond_a
12581 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12583 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
12585 + :goto_9
12586 + return-void
12588 + :cond_a
12589 + const-string v1, "PrivacySettingsManager"
12591 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
12593 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12594 + :try_end_12
12595 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
12597 + goto :goto_9
12599 + :catch_13
12600 + move-exception v0
12602 + const-string v1, "PrivacySettingsManager"
12604 + const-string v2, "RemoteException in setBootCompleted: "
12606 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12608 + goto :goto_9
12609 +.end method
12611 +.method public setEnabled(Z)Z
12612 + .registers 5
12614 + :try_start_0
12615 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12617 + if-eqz v1, :cond_b
12619 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12621 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
12623 + move-result v1
12625 + :goto_a
12626 + return v1
12628 + :cond_b
12629 + const-string v1, "PrivacySettingsManager"
12631 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
12633 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12634 + :try_end_13
12635 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12637 + :goto_13
12638 + const/4 v1, 0x0
12640 + goto :goto_a
12642 + :catch_15
12643 + move-exception v0
12645 + const-string v1, "PrivacySettingsManager"
12647 + const-string v2, "RemoteException in setEnabled: "
12649 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12651 + goto :goto_13
12652 +.end method
12654 +.method public setNotificationsEnabled(Z)Z
12655 + .registers 5
12657 + :try_start_0
12658 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12660 + if-eqz v1, :cond_b
12662 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
12664 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
12666 + move-result v1
12668 + :goto_a
12669 + return v1
12671 + :cond_b
12672 + const-string v1, "PrivacySettingsManager"
12674 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
12676 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12677 + :try_end_13
12678 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
12680 + :goto_13
12681 + const/4 v1, 0x0
12683 + goto :goto_a
12685 + :catch_15
12686 + move-exception v0
12688 + const-string v1, "PrivacySettingsManager"
12690 + const-string v2, "RemoteException in setNotificationsEnabled: "
12692 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12694 + goto :goto_13
12695 +.end method
12696 diff -Npru stock-framework/smali/android/privacy/PrivacySettings.smali pdroid-framework/smali/android/privacy/PrivacySettings.smali
12697 --- stock-framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 18:00:00.000000000 -0600
12698 +++ pdroid-framework/smali/android/privacy/PrivacySettings.smali 2012-06-14 15:23:33.040293256 -0500
12699 @@ -0,0 +1,2109 @@
12700 +.class public final Landroid/privacy/PrivacySettings;
12701 +.super Ljava/lang/Object;
12702 +.source "PrivacySettings.java"
12704 +# interfaces
12705 +.implements Landroid/os/Parcelable;
12708 +# static fields
12709 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
12710 + .annotation system Ldalvik/annotation/Signature;
12711 + value = {
12712 + "Landroid/os/Parcelable$Creator",
12713 + "<",
12714 + "Landroid/privacy/PrivacySettings;",
12715 + ">;"
12717 + .end annotation
12718 +.end field
12720 +.field public static final CUSTOM:B = 0x2t
12722 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
12724 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
12726 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
12728 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
12730 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
12732 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
12734 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
12736 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
12738 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
12740 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
12742 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
12744 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
12746 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
12748 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
12750 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
12752 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
12754 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
12756 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
12758 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
12760 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
12762 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
12764 +.field public static final EMPTY:B = 0x1t
12766 +.field public static final RANDOM:B = 0x3t
12768 +.field public static final REAL:B = 0x0t
12770 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
12772 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
12775 +# instance fields
12776 +.field private final _id:Ljava/lang/Integer;
12778 +.field private accountsAuthTokensSetting:B
12780 +.field private accountsSetting:B
12782 +.field private allowedContacts:[I
12784 +.field private bookmarksSetting:B
12786 +.field private calendarSetting:B
12788 +.field private callLogSetting:B
12790 +.field private contactsSetting:B
12792 +.field private deviceId:Ljava/lang/String;
12794 +.field private deviceIdSetting:B
12796 +.field private incomingCallsSetting:B
12798 +.field private intentBootCompletedSetting:B
12800 +.field private line1Number:Ljava/lang/String;
12802 +.field private line1NumberSetting:B
12804 +.field private locationGpsLat:Ljava/lang/String;
12806 +.field private locationGpsLon:Ljava/lang/String;
12808 +.field private locationGpsSetting:B
12810 +.field private locationNetworkLat:Ljava/lang/String;
12812 +.field private locationNetworkLon:Ljava/lang/String;
12814 +.field private locationNetworkSetting:B
12816 +.field private mmsSetting:B
12818 +.field private networkInfoSetting:B
12820 +.field private notificationSetting:B
12822 +.field private outgoingCallsSetting:B
12824 +.field private packageName:Ljava/lang/String;
12826 +.field private simInfoSetting:B
12828 +.field private simSerialNumber:Ljava/lang/String;
12830 +.field private simSerialNumberSetting:B
12832 +.field private smsSetting:B
12834 +.field private subscriberId:Ljava/lang/String;
12836 +.field private subscriberIdSetting:B
12838 +.field private systemLogsSetting:B
12840 +.field private uid:I
12843 +# direct methods
12844 +.method static constructor <clinit>()V
12845 + .registers 1
12847 + new-instance v0, Landroid/privacy/PrivacySettings$1;
12849 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
12851 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
12853 + return-void
12854 +.end method
12856 +.method public constructor <init>(Landroid/os/Parcel;)V
12857 + .registers 4
12859 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
12861 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12863 + move-result v0
12865 + const/4 v1, -0x1
12867 + if-ne v0, v1, :cond_ce
12869 + const/4 v1, 0x0
12871 + :goto_b
12872 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
12874 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12876 + move-result-object v1
12878 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
12880 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
12882 + move-result v1
12884 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
12886 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12888 + move-result v1
12890 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
12892 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12894 + move-result-object v1
12896 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
12898 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12900 + move-result v1
12902 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
12904 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12906 + move-result-object v1
12908 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
12910 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12912 + move-result v1
12914 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
12916 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12918 + move-result-object v1
12920 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
12922 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12924 + move-result-object v1
12926 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
12928 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12930 + move-result v1
12932 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
12934 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12936 + move-result-object v1
12938 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
12940 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12942 + move-result-object v1
12944 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
12946 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12948 + move-result v1
12950 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
12952 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12954 + move-result v1
12956 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
12958 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12960 + move-result v1
12962 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
12964 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12966 + move-result-object v1
12968 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
12970 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12972 + move-result v1
12974 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
12976 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
12978 + move-result-object v1
12980 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
12982 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12984 + move-result v1
12986 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
12988 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12990 + move-result v1
12992 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
12994 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
12996 + move-result v1
12998 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13000 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13002 + move-result v1
13004 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13006 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13008 + move-result v1
13010 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13012 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13014 + move-result v1
13016 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13018 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13020 + move-result v1
13022 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13024 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13026 + move-result v1
13028 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13030 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13032 + move-result v1
13034 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13036 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13038 + move-result v1
13040 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13042 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13044 + move-result v1
13046 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13048 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13050 + move-result v1
13052 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13054 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
13056 + move-result v1
13058 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13060 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
13062 + move-result-object v1
13064 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13066 + return-void
13068 + :cond_ce
13069 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13071 + move-result-object v1
13073 + goto/16 :goto_b
13074 +.end method
13076 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
13077 + .registers 6
13079 + const/4 v1, 0x0
13081 + const/4 v0, 0x0
13083 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
13085 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13087 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13089 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
13091 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13093 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13095 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13097 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13099 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13101 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13103 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13105 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13107 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13109 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13111 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13113 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13115 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13117 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13119 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13121 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13123 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13125 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13127 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13129 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13131 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13133 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13135 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13137 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13139 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13141 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13143 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13145 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13147 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13149 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13151 + return-void
13152 +.end method
13154 +.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
13155 + .registers 38
13157 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
13159 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13161 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13163 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
13165 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13167 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13169 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13171 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13173 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13175 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13177 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13179 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13181 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13183 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13185 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13187 + move/from16 v0, p15
13189 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13191 + move/from16 v0, p16
13193 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13195 + move-object/from16 v0, p17
13197 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13199 + move/from16 v0, p18
13201 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13203 + move-object/from16 v0, p19
13205 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13207 + move/from16 v0, p20
13209 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13211 + move/from16 v0, p21
13213 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13215 + move/from16 v0, p22
13217 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13219 + move/from16 v0, p23
13221 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13223 + move/from16 v0, p24
13225 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13227 + move/from16 v0, p25
13229 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13231 + move/from16 v0, p26
13233 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13235 + move/from16 v0, p27
13237 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13239 + move/from16 v0, p28
13241 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13243 + move/from16 v0, p29
13245 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13247 + move/from16 v0, p30
13249 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13251 + move/from16 v0, p34
13253 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13255 + move/from16 v0, p35
13257 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13259 + move-object/from16 v0, p36
13261 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13263 + return-void
13264 +.end method
13266 +.method private getRandomLat()Ljava/lang/String;
13267 + .registers 10
13269 + const-wide v7, 0x4056800000000000L
13271 + invoke-static {}, Ljava/lang/Math;->random()D
13273 + move-result-wide v3
13275 + const-wide v5, 0x4066800000000000L
13277 + mul-double v0, v3, v5
13279 + cmpl-double v3, v0, v7
13281 + if-lez v3, :cond_35
13283 + new-instance v2, Ljava/math/BigDecimal;
13285 + sub-double v3, v0, v7
13287 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13289 + :goto_1b
13290 + new-instance v3, Ljava/lang/StringBuilder;
13292 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
13294 + const/4 v4, 0x6
13296 + const/4 v5, 0x4
13298 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
13300 + move-result-object v4
13302 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13304 + move-result-object v3
13306 + const-string v4, ""
13308 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13310 + move-result-object v3
13312 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13314 + move-result-object v3
13316 + return-object v3
13318 + :cond_35
13319 + new-instance v2, Ljava/math/BigDecimal;
13321 + neg-double v3, v0
13323 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13325 + goto :goto_1b
13326 +.end method
13328 +.method private getRandomLon()Ljava/lang/String;
13329 + .registers 10
13331 + const-wide v7, 0x4066800000000000L
13333 + invoke-static {}, Ljava/lang/Math;->random()D
13335 + move-result-wide v3
13337 + const-wide v5, 0x4076800000000000L
13339 + mul-double v0, v3, v5
13341 + cmpl-double v3, v0, v7
13343 + if-lez v3, :cond_35
13345 + new-instance v2, Ljava/math/BigDecimal;
13347 + sub-double v3, v0, v7
13349 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13351 + :goto_1b
13352 + new-instance v3, Ljava/lang/StringBuilder;
13354 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
13356 + const/4 v4, 0x6
13358 + const/4 v5, 0x4
13360 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
13362 + move-result-object v4
13364 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13366 + move-result-object v3
13368 + const-string v4, ""
13370 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13372 + move-result-object v3
13374 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13376 + move-result-object v3
13378 + return-object v3
13380 + :cond_35
13381 + new-instance v2, Ljava/math/BigDecimal;
13383 + neg-double v3, v0
13385 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
13387 + goto :goto_1b
13388 +.end method
13391 +# virtual methods
13392 +.method public describeContents()I
13393 + .registers 2
13395 + const/4 v0, 0x0
13397 + return v0
13398 +.end method
13400 +.method public getAccountsAuthTokensSetting()B
13401 + .registers 2
13403 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
13405 + return v0
13406 +.end method
13408 +.method public getAccountsSetting()B
13409 + .registers 2
13411 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
13413 + return v0
13414 +.end method
13416 +.method public getAllowedContacts()[I
13417 + .registers 2
13419 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
13421 + return-object v0
13422 +.end method
13424 +.method public getBookmarksSetting()B
13425 + .registers 2
13427 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
13429 + return v0
13430 +.end method
13432 +.method public getCalendarSetting()B
13433 + .registers 2
13435 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
13437 + return v0
13438 +.end method
13440 +.method public getCallLogSetting()B
13441 + .registers 2
13443 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
13445 + return v0
13446 +.end method
13448 +.method public getContactsSetting()B
13449 + .registers 2
13451 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
13453 + return v0
13454 +.end method
13456 +.method public getDeviceId()Ljava/lang/String;
13457 + .registers 6
13459 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13461 + const/4 v3, 0x1
13463 + if-ne v2, v3, :cond_8
13465 + const-string v2, ""
13467 + :goto_7
13468 + return-object v2
13470 + :cond_8
13471 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13473 + const/4 v3, 0x3
13475 + if-ne v2, v3, :cond_35
13477 + new-instance v0, Ljava/util/Random;
13479 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13481 + new-instance v2, Ljava/lang/StringBuilder;
13483 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13485 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13487 + move-result-wide v3
13489 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13491 + move-result-wide v3
13493 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13495 + move-result-object v2
13497 + const-string v3, ""
13499 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13501 + move-result-object v2
13503 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13505 + move-result-object v1
13507 + const/4 v2, 0x0
13509 + const/16 v3, 0xf
13511 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13513 + move-result-object v2
13515 + goto :goto_7
13517 + :cond_35
13518 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
13520 + goto :goto_7
13521 +.end method
13523 +.method public getDeviceIdSetting()B
13524 + .registers 2
13526 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
13528 + return v0
13529 +.end method
13531 +.method public getIncomingCallsSetting()B
13532 + .registers 2
13534 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
13536 + return v0
13537 +.end method
13539 +.method public getIntentBootCompletedSetting()B
13540 + .registers 2
13542 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
13544 + return v0
13545 +.end method
13547 +.method public getLine1Number()Ljava/lang/String;
13548 + .registers 6
13550 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13552 + const/4 v3, 0x1
13554 + if-ne v2, v3, :cond_8
13556 + const-string v2, ""
13558 + :goto_7
13559 + return-object v2
13561 + :cond_8
13562 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13564 + const/4 v3, 0x3
13566 + if-ne v2, v3, :cond_3b
13568 + new-instance v0, Ljava/util/Random;
13570 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13572 + new-instance v2, Ljava/lang/StringBuilder;
13574 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13576 + const-string v3, "+"
13578 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13580 + move-result-object v2
13582 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13584 + move-result-wide v3
13586 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13588 + move-result-wide v3
13590 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13592 + move-result-object v2
13594 + const-string v3, ""
13596 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13598 + move-result-object v2
13600 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13602 + move-result-object v1
13604 + const/4 v2, 0x0
13606 + const/16 v3, 0xd
13608 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13610 + move-result-object v2
13612 + goto :goto_7
13614 + :cond_3b
13615 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
13617 + goto :goto_7
13618 +.end method
13620 +.method public getLine1NumberSetting()B
13621 + .registers 2
13623 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
13625 + return v0
13626 +.end method
13628 +.method public getLocationGpsLat()Ljava/lang/String;
13629 + .registers 3
13631 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13633 + const/4 v1, 0x1
13635 + if-ne v0, v1, :cond_8
13637 + const-string v0, ""
13639 + :goto_7
13640 + return-object v0
13642 + :cond_8
13643 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13645 + const/4 v1, 0x3
13647 + if-ne v0, v1, :cond_12
13649 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13651 + move-result-object v0
13653 + goto :goto_7
13655 + :cond_12
13656 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
13658 + goto :goto_7
13659 +.end method
13661 +.method public getLocationGpsLon()Ljava/lang/String;
13662 + .registers 3
13664 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13666 + const/4 v1, 0x1
13668 + if-ne v0, v1, :cond_8
13670 + const-string v0, ""
13672 + :goto_7
13673 + return-object v0
13675 + :cond_8
13676 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13678 + const/4 v1, 0x3
13680 + if-ne v0, v1, :cond_12
13682 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13684 + move-result-object v0
13686 + goto :goto_7
13688 + :cond_12
13689 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
13691 + goto :goto_7
13692 +.end method
13694 +.method public getLocationGpsSetting()B
13695 + .registers 2
13697 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
13699 + return v0
13700 +.end method
13702 +.method public getLocationNetworkLat()Ljava/lang/String;
13703 + .registers 3
13705 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13707 + const/4 v1, 0x1
13709 + if-ne v0, v1, :cond_8
13711 + const-string v0, ""
13713 + :goto_7
13714 + return-object v0
13716 + :cond_8
13717 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13719 + const/4 v1, 0x3
13721 + if-ne v0, v1, :cond_12
13723 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
13725 + move-result-object v0
13727 + goto :goto_7
13729 + :cond_12
13730 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
13732 + goto :goto_7
13733 +.end method
13735 +.method public getLocationNetworkLon()Ljava/lang/String;
13736 + .registers 3
13738 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13740 + const/4 v1, 0x1
13742 + if-ne v0, v1, :cond_8
13744 + const-string v0, ""
13746 + :goto_7
13747 + return-object v0
13749 + :cond_8
13750 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13752 + const/4 v1, 0x3
13754 + if-ne v0, v1, :cond_12
13756 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
13758 + move-result-object v0
13760 + goto :goto_7
13762 + :cond_12
13763 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
13765 + goto :goto_7
13766 +.end method
13768 +.method public getLocationNetworkSetting()B
13769 + .registers 2
13771 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
13773 + return v0
13774 +.end method
13776 +.method public getMmsSetting()B
13777 + .registers 2
13779 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
13781 + return v0
13782 +.end method
13784 +.method public getNetworkInfoSetting()B
13785 + .registers 2
13787 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
13789 + return v0
13790 +.end method
13792 +.method public getNotificationSetting()B
13793 + .registers 2
13795 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
13797 + return v0
13798 +.end method
13800 +.method public getOutgoingCallsSetting()B
13801 + .registers 2
13803 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
13805 + return v0
13806 +.end method
13808 +.method public getPackageName()Ljava/lang/String;
13809 + .registers 2
13811 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
13813 + return-object v0
13814 +.end method
13816 +.method public getSimInfoSetting()B
13817 + .registers 2
13819 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
13821 + return v0
13822 +.end method
13824 +.method public getSimSerialNumber()Ljava/lang/String;
13825 + .registers 5
13827 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13829 + const/4 v2, 0x1
13831 + if-ne v1, v2, :cond_8
13833 + const-string v1, ""
13835 + :goto_7
13836 + return-object v1
13838 + :cond_8
13839 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13841 + const/4 v2, 0x3
13843 + if-ne v1, v2, :cond_2e
13845 + new-instance v0, Ljava/util/Random;
13847 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13849 + new-instance v1, Ljava/lang/StringBuilder;
13851 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
13853 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13855 + move-result-wide v2
13857 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
13859 + move-result-wide v2
13861 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13863 + move-result-object v1
13865 + const-string v2, ""
13867 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13869 + move-result-object v1
13871 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13873 + move-result-object v1
13875 + goto :goto_7
13877 + :cond_2e
13878 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
13880 + goto :goto_7
13881 +.end method
13883 +.method public getSimSerialNumberSetting()B
13884 + .registers 2
13886 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
13888 + return v0
13889 +.end method
13891 +.method public getSmsSetting()B
13892 + .registers 2
13894 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
13896 + return v0
13897 +.end method
13899 +.method public getSubscriberId()Ljava/lang/String;
13900 + .registers 6
13902 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13904 + const/4 v3, 0x1
13906 + if-ne v2, v3, :cond_8
13908 + const-string v2, ""
13910 + :goto_7
13911 + return-object v2
13913 + :cond_8
13914 + iget-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13916 + const/4 v3, 0x3
13918 + if-ne v2, v3, :cond_35
13920 + new-instance v0, Ljava/util/Random;
13922 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
13924 + new-instance v2, Ljava/lang/StringBuilder;
13926 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13928 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
13930 + move-result-wide v3
13932 + invoke-static {v3, v4}, Ljava/lang/Math;->abs(J)J
13934 + move-result-wide v3
13936 + invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
13938 + move-result-object v2
13940 + const-string v3, ""
13942 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13944 + move-result-object v2
13946 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13948 + move-result-object v1
13950 + const/4 v2, 0x0
13952 + const/16 v3, 0xf
13954 + invoke-virtual {v1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
13956 + move-result-object v2
13958 + goto :goto_7
13960 + :cond_35
13961 + iget-object v2, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
13963 + goto :goto_7
13964 +.end method
13966 +.method public getSubscriberIdSetting()B
13967 + .registers 2
13969 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
13971 + return v0
13972 +.end method
13974 +.method public getSystemLogsSetting()B
13975 + .registers 2
13977 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
13979 + return v0
13980 +.end method
13982 +.method public getUid()I
13983 + .registers 2
13985 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
13987 + return v0
13988 +.end method
13990 +.method public get_id()Ljava/lang/Integer;
13991 + .registers 2
13993 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
13995 + return-object v0
13996 +.end method
13998 +.method public setAccountsAuthTokensSetting(B)V
13999 + .registers 2
14001 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14003 + return-void
14004 +.end method
14006 +.method public setAccountsSetting(B)V
14007 + .registers 2
14009 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14011 + return-void
14012 +.end method
14014 +.method public setAllowedContacts([I)V
14015 + .registers 2
14017 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14019 + return-void
14020 +.end method
14022 +.method public setBookmarksSetting(B)V
14023 + .registers 2
14025 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14027 + return-void
14028 +.end method
14030 +.method public setCalendarSetting(B)V
14031 + .registers 2
14033 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14035 + return-void
14036 +.end method
14038 +.method public setCallLogSetting(B)V
14039 + .registers 2
14041 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14043 + return-void
14044 +.end method
14046 +.method public setContactsSetting(B)V
14047 + .registers 2
14049 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14051 + return-void
14052 +.end method
14054 +.method public setDeviceId(Ljava/lang/String;)V
14055 + .registers 2
14057 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14059 + return-void
14060 +.end method
14062 +.method public setDeviceIdSetting(B)V
14063 + .registers 2
14065 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14067 + return-void
14068 +.end method
14070 +.method public setIncomingCallsSetting(B)V
14071 + .registers 2
14073 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14075 + return-void
14076 +.end method
14078 +.method public setIntentBootCompletedSetting(B)V
14079 + .registers 2
14081 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14083 + return-void
14084 +.end method
14086 +.method public setLine1Number(Ljava/lang/String;)V
14087 + .registers 2
14089 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14091 + return-void
14092 +.end method
14094 +.method public setLine1NumberSetting(B)V
14095 + .registers 2
14097 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14099 + return-void
14100 +.end method
14102 +.method public setLocationGpsLat(Ljava/lang/String;)V
14103 + .registers 2
14105 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14107 + return-void
14108 +.end method
14110 +.method public setLocationGpsLon(Ljava/lang/String;)V
14111 + .registers 2
14113 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14115 + return-void
14116 +.end method
14118 +.method public setLocationGpsSetting(B)V
14119 + .registers 2
14121 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14123 + return-void
14124 +.end method
14126 +.method public setLocationNetworkLat(Ljava/lang/String;)V
14127 + .registers 2
14129 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14131 + return-void
14132 +.end method
14134 +.method public setLocationNetworkLon(Ljava/lang/String;)V
14135 + .registers 2
14137 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14139 + return-void
14140 +.end method
14142 +.method public setLocationNetworkSetting(B)V
14143 + .registers 2
14145 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14147 + return-void
14148 +.end method
14150 +.method public setMmsSetting(B)V
14151 + .registers 2
14153 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14155 + return-void
14156 +.end method
14158 +.method public setNetworkInfoSetting(B)V
14159 + .registers 2
14161 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14163 + return-void
14164 +.end method
14166 +.method public setNotificationSetting(B)V
14167 + .registers 2
14169 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14171 + return-void
14172 +.end method
14174 +.method public setOutgoingCallsSetting(B)V
14175 + .registers 2
14177 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14179 + return-void
14180 +.end method
14182 +.method public setPackageName(Ljava/lang/String;)V
14183 + .registers 2
14185 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14187 + return-void
14188 +.end method
14190 +.method public setSimInfoSetting(B)V
14191 + .registers 2
14193 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14195 + return-void
14196 +.end method
14198 +.method public setSimSerialNumber(Ljava/lang/String;)V
14199 + .registers 2
14201 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14203 + return-void
14204 +.end method
14206 +.method public setSimSerialNumberSetting(B)V
14207 + .registers 2
14209 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14211 + return-void
14212 +.end method
14214 +.method public setSmsSetting(B)V
14215 + .registers 2
14217 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14219 + return-void
14220 +.end method
14222 +.method public setSubscriberId(Ljava/lang/String;)V
14223 + .registers 2
14225 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14227 + return-void
14228 +.end method
14230 +.method public setSubscriberIdSetting(B)V
14231 + .registers 2
14233 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14235 + return-void
14236 +.end method
14238 +.method public setSystemLogsSetting(B)V
14239 + .registers 2
14241 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14243 + return-void
14244 +.end method
14246 +.method public setUid(I)V
14247 + .registers 2
14249 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
14251 + return-void
14252 +.end method
14254 +.method public toString()Ljava/lang/String;
14255 + .registers 3
14257 + new-instance v0, Ljava/lang/StringBuilder;
14259 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
14261 + const-string v1, "PrivacySettings [_id="
14263 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14265 + move-result-object v0
14267 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14269 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
14271 + move-result-object v0
14273 + const-string v1, ", accountsAuthTokensSetting="
14275 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14277 + move-result-object v0
14279 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14281 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14283 + move-result-object v0
14285 + const-string v1, ", accountsSetting="
14287 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14289 + move-result-object v0
14291 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14293 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14295 + move-result-object v0
14297 + const-string v1, ", bookmarksSetting="
14299 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14301 + move-result-object v0
14303 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14305 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14307 + move-result-object v0
14309 + const-string v1, ", calendarSetting="
14311 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14313 + move-result-object v0
14315 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14317 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14319 + move-result-object v0
14321 + const-string v1, ", callLogSetting="
14323 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14325 + move-result-object v0
14327 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14329 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14331 + move-result-object v0
14333 + const-string v1, ", contactsSetting="
14335 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14337 + move-result-object v0
14339 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14341 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14343 + move-result-object v0
14345 + const-string v1, ", deviceId="
14347 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14349 + move-result-object v0
14351 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14353 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14355 + move-result-object v0
14357 + const-string v1, ", deviceIdSetting="
14359 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14361 + move-result-object v0
14363 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14365 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14367 + move-result-object v0
14369 + const-string v1, ", incomingCallsSetting="
14371 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14373 + move-result-object v0
14375 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14377 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14379 + move-result-object v0
14381 + const-string v1, ", intentBootCompletedSetting="
14383 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14385 + move-result-object v0
14387 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14389 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14391 + move-result-object v0
14393 + const-string v1, ", line1Number="
14395 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14397 + move-result-object v0
14399 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14401 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14403 + move-result-object v0
14405 + const-string v1, ", line1NumberSetting="
14407 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14409 + move-result-object v0
14411 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14413 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14415 + move-result-object v0
14417 + const-string v1, ", locationGpsLat="
14419 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14421 + move-result-object v0
14423 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14425 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14427 + move-result-object v0
14429 + const-string v1, ", locationGpsLon="
14431 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14433 + move-result-object v0
14435 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14437 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14439 + move-result-object v0
14441 + const-string v1, ", locationGpsSetting="
14443 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14445 + move-result-object v0
14447 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14449 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14451 + move-result-object v0
14453 + const-string v1, ", locationNetworkLat="
14455 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14457 + move-result-object v0
14459 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14461 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14463 + move-result-object v0
14465 + const-string v1, ", locationNetworkLon="
14467 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14469 + move-result-object v0
14471 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14473 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14475 + move-result-object v0
14477 + const-string v1, ", locationNetworkSetting="
14479 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14481 + move-result-object v0
14483 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14485 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14487 + move-result-object v0
14489 + const-string v1, ", mmsSetting="
14491 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14493 + move-result-object v0
14495 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14497 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14499 + move-result-object v0
14501 + const-string v1, ", networkInfoSetting="
14503 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14505 + move-result-object v0
14507 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14509 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14511 + move-result-object v0
14513 + const-string v1, ", notificationSetting="
14515 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14517 + move-result-object v0
14519 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14521 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14523 + move-result-object v0
14525 + const-string v1, ", outgoingCallsSetting="
14527 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14529 + move-result-object v0
14531 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14533 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14535 + move-result-object v0
14537 + const-string v1, ", packageName="
14539 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14541 + move-result-object v0
14543 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14545 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14547 + move-result-object v0
14549 + const-string v1, ", simInfoSetting="
14551 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14553 + move-result-object v0
14555 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14557 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14559 + move-result-object v0
14561 + const-string v1, ", simSerialNumber="
14563 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14565 + move-result-object v0
14567 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14569 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14571 + move-result-object v0
14573 + const-string v1, ", simSerialNumberSetting="
14575 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14577 + move-result-object v0
14579 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14581 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14583 + move-result-object v0
14585 + const-string v1, ", smsSetting="
14587 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14589 + move-result-object v0
14591 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14593 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14595 + move-result-object v0
14597 + const-string v1, ", subscriberId="
14599 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14601 + move-result-object v0
14603 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14605 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14607 + move-result-object v0
14609 + const-string v1, ", subscriberIdSetting="
14611 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14613 + move-result-object v0
14615 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14617 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14619 + move-result-object v0
14621 + const-string v1, ", systemLogsSetting="
14623 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14625 + move-result-object v0
14627 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14629 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14631 + move-result-object v0
14633 + const-string v1, ", uid="
14635 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14637 + move-result-object v0
14639 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
14641 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
14643 + move-result-object v0
14645 + const-string v1, "]"
14647 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
14649 + move-result-object v0
14651 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
14653 + move-result-object v0
14655 + return-object v0
14656 +.end method
14658 +.method public writeToParcel(Landroid/os/Parcel;I)V
14659 + .registers 4
14661 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14663 + if-nez v0, :cond_a9
14665 + const/4 v0, -0x1
14667 + :goto_5
14668 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14670 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
14672 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14674 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
14676 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
14678 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
14680 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14682 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
14684 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14686 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
14688 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14690 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
14692 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14694 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
14696 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14698 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
14700 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14702 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
14704 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14706 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
14708 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14710 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
14712 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14714 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
14716 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14718 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
14720 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14722 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
14724 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14726 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
14728 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14730 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
14732 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14734 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
14736 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14738 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
14740 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
14742 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
14744 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14746 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
14748 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14750 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
14752 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14754 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
14756 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14758 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
14760 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14762 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
14764 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14766 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
14768 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14770 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
14772 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14774 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
14776 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14778 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
14780 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14782 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
14784 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14786 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
14788 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14790 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
14792 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
14794 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
14796 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
14798 + return-void
14800 + :cond_a9
14801 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
14803 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
14805 + move-result v0
14807 + goto/16 :goto_5
14808 +.end method
14809 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
14810 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 18:00:00.000000000 -0600
14811 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-06-14 15:23:33.788296984 -0500
14812 @@ -0,0 +1,129 @@
14813 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14814 +.super Ljava/lang/Object;
14815 +.source "PrivacyAccountManager.java"
14817 +# interfaces
14818 +.implements Landroid/accounts/AccountManagerFuture;
14821 +# annotations
14822 +.annotation system Ldalvik/annotation/EnclosingClass;
14823 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
14824 +.end annotation
14826 +.annotation system Ldalvik/annotation/InnerClass;
14827 + accessFlags = 0x2
14828 + name = "PrivacyAccountManagerFuture"
14829 +.end annotation
14831 +.annotation system Ldalvik/annotation/Signature;
14832 + value = {
14833 + "<V:",
14834 + "Ljava/lang/Object;",
14835 + ">",
14836 + "Ljava/lang/Object;",
14837 + "Landroid/accounts/AccountManagerFuture",
14838 + "<TV;>;"
14840 +.end annotation
14843 +# instance fields
14844 +.field private result:Ljava/lang/Object;
14845 + .annotation system Ldalvik/annotation/Signature;
14846 + value = {
14847 + "TV;"
14849 + .end annotation
14850 +.end field
14852 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14855 +# direct methods
14856 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
14857 + .registers 3
14858 + .annotation system Ldalvik/annotation/Signature;
14859 + value = {
14860 + "(TV;)V"
14862 + .end annotation
14864 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
14866 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
14868 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14870 + return-void
14871 +.end method
14874 +# virtual methods
14875 +.method public cancel(Z)Z
14876 + .registers 3
14878 + const/4 v0, 0x0
14880 + return v0
14881 +.end method
14883 +.method public getResult()Ljava/lang/Object;
14884 + .registers 2
14885 + .annotation system Ldalvik/annotation/Signature;
14886 + value = {
14887 + "()TV;"
14889 + .end annotation
14891 + .annotation system Ldalvik/annotation/Throws;
14892 + value = {
14893 + Landroid/accounts/OperationCanceledException;,
14894 + Ljava/io/IOException;,
14895 + Landroid/accounts/AuthenticatorException;
14897 + .end annotation
14899 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14901 + return-object v0
14902 +.end method
14904 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
14905 + .registers 5
14906 + .annotation system Ldalvik/annotation/Signature;
14907 + value = {
14908 + "(J",
14909 + "Ljava/util/concurrent/TimeUnit;",
14910 + ")TV;"
14912 + .end annotation
14914 + .annotation system Ldalvik/annotation/Throws;
14915 + value = {
14916 + Landroid/accounts/OperationCanceledException;,
14917 + Ljava/io/IOException;,
14918 + Landroid/accounts/AuthenticatorException;
14920 + .end annotation
14922 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
14924 + return-object v0
14925 +.end method
14927 +.method public isCancelled()Z
14928 + .registers 2
14930 + const/4 v0, 0x0
14932 + return v0
14933 +.end method
14935 +.method public isDone()Z
14936 + .registers 2
14938 + const/4 v0, 0x1
14940 + return v0
14941 +.end method
14942 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
14943 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 18:00:00.000000000 -0600
14944 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-06-14 15:23:33.788296984 -0500
14945 @@ -0,0 +1,701 @@
14946 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
14947 +.super Landroid/accounts/AccountManager;
14948 +.source "PrivacyAccountManager.java"
14951 +# annotations
14952 +.annotation system Ldalvik/annotation/MemberClasses;
14953 + value = {
14954 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
14956 +.end annotation
14959 +# static fields
14960 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
14963 +# instance fields
14964 +.field private context:Landroid/content/Context;
14966 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
14969 +# direct methods
14970 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14971 + .registers 5
14973 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
14975 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
14977 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
14979 + const-string/jumbo v1, "privacy"
14981 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
14983 + move-result-object v1
14985 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
14987 + move-result-object v1
14989 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
14991 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
14993 + return-void
14994 +.end method
14996 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
14997 + .registers 6
14999 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
15001 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15003 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
15005 + const-string/jumbo v1, "privacy"
15007 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
15009 + move-result-object v1
15011 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
15013 + move-result-object v1
15015 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
15017 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15019 + return-void
15020 +.end method
15023 +# virtual methods
15024 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
15025 + .registers 12
15026 + .annotation system Ldalvik/annotation/Throws;
15027 + value = {
15028 + Landroid/accounts/OperationCanceledException;,
15029 + Ljava/io/IOException;,
15030 + Landroid/accounts/AuthenticatorException;
15032 + .end annotation
15034 + const/4 v5, 0x0
15036 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15038 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15040 + move-result-object v1
15042 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15044 + move-result v2
15046 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15048 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15050 + move-result-object v6
15052 + if-eqz v6, :cond_23
15054 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15056 + move-result v0
15058 + if-eqz v0, :cond_23
15060 + const/4 v7, 0x0
15062 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15064 + const/4 v3, 0x1
15066 + const-string v4, "authTokens"
15068 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15070 + :goto_22
15071 + return-object v7
15073 + :cond_23
15074 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
15076 + move-result-object v7
15078 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15080 + const/4 v3, 0x0
15082 + const-string v4, "authTokens"
15084 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15086 + goto :goto_22
15087 +.end method
15089 +.method public getAccounts()[Landroid/accounts/Account;
15090 + .registers 10
15092 + const/4 v5, 0x0
15094 + const/4 v3, 0x0
15096 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15098 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15100 + move-result-object v1
15102 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15104 + move-result v2
15106 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15108 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15110 + move-result-object v6
15112 + if-eqz v6, :cond_27
15114 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15116 + move-result v0
15118 + if-eqz v0, :cond_27
15120 + const-string v8, "[empty accounts list]"
15122 + new-array v7, v3, [Landroid/accounts/Account;
15124 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15126 + const/4 v3, 0x1
15128 + const-string v4, "accountsList"
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_26
15133 + return-object v7
15135 + :cond_27
15136 + const-string v8, "[real value]"
15138 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
15140 + move-result-object v7
15142 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15144 + const-string v4, "accountsList"
15146 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15148 + goto :goto_26
15149 +.end method
15151 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
15152 + .registers 11
15154 + const/4 v5, 0x0
15156 + const/4 v3, 0x0
15158 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15160 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15162 + move-result-object v1
15164 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15166 + move-result v2
15168 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15170 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15172 + move-result-object v6
15174 + if-eqz v6, :cond_27
15176 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15178 + move-result v0
15180 + if-eqz v0, :cond_27
15182 + const-string v8, "[empty accounts list]"
15184 + new-array v7, v3, [Landroid/accounts/Account;
15186 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15188 + const/4 v3, 0x1
15190 + const-string v4, "accountsList"
15192 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15194 + :goto_26
15195 + return-object v7
15197 + :cond_27
15198 + const-string v8, "[real value]"
15200 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
15202 + move-result-object v7
15204 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15206 + const-string v4, "accountsList"
15208 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15210 + goto :goto_26
15211 +.end method
15213 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15214 + .registers 14
15215 + .annotation system Ldalvik/annotation/Signature;
15216 + value = {
15217 + "(",
15218 + "Ljava/lang/String;",
15219 + "[",
15220 + "Ljava/lang/String;",
15221 + "Landroid/accounts/AccountManagerCallback",
15222 + "<[",
15223 + "Landroid/accounts/Account;",
15224 + ">;",
15225 + "Landroid/os/Handler;",
15226 + ")",
15227 + "Landroid/accounts/AccountManagerFuture",
15228 + "<[",
15229 + "Landroid/accounts/Account;",
15230 + ">;"
15232 + .end annotation
15234 + const/4 v5, 0x0
15236 + const/4 v3, 0x0
15238 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15240 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15242 + move-result-object v1
15244 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15246 + move-result v2
15248 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15250 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15252 + move-result-object v6
15254 + if-eqz v6, :cond_2c
15256 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15258 + move-result v0
15260 + if-eqz v0, :cond_2c
15262 + const-string v8, "[false]"
15264 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15266 + new-array v0, v3, [Landroid/accounts/Account;
15268 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15270 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15272 + const/4 v3, 0x1
15274 + const-string v4, "accountsList"
15276 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15278 + :goto_2b
15279 + return-object v7
15281 + :cond_2c
15282 + const-string v8, "[real value]"
15284 + 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;
15286 + move-result-object v7
15288 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15290 + const-string v4, "accountsList"
15292 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15294 + goto :goto_2b
15295 +.end method
15297 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15298 + .registers 16
15299 + .annotation system Ldalvik/annotation/Signature;
15300 + value = {
15301 + "(",
15302 + "Landroid/accounts/Account;",
15303 + "Ljava/lang/String;",
15304 + "Landroid/os/Bundle;",
15305 + "Landroid/app/Activity;",
15306 + "Landroid/accounts/AccountManagerCallback",
15307 + "<",
15308 + "Landroid/os/Bundle;",
15309 + ">;",
15310 + "Landroid/os/Handler;",
15311 + ")",
15312 + "Landroid/accounts/AccountManagerFuture",
15313 + "<",
15314 + "Landroid/os/Bundle;",
15315 + ">;"
15317 + .end annotation
15319 + const/4 v5, 0x0
15321 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15323 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15325 + move-result-object v1
15327 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15329 + move-result v2
15331 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15333 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15335 + move-result-object v6
15337 + if-eqz v6, :cond_2e
15339 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15341 + move-result v0
15343 + if-eqz v0, :cond_2e
15345 + const-string v8, "[empty]"
15347 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15349 + new-instance v0, Landroid/os/Bundle;
15351 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15353 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15355 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15357 + const/4 v3, 0x1
15359 + const-string v4, "authTokens"
15361 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15363 + :goto_2d
15364 + return-object v7
15366 + :cond_2e
15367 + const-string v8, "[real value]"
15369 + 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;
15371 + move-result-object v7
15373 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15375 + const/4 v3, 0x0
15377 + const-string v4, "authTokens"
15379 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15381 + goto :goto_2d
15382 +.end method
15384 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15385 + .registers 15
15386 + .annotation system Ldalvik/annotation/Signature;
15387 + value = {
15388 + "(",
15389 + "Landroid/accounts/Account;",
15390 + "Ljava/lang/String;",
15391 + "Z",
15392 + "Landroid/accounts/AccountManagerCallback",
15393 + "<",
15394 + "Landroid/os/Bundle;",
15395 + ">;",
15396 + "Landroid/os/Handler;",
15397 + ")",
15398 + "Landroid/accounts/AccountManagerFuture",
15399 + "<",
15400 + "Landroid/os/Bundle;",
15401 + ">;"
15403 + .end annotation
15405 + const/4 v5, 0x0
15407 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15409 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15411 + move-result-object v1
15413 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15415 + move-result v2
15417 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15419 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15421 + move-result-object v6
15423 + if-eqz v6, :cond_2e
15425 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15427 + move-result v0
15429 + if-eqz v0, :cond_2e
15431 + const-string v8, "[empty]"
15433 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15435 + new-instance v0, Landroid/os/Bundle;
15437 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15439 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15441 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15443 + const/4 v3, 0x1
15445 + const-string v4, "authTokens"
15447 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15449 + :goto_2d
15450 + return-object v7
15452 + :cond_2e
15453 + const-string v8, "[real value]"
15455 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15457 + move-result-object v7
15459 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15461 + const/4 v3, 0x0
15463 + const-string v4, "authTokens"
15465 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15467 + goto :goto_2d
15468 +.end method
15470 +.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;
15471 + .registers 18
15472 + .annotation system Ldalvik/annotation/Signature;
15473 + value = {
15474 + "(",
15475 + "Ljava/lang/String;",
15476 + "Ljava/lang/String;",
15477 + "[",
15478 + "Ljava/lang/String;",
15479 + "Landroid/app/Activity;",
15480 + "Landroid/os/Bundle;",
15481 + "Landroid/os/Bundle;",
15482 + "Landroid/accounts/AccountManagerCallback",
15483 + "<",
15484 + "Landroid/os/Bundle;",
15485 + ">;",
15486 + "Landroid/os/Handler;",
15487 + ")",
15488 + "Landroid/accounts/AccountManagerFuture",
15489 + "<",
15490 + "Landroid/os/Bundle;",
15491 + ">;"
15493 + .end annotation
15495 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15497 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15499 + move-result-object v1
15501 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15503 + move-result v2
15505 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15507 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15509 + move-result-object v6
15511 + if-eqz v6, :cond_2e
15513 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
15515 + move-result v0
15517 + if-eqz v0, :cond_2e
15519 + const-string v8, "[empty]"
15521 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15523 + new-instance v0, Landroid/os/Bundle;
15525 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
15527 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15529 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15531 + const/4 v3, 0x1
15533 + const-string v4, "authTokens"
15535 + const/4 v5, 0x0
15537 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15539 + :goto_2d
15540 + return-object v7
15542 + :cond_2e
15543 + const-string v8, "[real value]"
15545 + 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;
15547 + move-result-object v7
15549 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15551 + const/4 v3, 0x0
15553 + const-string v4, "authTokens"
15555 + const/4 v5, 0x0
15557 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15559 + goto :goto_2d
15560 +.end method
15562 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
15563 + .registers 14
15564 + .annotation system Ldalvik/annotation/Signature;
15565 + value = {
15566 + "(",
15567 + "Landroid/accounts/Account;",
15568 + "[",
15569 + "Ljava/lang/String;",
15570 + "Landroid/accounts/AccountManagerCallback",
15571 + "<",
15572 + "Ljava/lang/Boolean;",
15573 + ">;",
15574 + "Landroid/os/Handler;",
15575 + ")",
15576 + "Landroid/accounts/AccountManagerFuture",
15577 + "<",
15578 + "Ljava/lang/Boolean;",
15579 + ">;"
15581 + .end annotation
15583 + const/4 v5, 0x0
15585 + const/4 v3, 0x0
15587 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
15589 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15591 + move-result-object v1
15593 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15595 + move-result v2
15597 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15599 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15601 + move-result-object v6
15603 + if-eqz v6, :cond_2e
15605 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
15607 + move-result v0
15609 + if-eqz v0, :cond_2e
15611 + const-string v8, "[false]"
15613 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
15615 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
15617 + move-result-object v0
15619 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
15621 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15623 + const/4 v3, 0x1
15625 + const-string v4, "accountsList"
15627 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15629 + :goto_2d
15630 + return-object v7
15632 + :cond_2e
15633 + const-string v8, "[real value]"
15635 + 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;
15637 + move-result-object v7
15639 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15641 + const-string v4, "accountsList"
15643 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15645 + goto :goto_2d
15646 +.end method
15647 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
15648 --- stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 18:00:00.000000000 -0600
15649 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-06-14 15:23:33.804297045 -0500
15650 @@ -0,0 +1,1087 @@
15651 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
15652 +.super Ljava/lang/Object;
15653 +.source "PrivacyActivityManagerService.java"
15656 +# static fields
15657 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
15659 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
15661 +.field private static tmpIn:Landroid/content/Intent;
15663 +.field private static tmpInHash:J
15665 +.field private static tmpInReceivers:I
15667 +.field private static tmpMms:Landroid/content/Intent;
15669 +.field private static tmpMmsHash:J
15671 +.field private static tmpMmsReceivers:I
15673 +.field private static tmpOut:Landroid/content/Intent;
15675 +.field private static tmpOutHash:J
15677 +.field private static tmpOutReceivers:I
15679 +.field private static tmpPackageAddedHash:J
15681 +.field private static tmpSms:Landroid/content/Intent;
15683 +.field private static tmpSmsHash:J
15685 +.field private static tmpSmsReceivers:I
15688 +# direct methods
15689 +.method static constructor <clinit>()V
15690 + .registers 3
15692 + const/4 v2, 0x0
15694 + const-wide/16 v0, 0x0
15696 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15698 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15700 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15702 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15704 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
15706 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
15708 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
15710 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
15712 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
15714 + return-void
15715 +.end method
15717 +.method public constructor <init>()V
15718 + .registers 1
15720 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15722 + return-void
15723 +.end method
15725 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
15726 + .registers 22
15728 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15730 + if-nez v2, :cond_11
15732 + const-string/jumbo v2, "privacy"
15734 + move-object/from16 v0, p3
15736 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
15738 + move-result-object v2
15740 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
15742 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15744 + :cond_11
15745 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
15747 + move-result-object v9
15749 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
15751 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15753 + move-result v2
15755 + if-eqz v2, :cond_ad
15757 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15759 + move-object/from16 v0, p0
15761 + move/from16 v1, p1
15763 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15765 + move-result-object v8
15767 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15769 + move-object/from16 v0, p2
15771 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15773 + move-result-object v16
15775 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15777 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15779 + move-result-wide v4
15781 + cmp-long v2, v2, v4
15783 + if-eqz v2, :cond_49
15785 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15787 + move-result-object v2
15789 + check-cast v2, Landroid/content/Intent;
15791 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15793 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15795 + move-result-wide v2
15797 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15799 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15801 + :cond_49
15802 + if-eqz v8, :cond_76
15804 + :try_start_4b
15805 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
15807 + move-result v2
15809 + if-eqz v2, :cond_76
15811 + const-string v16, ""
15813 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15815 + move-object/from16 v0, p2
15817 + move-object/from16 v1, v16
15819 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15821 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15823 + const/4 v5, 0x1
15825 + const-string/jumbo v6, "outgoingCall"
15827 + const/4 v7, 0x0
15829 + move-object/from16 v3, p0
15831 + move/from16 v4, p1
15833 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15834 + :try_end_6a
15835 + .catch Ljava/lang/Exception; {:try_start_4b .. :try_end_6a} :catch_a0
15837 + :cond_6a
15838 + :goto_6a
15839 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15841 + const/4 v3, 0x1
15843 + if-le v2, v3, :cond_a9
15845 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15847 + add-int/lit8 v2, v2, -0x1
15849 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
15851 + :cond_75
15852 + :goto_75
15853 + return-void
15855 + :cond_76
15856 + :try_start_76
15857 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
15859 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15861 + move-result-wide v4
15863 + cmp-long v2, v2, v4
15865 + if-nez v2, :cond_6a
15867 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15869 + const-string v3, "android.intent.extra.PHONE_NUMBER"
15871 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15873 + move-result-object v16
15875 + const-string v2, "android.intent.extra.PHONE_NUMBER"
15877 + move-object/from16 v0, p2
15879 + move-object/from16 v1, v16
15881 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15883 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15885 + const/4 v5, 0x0
15887 + const-string/jumbo v6, "outgoingCall"
15889 + const/4 v7, 0x0
15891 + move-object/from16 v3, p0
15893 + move/from16 v4, p1
15895 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
15896 + :try_end_9f
15897 + .catch Ljava/lang/Exception; {:try_start_76 .. :try_end_9f} :catch_a0
15899 + goto :goto_6a
15901 + :catch_a0
15902 + move-exception v13
15904 + const-string v2, "PrivacyActivityManagerService"
15906 + const-string v3, "failed to enforce intent broadcast permission"
15908 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15910 + goto :goto_6a
15912 + :cond_a9
15913 + const/4 v2, 0x0
15915 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
15917 + goto :goto_75
15919 + :cond_ad
15920 + const-string v2, "android.intent.action.PHONE_STATE"
15922 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15924 + move-result v2
15926 + if-eqz v2, :cond_14d
15928 + const-string v2, "incoming_number"
15930 + move-object/from16 v0, p2
15932 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
15934 + move-result-object v16
15936 + if-eqz v16, :cond_75
15938 + invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->isEmpty()Z
15940 + move-result v2
15942 + if-nez v2, :cond_75
15944 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
15946 + move-object/from16 v0, p0
15948 + move/from16 v1, p1
15950 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15952 + move-result-object v8
15954 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15956 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15958 + move-result-wide v4
15960 + cmp-long v2, v2, v4
15962 + if-eqz v2, :cond_e9
15964 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
15966 + move-result-object v2
15968 + check-cast v2, Landroid/content/Intent;
15970 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
15972 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
15974 + move-result-wide v2
15976 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
15978 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
15980 + :cond_e9
15981 + if-eqz v8, :cond_116
15983 + :try_start_eb
15984 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
15986 + move-result v2
15988 + if-eqz v2, :cond_116
15990 + const-string v16, ""
15992 + const-string v2, "incoming_number"
15994 + move-object/from16 v0, p2
15996 + move-object/from16 v1, v16
15998 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
16000 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16002 + const/4 v5, 0x1
16004 + const-string v6, "incomingCall"
16006 + const/4 v7, 0x0
16008 + move-object/from16 v3, p0
16010 + move/from16 v4, p1
16012 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16013 + :try_end_109
16014 + .catch Ljava/lang/Exception; {:try_start_eb .. :try_end_109} :catch_13f
16016 + :cond_109
16017 + :goto_109
16018 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
16020 + const/4 v3, 0x1
16022 + if-le v2, v3, :cond_148
16024 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
16026 + add-int/lit8 v2, v2, -0x1
16028 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
16030 + goto/16 :goto_75
16032 + :cond_116
16033 + :try_start_116
16034 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
16036 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16038 + move-result-wide v4
16040 + cmp-long v2, v2, v4
16042 + if-nez v2, :cond_109
16044 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
16046 + const-string v3, "incoming_number"
16048 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
16050 + move-result-object v16
16052 + const-string v2, "incoming_number"
16054 + move-object/from16 v0, p2
16056 + move-object/from16 v1, v16
16058 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
16060 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16062 + const/4 v5, 0x0
16064 + const-string v6, "incomingCall"
16066 + const/4 v7, 0x0
16068 + move-object/from16 v3, p0
16070 + move/from16 v4, p1
16072 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16073 + :try_end_13e
16074 + .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_13e} :catch_13f
16076 + goto :goto_109
16078 + :catch_13f
16079 + move-exception v13
16081 + const-string v2, "PrivacyActivityManagerService"
16083 + const-string v3, "failed to enforce intent broadcast permission"
16085 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16087 + goto :goto_109
16089 + :cond_148
16090 + const/4 v2, 0x0
16092 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
16094 + goto/16 :goto_75
16096 + :cond_14d
16097 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
16099 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16101 + move-result v2
16103 + if-eqz v2, :cond_222
16105 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16107 + move-object/from16 v0, p0
16109 + move/from16 v1, p1
16111 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16113 + move-result-object v8
16115 + const-string v16, "[real]"
16117 + const-string/jumbo v2, "pdus"
16119 + move-object/from16 v0, p2
16121 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16123 + move-result-object v2
16125 + check-cast v2, [Ljava/lang/Object;
16127 + move-object v15, v2
16129 + check-cast v15, [Ljava/lang/Object;
16131 + if-eqz v15, :cond_1cd
16133 + const/4 v2, 0x0
16135 + aget-object v2, v15, v2
16137 + check-cast v2, [B
16139 + check-cast v2, [B
16141 + move-object v12, v2
16143 + :goto_179
16144 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
16146 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16148 + move-result-wide v4
16150 + cmp-long v2, v2, v4
16152 + if-eqz v2, :cond_193
16154 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
16156 + move-result-object v2
16158 + check-cast v2, Landroid/content/Intent;
16160 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16162 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16164 + move-result-wide v2
16166 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
16168 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
16170 + :cond_193
16171 + if-eqz v8, :cond_1cf
16173 + :try_start_195
16174 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
16176 + move-result v2
16178 + if-eqz v2, :cond_1cf
16180 + const-string v16, "[empty]"
16182 + const/4 v2, 0x1
16184 + new-array v14, v2, [Ljava/lang/Object;
16186 + const/4 v2, 0x0
16188 + const/16 v3, 0x10
16190 + new-array v3, v3, [B
16192 + fill-array-data v3, :array_350
16194 + aput-object v3, v14, v2
16196 + const-string/jumbo v2, "pdus"
16198 + move-object/from16 v0, p2
16200 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16202 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16204 + const/4 v5, 0x1
16206 + const-string/jumbo v6, "sms"
16208 + const/4 v7, 0x0
16210 + move-object/from16 v3, p0
16212 + move/from16 v4, p1
16214 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16215 + :try_end_1c0
16216 + .catch Ljava/lang/Exception; {:try_start_195 .. :try_end_1c0} :catch_212
16218 + :cond_1c0
16219 + :goto_1c0
16220 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
16222 + const/4 v3, 0x1
16224 + if-le v2, v3, :cond_21d
16226 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
16228 + add-int/lit8 v2, v2, -0x1
16230 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
16232 + goto/16 :goto_75
16234 + :cond_1cd
16235 + const/4 v12, 0x0
16237 + goto :goto_179
16239 + :cond_1cf
16240 + :try_start_1cf
16241 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
16243 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16245 + move-result-wide v4
16247 + cmp-long v2, v2, v4
16249 + if-nez v2, :cond_1c0
16251 + const-string/jumbo v2, "pdus"
16253 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16255 + const-string/jumbo v4, "pdus"
16257 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16259 + move-result-object v3
16261 + move-object/from16 v0, p2
16263 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16265 + const-string/jumbo v2, "pdus"
16267 + move-object/from16 v0, p2
16269 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16271 + move-result-object v2
16273 + check-cast v2, [Ljava/lang/Object;
16275 + move-object v0, v2
16277 + check-cast v0, [Ljava/lang/Object;
16279 + move-object v15, v0
16281 + if-eqz v15, :cond_21b
16283 + const/4 v2, 0x0
16285 + aget-object v2, v15, v2
16287 + check-cast v2, [B
16289 + check-cast v2, [B
16291 + move-object v12, v2
16293 + :goto_203
16294 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16296 + const/4 v5, 0x0
16298 + const-string/jumbo v6, "sms"
16300 + const/4 v7, 0x0
16302 + move-object/from16 v3, p0
16304 + move/from16 v4, p1
16306 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16307 + :try_end_211
16308 + .catch Ljava/lang/Exception; {:try_start_1cf .. :try_end_211} :catch_212
16310 + goto :goto_1c0
16312 + :catch_212
16313 + move-exception v13
16315 + const-string v2, "PrivacyActivityManagerService"
16317 + const-string v3, "failed to enforce intent broadcast permission"
16319 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16321 + goto :goto_1c0
16323 + :cond_21b
16324 + const/4 v12, 0x0
16326 + goto :goto_203
16328 + :cond_21d
16329 + const/4 v2, 0x0
16331 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
16333 + goto/16 :goto_75
16335 + :cond_222
16336 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
16338 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16340 + move-result v2
16342 + if-nez v2, :cond_232
16344 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
16346 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16348 + move-result v2
16350 + if-eqz v2, :cond_2ff
16352 + :cond_232
16353 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16355 + move-object/from16 v0, p0
16357 + move/from16 v1, p1
16359 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16361 + move-result-object v8
16363 + const-string v16, "[real]"
16365 + const-string/jumbo v2, "pdus"
16367 + move-object/from16 v0, p2
16369 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16371 + move-result-object v2
16373 + check-cast v2, [Ljava/lang/Object;
16375 + move-object v15, v2
16377 + check-cast v15, [Ljava/lang/Object;
16379 + if-eqz v15, :cond_2aa
16381 + const/4 v2, 0x0
16383 + aget-object v2, v15, v2
16385 + check-cast v2, [B
16387 + check-cast v2, [B
16389 + move-object v12, v2
16391 + :goto_256
16392 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16394 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16396 + move-result-wide v4
16398 + cmp-long v2, v2, v4
16400 + if-eqz v2, :cond_270
16402 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
16404 + move-result-object v2
16406 + check-cast v2, Landroid/content/Intent;
16408 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16410 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16412 + move-result-wide v2
16414 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16416 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16418 + :cond_270
16419 + if-eqz v8, :cond_2ac
16421 + :try_start_272
16422 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
16424 + move-result v2
16426 + if-eqz v2, :cond_2ac
16428 + const-string v16, "[empty]"
16430 + const/4 v2, 0x1
16432 + new-array v14, v2, [Ljava/lang/Object;
16434 + const/4 v2, 0x0
16436 + const/16 v3, 0x10
16438 + new-array v3, v3, [B
16440 + fill-array-data v3, :array_35c
16442 + aput-object v3, v14, v2
16444 + const-string/jumbo v2, "pdus"
16446 + move-object/from16 v0, p2
16448 + invoke-virtual {v0, v2, v14}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16450 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16452 + const/4 v5, 0x1
16454 + const-string/jumbo v6, "mms"
16456 + const/4 v7, 0x0
16458 + move-object/from16 v3, p0
16460 + move/from16 v4, p1
16462 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16463 + :try_end_29d
16464 + .catch Ljava/lang/Exception; {:try_start_272 .. :try_end_29d} :catch_2ef
16466 + :cond_29d
16467 + :goto_29d
16468 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16470 + const/4 v3, 0x1
16472 + if-le v2, v3, :cond_2fa
16474 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16476 + add-int/lit8 v2, v2, -0x1
16478 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
16480 + goto/16 :goto_75
16482 + :cond_2aa
16483 + const/4 v12, 0x0
16485 + goto :goto_256
16487 + :cond_2ac
16488 + :try_start_2ac
16489 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
16491 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16493 + move-result-wide v4
16495 + cmp-long v2, v2, v4
16497 + if-nez v2, :cond_29d
16499 + const-string/jumbo v2, "pdus"
16501 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16503 + const-string/jumbo v4, "pdus"
16505 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16507 + move-result-object v3
16509 + move-object/from16 v0, p2
16511 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
16513 + const-string/jumbo v2, "pdus"
16515 + move-object/from16 v0, p2
16517 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
16519 + move-result-object v2
16521 + check-cast v2, [Ljava/lang/Object;
16523 + move-object v0, v2
16525 + check-cast v0, [Ljava/lang/Object;
16527 + move-object v15, v0
16529 + if-eqz v15, :cond_2f8
16531 + const/4 v2, 0x0
16533 + aget-object v2, v15, v2
16535 + check-cast v2, [B
16537 + check-cast v2, [B
16539 + move-object v12, v2
16541 + :goto_2e0
16542 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16544 + const/4 v5, 0x0
16546 + const-string/jumbo v6, "mms"
16548 + const/4 v7, 0x0
16550 + move-object/from16 v3, p0
16552 + move/from16 v4, p1
16554 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16555 + :try_end_2ee
16556 + .catch Ljava/lang/Exception; {:try_start_2ac .. :try_end_2ee} :catch_2ef
16558 + goto :goto_29d
16560 + :catch_2ef
16561 + move-exception v13
16563 + const-string v2, "PrivacyActivityManagerService"
16565 + const-string v3, "failed to enforce intent broadcast permission"
16567 + invoke-static {v2, v3, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16569 + goto :goto_29d
16571 + :cond_2f8
16572 + const/4 v12, 0x0
16574 + goto :goto_2e0
16576 + :cond_2fa
16577 + const/4 v2, 0x0
16579 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
16581 + goto/16 :goto_75
16583 + :cond_2ff
16584 + const-string v2, "android.intent.action.BOOT_COMPLETED"
16586 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16588 + move-result v2
16590 + if-eqz v2, :cond_30e
16592 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16594 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
16596 + goto/16 :goto_75
16598 + :cond_30e
16599 + const-string v2, "android.intent.action.PACKAGE_ADDED"
16601 + invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16603 + move-result v2
16605 + if-eqz v2, :cond_75
16607 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16609 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16611 + move-result-wide v4
16613 + cmp-long v2, v2, v4
16615 + if-eqz v2, :cond_75
16617 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
16619 + move-result-wide v2
16621 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
16623 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
16625 + move-result-object v2
16627 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
16629 + move-result-object v10
16631 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
16633 + move-result-object v2
16635 + const-string v3, "android.intent.extra.UID"
16637 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
16639 + move-result v11
16641 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16643 + invoke-virtual {v2, v10, v11}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16645 + move-result-object v8
16647 + if-eqz v8, :cond_75
16649 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
16651 + move-result v2
16653 + if-eq v2, v11, :cond_75
16655 + invoke-virtual {v8, v11}, Landroid/privacy/PrivacySettings;->setUid(I)V
16657 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16659 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16661 + goto/16 :goto_75
16663 + :array_350
16664 + .array-data 0x1
16665 + 0x0t
16666 + 0x20t
16667 + 0x1t
16668 + 0x81t
16669 + 0xf0t
16670 + 0x0t
16671 + 0x0t
16672 + 0x11t
16673 + 0x90t
16674 + 0x1t
16675 + 0x30t
16676 + 0x22t
16677 + 0x22t
16678 + 0x80t
16679 + 0x1t
16680 + 0x20t
16681 + .end array-data
16683 + :array_35c
16684 + .array-data 0x1
16685 + 0x0t
16686 + 0x20t
16687 + 0x1t
16688 + 0x81t
16689 + 0xf0t
16690 + 0x0t
16691 + 0x0t
16692 + 0x11t
16693 + 0x90t
16694 + 0x1t
16695 + 0x30t
16696 + 0x22t
16697 + 0x22t
16698 + 0x80t
16699 + 0x1t
16700 + 0x20t
16701 + .end array-data
16702 +.end method
16704 +.method private static hashCode(Landroid/content/Intent;)J
16705 + .registers 7
16707 + const-wide/16 v3, 0x0
16709 + const-string/jumbo v2, "privacy_hash"
16711 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
16713 + move-result-wide v0
16715 + cmp-long v2, v0, v3
16717 + if-nez v2, :cond_1e
16719 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
16721 + move-result v2
16723 + int-to-long v2, v2
16725 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
16727 + move-result-wide v4
16729 + add-long v0, v2, v4
16731 + const-string/jumbo v2, "privacy_hash"
16733 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
16735 + :cond_1e
16736 + return-wide v0
16737 +.end method
16738 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
16739 --- stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 18:00:00.000000000 -0600
16740 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-06-14 15:23:33.804297045 -0500
16741 @@ -0,0 +1,624 @@
16742 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
16743 +.super Ljava/lang/Object;
16744 +.source "PrivacyContentResolver.java"
16747 +# static fields
16748 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
16750 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
16753 +# direct methods
16754 +.method public constructor <init>()V
16755 + .registers 1
16757 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16759 + return-void
16760 +.end method
16762 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
16763 + .registers 8
16765 + new-instance v4, Ljava/lang/StringBuffer;
16767 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
16769 + if-eqz p0, :cond_2d
16771 + move-object v0, p0
16773 + array-length v3, v0
16775 + const/4 v2, 0x0
16777 + :goto_a
16778 + if-ge v2, v3, :cond_30
16780 + aget-object v1, v0, v2
16782 + new-instance v5, Ljava/lang/StringBuilder;
16784 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
16786 + const-string v6, "["
16788 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16790 + move-result-object v5
16792 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16794 + move-result-object v5
16796 + const-string v6, "]"
16798 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
16800 + move-result-object v5
16802 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
16804 + move-result-object v5
16806 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
16808 + add-int/lit8 v2, v2, 0x1
16810 + goto :goto_a
16812 + :cond_2d
16813 + const-string v5, ""
16815 + :goto_2f
16816 + return-object v5
16818 + :cond_30
16819 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
16821 + move-result-object v5
16823 + goto :goto_2f
16824 +.end method
16826 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
16827 + .registers 21
16828 + .annotation system Ldalvik/annotation/Throws;
16829 + value = {
16830 + Landroid/os/RemoteException;
16832 + .end annotation
16834 + if-eqz p0, :cond_1e4
16836 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16838 + if-nez v1, :cond_13
16840 + const-string/jumbo v1, "privacy"
16842 + move-object/from16 v0, p2
16844 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
16846 + move-result-object v1
16848 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
16850 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16852 + :cond_13
16853 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
16855 + move-result-object v2
16857 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
16859 + move-result v3
16861 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16863 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
16865 + move-result-object v7
16867 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
16869 + move-result-object v9
16871 + const-string v15, "[real]"
16873 + move-object/from16 v13, p3
16875 + if-eqz v9, :cond_54
16877 + const-string v1, "contacts"
16879 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16881 + move-result v1
16883 + if-nez v1, :cond_3b
16885 + const-string v1, "com.android.contacts"
16887 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16889 + move-result v1
16891 + if-eqz v1, :cond_ab
16893 + :cond_3b
16894 + if-eqz v7, :cond_54
16896 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16898 + move-result v1
16900 + const/4 v4, 0x1
16902 + if-ne v1, v4, :cond_55
16904 + const-string v15, "[empty]"
16906 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16908 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16910 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16912 + const/4 v4, 0x1
16914 + const-string v5, "contacts"
16916 + const/4 v6, 0x0
16918 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16920 + :cond_54
16921 + :goto_54
16922 + return-object v13
16924 + :cond_55
16925 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
16927 + move-result v1
16929 + const/4 v4, 0x2
16931 + if-ne v1, v4, :cond_a1
16933 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
16935 + move-result-object v1
16937 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
16939 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
16941 + move-result-object v4
16943 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
16945 + move-result v1
16947 + if-eqz v1, :cond_a1
16949 + const/4 v11, 0x0
16951 + if-eqz p1, :cond_82
16953 + move-object/from16 v8, p1
16955 + array-length v12, v8
16957 + const/4 v10, 0x0
16959 + :goto_73
16960 + if-ge v10, v12, :cond_82
16962 + aget-object v16, v8, v10
16964 + const-string v1, "_id"
16966 + move-object/from16 v0, v16
16968 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
16970 + move-result v1
16972 + if-eqz v1, :cond_93
16974 + const/4 v11, 0x1
16976 + :cond_82
16977 + if-nez v11, :cond_96
16979 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
16981 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
16983 + :goto_89
16984 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
16986 + const/4 v4, 0x2
16988 + const-string v5, "contacts"
16990 + const/4 v6, 0x0
16992 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16994 + goto :goto_54
16996 + :cond_93
16997 + add-int/lit8 v10, v10, 0x1
16999 + goto :goto_73
17001 + :cond_96
17002 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
17004 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
17006 + move-result-object v1
17008 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
17010 + move-object v13, v14
17012 + goto :goto_89
17014 + :cond_a1
17015 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17017 + const/4 v4, 0x0
17019 + const-string v5, "contacts"
17021 + const/4 v6, 0x0
17023 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17025 + goto :goto_54
17027 + :cond_ab
17028 + const-string v1, "com.android.calendar"
17030 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17032 + move-result v1
17034 + if-eqz v1, :cond_d8
17036 + if-eqz v7, :cond_cd
17038 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
17040 + move-result v1
17042 + const/4 v4, 0x1
17044 + if-ne v1, v4, :cond_cd
17046 + const-string v15, "[empty]"
17048 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17050 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17052 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17054 + const/4 v4, 0x1
17056 + const-string v5, "calendar"
17058 + const/4 v6, 0x0
17060 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17062 + goto :goto_54
17064 + :cond_cd
17065 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17067 + const/4 v4, 0x0
17069 + const-string v5, "calendar"
17071 + const/4 v6, 0x0
17073 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17075 + goto/16 :goto_54
17077 + :cond_d8
17078 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
17080 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
17082 + move-result-object v1
17084 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17086 + move-result v1
17088 + if-eqz v1, :cond_10c
17090 + if-eqz v7, :cond_100
17092 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
17094 + move-result v1
17096 + const/4 v4, 0x1
17098 + if-ne v1, v4, :cond_100
17100 + const-string v15, "[empty]"
17102 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17104 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17106 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17108 + const/4 v4, 0x1
17110 + const-string/jumbo v5, "mms"
17112 + const/4 v6, 0x0
17114 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17116 + goto/16 :goto_54
17118 + :cond_100
17119 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17121 + const/4 v4, 0x0
17123 + const-string/jumbo v5, "mms"
17125 + const/4 v6, 0x0
17127 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17129 + goto/16 :goto_54
17131 + :cond_10c
17132 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
17134 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
17136 + move-result-object v1
17138 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17140 + move-result v1
17142 + if-eqz v1, :cond_140
17144 + if-eqz v7, :cond_134
17146 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
17148 + move-result v1
17150 + const/4 v4, 0x1
17152 + if-ne v1, v4, :cond_134
17154 + const-string v15, "[empty]"
17156 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17158 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17160 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17162 + const/4 v4, 0x1
17164 + const-string/jumbo v5, "sms"
17166 + const/4 v6, 0x0
17168 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17170 + goto/16 :goto_54
17172 + :cond_134
17173 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17175 + const/4 v4, 0x0
17177 + const-string/jumbo v5, "sms"
17179 + const/4 v6, 0x0
17181 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17183 + goto/16 :goto_54
17185 + :cond_140
17186 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
17188 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
17190 + move-result-object v1
17192 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17194 + move-result v1
17196 + if-nez v1, :cond_155
17198 + const-string/jumbo v1, "mms-sms-v2"
17200 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17202 + move-result v1
17204 + if-eqz v1, :cond_184
17206 + :cond_155
17207 + if-eqz v7, :cond_178
17209 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
17211 + move-result v1
17213 + const/4 v4, 0x1
17215 + if-eq v1, v4, :cond_165
17217 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
17219 + move-result v1
17221 + const/4 v4, 0x1
17223 + if-ne v1, v4, :cond_178
17225 + :cond_165
17226 + const-string v15, "[empty]"
17228 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17230 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17232 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17234 + const/4 v4, 0x1
17236 + const-string/jumbo v5, "mmsSms"
17238 + const/4 v6, 0x0
17240 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17242 + goto/16 :goto_54
17244 + :cond_178
17245 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17247 + const/4 v4, 0x0
17249 + const-string/jumbo v5, "mmsSms"
17251 + const/4 v6, 0x0
17253 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17255 + goto/16 :goto_54
17257 + :cond_184
17258 + const-string v1, "call_log"
17260 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17262 + move-result v1
17264 + if-eqz v1, :cond_1b2
17266 + if-eqz v7, :cond_1a7
17268 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
17270 + move-result v1
17272 + const/4 v4, 0x1
17274 + if-ne v1, v4, :cond_1a7
17276 + const-string v15, "[empty]"
17278 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17280 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17282 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17284 + const/4 v4, 0x1
17286 + const-string v5, "callLog"
17288 + const/4 v6, 0x0
17290 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17292 + goto/16 :goto_54
17294 + :cond_1a7
17295 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17297 + const/4 v4, 0x0
17299 + const-string v5, "callLog"
17301 + const/4 v6, 0x0
17303 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17305 + goto/16 :goto_54
17307 + :cond_1b2
17308 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
17310 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
17312 + move-result-object v1
17314 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
17316 + move-result v1
17318 + if-eqz v1, :cond_54
17320 + if-eqz v7, :cond_1d9
17322 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
17324 + move-result v1
17326 + const/4 v4, 0x1
17328 + if-ne v1, v4, :cond_1d9
17330 + const-string v15, "[empty]"
17332 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
17334 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
17336 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17338 + const/4 v4, 0x1
17340 + const-string v5, "bookmarks"
17342 + const/4 v6, 0x0
17344 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17346 + goto/16 :goto_54
17348 + :cond_1d9
17349 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
17351 + const/4 v4, 0x0
17353 + const-string v5, "bookmarks"
17355 + const/4 v6, 0x0
17357 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
17359 + goto/16 :goto_54
17361 + :cond_1e4
17362 + move-object/from16 v13, p3
17364 + goto/16 :goto_54
17365 +.end method
17366 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali
17367 --- stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 18:00:00.000000000 -0600
17368 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-06-14 15:23:33.816297100 -0500
17369 @@ -0,0 +1,1225 @@
17370 +.class public Landroid/privacy/surrogate/PrivacyCursor;
17371 +.super Ljava/lang/Object;
17372 +.source "PrivacyCursor.java"
17374 +# interfaces
17375 +.implements Landroid/database/Cursor;
17378 +# static fields
17379 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
17382 +# instance fields
17383 +.field private allowedIdMapping:[I
17385 +.field private allowedIds:[I
17387 +.field private realCursor:Landroid/database/Cursor;
17390 +# direct methods
17391 +.method public constructor <init>()V
17392 + .registers 1
17394 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17396 + return-void
17397 +.end method
17399 +.method public constructor <init>(Landroid/database/Cursor;[I)V
17400 + .registers 7
17402 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17404 + if-eqz p2, :cond_8
17406 + array-length v2, p2
17408 + if-nez v2, :cond_9
17410 + :cond_8
17411 + const/4 p1, 0x0
17413 + :cond_9
17414 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17416 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17418 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17420 + if-eqz v2, :cond_3f
17422 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17424 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
17426 + move-result v0
17428 + array-length v2, p2
17430 + new-array v2, v2, [I
17432 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17434 + const/4 v1, 0x0
17436 + :cond_1d
17437 + :goto_1d
17438 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17440 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
17442 + move-result v2
17444 + if-eqz v2, :cond_3a
17446 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17448 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
17450 + move-result v2
17452 + if-eqz v2, :cond_1d
17454 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17456 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17458 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17460 + move-result v3
17462 + aput v3, v2, v1
17464 + add-int/lit8 v1, v1, 0x1
17466 + goto :goto_1d
17468 + :cond_3a
17469 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17471 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
17473 + :cond_3f
17474 + return-void
17475 +.end method
17477 +.method private getContactId(Landroid/database/Cursor;)I
17478 + .registers 5
17480 + const-string v2, "_id"
17482 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17484 + move-result v0
17486 + const/4 v1, -0x1
17488 + const/4 v2, -0x1
17490 + if-eq v0, v2, :cond_e
17492 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
17494 + move-result v1
17496 + :cond_e
17497 + return v1
17498 +.end method
17500 +.method private getMappedPos(I)I
17501 + .registers 4
17503 + const/4 v0, 0x0
17505 + :goto_1
17506 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17508 + array-length v1, v1
17510 + if-ge v0, v1, :cond_10
17512 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17514 + aget v1, v1, v0
17516 + if-ne v1, p1, :cond_d
17518 + :goto_c
17519 + return v0
17521 + :cond_d
17522 + add-int/lit8 v0, v0, 0x1
17524 + goto :goto_1
17526 + :cond_10
17527 + const/4 v0, -0x1
17529 + goto :goto_c
17530 +.end method
17532 +.method private isAllowed(I)Z
17533 + .registers 7
17535 + const/4 v4, 0x0
17537 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
17539 + array-length v3, v0
17541 + const/4 v2, 0x0
17543 + :goto_5
17544 + if-ge v2, v3, :cond_c
17546 + aget v1, v0, v2
17548 + if-ne p1, v1, :cond_d
17550 + const/4 v4, 0x1
17552 + :cond_c
17553 + return v4
17555 + :cond_d
17556 + add-int/lit8 v2, v2, 0x1
17558 + goto :goto_5
17559 +.end method
17561 +.method private isAllowed(Landroid/database/Cursor;)Z
17562 + .registers 3
17564 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
17566 + move-result v0
17568 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
17570 + move-result v0
17572 + return v0
17573 +.end method
17576 +# virtual methods
17577 +.method public close()V
17578 + .registers 2
17580 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17582 + if-eqz v0, :cond_9
17584 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17586 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
17588 + :cond_9
17589 + return-void
17590 +.end method
17592 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17593 + .registers 4
17595 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17597 + if-eqz v0, :cond_9
17599 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17601 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
17603 + :cond_9
17604 + return-void
17605 +.end method
17607 +.method public deactivate()V
17608 + .registers 2
17610 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17612 + if-eqz v0, :cond_9
17614 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17616 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
17618 + :cond_9
17619 + return-void
17620 +.end method
17622 +.method public getBlob(I)[B
17623 + .registers 3
17625 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17627 + if-eqz v0, :cond_b
17629 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17631 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
17633 + move-result-object v0
17635 + :goto_a
17636 + return-object v0
17638 + :cond_b
17639 + const/4 v0, 0x0
17641 + new-array v0, v0, [B
17643 + goto :goto_a
17644 +.end method
17646 +.method public getColumnCount()I
17647 + .registers 2
17649 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17651 + if-eqz v0, :cond_b
17653 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17655 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
17657 + move-result v0
17659 + :goto_a
17660 + return v0
17662 + :cond_b
17663 + const/4 v0, 0x0
17665 + goto :goto_a
17666 +.end method
17668 +.method public getColumnIndex(Ljava/lang/String;)I
17669 + .registers 3
17671 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17673 + if-eqz v0, :cond_b
17675 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17677 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
17679 + move-result v0
17681 + :goto_a
17682 + return v0
17684 + :cond_b
17685 + const/4 v0, -0x1
17687 + goto :goto_a
17688 +.end method
17690 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
17691 + .registers 3
17692 + .annotation system Ldalvik/annotation/Throws;
17693 + value = {
17694 + Ljava/lang/IllegalArgumentException;
17696 + .end annotation
17698 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17700 + if-eqz v0, :cond_b
17702 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17704 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
17706 + move-result v0
17708 + :goto_a
17709 + return v0
17711 + :cond_b
17712 + const/4 v0, -0x1
17714 + goto :goto_a
17715 +.end method
17717 +.method public getColumnName(I)Ljava/lang/String;
17718 + .registers 3
17720 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17722 + if-eqz v0, :cond_b
17724 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17726 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
17728 + move-result-object v0
17730 + :goto_a
17731 + return-object v0
17733 + :cond_b
17734 + const-string v0, ""
17736 + goto :goto_a
17737 +.end method
17739 +.method public getColumnNames()[Ljava/lang/String;
17740 + .registers 4
17742 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17744 + if-eqz v0, :cond_b
17746 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17748 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnNames()[Ljava/lang/String;
17750 + move-result-object v0
17752 + :goto_a
17753 + return-object v0
17755 + :cond_b
17756 + const/4 v0, 0x1
17758 + new-array v0, v0, [Ljava/lang/String;
17760 + const/4 v1, 0x0
17762 + const-string v2, ""
17764 + aput-object v2, v0, v1
17766 + goto :goto_a
17767 +.end method
17769 +.method public getCount()I
17770 + .registers 4
17772 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17774 + if-eqz v0, :cond_23
17776 + const-string v0, "PrivacyCursor"
17778 + new-instance v1, Ljava/lang/StringBuilder;
17780 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17782 + const-string v2, "getCount: "
17784 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17786 + move-result-object v1
17788 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17790 + array-length v2, v2
17792 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17794 + move-result-object v1
17796 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17798 + move-result-object v1
17800 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17802 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
17804 + array-length v0, v0
17806 + :goto_22
17807 + return v0
17809 + :cond_23
17810 + const/4 v0, 0x0
17812 + goto :goto_22
17813 +.end method
17815 +.method public getDouble(I)D
17816 + .registers 4
17818 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17820 + if-eqz v0, :cond_b
17822 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17824 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
17826 + move-result-wide v0
17828 + :goto_a
17829 + return-wide v0
17831 + :cond_b
17832 + const-wide/16 v0, 0x0
17834 + goto :goto_a
17835 +.end method
17837 +.method public getExtras()Landroid/os/Bundle;
17838 + .registers 2
17840 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17842 + if-eqz v0, :cond_b
17844 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17846 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
17848 + move-result-object v0
17850 + :goto_a
17851 + return-object v0
17853 + :cond_b
17854 + new-instance v0, Landroid/os/Bundle;
17856 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
17858 + goto :goto_a
17859 +.end method
17861 +.method public getFloat(I)F
17862 + .registers 3
17864 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17866 + if-eqz v0, :cond_b
17868 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17870 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
17872 + move-result v0
17874 + :goto_a
17875 + return v0
17877 + :cond_b
17878 + const/4 v0, 0x0
17880 + goto :goto_a
17881 +.end method
17883 +.method public getInt(I)I
17884 + .registers 4
17886 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17888 + if-eqz v1, :cond_b
17890 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17892 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
17894 + move-result v0
17896 + :goto_a
17897 + return v0
17899 + :cond_b
17900 + const/4 v0, 0x0
17902 + goto :goto_a
17903 +.end method
17905 +.method public getLong(I)J
17906 + .registers 4
17908 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17910 + if-eqz v0, :cond_b
17912 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17914 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
17916 + move-result-wide v0
17918 + :goto_a
17919 + return-wide v0
17921 + :cond_b
17922 + const-wide/16 v0, 0x0
17924 + goto :goto_a
17925 +.end method
17927 +.method public getPosition()I
17928 + .registers 5
17930 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17932 + if-eqz v1, :cond_37
17934 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17936 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
17938 + move-result v1
17940 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
17942 + move-result v0
17944 + const-string v1, "PrivacyCursor"
17946 + new-instance v2, Ljava/lang/StringBuilder;
17948 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
17950 + const-string v3, "getPosition - mapped position: "
17952 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17954 + move-result-object v2
17956 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17958 + move-result-object v2
17960 + const-string v3, " real position: "
17962 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17964 + move-result-object v2
17966 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17968 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
17970 + move-result v3
17972 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17974 + move-result-object v2
17976 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17978 + move-result-object v2
17980 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
17982 + :goto_36
17983 + return v0
17985 + :cond_37
17986 + const/4 v0, -0x1
17988 + goto :goto_36
17989 +.end method
17991 +.method public getShort(I)S
17992 + .registers 3
17994 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
17996 + if-eqz v0, :cond_b
17998 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18000 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
18002 + move-result v0
18004 + :goto_a
18005 + return v0
18007 + :cond_b
18008 + const/4 v0, 0x0
18010 + goto :goto_a
18011 +.end method
18013 +.method public getString(I)Ljava/lang/String;
18014 + .registers 3
18016 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18018 + if-eqz v0, :cond_b
18020 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18022 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
18024 + move-result-object v0
18026 + :goto_a
18027 + return-object v0
18029 + :cond_b
18030 + const-string v0, ""
18032 + goto :goto_a
18033 +.end method
18035 +.method public getType(I)I
18036 + .registers 3
18038 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18040 + if-eqz v0, :cond_b
18042 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18044 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
18046 + move-result v0
18048 + :goto_a
18049 + return v0
18051 + :cond_b
18052 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18054 + const/4 v0, 0x0
18056 + goto :goto_a
18057 +.end method
18059 +.method public getWantsAllOnMoveCalls()Z
18060 + .registers 2
18062 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18064 + if-eqz v0, :cond_b
18066 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18068 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
18070 + move-result v0
18072 + :goto_a
18073 + return v0
18075 + :cond_b
18076 + const/4 v0, 0x0
18078 + goto :goto_a
18079 +.end method
18081 +.method public isAfterLast()Z
18082 + .registers 2
18084 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18086 + if-eqz v0, :cond_b
18088 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18090 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
18092 + move-result v0
18094 + :goto_a
18095 + return v0
18097 + :cond_b
18098 + const/4 v0, 0x0
18100 + goto :goto_a
18101 +.end method
18103 +.method public isBeforeFirst()Z
18104 + .registers 2
18106 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18108 + if-eqz v0, :cond_b
18110 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18112 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
18114 + move-result v0
18116 + :goto_a
18117 + return v0
18119 + :cond_b
18120 + const/4 v0, 0x0
18122 + goto :goto_a
18123 +.end method
18125 +.method public isClosed()Z
18126 + .registers 2
18128 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18130 + if-eqz v0, :cond_b
18132 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18134 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
18136 + move-result v0
18138 + :goto_a
18139 + return v0
18141 + :cond_b
18142 + const/4 v0, 0x0
18144 + goto :goto_a
18145 +.end method
18147 +.method public isFirst()Z
18148 + .registers 4
18150 + const/4 v0, 0x0
18152 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18154 + if-eqz v1, :cond_12
18156 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18158 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
18160 + move-result v1
18162 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18164 + aget v2, v2, v0
18166 + if-ne v1, v2, :cond_12
18168 + const/4 v0, 0x1
18170 + :cond_12
18171 + return v0
18172 +.end method
18174 +.method public isLast()Z
18175 + .registers 4
18177 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18179 + if-eqz v0, :cond_17
18181 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18183 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
18185 + move-result v0
18187 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18189 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18191 + array-length v2, v2
18193 + add-int/lit8 v2, v2, -0x1
18195 + aget v1, v1, v2
18197 + if-ne v0, v1, :cond_17
18199 + const/4 v0, 0x1
18201 + :goto_16
18202 + return v0
18204 + :cond_17
18205 + const/4 v0, 0x0
18207 + goto :goto_16
18208 +.end method
18210 +.method public isNull(I)Z
18211 + .registers 3
18213 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18215 + if-eqz v0, :cond_b
18217 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18219 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
18221 + move-result v0
18223 + :goto_a
18224 + return v0
18226 + :cond_b
18227 + const/4 v0, 0x0
18229 + goto :goto_a
18230 +.end method
18232 +.method public move(I)Z
18233 + .registers 8
18235 + const/4 v2, 0x0
18237 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18239 + if-eqz v3, :cond_33
18241 + const-string v3, "PrivacyCursor"
18243 + new-instance v4, Ljava/lang/StringBuilder;
18245 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
18247 + const-string/jumbo v5, "move - offset: "
18249 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18251 + move-result-object v4
18253 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18255 + move-result-object v4
18257 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18259 + move-result-object v4
18261 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
18263 + :try_start_1e
18264 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18266 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18268 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
18270 + move-result v4
18272 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
18274 + move-result v4
18276 + add-int/2addr v4, p1
18278 + aget v1, v3, v4
18280 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18282 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
18283 + :try_end_32
18284 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_1e .. :try_end_32} :catch_34
18286 + move-result v2
18288 + :cond_33
18289 + :goto_33
18290 + return v2
18292 + :catch_34
18293 + move-exception v0
18295 + goto :goto_33
18296 +.end method
18298 +.method public moveToFirst()Z
18299 + .registers 4
18301 + const/4 v0, 0x0
18303 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18305 + if-eqz v1, :cond_f
18307 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18309 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18311 + aget v2, v2, v0
18313 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18315 + move-result v0
18317 + :cond_f
18318 + return v0
18319 +.end method
18321 +.method public moveToLast()Z
18322 + .registers 5
18324 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18326 + if-eqz v1, :cond_14
18328 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18330 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18332 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18334 + array-length v3, v3
18336 + add-int/lit8 v3, v3, -0x1
18338 + aget v2, v2, v3
18340 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
18342 + move-result v0
18344 + :goto_13
18345 + return v0
18347 + :cond_14
18348 + const/4 v0, 0x0
18350 + goto :goto_13
18351 +.end method
18353 +.method public moveToNext()Z
18354 + .registers 3
18356 + const/4 v0, 0x0
18358 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18360 + if-eqz v1, :cond_d
18362 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18364 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18366 + move-result v1
18368 + if-nez v1, :cond_e
18370 + :cond_d
18371 + return v0
18373 + :cond_e
18374 + const/4 v0, 0x1
18376 + :goto_f
18377 + const/4 v1, 0x1
18379 + if-ne v0, v1, :cond_d
18381 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18383 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18385 + move-result v1
18387 + if-nez v1, :cond_d
18389 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18391 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
18393 + move-result v0
18395 + goto :goto_f
18396 +.end method
18398 +.method public moveToPosition(I)Z
18399 + .registers 6
18401 + const/4 v1, 0x0
18403 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18405 + if-eqz v2, :cond_f
18407 + :try_start_5
18408 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18410 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
18412 + aget v3, v3, p1
18414 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
18415 + :try_end_e
18416 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_5 .. :try_end_e} :catch_10
18418 + move-result v1
18420 + :cond_f
18421 + :goto_f
18422 + return v1
18424 + :catch_10
18425 + move-exception v0
18427 + goto :goto_f
18428 +.end method
18430 +.method public moveToPrevious()Z
18431 + .registers 3
18433 + const/4 v0, 0x0
18435 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18437 + if-eqz v1, :cond_d
18439 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18441 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18443 + move-result v1
18445 + if-nez v1, :cond_e
18447 + :cond_d
18448 + return v0
18450 + :cond_e
18451 + const/4 v0, 0x1
18453 + :goto_f
18454 + const/4 v1, 0x1
18456 + if-ne v0, v1, :cond_d
18458 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18460 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
18462 + move-result v1
18464 + if-nez v1, :cond_d
18466 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18468 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
18470 + move-result v0
18472 + goto :goto_f
18473 +.end method
18475 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
18476 + .registers 3
18478 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18480 + if-eqz v0, :cond_9
18482 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18484 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
18486 + :cond_9
18487 + return-void
18488 +.end method
18490 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
18491 + .registers 3
18493 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18495 + if-eqz v0, :cond_9
18497 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18499 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
18501 + :cond_9
18502 + return-void
18503 +.end method
18505 +.method public requery()Z
18506 + .registers 2
18508 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18510 + if-eqz v0, :cond_b
18512 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18514 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
18516 + move-result v0
18518 + :goto_a
18519 + return v0
18521 + :cond_b
18522 + const/4 v0, 0x0
18524 + goto :goto_a
18525 +.end method
18527 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18528 + .registers 3
18530 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18532 + if-eqz v0, :cond_b
18534 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18536 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
18538 + move-result-object v0
18540 + :goto_a
18541 + return-object v0
18543 + :cond_b
18544 + new-instance v0, Landroid/os/Bundle;
18546 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
18548 + goto :goto_a
18549 +.end method
18551 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18552 + .registers 4
18554 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18556 + if-eqz v0, :cond_9
18558 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18560 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
18562 + :cond_9
18563 + return-void
18564 +.end method
18566 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
18567 + .registers 3
18569 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18571 + if-eqz v0, :cond_9
18573 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18575 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
18577 + :cond_9
18578 + return-void
18579 +.end method
18581 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18582 + .registers 3
18584 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18586 + if-eqz v0, :cond_9
18588 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
18590 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
18592 + :cond_9
18593 + return-void
18594 +.end method
18595 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
18596 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 18:00:00.000000000 -0600
18597 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-06-14 15:23:33.816297100 -0500
18598 @@ -0,0 +1,134 @@
18599 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18600 +.super Ljava/lang/Thread;
18601 +.source "PrivacyLocationManager.java"
18604 +# annotations
18605 +.annotation system Ldalvik/annotation/EnclosingClass;
18606 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
18607 +.end annotation
18609 +.annotation system Ldalvik/annotation/InnerClass;
18610 + accessFlags = 0x2
18611 + name = "PrivacyLocationUpdater"
18612 +.end annotation
18615 +# instance fields
18616 +.field private intent:Landroid/app/PendingIntent;
18618 +.field private latitude:D
18620 +.field private listener:Landroid/location/LocationListener;
18622 +.field private longitude:D
18624 +.field private provider:Ljava/lang/String;
18626 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18629 +# direct methods
18630 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
18631 + .registers 9
18633 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
18635 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
18637 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18639 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18641 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18643 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18645 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18647 + return-void
18648 +.end method
18651 +# virtual methods
18652 +.method public run()V
18653 + .registers 8
18655 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18657 + if-eqz v3, :cond_43
18659 + new-instance v2, Landroid/location/Location;
18661 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
18663 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
18665 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
18667 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
18669 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
18671 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
18673 + const/4 v1, 0x0
18675 + :goto_16
18676 + const/4 v3, 0x5
18678 + if-ge v1, v3, :cond_43
18680 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18682 + if-eqz v3, :cond_34
18684 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
18686 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
18688 + :cond_22
18689 + :goto_22
18690 + :try_start_22
18691 + invoke-static {}, Ljava/lang/Math;->random()D
18693 + move-result-wide v3
18695 + const-wide v5, 0x408f400000000000L
18697 + mul-double/2addr v3, v5
18699 + double-to-int v3, v3
18701 + int-to-long v3, v3
18703 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
18704 + :try_end_31
18705 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
18707 + :goto_31
18708 + add-int/lit8 v1, v1, 0x1
18710 + goto :goto_16
18712 + :cond_34
18713 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18715 + if-eqz v3, :cond_22
18717 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
18719 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
18721 + goto :goto_22
18723 + :catch_3e
18724 + move-exception v0
18726 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
18728 + goto :goto_31
18730 + :cond_43
18731 + return-void
18732 +.end method
18733 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
18734 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 18:00:00.000000000 -0600
18735 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-06-14 15:23:33.832297191 -0500
18736 @@ -0,0 +1,2091 @@
18737 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
18738 +.super Landroid/location/LocationManager;
18739 +.source "PrivacyLocationManager.java"
18742 +# annotations
18743 +.annotation system Ldalvik/annotation/MemberClasses;
18744 + value = {
18745 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18747 +.end annotation
18750 +# static fields
18751 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
18753 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
18756 +# instance fields
18757 +.field private context:Landroid/content/Context;
18759 +.field private lock:Ljava/lang/Object;
18761 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
18764 +# direct methods
18765 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
18766 + .registers 5
18768 + invoke-direct {p0, p1}, Landroid/location/LocationManager;-><init>(Landroid/location/ILocationManager;)V
18770 + new-instance v0, Ljava/lang/Object;
18772 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
18774 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18776 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18778 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
18780 + const-string/jumbo v1, "privacy"
18782 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
18784 + move-result-object v1
18786 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
18788 + move-result-object v1
18790 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
18792 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18794 + return-void
18795 +.end method
18797 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18798 + .registers 7
18800 + const/4 v2, 0x3
18802 + if-nez p1, :cond_5
18804 + const/4 v0, 0x0
18806 + :goto_4
18807 + return v0
18809 + :cond_5
18810 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
18812 + move-result v0
18814 + const/4 v1, 0x1
18816 + if-eq v0, v1, :cond_24
18818 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
18820 + move-result v0
18822 + if-eq v0, v2, :cond_24
18824 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
18826 + move-result v0
18828 + if-eq v0, v2, :cond_24
18830 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
18832 + move-result v0
18834 + if-eq v0, v2, :cond_24
18836 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
18838 + move-result v0
18840 + if-ne v0, v2, :cond_2b
18842 + :cond_24
18843 + const-string v0, "gps"
18845 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18847 + move-result v0
18849 + goto :goto_4
18851 + :cond_2b
18852 + const-string/jumbo v0, "network"
18854 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18856 + move-result v0
18858 + goto :goto_4
18859 +.end method
18861 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
18862 + .registers 24
18864 + move-object/from16 v0, p0
18866 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
18868 + move-object/from16 v19, v0
18870 + monitor-enter v19
18872 + :try_start_7
18873 + move-object/from16 v0, p0
18875 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
18877 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
18879 + move-result-object v2
18881 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
18883 + move-result v3
18885 + move-object/from16 v0, p0
18887 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18889 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
18891 + move-result-object v7
18893 + const/16 v18, 0x0
18895 + if-eqz v7, :cond_239
18897 + const-string v1, "gps"
18899 + move-object/from16 v0, p1
18901 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
18903 + move-result v1
18905 + if-eqz v1, :cond_111
18907 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
18909 + move-result v1
18911 + packed-switch v1, :pswitch_data_25e
18913 + :cond_30
18914 + :goto_30
18915 + monitor-exit v19
18917 + return v18
18919 + :pswitch_32
18920 + move-object/from16 v0, p0
18922 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18924 + const/4 v4, 0x0
18926 + const-string v5, "locationGPS"
18928 + const/4 v6, 0x0
18930 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18932 + goto :goto_30
18934 + :catchall_3e
18935 + move-exception v1
18937 + monitor-exit v19
18938 + :try_end_40
18939 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
18941 + throw v1
18943 + :pswitch_41
18944 + if-eqz p3, :cond_46
18946 + :try_start_43
18947 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
18949 + :cond_46
18950 + const/16 v18, 0x1
18952 + move-object/from16 v0, p0
18954 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
18956 + const/4 v4, 0x1
18958 + const-string v5, "locationGPS"
18960 + const/4 v6, 0x0
18962 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
18963 + :try_end_53
18964 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
18966 + goto :goto_30
18968 + :pswitch_54
18969 + :try_start_54
18970 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
18972 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
18974 + move-result-object v1
18976 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18978 + move-result-wide v13
18980 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
18982 + move-result-object v1
18984 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
18986 + move-result-wide v15
18988 + move-object/from16 v9, p0
18990 + move-object/from16 v10, p1
18992 + move-object/from16 v11, p2
18994 + move-object/from16 v12, p3
18996 + 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
18998 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
18999 + :try_end_74
19000 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
19001 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
19003 + const/16 v18, 0x1
19005 + :goto_76
19006 + :try_start_76
19007 + move-object/from16 v0, p0
19009 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19011 + const/4 v4, 0x2
19013 + const-string v5, "locationGPS"
19015 + new-instance v6, Ljava/lang/StringBuilder;
19017 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19019 + const-string v8, "Lat: "
19021 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19023 + move-result-object v6
19025 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19027 + move-result-object v8
19029 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19031 + move-result-object v6
19033 + const-string v8, " Lon: "
19035 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19037 + move-result-object v6
19039 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19041 + move-result-object v8
19043 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19045 + move-result-object v6
19047 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19049 + move-result-object v6
19051 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19053 + goto :goto_30
19055 + :catch_a6
19056 + move-exception v17
19058 + const-string v1, "PrivacyLocationManager"
19060 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19062 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19063 + :try_end_af
19064 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
19066 + const/16 v18, 0x1
19068 + goto :goto_76
19070 + :pswitch_b2
19071 + :try_start_b2
19072 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19074 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19076 + move-result-object v1
19078 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19080 + move-result-wide v13
19082 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19084 + move-result-object v1
19086 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19088 + move-result-wide v15
19090 + move-object/from16 v9, p0
19092 + move-object/from16 v10, p1
19094 + move-object/from16 v11, p2
19096 + move-object/from16 v12, p3
19098 + 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
19100 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19101 + :try_end_d2
19102 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
19103 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
19105 + const/16 v18, 0x1
19107 + :goto_d4
19108 + :try_start_d4
19109 + move-object/from16 v0, p0
19111 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19113 + const/4 v4, 0x3
19115 + const-string v5, "locationGPS"
19117 + new-instance v6, Ljava/lang/StringBuilder;
19119 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19121 + const-string v8, "Lat: "
19123 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19125 + move-result-object v6
19127 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19129 + move-result-object v8
19131 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19133 + move-result-object v6
19135 + const-string v8, " Lon: "
19137 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19139 + move-result-object v6
19141 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19143 + move-result-object v8
19145 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19147 + move-result-object v6
19149 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19151 + move-result-object v6
19153 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19155 + goto/16 :goto_30
19157 + :catch_105
19158 + move-exception v17
19160 + const-string v1, "PrivacyLocationManager"
19162 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19164 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19166 + const/16 v18, 0x1
19168 + goto :goto_d4
19170 + :cond_111
19171 + const-string/jumbo v1, "network"
19173 + move-object/from16 v0, p1
19175 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19177 + move-result v1
19179 + if-eqz v1, :cond_204
19181 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19183 + move-result v1
19185 + packed-switch v1, :pswitch_data_26a
19187 + goto/16 :goto_30
19189 + :pswitch_125
19190 + move-object/from16 v0, p0
19192 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19194 + const/4 v4, 0x0
19196 + const-string v5, "locationNetwork"
19198 + const/4 v6, 0x0
19200 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19202 + goto/16 :goto_30
19204 + :pswitch_132
19205 + if-eqz p3, :cond_137
19207 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
19209 + :cond_137
19210 + const/16 v18, 0x1
19212 + move-object/from16 v0, p0
19214 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19216 + const/4 v4, 0x1
19218 + const-string v5, "locationNetwork"
19220 + const/4 v6, 0x0
19222 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19223 + :try_end_144
19224 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
19226 + goto/16 :goto_30
19228 + :pswitch_146
19229 + :try_start_146
19230 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19232 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19234 + move-result-object v1
19236 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19238 + move-result-wide v13
19240 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19242 + move-result-object v1
19244 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19246 + move-result-wide v15
19248 + move-object/from16 v9, p0
19250 + move-object/from16 v10, p1
19252 + move-object/from16 v11, p2
19254 + move-object/from16 v12, p3
19256 + 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
19258 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19259 + :try_end_166
19260 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
19261 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
19263 + const/16 v18, 0x1
19265 + :goto_168
19266 + :try_start_168
19267 + move-object/from16 v0, p0
19269 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19271 + const/4 v4, 0x2
19273 + const-string v5, "locationNetwork"
19275 + new-instance v6, Ljava/lang/StringBuilder;
19277 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19279 + const-string v8, "Lat: "
19281 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19283 + move-result-object v6
19285 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19287 + move-result-object v8
19289 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19291 + move-result-object v6
19293 + const-string v8, " Lon: "
19295 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19297 + move-result-object v6
19299 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19301 + move-result-object v8
19303 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19305 + move-result-object v6
19307 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19309 + move-result-object v6
19311 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19313 + goto/16 :goto_30
19315 + :catch_199
19316 + move-exception v17
19318 + const-string v1, "PrivacyLocationManager"
19320 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19322 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19323 + :try_end_1a2
19324 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
19326 + const/16 v18, 0x1
19328 + goto :goto_168
19330 + :pswitch_1a5
19331 + :try_start_1a5
19332 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
19334 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19336 + move-result-object v1
19338 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19340 + move-result-wide v13
19342 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19344 + move-result-object v1
19346 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19348 + move-result-wide v15
19350 + move-object/from16 v9, p0
19352 + move-object/from16 v10, p1
19354 + move-object/from16 v11, p2
19356 + move-object/from16 v12, p3
19358 + 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
19360 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
19361 + :try_end_1c5
19362 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
19363 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
19365 + const/16 v18, 0x1
19367 + :goto_1c7
19368 + :try_start_1c7
19369 + move-object/from16 v0, p0
19371 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19373 + const/4 v4, 0x3
19375 + const-string v5, "locationNetwork"
19377 + new-instance v6, Ljava/lang/StringBuilder;
19379 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
19381 + const-string v8, "Lat: "
19383 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19385 + move-result-object v6
19387 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19389 + move-result-object v8
19391 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19393 + move-result-object v6
19395 + const-string v8, " Lon: "
19397 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19399 + move-result-object v6
19401 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19403 + move-result-object v8
19405 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19407 + move-result-object v6
19409 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19411 + move-result-object v6
19413 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19415 + goto/16 :goto_30
19417 + :catch_1f8
19418 + move-exception v17
19420 + const-string v1, "PrivacyLocationManager"
19422 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
19424 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
19426 + const/16 v18, 0x1
19428 + goto :goto_1c7
19430 + :cond_204
19431 + const-string/jumbo v1, "passive"
19433 + move-object/from16 v0, p1
19435 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19437 + move-result v1
19439 + if-eqz v1, :cond_30
19441 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19443 + move-result v1
19445 + if-nez v1, :cond_22a
19447 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19449 + move-result v1
19451 + if-nez v1, :cond_22a
19453 + const/16 v18, 0x0
19455 + move-object/from16 v0, p0
19457 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19459 + const/4 v4, 0x0
19461 + const-string v5, "locationGPS"
19463 + const/4 v6, 0x0
19465 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19467 + goto/16 :goto_30
19469 + :cond_22a
19470 + const/16 v18, 0x1
19472 + move-object/from16 v0, p0
19474 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19476 + const/4 v4, 0x1
19478 + const-string v5, "locationGPS"
19480 + const/4 v6, 0x0
19482 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19484 + goto/16 :goto_30
19486 + :cond_239
19487 + const-string/jumbo v1, "network"
19489 + move-object/from16 v0, p1
19491 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19493 + move-result v1
19495 + if-eqz v1, :cond_251
19497 + move-object/from16 v0, p0
19499 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19501 + const/4 v4, 0x0
19503 + const-string v5, "locationNetwork"
19505 + const/4 v6, 0x0
19507 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19509 + goto/16 :goto_30
19511 + :cond_251
19512 + move-object/from16 v0, p0
19514 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19516 + const/4 v4, 0x0
19518 + const-string v5, "locationGPS"
19520 + const/4 v6, 0x0
19522 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19523 + :try_end_25c
19524 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
19526 + goto/16 :goto_30
19528 + :pswitch_data_25e
19529 + .packed-switch 0x0
19530 + :pswitch_32
19531 + :pswitch_41
19532 + :pswitch_54
19533 + :pswitch_b2
19534 + .end packed-switch
19536 + :pswitch_data_26a
19537 + .packed-switch 0x0
19538 + :pswitch_125
19539 + :pswitch_132
19540 + :pswitch_146
19541 + :pswitch_1a5
19542 + .end packed-switch
19543 +.end method
19546 +# virtual methods
19547 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19548 + .registers 10
19550 + const/4 v5, 0x0
19552 + const/4 v7, 0x0
19554 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19556 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19558 + move-result-object v1
19560 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19562 + move-result v2
19564 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19566 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19568 + move-result-object v6
19570 + if-eqz v6, :cond_24
19572 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19574 + move-result v0
19576 + if-eqz v0, :cond_24
19578 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19580 + const/4 v3, 0x1
19582 + const-string v4, "locationGPS"
19584 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19586 + move v0, v7
19588 + :goto_23
19589 + return v0
19591 + :cond_24
19592 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19594 + const-string v4, "locationGPS"
19596 + move v3, v7
19598 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19600 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
19602 + move-result v0
19604 + goto :goto_23
19605 +.end method
19607 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19608 + .registers 14
19610 + const/4 v11, 0x3
19612 + const/4 v10, 0x2
19614 + const/4 v8, 0x1
19616 + const/4 v3, 0x0
19618 + const/4 v5, 0x0
19620 + if-nez p1, :cond_c
19622 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19624 + move-result-object v7
19626 + :cond_b
19627 + :goto_b
19628 + return-object v7
19630 + :cond_c
19631 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
19633 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19635 + move-result-object v1
19637 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19639 + move-result v2
19641 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19643 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19645 + move-result-object v6
19647 + const/4 v7, 0x0
19649 + if-eqz v6, :cond_22c
19651 + const-string v0, "gps"
19653 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19655 + move-result v0
19657 + if-eqz v0, :cond_ff
19659 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
19661 + move-result v0
19663 + packed-switch v0, :pswitch_data_29a
19665 + goto :goto_b
19667 + :pswitch_2f
19668 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19670 + move-result-object v7
19672 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19674 + const-string v4, "locationGPS"
19676 + if-eqz v7, :cond_5e
19678 + new-instance v5, Ljava/lang/StringBuilder;
19680 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19682 + const-string v8, "Lat: "
19684 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19686 + move-result-object v5
19688 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19690 + move-result-wide v8
19692 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19694 + move-result-object v5
19696 + const-string v8, " Lon: "
19698 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19700 + move-result-object v5
19702 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19704 + move-result-wide v8
19706 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19708 + move-result-object v5
19710 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19712 + move-result-object v5
19714 + :cond_5e
19715 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19717 + goto :goto_b
19719 + :pswitch_62
19720 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19722 + const-string v4, "locationGPS"
19724 + move v3, v8
19726 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19728 + goto :goto_b
19730 + :pswitch_6b
19731 + new-instance v7, Landroid/location/Location;
19733 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19735 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19737 + move-result-object v0
19739 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19741 + move-result-wide v3
19743 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19745 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19747 + move-result-object v0
19749 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19751 + move-result-wide v3
19753 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19755 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19757 + const-string v4, "locationGPS"
19759 + new-instance v3, Ljava/lang/StringBuilder;
19761 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19763 + const-string v5, "Lat: "
19765 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19767 + move-result-object v3
19769 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19771 + move-result-wide v8
19773 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19775 + move-result-object v3
19777 + const-string v5, " Lon: "
19779 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19781 + move-result-object v3
19783 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19785 + move-result-wide v8
19787 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19789 + move-result-object v3
19791 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19793 + move-result-object v5
19795 + move v3, v10
19797 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19799 + goto/16 :goto_b
19801 + :pswitch_b5
19802 + new-instance v7, Landroid/location/Location;
19804 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19806 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
19808 + move-result-object v0
19810 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19812 + move-result-wide v3
19814 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19816 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
19818 + move-result-object v0
19820 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19822 + move-result-wide v3
19824 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19826 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19828 + const-string v4, "locationGPS"
19830 + new-instance v3, Ljava/lang/StringBuilder;
19832 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19834 + const-string v5, "Lat: "
19836 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19838 + move-result-object v3
19840 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19842 + move-result-wide v8
19844 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19846 + move-result-object v3
19848 + const-string v5, " Lon: "
19850 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19852 + move-result-object v3
19854 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19856 + move-result-wide v8
19858 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19860 + move-result-object v3
19862 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19864 + move-result-object v5
19866 + move v3, v11
19868 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19870 + goto/16 :goto_b
19872 + :cond_ff
19873 + const-string/jumbo v0, "network"
19875 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
19877 + move-result v0
19879 + if-eqz v0, :cond_1e3
19881 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
19883 + move-result v0
19885 + packed-switch v0, :pswitch_data_2a6
19887 + goto/16 :goto_b
19889 + :pswitch_111
19890 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
19892 + move-result-object v7
19894 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19896 + const-string v4, "locationNetwork"
19898 + if-eqz v7, :cond_140
19900 + new-instance v5, Ljava/lang/StringBuilder;
19902 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
19904 + const-string v8, "Lat: "
19906 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19908 + move-result-object v5
19910 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19912 + move-result-wide v8
19914 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19916 + move-result-object v5
19918 + const-string v8, " Lon: "
19920 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19922 + move-result-object v5
19924 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
19926 + move-result-wide v8
19928 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19930 + move-result-object v5
19932 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19934 + move-result-object v5
19936 + :cond_140
19937 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19939 + goto/16 :goto_b
19941 + :pswitch_145
19942 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19944 + const-string v4, "locationNetwork"
19946 + move v3, v8
19948 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19950 + goto/16 :goto_b
19952 + :pswitch_14f
19953 + new-instance v7, Landroid/location/Location;
19955 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
19957 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
19959 + move-result-object v0
19961 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19963 + move-result-wide v3
19965 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
19967 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
19969 + move-result-object v0
19971 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
19973 + move-result-wide v3
19975 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
19977 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19979 + const-string v4, "locationNetwork"
19981 + new-instance v3, Ljava/lang/StringBuilder;
19983 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
19985 + const-string v5, "Lat: "
19987 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19989 + move-result-object v3
19991 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
19993 + move-result-wide v8
19995 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
19997 + move-result-object v3
19999 + const-string v5, " Lon: "
20001 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20003 + move-result-object v3
20005 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
20007 + move-result-wide v8
20009 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20011 + move-result-object v3
20013 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20015 + move-result-object v5
20017 + move v3, v10
20019 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20021 + goto/16 :goto_b
20023 + :pswitch_199
20024 + new-instance v7, Landroid/location/Location;
20026 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
20028 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
20030 + move-result-object v0
20032 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
20034 + move-result-wide v3
20036 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
20038 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
20040 + move-result-object v0
20042 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
20044 + move-result-wide v3
20046 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
20048 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20050 + const-string v4, "locationNetwork"
20052 + new-instance v3, Ljava/lang/StringBuilder;
20054 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
20056 + const-string v5, "Lat: "
20058 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20060 + move-result-object v3
20062 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
20064 + move-result-wide v8
20066 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20068 + move-result-object v3
20070 + const-string v5, " Lon: "
20072 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20074 + move-result-object v3
20076 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
20078 + move-result-wide v8
20080 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20082 + move-result-object v3
20084 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20086 + move-result-object v5
20088 + move v3, v11
20090 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20092 + goto/16 :goto_b
20094 + :cond_1e3
20095 + const-string/jumbo v0, "passive"
20097 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20099 + move-result v0
20101 + if-eqz v0, :cond_b
20103 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20105 + move-result v0
20107 + if-nez v0, :cond_b
20109 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20111 + move-result v0
20113 + if-nez v0, :cond_b
20115 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
20117 + move-result-object v7
20119 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20121 + const-string v4, "locationGPS"
20123 + if-eqz v7, :cond_227
20125 + new-instance v5, Ljava/lang/StringBuilder;
20127 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
20129 + const-string v8, "Lat: "
20131 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20133 + move-result-object v5
20135 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
20137 + move-result-wide v8
20139 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20141 + move-result-object v5
20143 + const-string v8, " Lon: "
20145 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20147 + move-result-object v5
20149 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
20151 + move-result-wide v8
20153 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20155 + move-result-object v5
20157 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20159 + move-result-object v5
20161 + :cond_227
20162 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20164 + goto/16 :goto_b
20166 + :cond_22c
20167 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
20169 + move-result-object v7
20171 + const-string/jumbo v0, "network"
20173 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20175 + move-result v0
20177 + if-eqz v0, :cond_269
20179 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20181 + const-string v4, "locationNetwork"
20183 + if-eqz v7, :cond_264
20185 + new-instance v5, Ljava/lang/StringBuilder;
20187 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
20189 + const-string v8, "Lat: "
20191 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20193 + move-result-object v5
20195 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
20197 + move-result-wide v8
20199 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20201 + move-result-object v5
20203 + const-string v8, " Lon: "
20205 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20207 + move-result-object v5
20209 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
20211 + move-result-wide v8
20213 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20215 + move-result-object v5
20217 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20219 + move-result-object v5
20221 + :cond_264
20222 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20224 + goto/16 :goto_b
20226 + :cond_269
20227 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20229 + const-string v4, "locationGPS"
20231 + if-eqz v7, :cond_294
20233 + new-instance v5, Ljava/lang/StringBuilder;
20235 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
20237 + const-string v8, "Lat: "
20239 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20241 + move-result-object v5
20243 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
20245 + move-result-wide v8
20247 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20249 + move-result-object v5
20251 + const-string v8, " Lon: "
20253 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
20255 + move-result-object v5
20257 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
20259 + move-result-wide v8
20261 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
20263 + move-result-object v5
20265 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
20267 + move-result-object v5
20269 + :cond_294
20270 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20272 + goto/16 :goto_b
20274 + nop
20276 + :pswitch_data_29a
20277 + .packed-switch 0x0
20278 + :pswitch_2f
20279 + :pswitch_62
20280 + :pswitch_6b
20281 + :pswitch_b5
20282 + .end packed-switch
20284 + :pswitch_data_2a6
20285 + .packed-switch 0x0
20286 + :pswitch_111
20287 + :pswitch_145
20288 + :pswitch_14f
20289 + :pswitch_199
20290 + .end packed-switch
20291 +.end method
20293 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20294 + .registers 7
20296 + if-nez p1, :cond_7
20298 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20300 + move-result-object v0
20302 + :cond_6
20303 + :goto_6
20304 + return-object v0
20306 + :cond_7
20307 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20309 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20311 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20313 + move-result-object v3
20315 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20317 + move-result v4
20319 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20321 + move-result-object v1
20323 + const/4 v0, 0x0
20325 + if-eqz v1, :cond_5f
20327 + const-string v2, "gps"
20329 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20331 + move-result v2
20333 + if-eqz v2, :cond_2f
20335 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20337 + move-result v2
20339 + packed-switch v2, :pswitch_data_64
20341 + :pswitch_29
20342 + goto :goto_6
20344 + :pswitch_2a
20345 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20347 + move-result-object v0
20349 + goto :goto_6
20351 + :cond_2f
20352 + const-string/jumbo v2, "network"
20354 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20356 + move-result v2
20358 + if-eqz v2, :cond_45
20360 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20362 + move-result v2
20364 + packed-switch v2, :pswitch_data_70
20366 + :pswitch_3f
20367 + goto :goto_6
20369 + :pswitch_40
20370 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20372 + move-result-object v0
20374 + goto :goto_6
20376 + :cond_45
20377 + const-string/jumbo v2, "passive"
20379 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20381 + move-result v2
20383 + if-eqz v2, :cond_6
20385 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20387 + move-result v2
20389 + if-eqz v2, :cond_5a
20391 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20393 + move-result v2
20395 + if-nez v2, :cond_6
20397 + :cond_5a
20398 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20400 + move-result-object v0
20402 + goto :goto_6
20404 + :cond_5f
20405 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
20407 + move-result-object v0
20409 + goto :goto_6
20411 + :pswitch_data_64
20412 + .packed-switch 0x0
20413 + :pswitch_2a
20414 + :pswitch_29
20415 + :pswitch_2a
20416 + :pswitch_2a
20417 + .end packed-switch
20419 + :pswitch_data_70
20420 + .packed-switch 0x0
20421 + :pswitch_40
20422 + :pswitch_3f
20423 + :pswitch_40
20424 + :pswitch_40
20425 + .end packed-switch
20426 +.end method
20428 +.method public isProviderEnabled(Ljava/lang/String;)Z
20429 + .registers 7
20431 + if-nez p1, :cond_7
20433 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20435 + move-result v0
20437 + :cond_6
20438 + :goto_6
20439 + :pswitch_6
20440 + return v0
20442 + :cond_7
20443 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20445 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
20447 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20449 + move-result-object v3
20451 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20453 + move-result v4
20455 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20457 + move-result-object v1
20459 + const/4 v0, 0x0
20461 + if-eqz v1, :cond_65
20463 + const-string v2, "gps"
20465 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20467 + move-result v2
20469 + if-eqz v2, :cond_31
20471 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20473 + move-result v2
20475 + packed-switch v2, :pswitch_data_6a
20477 + goto :goto_6
20479 + :pswitch_2a
20480 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20482 + move-result v0
20484 + goto :goto_6
20486 + :pswitch_2f
20487 + const/4 v0, 0x1
20489 + goto :goto_6
20491 + :cond_31
20492 + const-string/jumbo v2, "network"
20494 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20496 + move-result v2
20498 + if-eqz v2, :cond_49
20500 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20502 + move-result v2
20504 + packed-switch v2, :pswitch_data_76
20506 + goto :goto_6
20508 + :pswitch_42
20509 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20511 + move-result v0
20513 + goto :goto_6
20515 + :pswitch_47
20516 + const/4 v0, 0x1
20518 + goto :goto_6
20520 + :cond_49
20521 + const-string/jumbo v2, "passive"
20523 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20525 + move-result v2
20527 + if-eqz v2, :cond_6
20529 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
20531 + move-result v2
20533 + if-eqz v2, :cond_5e
20535 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
20537 + move-result v2
20539 + if-nez v2, :cond_63
20541 + :cond_5e
20542 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20544 + move-result v0
20546 + goto :goto_6
20548 + :cond_63
20549 + const/4 v0, 0x0
20551 + goto :goto_6
20553 + :cond_65
20554 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
20556 + move-result v0
20558 + goto :goto_6
20560 + :pswitch_data_6a
20561 + .packed-switch 0x0
20562 + :pswitch_2a
20563 + :pswitch_6
20564 + :pswitch_2f
20565 + :pswitch_2f
20566 + .end packed-switch
20568 + :pswitch_data_76
20569 + .packed-switch 0x0
20570 + :pswitch_42
20571 + :pswitch_6
20572 + :pswitch_47
20573 + :pswitch_47
20574 + .end packed-switch
20575 +.end method
20577 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20578 + .registers 7
20580 + if-eqz p4, :cond_4
20582 + if-nez p5, :cond_8
20584 + :cond_4
20585 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20587 + :cond_7
20588 + :goto_7
20589 + return-void
20591 + :cond_8
20592 + const/4 v0, 0x0
20594 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20596 + move-result v0
20598 + if-nez v0, :cond_7
20600 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
20602 + goto :goto_7
20603 +.end method
20605 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20606 + .registers 8
20608 + if-eqz p4, :cond_4
20610 + if-nez p5, :cond_8
20612 + :cond_4
20613 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20615 + :cond_7
20616 + :goto_7
20617 + return-void
20619 + :cond_8
20620 + const/4 v0, 0x0
20622 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20624 + move-result v0
20626 + if-nez v0, :cond_7
20628 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20630 + goto :goto_7
20631 +.end method
20633 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20634 + .registers 7
20636 + if-eqz p1, :cond_4
20638 + if-nez p5, :cond_8
20640 + :cond_4
20641 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20643 + :cond_7
20644 + :goto_7
20645 + return-void
20647 + :cond_8
20648 + const/4 v0, 0x0
20650 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20652 + move-result v0
20654 + if-nez v0, :cond_7
20656 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
20658 + goto :goto_7
20659 +.end method
20661 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20662 + .registers 7
20664 + if-eqz p1, :cond_4
20666 + if-nez p5, :cond_8
20668 + :cond_4
20669 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20671 + :cond_7
20672 + :goto_7
20673 + return-void
20675 + :cond_8
20676 + const/4 v0, 0x0
20678 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20680 + move-result v0
20682 + if-nez v0, :cond_7
20684 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
20686 + goto :goto_7
20687 +.end method
20689 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20690 + .registers 8
20692 + if-eqz p1, :cond_4
20694 + if-nez p5, :cond_8
20696 + :cond_4
20697 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20699 + :cond_7
20700 + :goto_7
20701 + return-void
20703 + :cond_8
20704 + const/4 v0, 0x0
20706 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20708 + move-result v0
20710 + if-nez v0, :cond_7
20712 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
20714 + goto :goto_7
20715 +.end method
20717 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20718 + .registers 4
20720 + if-eqz p1, :cond_4
20722 + if-nez p2, :cond_8
20724 + :cond_4
20725 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20727 + :cond_7
20728 + :goto_7
20729 + return-void
20731 + :cond_8
20732 + const/4 v0, 0x0
20734 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20736 + move-result v0
20738 + if-nez v0, :cond_7
20740 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
20742 + goto :goto_7
20743 +.end method
20745 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20746 + .registers 5
20748 + if-eqz p1, :cond_4
20750 + if-nez p2, :cond_8
20752 + :cond_4
20753 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20755 + :cond_7
20756 + :goto_7
20757 + return-void
20759 + :cond_8
20760 + const/4 v0, 0x0
20762 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20764 + move-result v0
20766 + if-nez v0, :cond_7
20768 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
20770 + goto :goto_7
20771 +.end method
20773 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20774 + .registers 4
20776 + if-eqz p1, :cond_4
20778 + if-nez p2, :cond_8
20780 + :cond_4
20781 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20783 + :cond_7
20784 + :goto_7
20785 + return-void
20787 + :cond_8
20788 + const/4 v0, 0x0
20790 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20792 + move-result v0
20794 + if-nez v0, :cond_7
20796 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
20798 + goto :goto_7
20799 +.end method
20801 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20802 + .registers 5
20804 + if-eqz p1, :cond_4
20806 + if-nez p2, :cond_8
20808 + :cond_4
20809 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20811 + :cond_7
20812 + :goto_7
20813 + return-void
20815 + :cond_8
20816 + const/4 v0, 0x0
20818 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
20820 + move-result v0
20822 + if-nez v0, :cond_7
20824 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
20826 + goto :goto_7
20827 +.end method
20828 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
20829 --- stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 18:00:00.000000000 -0600
20830 +++ pdroid-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-06-14 15:23:33.848297269 -0500
20831 @@ -0,0 +1,731 @@
20832 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
20833 +.super Landroid/telephony/TelephonyManager;
20834 +.source "PrivacyTelephonyManager.java"
20837 +# static fields
20838 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
20841 +# instance fields
20842 +.field private context:Landroid/content/Context;
20844 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
20847 +# direct methods
20848 +.method public constructor <init>(Landroid/content/Context;)V
20849 + .registers 4
20851 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
20853 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20855 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
20857 + const-string/jumbo v1, "privacy"
20859 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20861 + move-result-object v1
20863 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20865 + move-result-object v1
20867 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20869 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20871 + return-void
20872 +.end method
20874 +.method private getNetworkInfo()Ljava/lang/String;
20875 + .registers 8
20877 + const/4 v5, 0x0
20879 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20881 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20883 + move-result-object v1
20885 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20887 + move-result v2
20889 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20891 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20893 + move-result-object v6
20895 + if-eqz v6, :cond_25
20897 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
20899 + move-result v0
20901 + if-eqz v0, :cond_25
20903 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20905 + const/4 v3, 0x1
20907 + const-string/jumbo v4, "networkInfoCurrent"
20909 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20911 + const-string v5, ""
20913 + :goto_24
20914 + return-object v5
20916 + :cond_25
20917 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20919 + const/4 v3, 0x0
20921 + const-string/jumbo v4, "networkInfoCurrent"
20923 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20925 + goto :goto_24
20926 +.end method
20928 +.method private getSimInfo()Ljava/lang/String;
20929 + .registers 8
20931 + const/4 v5, 0x0
20933 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20935 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20937 + move-result-object v1
20939 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20941 + move-result v2
20943 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20945 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20947 + move-result-object v6
20949 + if-eqz v6, :cond_25
20951 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
20953 + move-result v0
20955 + if-eqz v0, :cond_25
20957 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20959 + const/4 v3, 0x1
20961 + const-string/jumbo v4, "networkInfoSIM"
20963 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20965 + const-string v5, ""
20967 + :goto_24
20968 + return-object v5
20970 + :cond_25
20971 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20973 + const/4 v3, 0x0
20975 + const-string/jumbo v4, "networkInfoSIM"
20977 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20979 + goto :goto_24
20980 +.end method
20983 +# virtual methods
20984 +.method public getDeviceId()Ljava/lang/String;
20985 + .registers 8
20987 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
20989 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20991 + move-result-object v1
20993 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20995 + move-result v2
20997 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20999 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21001 + move-result-object v6
21003 + if-eqz v6, :cond_28
21005 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
21007 + move-result v0
21009 + if-eqz v0, :cond_28
21011 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
21013 + move-result-object v5
21015 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21017 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
21019 + move-result v3
21021 + const-string v4, "deviceID"
21023 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21025 + :goto_27
21026 + return-object v5
21028 + :cond_28
21029 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
21031 + move-result-object v5
21033 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21035 + const/4 v3, 0x0
21037 + const-string v4, "deviceID"
21039 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21041 + goto :goto_27
21042 +.end method
21044 +.method public getLine1Number()Ljava/lang/String;
21045 + .registers 8
21047 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21049 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21051 + move-result-object v1
21053 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21055 + move-result v2
21057 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21059 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21061 + move-result-object v6
21063 + if-eqz v6, :cond_28
21065 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21067 + move-result v0
21069 + if-eqz v0, :cond_28
21071 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21073 + move-result-object v5
21075 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21077 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21079 + move-result v3
21081 + const-string v4, "line1Number"
21083 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21085 + :goto_27
21086 + return-object v5
21088 + :cond_28
21089 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
21091 + move-result-object v5
21093 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21095 + const/4 v3, 0x0
21097 + const-string v4, "line1Number"
21099 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21101 + goto :goto_27
21102 +.end method
21104 +.method public getNeighboringCellInfo()Ljava/util/List;
21105 + .registers 10
21106 + .annotation system Ldalvik/annotation/Signature;
21107 + value = {
21108 + "()",
21109 + "Ljava/util/List",
21110 + "<",
21111 + "Landroid/telephony/NeighboringCellInfo;",
21112 + ">;"
21114 + .end annotation
21116 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21118 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21120 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21122 + move-result-object v7
21124 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21126 + move-result v8
21128 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21130 + move-result-object v5
21132 + const/4 v3, 0x0
21134 + const-string v4, "[null]"
21136 + if-eqz v5, :cond_1c
21138 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
21140 + move-result v6
21142 + const/4 v7, 0x1
21144 + if-ne v6, v7, :cond_1d
21146 + :cond_1c
21147 + :goto_1c
21148 + return-object v3
21150 + :cond_1d
21151 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
21153 + move-result v6
21155 + if-eqz v6, :cond_2b
21157 + new-instance v3, Ljava/util/ArrayList;
21159 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
21161 + const-string v4, "[empty list of cells]"
21163 + goto :goto_1c
21165 + :cond_2b
21166 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
21168 + move-result-object v3
21170 + const-string v0, ""
21172 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
21174 + move-result-object v2
21176 + :goto_35
21177 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
21179 + move-result v6
21181 + if-eqz v6, :cond_5f
21183 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
21185 + move-result-object v1
21187 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
21189 + new-instance v6, Ljava/lang/StringBuilder;
21191 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
21193 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21195 + move-result-object v6
21197 + const-string v7, "\t"
21199 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21201 + move-result-object v6
21203 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
21205 + move-result-object v6
21207 + const-string v7, "\n"
21209 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21211 + move-result-object v6
21213 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
21215 + move-result-object v0
21217 + goto :goto_35
21219 + :cond_5f
21220 + new-instance v6, Ljava/lang/StringBuilder;
21222 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
21224 + const-string v7, "[real value]:\n"
21226 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21228 + move-result-object v6
21230 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21232 + move-result-object v6
21234 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
21236 + move-result-object v4
21238 + goto :goto_1c
21239 +.end method
21241 +.method public getNetworkCountryIso()Ljava/lang/String;
21242 + .registers 2
21244 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
21246 + move-result-object v0
21248 + if-nez v0, :cond_a
21250 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
21252 + move-result-object v0
21254 + :cond_a
21255 + return-object v0
21256 +.end method
21258 +.method public getNetworkOperator()Ljava/lang/String;
21259 + .registers 2
21261 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
21263 + move-result-object v0
21265 + if-nez v0, :cond_a
21267 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
21269 + move-result-object v0
21271 + :cond_a
21272 + return-object v0
21273 +.end method
21275 +.method public getNetworkOperatorName()Ljava/lang/String;
21276 + .registers 2
21278 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
21280 + move-result-object v0
21282 + if-nez v0, :cond_a
21284 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
21286 + move-result-object v0
21288 + :cond_a
21289 + return-object v0
21290 +.end method
21292 +.method public getSimCountryIso()Ljava/lang/String;
21293 + .registers 2
21295 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21297 + move-result-object v0
21299 + if-nez v0, :cond_a
21301 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
21303 + move-result-object v0
21305 + :cond_a
21306 + return-object v0
21307 +.end method
21309 +.method public getSimOperator()Ljava/lang/String;
21310 + .registers 2
21312 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21314 + move-result-object v0
21316 + if-nez v0, :cond_a
21318 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
21320 + move-result-object v0
21322 + :cond_a
21323 + return-object v0
21324 +.end method
21326 +.method public getSimOperatorName()Ljava/lang/String;
21327 + .registers 2
21329 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
21331 + move-result-object v0
21333 + if-nez v0, :cond_a
21335 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
21337 + move-result-object v0
21339 + :cond_a
21340 + return-object v0
21341 +.end method
21343 +.method public getSimSerialNumber()Ljava/lang/String;
21344 + .registers 8
21346 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21348 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21350 + move-result-object v1
21352 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21354 + move-result v2
21356 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21358 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21360 + move-result-object v6
21362 + if-eqz v6, :cond_29
21364 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21366 + move-result v0
21368 + if-eqz v0, :cond_29
21370 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
21372 + move-result-object v5
21374 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21376 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
21378 + move-result v3
21380 + const-string/jumbo v4, "simSerial"
21382 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21384 + :goto_28
21385 + return-object v5
21387 + :cond_29
21388 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
21390 + move-result-object v5
21392 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21394 + const/4 v3, 0x0
21396 + const-string/jumbo v4, "simSerial"
21398 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21400 + goto :goto_28
21401 +.end method
21403 +.method public getSubscriberId()Ljava/lang/String;
21404 + .registers 8
21406 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21408 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21410 + move-result-object v1
21412 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21414 + move-result v2
21416 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21418 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21420 + move-result-object v6
21422 + if-eqz v6, :cond_29
21424 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21426 + move-result v0
21428 + if-eqz v0, :cond_29
21430 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
21432 + move-result-object v5
21434 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21436 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
21438 + move-result v3
21440 + const-string/jumbo v4, "subscriberID"
21442 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21444 + :goto_28
21445 + return-object v5
21447 + :cond_29
21448 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
21450 + move-result-object v5
21452 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21454 + const/4 v3, 0x0
21456 + const-string/jumbo v4, "subscriberID"
21458 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21460 + goto :goto_28
21461 +.end method
21463 +.method public getVoiceMailNumber()Ljava/lang/String;
21464 + .registers 8
21466 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21468 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21470 + move-result-object v1
21472 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21474 + move-result v2
21476 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21478 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21480 + move-result-object v6
21482 + if-eqz v6, :cond_28
21484 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21486 + move-result v0
21488 + if-eqz v0, :cond_28
21490 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
21492 + move-result-object v5
21494 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21496 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
21498 + move-result v3
21500 + const-string v4, "line1Number"
21502 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21504 + :goto_27
21505 + return-object v5
21507 + :cond_28
21508 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
21510 + move-result-object v5
21512 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21514 + const/4 v3, 0x0
21516 + const-string v4, "line1Number"
21518 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21520 + goto :goto_27
21521 +.end method
21523 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
21524 + .registers 4
21526 + and-int/lit8 v0, p2, 0x10
21528 + if-nez v0, :cond_8
21530 + and-int/lit8 v0, p2, 0x20
21532 + if-eqz v0, :cond_21
21534 + :cond_8
21535 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21537 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
21539 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
21541 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21543 + move-result-object v0
21545 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
21547 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
21549 + move-result v0
21551 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setUid(I)V
21553 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21555 + :goto_20
21556 + return-void
21558 + :cond_21
21559 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
21561 + goto :goto_20
21562 +.end method
21563 diff -Npru stock-framework/smali/android/server/BluetoothA2dpService.smali pdroid-framework/smali/android/server/BluetoothA2dpService.smali
21564 --- stock-framework/smali/android/server/BluetoothA2dpService.smali 2012-06-14 15:24:25.052551174 -0500
21565 +++ pdroid-framework/smali/android/server/BluetoothA2dpService.smali 2012-06-14 15:23:34.392299964 -0500
21566 @@ -1601,7 +1601,7 @@
21568 move-result-object v5
21570 - const-string v6, "mPlayingA2dpDevice: "
21571 + const-string/jumbo v6, "mPlayingA2dpDevice: "
21573 invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21575 @@ -1625,7 +1625,7 @@
21577 move-result-object v5
21579 - if-nez v5, :cond_6b
21580 + if-nez v5, :cond_6c
21582 invoke-direct {p0, v1}, Landroid/server/BluetoothA2dpService;->addAudioSink(Landroid/bluetooth/BluetoothDevice;)V
21584 @@ -1635,12 +1635,12 @@
21586 goto :goto_b
21588 - :cond_6b
21589 - if-ne v4, v7, :cond_79
21590 + :cond_6c
21591 + if-ne v4, v7, :cond_7a
21593 iget-object v5, p0, Landroid/server/BluetoothA2dpService;->mPlayingA2dpDevice:Landroid/bluetooth/BluetoothDevice;
21595 - if-nez v5, :cond_79
21596 + if-nez v5, :cond_7a
21598 iput-object v1, p0, Landroid/server/BluetoothA2dpService;->mPlayingA2dpDevice:Landroid/bluetooth/BluetoothDevice;
21600 @@ -1650,14 +1650,14 @@
21602 goto :goto_b
21604 - :cond_79
21605 + :cond_7a
21606 const/4 v5, 0x2
21608 - if-ne v4, v5, :cond_8b
21609 + if-ne v4, v5, :cond_8c
21611 iget-object v5, p0, Landroid/server/BluetoothA2dpService;->mPlayingA2dpDevice:Landroid/bluetooth/BluetoothDevice;
21613 - if-eqz v5, :cond_8b
21614 + if-eqz v5, :cond_8c
21616 const/4 v5, 0x0
21618 @@ -1671,7 +1671,7 @@
21620 goto :goto_b
21622 - :cond_8b
21623 + :cond_8c
21624 const/4 v5, 0x0
21626 iput-object v5, p0, Landroid/server/BluetoothA2dpService;->mPlayingA2dpDevice:Landroid/bluetooth/BluetoothDevice;
21627 @@ -1689,8 +1689,8 @@
21628 move-result v3
21630 invoke-direct {p0, v1, v3, v4}, Landroid/server/BluetoothA2dpService;->handleSinkStateChange(Landroid/bluetooth/BluetoothDevice;II)V
21631 - :try_end_9d
21632 - .catchall {:try_start_24 .. :try_end_9d} :catchall_21
21633 + :try_end_9e
21634 + .catchall {:try_start_24 .. :try_end_9e} :catchall_21
21636 goto/16 :goto_b
21637 .end method
21638 diff -Npru stock-framework/smali/android/server/BluetoothService.smali pdroid-framework/smali/android/server/BluetoothService.smali
21639 --- stock-framework/smali/android/server/BluetoothService.smali 2012-06-14 15:24:25.104551439 -0500
21640 +++ pdroid-framework/smali/android/server/BluetoothService.smali 2012-06-14 15:23:34.516300585 -0500
21641 @@ -2367,9 +2367,9 @@
21643 invoke-direct {v4, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
21644 :try_end_19
21645 - .catchall {:try_start_d .. :try_end_19} :catchall_83
21646 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_63
21647 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_73
21648 + .catchall {:try_start_d .. :try_end_19} :catchall_7e
21649 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_19} :catch_60
21650 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_19} :catch_70
21652 const/16 v7, 0x11
21654 @@ -2396,9 +2396,9 @@
21656 sget-object v5, Landroid/server/BluetoothService;->mDockAddress:Ljava/lang/String;
21657 :try_end_33
21658 - .catchall {:try_start_1b .. :try_end_33} :catchall_8c
21659 - .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_92
21660 - .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8f
21661 + .catchall {:try_start_1b .. :try_end_33} :catchall_89
21662 + .catch Ljava/io/FileNotFoundException; {:try_start_1b .. :try_end_33} :catch_8f
21663 + .catch Ljava/io/IOException; {:try_start_1b .. :try_end_33} :catch_8c
21665 if-eqz v4, :cond_a
21667 @@ -2439,18 +2439,20 @@
21669 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21670 :try_end_53
21671 - .catchall {:try_start_3b .. :try_end_53} :catchall_8c
21672 - .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_92
21673 - .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8f
21674 + .catchall {:try_start_3b .. :try_end_53} :catchall_89
21675 + .catch Ljava/io/FileNotFoundException; {:try_start_3b .. :try_end_53} :catch_8f
21676 + .catch Ljava/io/IOException; {:try_start_3b .. :try_end_53} :catch_8c
21678 - if-eqz v4, :cond_95
21679 + if-eqz v4, :cond_58
21681 :try_start_55
21682 invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
21683 :try_end_58
21684 .catchall {:try_start_55 .. :try_end_58} :catchall_5d
21685 - .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_60
21686 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_87
21688 + :cond_58
21689 + :goto_58
21690 move-object v3, v4
21692 :cond_59
21693 @@ -2472,117 +2474,105 @@
21694 throw v5
21696 :catch_60
21697 - move-exception v7
21699 - move-object v3, v4
21701 - goto :goto_59
21703 - :catch_63
21704 move-exception v2
21706 - :goto_64
21707 - :try_start_64
21708 + :goto_61
21709 + :try_start_61
21710 const-string v7, "BluetoothService"
21712 const-string v8, "FileNotFoundException while trying to read dock address"
21714 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21715 - :try_end_6b
21716 - .catchall {:try_start_64 .. :try_end_6b} :catchall_83
21717 + :try_end_68
21718 + .catchall {:try_start_61 .. :try_end_68} :catchall_7e
21720 if-eqz v3, :cond_59
21722 - :try_start_6d
21723 + :try_start_6a
21724 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21725 - :try_end_70
21726 - .catchall {:try_start_6d .. :try_end_70} :catchall_5d
21727 - .catch Ljava/io/IOException; {:try_start_6d .. :try_end_70} :catch_71
21728 + :try_end_6d
21729 + .catchall {:try_start_6a .. :try_end_6d} :catchall_5d
21730 + .catch Ljava/io/IOException; {:try_start_6a .. :try_end_6d} :catch_6e
21732 goto :goto_59
21734 - :catch_71
21735 + :catch_6e
21736 move-exception v7
21738 goto :goto_59
21740 - :catch_73
21741 + :catch_70
21742 move-exception v2
21744 - :goto_74
21745 - :try_start_74
21746 + :goto_71
21747 + :try_start_71
21748 const-string v7, "BluetoothService"
21750 const-string v8, "IOException while trying to read dock address"
21752 invoke-static {v7, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
21753 - :try_end_7b
21754 - .catchall {:try_start_74 .. :try_end_7b} :catchall_83
21755 + :try_end_78
21756 + .catchall {:try_start_71 .. :try_end_78} :catchall_7e
21758 if-eqz v3, :cond_59
21760 - :try_start_7d
21761 + :try_start_7a
21762 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21763 - :try_end_80
21764 - .catchall {:try_start_7d .. :try_end_80} :catchall_5d
21765 - .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81
21767 - goto :goto_59
21769 - :catch_81
21770 - move-exception v7
21771 + :try_end_7d
21772 + .catchall {:try_start_7a .. :try_end_7d} :catchall_5d
21773 + .catch Ljava/io/IOException; {:try_start_7a .. :try_end_7d} :catch_6e
21775 goto :goto_59
21777 - :catchall_83
21778 + :catchall_7e
21779 move-exception v5
21781 - :goto_84
21782 - if-eqz v3, :cond_89
21783 + :goto_7f
21784 + if-eqz v3, :cond_84
21786 - :try_start_86
21787 + :try_start_81
21788 invoke-virtual {v3}, Ljava/io/BufferedInputStream;->close()V
21789 - :try_end_89
21790 - .catchall {:try_start_86 .. :try_end_89} :catchall_5d
21791 - .catch Ljava/io/IOException; {:try_start_86 .. :try_end_89} :catch_8a
21793 - :cond_89
21794 - :goto_89
21795 - :try_start_89
21796 + :try_end_84
21797 + .catchall {:try_start_81 .. :try_end_84} :catchall_5d
21798 + .catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
21800 + :cond_84
21801 + :goto_84
21802 + :try_start_84
21803 throw v5
21804 - :try_end_8a
21805 - .catchall {:try_start_89 .. :try_end_8a} :catchall_5d
21806 + :try_end_85
21807 + .catchall {:try_start_84 .. :try_end_85} :catchall_5d
21809 - :catch_8a
21810 + :catch_85
21811 move-exception v7
21813 - goto :goto_89
21814 + goto :goto_84
21816 + :catch_87
21817 + move-exception v7
21819 - :catchall_8c
21820 + goto :goto_58
21822 + :catchall_89
21823 move-exception v5
21825 move-object v3, v4
21827 - goto :goto_84
21828 + goto :goto_7f
21830 - :catch_8f
21831 + :catch_8c
21832 move-exception v2
21834 move-object v3, v4
21836 - goto :goto_74
21837 + goto :goto_71
21839 - :catch_92
21840 + :catch_8f
21841 move-exception v2
21843 move-object v3, v4
21845 - goto :goto_64
21847 - :cond_95
21848 - move-object v3, v4
21850 - goto :goto_59
21851 + goto :goto_61
21852 .end method
21854 .method private readIncomingConnectionState()V
21855 @@ -2601,9 +2591,9 @@
21857 invoke-direct {v3, v9}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
21858 :try_end_b
21859 - .catchall {:try_start_4 .. :try_end_b} :catchall_a2
21860 - .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b9
21861 - .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7f
21862 + .catchall {:try_start_4 .. :try_end_b} :catchall_9f
21863 + .catch Ljava/io/FileNotFoundException; {:try_start_4 .. :try_end_b} :catch_b6
21864 + .catch Ljava/io/IOException; {:try_start_4 .. :try_end_b} :catch_7c
21866 :try_start_b
21867 new-instance v4, Ljava/io/DataInputStream;
21868 @@ -2678,9 +2668,9 @@
21870 invoke-virtual {v9, v11, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
21871 :try_end_51
21872 - .catchall {:try_start_b .. :try_end_51} :catchall_b3
21873 + .catchall {:try_start_b .. :try_end_51} :catchall_b0
21874 .catch Ljava/io/FileNotFoundException; {:try_start_b .. :try_end_51} :catch_52
21875 - .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b6
21876 + .catch Ljava/io/IOException; {:try_start_b .. :try_end_51} :catch_b3
21878 goto :goto_1a
21880 @@ -2715,50 +2705,45 @@
21882 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21883 :try_end_6e
21884 - .catchall {:try_start_54 .. :try_end_6e} :catchall_a2
21885 + .catchall {:try_start_54 .. :try_end_6e} :catchall_9f
21887 if-eqz v2, :cond_73
21889 :try_start_70
21890 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21891 :try_end_73
21892 - .catchall {:try_start_70 .. :try_end_73} :catchall_a9
21893 - .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_ac
21894 + .catchall {:try_start_70 .. :try_end_73} :catchall_a6
21895 + .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_9d
21897 :cond_73
21898 :goto_73
21899 :try_start_73
21900 monitor-exit v10
21901 :try_end_74
21902 - .catchall {:try_start_73 .. :try_end_74} :catchall_a9
21903 + .catchall {:try_start_73 .. :try_end_74} :catchall_a6
21905 return-void
21907 :cond_75
21908 - if-eqz v3, :cond_bb
21909 + if-eqz v3, :cond_7a
21911 :try_start_77
21912 invoke-virtual {v3}, Ljava/io/FileInputStream;->close()V
21913 :try_end_7a
21914 - .catchall {:try_start_77 .. :try_end_7a} :catchall_b0
21915 - .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_7c
21916 + .catchall {:try_start_77 .. :try_end_7a} :catchall_ad
21917 + .catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_ab
21919 + :cond_7a
21920 + :goto_7a
21921 move-object v2, v3
21923 goto :goto_73
21925 :catch_7c
21926 - move-exception v9
21928 - move-object v2, v3
21930 - goto :goto_73
21932 - :catch_7f
21933 move-exception v0
21935 - :goto_80
21936 - :try_start_80
21937 + :goto_7d
21938 + :try_start_7d
21939 new-instance v9, Ljava/lang/StringBuilder;
21941 invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
21942 @@ -2782,91 +2767,86 @@
21943 move-result-object v9
21945 invoke-static {v9}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
21946 - :try_end_9a
21947 - .catchall {:try_start_80 .. :try_end_9a} :catchall_a2
21948 + :try_end_97
21949 + .catchall {:try_start_7d .. :try_end_97} :catchall_9f
21951 if-eqz v2, :cond_73
21953 - :try_start_9c
21954 + :try_start_99
21955 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21956 - :try_end_9f
21957 - .catchall {:try_start_9c .. :try_end_9f} :catchall_a9
21958 - .catch Ljava/io/IOException; {:try_start_9c .. :try_end_9f} :catch_a0
21959 + :try_end_9c
21960 + .catchall {:try_start_99 .. :try_end_9c} :catchall_a6
21961 + .catch Ljava/io/IOException; {:try_start_99 .. :try_end_9c} :catch_9d
21963 goto :goto_73
21965 - :catch_a0
21966 + :catch_9d
21967 move-exception v9
21969 goto :goto_73
21971 - :catchall_a2
21972 + :catchall_9f
21973 move-exception v9
21975 - :goto_a3
21976 - if-eqz v2, :cond_a8
21977 + :goto_a0
21978 + if-eqz v2, :cond_a5
21980 - :try_start_a5
21981 + :try_start_a2
21982 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
21983 - :try_end_a8
21984 - .catchall {:try_start_a5 .. :try_end_a8} :catchall_a9
21985 - .catch Ljava/io/IOException; {:try_start_a5 .. :try_end_a8} :catch_ae
21986 + :try_end_a5
21987 + .catchall {:try_start_a2 .. :try_end_a5} :catchall_a6
21988 + .catch Ljava/io/IOException; {:try_start_a2 .. :try_end_a5} :catch_a9
21990 - :cond_a8
21991 - :goto_a8
21992 - :try_start_a8
21993 + :cond_a5
21994 + :goto_a5
21995 + :try_start_a5
21996 throw v9
21998 - :catchall_a9
21999 + :catchall_a6
22000 move-exception v9
22002 - :goto_aa
22003 + :goto_a7
22004 monitor-exit v10
22005 - :try_end_ab
22006 - .catchall {:try_start_a8 .. :try_end_ab} :catchall_a9
22007 + :try_end_a8
22008 + .catchall {:try_start_a5 .. :try_end_a8} :catchall_a6
22010 throw v9
22012 - :catch_ac
22013 - move-exception v9
22014 + :catch_a9
22015 + move-exception v11
22017 - goto :goto_73
22018 + goto :goto_a5
22020 - :catch_ae
22021 - move-exception v11
22022 + :catch_ab
22023 + move-exception v9
22025 - goto :goto_a8
22026 + goto :goto_7a
22028 - :catchall_b0
22029 + :catchall_ad
22030 move-exception v9
22032 move-object v2, v3
22034 - goto :goto_aa
22035 + goto :goto_a7
22037 - :catchall_b3
22038 + :catchall_b0
22039 move-exception v9
22041 move-object v2, v3
22043 - goto :goto_a3
22044 + goto :goto_a0
22046 - :catch_b6
22047 + :catch_b3
22048 move-exception v0
22050 move-object v2, v3
22052 - goto :goto_80
22053 + goto :goto_7d
22055 - :catch_b9
22056 + :catch_b6
22057 move-exception v0
22059 goto :goto_54
22061 - :cond_bb
22062 - move-object v2, v3
22064 - goto :goto_73
22065 .end method
22067 .method private registerForAirplaneMode(Landroid/content/IntentFilter;)V
22068 @@ -3164,26 +3144,28 @@
22070 invoke-direct {v2, v3, v4}, Ljava/io/RandomAccessFile;-><init>(Ljava/lang/String;Ljava/lang/String;)V
22071 :try_end_b
22072 - .catchall {:try_start_1 .. :try_end_b} :catchall_60
22073 - .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_1a
22074 - .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3d
22075 + .catchall {:try_start_1 .. :try_end_b} :catchall_5b
22076 + .catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_b} :catch_17
22077 + .catch Ljava/io/IOException; {:try_start_1 .. :try_end_b} :catch_3a
22079 const-wide/16 v3, 0x0
22081 :try_start_d
22082 invoke-virtual {v2, v3, v4}, Ljava/io/RandomAccessFile;->setLength(J)V
22083 :try_end_10
22084 - .catchall {:try_start_d .. :try_end_10} :catchall_69
22085 - .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6f
22086 - .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_6c
22087 + .catchall {:try_start_d .. :try_end_10} :catchall_66
22088 + .catch Ljava/io/FileNotFoundException; {:try_start_d .. :try_end_10} :catch_6c
22089 + .catch Ljava/io/IOException; {:try_start_d .. :try_end_10} :catch_69
22091 - if-eqz v2, :cond_72
22092 + if-eqz v2, :cond_15
22094 :try_start_12
22095 invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V
22096 :try_end_15
22097 - .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_17
22098 + .catch Ljava/io/IOException; {:try_start_12 .. :try_end_15} :catch_64
22100 + :cond_15
22101 + :goto_15
22102 move-object v1, v2
22104 :cond_16
22105 @@ -3191,17 +3173,10 @@
22106 return-void
22108 :catch_17
22109 - move-exception v3
22111 - move-object v1, v2
22113 - goto :goto_16
22115 - :catch_1a
22116 move-exception v0
22118 - :goto_1b
22119 - :try_start_1b
22120 + :goto_18
22121 + :try_start_18
22122 new-instance v3, Ljava/lang/StringBuilder;
22124 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22125 @@ -3225,28 +3200,28 @@
22126 move-result-object v3
22128 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22129 - :try_end_35
22130 - .catchall {:try_start_1b .. :try_end_35} :catchall_60
22131 + :try_end_32
22132 + .catchall {:try_start_18 .. :try_end_32} :catchall_5b
22134 if-eqz v1, :cond_16
22136 - :try_start_37
22137 + :try_start_34
22138 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
22139 - :try_end_3a
22140 - .catch Ljava/io/IOException; {:try_start_37 .. :try_end_3a} :catch_3b
22141 + :try_end_37
22142 + .catch Ljava/io/IOException; {:try_start_34 .. :try_end_37} :catch_38
22144 goto :goto_16
22146 - :catch_3b
22147 + :catch_38
22148 move-exception v3
22150 goto :goto_16
22152 - :catch_3d
22153 + :catch_3a
22154 move-exception v0
22156 - :goto_3e
22157 - :try_start_3e
22158 + :goto_3b
22159 + :try_start_3b
22160 new-instance v3, Ljava/lang/StringBuilder;
22162 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22163 @@ -3270,68 +3245,63 @@
22164 move-result-object v3
22166 invoke-static {v3}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22167 - :try_end_58
22168 - .catchall {:try_start_3e .. :try_end_58} :catchall_60
22169 + :try_end_55
22170 + .catchall {:try_start_3b .. :try_end_55} :catchall_5b
22172 if-eqz v1, :cond_16
22174 - :try_start_5a
22175 + :try_start_57
22176 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
22177 - :try_end_5d
22178 - .catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
22180 - goto :goto_16
22182 - :catch_5e
22183 - move-exception v3
22184 + :try_end_5a
22185 + .catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_38
22187 goto :goto_16
22189 - :catchall_60
22190 + :catchall_5b
22191 move-exception v3
22193 - :goto_61
22194 - if-eqz v1, :cond_66
22195 + :goto_5c
22196 + if-eqz v1, :cond_61
22198 - :try_start_63
22199 + :try_start_5e
22200 invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
22201 - :try_end_66
22202 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67
22203 + :try_end_61
22204 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
22206 - :cond_66
22207 - :goto_66
22208 + :cond_61
22209 + :goto_61
22210 throw v3
22212 - :catch_67
22213 + :catch_62
22214 move-exception v4
22216 - goto :goto_66
22217 + goto :goto_61
22219 - :catchall_69
22220 + :catch_64
22221 move-exception v3
22223 - move-object v1, v2
22225 - goto :goto_61
22226 + goto :goto_15
22228 - :catch_6c
22229 - move-exception v0
22230 + :catchall_66
22231 + move-exception v3
22233 move-object v1, v2
22235 - goto :goto_3e
22236 + goto :goto_5c
22238 - :catch_6f
22239 + :catch_69
22240 move-exception v0
22242 move-object v1, v2
22244 - goto :goto_1b
22245 + goto :goto_3b
22247 + :catch_6c
22248 + move-exception v0
22250 - :cond_72
22251 move-object v1, v2
22253 - goto :goto_16
22254 + goto :goto_18
22255 .end method
22257 .method private updateCountersAndCheckForConnectionStateChange(II)Z
22258 @@ -3784,17 +3754,17 @@
22260 invoke-virtual {v2, v6}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22261 :try_end_36
22262 - .catchall {:try_start_10 .. :try_end_36} :catchall_70
22263 - .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_76
22264 - .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_73
22265 + .catchall {:try_start_10 .. :try_end_36} :catchall_6e
22266 + .catch Ljava/io/FileNotFoundException; {:try_start_10 .. :try_end_36} :catch_74
22267 + .catch Ljava/io/IOException; {:try_start_10 .. :try_end_36} :catch_71
22269 if-eqz v2, :cond_3b
22271 :try_start_38
22272 invoke-virtual {v2}, Ljava/io/BufferedWriter;->close()V
22273 :try_end_3b
22274 - .catchall {:try_start_38 .. :try_end_3b} :catchall_79
22275 - .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6a
22276 + .catchall {:try_start_38 .. :try_end_3b} :catchall_77
22277 + .catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_6c
22279 :cond_3b
22280 :goto_3b
22281 @@ -3824,7 +3794,7 @@
22282 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
22283 :try_end_4b
22284 .catchall {:try_start_48 .. :try_end_4b} :catchall_67
22285 - .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_6c
22286 + .catch Ljava/io/IOException; {:try_start_48 .. :try_end_4b} :catch_5e
22288 :cond_4b
22289 :goto_4b
22290 @@ -3877,7 +3847,7 @@
22291 invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
22292 :try_end_66
22293 .catchall {:try_start_63 .. :try_end_66} :catchall_67
22294 - .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6e
22295 + .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_6a
22297 :cond_66
22298 :goto_66
22299 @@ -3897,40 +3867,35 @@
22300 :catch_6a
22301 move-exception v5
22303 - goto :goto_3b
22304 + goto :goto_66
22306 :catch_6c
22307 - move-exception v4
22309 - goto :goto_4b
22311 - :catch_6e
22312 move-exception v5
22314 - goto :goto_66
22315 + goto :goto_3b
22317 - :catchall_70
22318 + :catchall_6e
22319 move-exception v4
22321 move-object v1, v2
22323 goto :goto_61
22325 - :catch_73
22326 + :catch_71
22327 move-exception v0
22329 move-object v1, v2
22331 goto :goto_51
22333 - :catch_76
22334 + :catch_74
22335 move-exception v0
22337 move-object v1, v2
22339 goto :goto_3f
22341 - :catchall_79
22342 + :catchall_77
22343 move-exception v4
22345 move-object v1, v2
22346 @@ -4854,8 +4819,8 @@
22348 invoke-interface {v4}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOff()V
22349 :try_end_47
22350 - .catchall {:try_start_42 .. :try_end_47} :catchall_51
22351 - .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_4c
22352 + .catchall {:try_start_42 .. :try_end_47} :catchall_4c
22353 + .catch Landroid/os/RemoteException; {:try_start_42 .. :try_end_47} :catch_51
22355 :try_start_47
22356 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22357 @@ -4867,22 +4832,22 @@
22359 return-void
22361 - :catch_4c
22362 + :catchall_4c
22363 move-exception v4
22365 :try_start_4d
22366 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22368 - goto :goto_4a
22369 + throw v4
22371 - :catchall_51
22372 + :catch_51
22373 move-exception v4
22375 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22376 + :try_end_55
22377 + .catchall {:try_start_4d .. :try_end_55} :catchall_24
22379 - throw v4
22380 - :try_end_56
22381 - .catchall {:try_start_4d .. :try_end_56} :catchall_24
22382 + goto :goto_4a
22383 .end method
22385 .method clearApplicationStateChangeTracker()V
22386 @@ -9234,12 +9199,12 @@
22388 invoke-interface {v3}, Lcom/android/internal/app/IBatteryStats;->noteBluetoothOn()V
22389 :try_end_c
22390 - .catchall {:try_start_7 .. :try_end_c} :catchall_1c
22391 + .catchall {:try_start_7 .. :try_end_c} :catchall_19
22392 .catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_c} :catch_10
22394 + :goto_c
22395 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22397 - :goto_f
22398 return-void
22400 :catch_10
22401 @@ -9252,13 +9217,11 @@
22403 invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
22404 :try_end_18
22405 - .catchall {:try_start_11 .. :try_end_18} :catchall_1c
22407 - invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22408 + .catchall {:try_start_11 .. :try_end_18} :catchall_19
22410 - goto :goto_f
22411 + goto :goto_c
22413 - :catchall_1c
22414 + :catchall_19
22415 move-exception v3
22417 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
22418 @@ -11409,7 +11372,7 @@
22420 invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
22421 :try_end_11
22422 - .catchall {:try_start_3 .. :try_end_11} :catchall_bf
22423 + .catchall {:try_start_3 .. :try_end_11} :catchall_bc
22425 :try_start_11
22426 new-instance v4, Ljava/io/BufferedWriter;
22427 @@ -11424,9 +11387,9 @@
22429 invoke-direct {v4, v7}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
22430 :try_end_1e
22431 - .catchall {:try_start_11 .. :try_end_1e} :catchall_b8
22432 - .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_cc
22433 - .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_95
22434 + .catchall {:try_start_11 .. :try_end_1e} :catchall_b5
22435 + .catch Ljava/io/FileNotFoundException; {:try_start_11 .. :try_end_1e} :catch_c9
22436 + .catch Ljava/io/IOException; {:try_start_11 .. :try_end_1e} :catch_92
22438 :try_start_1e
22439 iget-object v7, p0, Landroid/server/BluetoothService;->mIncomingConnections:Ljava/util/HashMap;
22440 @@ -11490,9 +11453,9 @@
22442 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22443 :try_end_60
22444 - .catchall {:try_start_1e .. :try_end_60} :catchall_c6
22445 + .catchall {:try_start_1e .. :try_end_60} :catchall_c3
22446 .catch Ljava/io/FileNotFoundException; {:try_start_1e .. :try_end_60} :catch_61
22447 - .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c9
22448 + .catch Ljava/io/IOException; {:try_start_1e .. :try_end_60} :catch_c6
22450 goto :goto_28
22452 @@ -11527,22 +11490,22 @@
22454 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22455 :try_end_7d
22456 - .catchall {:try_start_63 .. :try_end_7d} :catchall_b8
22457 + .catchall {:try_start_63 .. :try_end_7d} :catchall_b5
22459 if-eqz v3, :cond_82
22461 :try_start_7f
22462 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22463 :try_end_82
22464 - .catchall {:try_start_7f .. :try_end_82} :catchall_bf
22465 - .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_c2
22466 + .catchall {:try_start_7f .. :try_end_82} :catchall_bc
22467 + .catch Ljava/io/IOException; {:try_start_7f .. :try_end_82} :catch_b3
22469 :cond_82
22470 :goto_82
22471 :try_start_82
22472 monitor-exit v8
22473 :try_end_83
22474 - .catchall {:try_start_82 .. :try_end_83} :catchall_bf
22475 + .catchall {:try_start_82 .. :try_end_83} :catchall_bc
22477 return-void
22479 @@ -11554,34 +11517,29 @@
22481 invoke-virtual {v4, v7}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
22482 :try_end_8b
22483 - .catchall {:try_start_84 .. :try_end_8b} :catchall_c6
22484 + .catchall {:try_start_84 .. :try_end_8b} :catchall_c3
22485 .catch Ljava/io/FileNotFoundException; {:try_start_84 .. :try_end_8b} :catch_61
22486 - .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c9
22487 + .catch Ljava/io/IOException; {:try_start_84 .. :try_end_8b} :catch_c6
22489 - if-eqz v4, :cond_ce
22490 + if-eqz v4, :cond_90
22492 :try_start_8d
22493 invoke-virtual {v4}, Ljava/io/BufferedWriter;->close()V
22494 :try_end_90
22495 - .catchall {:try_start_8d .. :try_end_90} :catchall_bf
22496 - .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_92
22497 + .catchall {:try_start_8d .. :try_end_90} :catchall_bc
22498 + .catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_c1
22500 + :cond_90
22501 + :goto_90
22502 move-object v3, v4
22504 goto :goto_82
22506 :catch_92
22507 - move-exception v7
22509 - move-object v3, v4
22511 - goto :goto_82
22513 - :catch_95
22514 move-exception v1
22516 - :goto_96
22517 - :try_start_96
22518 + :goto_93
22519 + :try_start_93
22520 new-instance v7, Ljava/lang/StringBuilder;
22522 invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
22523 @@ -11605,81 +11563,76 @@
22524 move-result-object v7
22526 invoke-static {v7}, Landroid/server/BluetoothService;->log(Ljava/lang/String;)V
22527 - :try_end_b0
22528 - .catchall {:try_start_96 .. :try_end_b0} :catchall_b8
22529 + :try_end_ad
22530 + .catchall {:try_start_93 .. :try_end_ad} :catchall_b5
22532 if-eqz v3, :cond_82
22534 - :try_start_b2
22535 + :try_start_af
22536 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22537 - :try_end_b5
22538 - .catchall {:try_start_b2 .. :try_end_b5} :catchall_bf
22539 - .catch Ljava/io/IOException; {:try_start_b2 .. :try_end_b5} :catch_b6
22540 + :try_end_b2
22541 + .catchall {:try_start_af .. :try_end_b2} :catchall_bc
22542 + .catch Ljava/io/IOException; {:try_start_af .. :try_end_b2} :catch_b3
22544 goto :goto_82
22546 - :catch_b6
22547 + :catch_b3
22548 move-exception v7
22550 goto :goto_82
22552 - :catchall_b8
22553 + :catchall_b5
22554 move-exception v7
22556 - :goto_b9
22557 - if-eqz v3, :cond_be
22558 + :goto_b6
22559 + if-eqz v3, :cond_bb
22561 - :try_start_bb
22562 + :try_start_b8
22563 invoke-virtual {v3}, Ljava/io/BufferedWriter;->close()V
22564 - :try_end_be
22565 - .catchall {:try_start_bb .. :try_end_be} :catchall_bf
22566 - .catch Ljava/io/IOException; {:try_start_bb .. :try_end_be} :catch_c4
22567 + :try_end_bb
22568 + .catchall {:try_start_b8 .. :try_end_bb} :catchall_bc
22569 + .catch Ljava/io/IOException; {:try_start_b8 .. :try_end_bb} :catch_bf
22571 - :cond_be
22572 - :goto_be
22573 - :try_start_be
22574 + :cond_bb
22575 + :goto_bb
22576 + :try_start_bb
22577 throw v7
22579 - :catchall_bf
22580 + :catchall_bc
22581 move-exception v7
22583 monitor-exit v8
22584 - :try_end_c1
22585 - .catchall {:try_start_be .. :try_end_c1} :catchall_bf
22586 + :try_end_be
22587 + .catchall {:try_start_bb .. :try_end_be} :catchall_bc
22589 throw v7
22591 - :catch_c2
22592 - move-exception v7
22593 + :catch_bf
22594 + move-exception v9
22596 - goto :goto_82
22597 + goto :goto_bb
22599 - :catch_c4
22600 - move-exception v9
22601 + :catch_c1
22602 + move-exception v7
22604 - goto :goto_be
22605 + goto :goto_90
22607 - :catchall_c6
22608 + :catchall_c3
22609 move-exception v7
22611 move-object v3, v4
22613 - goto :goto_b9
22614 + goto :goto_b6
22616 - :catch_c9
22617 + :catch_c6
22618 move-exception v1
22620 move-object v3, v4
22622 - goto :goto_96
22623 + goto :goto_93
22625 - :catch_cc
22626 + :catch_c9
22627 move-exception v1
22629 goto :goto_63
22631 - :cond_ce
22632 - move-object v3, v4
22634 - goto :goto_82
22635 .end method
22636 diff -Npru stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali
22637 --- stock-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-06-14 15:24:25.120551520 -0500
22638 +++ pdroid-framework/smali/android/service/textservice/SpellCheckerService$InternalISpellCheckerSession.smali 2012-06-14 15:23:34.540300698 -0500
22639 @@ -161,25 +161,23 @@
22641 invoke-interface {v1, v2}, Lcom/android/internal/textservice/ISpellCheckerSessionListener;->onGetSuggestions([Landroid/view/textservice/SuggestionsInfo;)V
22642 :try_end_18
22643 - .catchall {:try_start_a .. :try_end_18} :catchall_21
22644 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_1c
22645 + .catchall {:try_start_a .. :try_end_18} :catchall_1c
22646 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_18} :catch_21
22648 + :goto_18
22649 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22651 - :goto_1b
22652 return-void
22654 - :catch_1c
22655 + :catchall_1c
22656 move-exception v1
22658 invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22660 - goto :goto_1b
22661 + throw v1
22663 - :catchall_21
22664 + :catch_21
22665 move-exception v1
22667 - invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
22669 - throw v1
22670 + goto :goto_18
22671 .end method
22672 diff -Npru stock-framework/smali/android/service/wallpaper/WallpaperService$Engine.smali pdroid-framework/smali/android/service/wallpaper/WallpaperService$Engine.smali
22673 --- stock-framework/smali/android/service/wallpaper/WallpaperService$Engine.smali 2012-06-14 15:24:25.140551614 -0500
22674 +++ pdroid-framework/smali/android/service/wallpaper/WallpaperService$Engine.smali 2012-06-14 15:23:34.564300817 -0500
22675 @@ -936,7 +936,7 @@
22676 :try_start_111
22677 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
22679 - const-string v0, "mPendingXOffset="
22680 + const-string/jumbo v0, "mPendingXOffset="
22682 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
22684 @@ -954,7 +954,7 @@
22686 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
22688 - const-string v0, "mPendingXOffsetStep="
22689 + const-string/jumbo v0, "mPendingXOffsetStep="
22691 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
22693 @@ -990,11 +990,11 @@
22695 iget-object v0, p0, Landroid/service/wallpaper/WallpaperService$Engine;->mPendingMove:Landroid/view/MotionEvent;
22697 - if-eqz v0, :cond_167
22698 + if-eqz v0, :cond_16a
22700 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
22702 - const-string v0, "mPendingMove="
22703 + const-string/jumbo v0, "mPendingMove="
22705 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
22707 @@ -1002,17 +1002,17 @@
22709 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
22711 - :cond_167
22712 + :cond_16a
22713 monitor-exit v1
22715 return-void
22717 - :catchall_169
22718 + :catchall_16c
22719 move-exception v0
22721 monitor-exit v1
22722 - :try_end_16b
22723 - .catchall {:try_start_111 .. :try_end_16b} :catchall_169
22724 + :try_end_16e
22725 + .catchall {:try_start_111 .. :try_end_16e} :catchall_16c
22727 throw v0
22728 .end method
22729 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener$1.smali pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali
22730 --- stock-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-06-14 15:24:25.252552167 -0500
22731 +++ pdroid-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-06-14 15:23:34.648301241 -0500
22732 @@ -64,47 +64,317 @@
22733 .end method
22735 .method public onCallStateChanged(ILjava/lang/String;)V
22736 - .registers 6
22737 + .registers 19
22739 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22740 + move-object/from16 v0, p0
22742 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22743 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22745 - const/16 v1, 0x20
22746 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22747 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22749 - const/4 v2, 0x0
22750 + move-result-object v3
22752 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22753 + if-eqz v3, :cond_99
22755 - move-result-object v0
22756 + if-eqz p2, :cond_99
22758 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
22760 + move-result v3
22762 + if-nez v3, :cond_99
22764 + move-object/from16 v0, p0
22766 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22768 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22769 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22771 + move-result-object v3
22773 + const-string/jumbo v4, "privacy"
22775 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22777 + move-result-object v2
22779 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
22781 + move-object/from16 v0, p0
22783 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22785 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22786 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22788 + move-result-object v3
22790 + move-object/from16 v0, p0
22792 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22794 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22795 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22797 + move-result v4
22799 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22801 + move-result-object v8
22803 + if-eqz v8, :cond_6a
22805 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
22807 + move-result v3
22809 + if-eqz v3, :cond_6a
22811 + const-string v7, ""
22813 + move-object/from16 v0, p0
22815 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22817 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22819 + const/16 v4, 0x20
22821 + const/4 v5, 0x0
22823 + move/from16 v0, p1
22825 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22827 + move-result-object v3
22829 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
22830 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22832 + move-object/from16 v0, p0
22834 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22836 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22837 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22839 + move-result-object v3
22841 + move-object/from16 v0, p0
22843 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22845 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22846 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22848 + move-result v4
22850 + const/4 v5, 0x1
22852 + const-string v6, "incomingCall"
22854 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22856 + :goto_69
22857 return-void
22859 + :cond_6a
22860 + move-object/from16 v0, p0
22862 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22864 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22866 + const/16 v4, 0x20
22868 + const/4 v5, 0x0
22870 + move/from16 v0, p1
22872 + move-object/from16 v1, p2
22874 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22876 + move-result-object v3
22878 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22880 + move-object/from16 v0, p0
22882 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22884 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22885 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22887 + move-result-object v10
22889 + move-object/from16 v0, p0
22891 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22893 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22894 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22896 + move-result v11
22898 + const/4 v12, 0x0
22900 + const-string v13, "incomingCall"
22902 + move-object v9, v2
22904 + move-object/from16 v14, p2
22906 + move-object v15, v8
22908 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22910 + goto :goto_69
22912 + :cond_99
22913 + move-object/from16 v0, p0
22915 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22917 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
22919 + const/16 v4, 0x20
22921 + const/4 v5, 0x0
22923 + move/from16 v0, p1
22925 + move-object/from16 v1, p2
22927 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
22929 + move-result-object v3
22931 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
22933 + goto :goto_69
22934 .end method
22936 .method public onCellLocationChanged(Landroid/os/Bundle;)V
22937 - .registers 6
22938 + .registers 10
22940 + const/4 v5, 0x0
22942 const/4 v3, 0x0
22944 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
22946 + move-result-object v7
22948 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22950 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22951 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22953 + move-result-object v1
22955 + if-eqz v1, :cond_4a
22957 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22959 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
22960 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
22962 + move-result-object v1
22964 + const-string/jumbo v2, "privacy"
22966 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
22968 move-result-object v0
22970 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
22972 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22974 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
22975 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
22977 + move-result-object v1
22979 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
22981 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
22982 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
22984 + move-result v2
22986 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22988 + move-result-object v6
22990 + if-eqz v6, :cond_4b
22992 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22994 + move-result v1
22996 + if-eqz v1, :cond_4b
22998 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
23000 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
23001 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
23003 + move-result-object v1
23005 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
23007 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
23008 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
23010 + move-result v2
23012 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
23014 + move-result v3
23016 + const-string v4, "locationNetwork"
23018 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23020 + :cond_4a
23021 + :goto_4a
23022 + return-void
23024 + :cond_4b
23025 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
23027 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
23029 const/16 v2, 0x10
23031 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
23032 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
23034 move-result-object v1
23036 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
23038 - return-void
23039 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
23041 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
23042 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
23044 + move-result-object v1
23046 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
23048 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
23049 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
23051 + move-result v2
23053 + const-string v4, "locationNetwork"
23055 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23057 + goto :goto_4a
23058 .end method
23060 .method public onDataActivity(I)V
23061 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener.smali pdroid-framework/smali/android/telephony/PhoneStateListener.smali
23062 --- stock-framework/smali/android/telephony/PhoneStateListener.smali 2012-06-14 15:24:23.492543439 -0500
23063 +++ pdroid-framework/smali/android/telephony/PhoneStateListener.smali 2012-06-14 15:23:31.908287654 -0500
23064 @@ -29,12 +29,20 @@
23066 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
23068 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
23071 # instance fields
23072 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
23074 +.field private context:Landroid/content/Context;
23076 .field mHandler:Landroid/os/Handler;
23078 +.field private packageName:Ljava/lang/String;
23080 +.field private uid:I
23083 # direct methods
23084 .method public constructor <init>()V
23085 @@ -57,6 +65,30 @@
23086 return-void
23087 .end method
23089 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
23090 + .registers 2
23092 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
23094 + return-object v0
23095 +.end method
23097 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
23098 + .registers 2
23100 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
23102 + return-object v0
23103 +.end method
23105 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
23106 + .registers 2
23108 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
23110 + return v0
23111 +.end method
23114 # virtual methods
23115 .method public onCallForwardingIndicatorChanged(Z)V
23116 @@ -126,3 +158,27 @@
23118 return-void
23119 .end method
23121 +.method public setContext(Landroid/content/Context;)V
23122 + .registers 2
23124 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
23126 + return-void
23127 +.end method
23129 +.method public setPackageName(Ljava/lang/String;)V
23130 + .registers 2
23132 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
23134 + return-void
23135 +.end method
23137 +.method public setUid(I)V
23138 + .registers 2
23140 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
23142 + return-void
23143 +.end method
23144 diff -Npru stock-framework/smali/android/view/accessibility/AccessibilityManager.smali pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali
23145 --- stock-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-06-14 15:24:25.840555079 -0500
23146 +++ pdroid-framework/smali/android/view/accessibility/AccessibilityManager.smali 2012-06-14 15:23:35.108303518 -0500
23147 @@ -637,15 +637,15 @@
23149 invoke-static {v1, v2}, Landroid/os/Binder;->restoreCallingIdentity(J)V
23150 :try_end_21
23151 - .catchall {:try_start_d .. :try_end_21} :catchall_4c
23152 + .catchall {:try_start_d .. :try_end_21} :catchall_49
23153 .catch Landroid/os/RemoteException; {:try_start_d .. :try_end_21} :catch_27
23155 if-eqz v0, :cond_26
23157 + :goto_23
23158 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
23160 :cond_26
23161 - :goto_26
23162 return-void
23164 :catch_27
23165 @@ -680,21 +680,19 @@
23167 invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23168 :try_end_46
23169 - .catchall {:try_start_28 .. :try_end_46} :catchall_4c
23170 + .catchall {:try_start_28 .. :try_end_46} :catchall_49
23172 if-eqz v0, :cond_26
23174 - invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
23176 - goto :goto_26
23177 + goto :goto_23
23179 - :catchall_4c
23180 + :catchall_49
23181 move-exception v4
23183 - if-eqz v0, :cond_52
23184 + if-eqz v0, :cond_4f
23186 invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->recycle()V
23188 - :cond_52
23189 + :cond_4f
23190 throw v4
23191 .end method
23192 diff -Npru stock-framework/smali/android/view/SurfaceView.smali pdroid-framework/smali/android/view/SurfaceView.smali
23193 --- stock-framework/smali/android/view/SurfaceView.smali 2012-06-14 15:24:24.388547877 -0500
23194 +++ pdroid-framework/smali/android/view/SurfaceView.smali 2012-06-14 15:23:32.840292259 -0500
23195 @@ -1342,7 +1342,7 @@
23197 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback;->surfaceDestroyed(Landroid/view/SurfaceHolder;)V
23198 :try_end_29b
23199 - .catchall {:try_start_262 .. :try_end_29b} :catchall_3c6
23200 + .catchall {:try_start_262 .. :try_end_29b} :catchall_3a7
23202 add-int/lit8 v22, v22, 0x1
23204 @@ -1486,7 +1486,7 @@
23206 invoke-virtual {v3, v4}, Landroid/view/Surface;->transferFrom(Landroid/view/Surface;)V
23208 - if-eqz v34, :cond_3a7
23209 + if-eqz v34, :cond_3c6
23211 move-object/from16 v0, p0
23213 @@ -1608,7 +1608,7 @@
23214 goto :goto_35e
23216 :cond_37a
23217 - if-eqz p2, :cond_3a7
23218 + if-eqz p2, :cond_3c6
23220 if-nez v19, :cond_382
23222 @@ -1632,7 +1632,7 @@
23224 move/from16 v1, v23
23226 - if-ge v0, v1, :cond_3a7
23227 + if-ge v0, v1, :cond_3c6
23229 aget-object v18, v17, v22
23231 @@ -1652,81 +1652,81 @@
23233 invoke-interface {v0, v3}, Landroid/view/SurfaceHolder$Callback2;->surfaceRedrawNeeded(Landroid/view/SurfaceHolder;)V
23234 :try_end_3a4
23235 - .catchall {:try_start_301 .. :try_end_3a4} :catchall_3c6
23236 + .catchall {:try_start_301 .. :try_end_3a4} :catchall_3a7
23238 :cond_3a4
23239 add-int/lit8 v22, v22, 0x1
23241 goto :goto_38b
23243 - :cond_3a7
23244 - const/4 v3, 0x0
23245 + :catchall_3a7
23246 + move-exception v3
23248 - :try_start_3a8
23249 + const/4 v4, 0x0
23251 + :try_start_3a9
23252 move-object/from16 v0, p0
23254 - iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23255 + iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23257 - if-eqz p2, :cond_3b9
23258 + if-eqz p2, :cond_3ba
23260 move-object/from16 v0, p0
23262 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23263 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23265 move-object/from16 v0, p0
23267 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23268 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23270 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23271 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23273 - :cond_3b9
23274 + :cond_3ba
23275 move-object/from16 v0, p0
23277 - iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23278 + iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23280 move-object/from16 v0, p0
23282 - iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23284 - invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23285 + iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23287 - goto/16 :goto_6
23288 + invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23290 - :catchall_3c6
23291 - move-exception v3
23292 + throw v3
23294 - const/4 v4, 0x0
23295 + :cond_3c6
23296 + const/4 v3, 0x0
23298 move-object/from16 v0, p0
23300 - iput-boolean v4, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23301 + iput-boolean v3, v0, Landroid/view/SurfaceView;->mIsCreating:Z
23303 - if-eqz p2, :cond_3d9
23304 + if-eqz p2, :cond_3d8
23306 move-object/from16 v0, p0
23308 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23309 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23311 move-object/from16 v0, p0
23313 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23314 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23316 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23317 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->finishDrawing(Landroid/view/IWindow;)V
23319 - :cond_3d9
23320 + :cond_3d8
23321 move-object/from16 v0, p0
23323 - iget-object v4, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23324 + iget-object v3, v0, Landroid/view/SurfaceView;->mSession:Landroid/view/IWindowSession;
23326 move-object/from16 v0, p0
23328 - iget-object v5, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23329 + iget-object v4, v0, Landroid/view/SurfaceView;->mWindow:Landroid/view/SurfaceView$MyWindow;
23331 - invoke-interface {v4, v5}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23332 + invoke-interface {v3, v4}, Landroid/view/IWindowSession;->performDeferredDestroy(Landroid/view/IWindow;)V
23333 + :try_end_3e3
23334 + .catch Landroid/os/RemoteException; {:try_start_3a9 .. :try_end_3e3} :catch_2f6
23336 - throw v3
23337 - :try_end_3e5
23338 - .catch Landroid/os/RemoteException; {:try_start_3a8 .. :try_end_3e5} :catch_2f6
23339 + goto/16 :goto_6
23340 .end method
23343 diff -Npru stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali
23344 --- stock-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-06-14 15:24:25.784554807 -0500
23345 +++ pdroid-framework/smali/android/view/ViewRootImpl$AccessibilityInteractionController.smali 2012-06-14 15:23:35.060303273 -0500
23346 @@ -364,7 +364,7 @@
23347 :try_start_13
23348 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23349 :try_end_16
23350 - .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1c
23351 + .catch Landroid/os/RemoteException; {:try_start_13 .. :try_end_16} :catch_1e
23353 :goto_16
23354 return-void
23355 @@ -375,20 +375,20 @@
23356 :try_start_18
23357 invoke-interface {v1, v2, v3}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23358 :try_end_1b
23359 - .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1e
23360 + .catch Landroid/os/RemoteException; {:try_start_18 .. :try_end_1b} :catch_1c
23362 :goto_1b
23363 throw v5
23365 :catch_1c
23366 - move-exception v5
23367 + move-exception v6
23369 - goto :goto_16
23370 + goto :goto_1b
23372 :catch_1e
23373 - move-exception v6
23374 + move-exception v5
23376 - goto :goto_1b
23377 + goto :goto_16
23378 .end method
23380 .method public findAccessibilityNodeInfoByViewIdClientThread(IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23381 @@ -491,7 +491,7 @@
23382 :try_start_1d
23383 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23384 :try_end_20
23385 - .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_26
23386 + .catch Landroid/os/RemoteException; {:try_start_1d .. :try_end_20} :catch_28
23388 :goto_20
23389 return-void
23390 @@ -502,20 +502,20 @@
23391 :try_start_22
23392 invoke-interface {v0, v1, v2}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfoResult(Landroid/view/accessibility/AccessibilityNodeInfo;I)V
23393 :try_end_25
23394 - .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_28
23395 + .catch Landroid/os/RemoteException; {:try_start_22 .. :try_end_25} :catch_26
23397 :goto_25
23398 throw v6
23400 :catch_26
23401 - move-exception v6
23402 + move-exception v7
23404 - goto :goto_20
23405 + goto :goto_25
23407 :catch_28
23408 - move-exception v7
23409 + move-exception v6
23411 - goto :goto_25
23412 + goto :goto_20
23413 .end method
23415 .method public findAccessibilityNodeInfosByViewTextClientThread(Ljava/lang/String;IILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23416 @@ -639,7 +639,7 @@
23418 invoke-virtual {v8}, Landroid/view/View;->getVisibility()I
23419 :try_end_2c
23420 - .catchall {:try_start_16 .. :try_end_2c} :catchall_70
23421 + .catchall {:try_start_16 .. :try_end_2c} :catchall_6a
23423 move-result v11
23425 @@ -649,7 +649,7 @@
23426 :try_start_2f
23427 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23428 :try_end_32
23429 - .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_75
23430 + .catch Landroid/os/RemoteException; {:try_start_2f .. :try_end_32} :catch_46
23432 :goto_32
23433 return-void
23434 @@ -669,7 +669,7 @@
23436 invoke-virtual {v4}, Ljava/util/ArrayList;->isEmpty()Z
23437 :try_end_3f
23438 - .catchall {:try_start_33 .. :try_end_3f} :catchall_70
23439 + .catchall {:try_start_33 .. :try_end_3f} :catchall_6a
23441 move-result v11
23443 @@ -700,7 +700,7 @@
23444 const/4 v5, 0x0
23446 :goto_52
23447 - if-ge v5, v10, :cond_6a
23448 + if-ge v5, v10, :cond_71
23450 invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
23452 @@ -720,46 +720,36 @@
23454 invoke-interface {v6, v11}, Ljava/util/List;->add(Ljava/lang/Object;)Z
23455 :try_end_67
23456 - .catchall {:try_start_48 .. :try_end_67} :catchall_70
23457 + .catchall {:try_start_48 .. :try_end_67} :catchall_6a
23459 :cond_67
23460 add-int/lit8 v5, v5, 0x1
23462 goto :goto_52
23464 - :cond_6a
23465 - :try_start_6a
23466 - invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23467 - :try_end_6d
23468 - .catch Landroid/os/RemoteException; {:try_start_6a .. :try_end_6d} :catch_6e
23469 + :catchall_6a
23470 + move-exception v11
23472 - goto :goto_32
23473 + :try_start_6b
23474 + invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23475 + :try_end_6e
23476 + .catch Landroid/os/RemoteException; {:try_start_6b .. :try_end_6e} :catch_6f
23478 - :catch_6e
23479 - move-exception v11
23480 + :goto_6e
23481 + throw v11
23483 - goto :goto_32
23484 + :catch_6f
23485 + move-exception v12
23487 - :catchall_70
23488 - move-exception v11
23489 + goto :goto_6e
23491 + :cond_71
23492 :try_start_71
23493 invoke-interface {v2, v6, v7}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setFindAccessibilityNodeInfosResult(Ljava/util/List;I)V
23494 :try_end_74
23495 - .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_77
23497 - :goto_74
23498 - throw v11
23500 - :catch_75
23501 - move-exception v11
23502 + .catch Landroid/os/RemoteException; {:try_start_71 .. :try_end_74} :catch_46
23504 goto :goto_32
23506 - :catch_77
23507 - move-exception v12
23509 - goto :goto_74
23510 .end method
23512 .method public performAccessibilityActionClientThread(IIILandroid/view/accessibility/IAccessibilityInteractionConnectionCallback;IJ)V
23513 @@ -864,7 +854,7 @@
23514 :try_start_17
23515 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23516 :try_end_1a
23517 - .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_34
23518 + .catch Landroid/os/RemoteException; {:try_start_17 .. :try_end_1a} :catch_36
23520 :goto_1a
23521 return-void
23522 @@ -906,20 +896,20 @@
23523 :try_start_30
23524 invoke-interface {v3, v5, v4}, Landroid/view/accessibility/IAccessibilityInteractionConnectionCallback;->setPerformAccessibilityActionResult(ZI)V
23525 :try_end_33
23526 - .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_36
23527 + .catch Landroid/os/RemoteException; {:try_start_30 .. :try_end_33} :catch_34
23529 :goto_33
23530 throw v6
23532 :catch_34
23533 - move-exception v6
23534 + move-exception v7
23536 - goto :goto_1a
23537 + goto :goto_33
23539 :catch_36
23540 - move-exception v7
23541 + move-exception v6
23543 - goto :goto_33
23544 + goto :goto_1a
23546 :pswitch_data_38
23547 .packed-switch 0x1
23548 diff -Npru stock-framework/smali/android/view/ViewRootImpl$W.smali pdroid-framework/smali/android/view/ViewRootImpl$W.smali
23549 --- stock-framework/smali/android/view/ViewRootImpl$W.smali 2012-06-14 15:24:25.788554822 -0500
23550 +++ pdroid-framework/smali/android/view/ViewRootImpl$W.smali 2012-06-14 15:23:35.064303291 -0500
23551 @@ -301,21 +301,21 @@
23553 invoke-direct {v1, p3}, Landroid/os/ParcelFileDescriptor$AutoCloseOutputStream;-><init>(Landroid/os/ParcelFileDescriptor;)V
23554 :try_end_47
23555 - .catchall {:try_start_42 .. :try_end_47} :catchall_64
23556 - .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_55
23557 + .catchall {:try_start_42 .. :try_end_47} :catchall_5f
23558 + .catch Ljava/io/IOException; {:try_start_42 .. :try_end_47} :catch_50
23560 :try_start_47
23561 invoke-static {v3, p1, p2, v1}, Landroid/view/ViewDebug;->dispatchCommand(Landroid/view/View;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;)V
23562 :try_end_4a
23563 - .catchall {:try_start_47 .. :try_end_4a} :catchall_70
23564 - .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_73
23565 + .catchall {:try_start_47 .. :try_end_4a} :catchall_6d
23566 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_70
23568 if-eqz v1, :cond_4f
23570 :try_start_4c
23571 invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
23572 :try_end_4f
23573 - .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50
23574 + .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_6b
23576 :cond_4f
23577 :goto_4f
23578 @@ -324,70 +324,69 @@
23579 :catch_50
23580 move-exception v2
23582 + :goto_51
23583 + :try_start_51
23584 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23586 - goto :goto_4f
23588 - :catch_55
23589 - move-exception v2
23591 - :goto_56
23592 - :try_start_56
23593 - invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23594 - :try_end_59
23595 - .catchall {:try_start_56 .. :try_end_59} :catchall_64
23596 + :try_end_54
23597 + .catchall {:try_start_51 .. :try_end_54} :catchall_5f
23599 if-eqz v0, :cond_4f
23601 - :try_start_5b
23602 + :try_start_56
23603 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23604 - :try_end_5e
23605 - .catch Ljava/io/IOException; {:try_start_5b .. :try_end_5e} :catch_5f
23606 + :try_end_59
23607 + .catch Ljava/io/IOException; {:try_start_56 .. :try_end_59} :catch_5a
23609 goto :goto_4f
23611 - :catch_5f
23612 + :catch_5a
23613 move-exception v2
23615 + :goto_5b
23616 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23618 goto :goto_4f
23620 - :catchall_64
23621 + :catchall_5f
23622 move-exception v5
23624 - :goto_65
23625 - if-eqz v0, :cond_6a
23626 + :goto_60
23627 + if-eqz v0, :cond_65
23629 - :try_start_67
23630 + :try_start_62
23631 invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
23632 - :try_end_6a
23633 - .catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_6b
23634 + :try_end_65
23635 + .catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
23637 - :cond_6a
23638 - :goto_6a
23639 + :cond_65
23640 + :goto_65
23641 throw v5
23643 - :catch_6b
23644 + :catch_66
23645 move-exception v2
23647 invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
23649 - goto :goto_6a
23650 + goto :goto_65
23652 - :catchall_70
23653 + :catch_6b
23654 + move-exception v2
23656 + goto :goto_5b
23658 + :catchall_6d
23659 move-exception v5
23661 move-object v0, v1
23663 - goto :goto_65
23664 + goto :goto_60
23666 - :catch_73
23667 + :catch_70
23668 move-exception v2
23670 move-object v0, v1
23672 - goto :goto_56
23673 + goto :goto_51
23674 .end method
23676 .method public resized(IILandroid/graphics/Rect;Landroid/graphics/Rect;ZLandroid/content/res/Configuration;)V
23677 diff -Npru stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali
23678 --- stock-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-06-14 15:24:26.008555914 -0500
23679 +++ pdroid-framework/smali/android/webkit/HTML5VideoViewProxy$PosterDownloader.smali 2012-06-14 15:23:35.228304103 -0500
23680 @@ -123,28 +123,26 @@
23682 invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
23683 :try_end_a
23684 - .catchall {:try_start_5 .. :try_end_a} :catchall_11
23685 - .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_d
23686 + .catchall {:try_start_5 .. :try_end_a} :catchall_d
23687 + .catch Ljava/io/IOException; {:try_start_5 .. :try_end_a} :catch_11
23689 + :goto_a
23690 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23692 :cond_c
23693 - :goto_c
23694 return-void
23696 - :catch_d
23697 + :catchall_d
23698 move-exception v0
23700 iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23702 - goto :goto_c
23703 + throw v0
23705 - :catchall_11
23706 + :catch_11
23707 move-exception v0
23709 - iput-object v1, p0, Landroid/webkit/HTML5VideoViewProxy$PosterDownloader;->mPosterBytes:Ljava/io/ByteArrayOutputStream;
23711 - throw v0
23712 + goto :goto_a
23713 .end method
23715 .method private releaseQueue()V
23716 diff -Npru stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali
23717 --- stock-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-06-14 15:24:26.072556241 -0500
23718 +++ pdroid-framework/smali/android/webkit/WebIconDatabase$EventHandler.smali 2012-06-14 15:23:35.256304248 -0500
23719 @@ -189,7 +189,7 @@
23721 invoke-interface {v6}, Landroid/database/Cursor;->moveToNext()Z
23722 :try_end_40
23723 - .catchall {:try_start_1e .. :try_end_40} :catchall_57
23724 + .catchall {:try_start_1e .. :try_end_40} :catchall_54
23725 .catch Ljava/lang/IllegalStateException; {:try_start_1e .. :try_end_40} :catch_49
23727 move-result v1
23728 @@ -199,10 +199,10 @@
23729 :cond_43
23730 if-eqz v6, :cond_48
23732 + :goto_45
23733 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23735 :cond_48
23736 - :goto_48
23737 return-void
23739 :catch_49
23740 @@ -215,22 +215,20 @@
23742 invoke-static {v1, v2, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23743 :try_end_51
23744 - .catchall {:try_start_4a .. :try_end_51} :catchall_57
23745 + .catchall {:try_start_4a .. :try_end_51} :catchall_54
23747 if-eqz v6, :cond_48
23749 - invoke-interface {v6}, Landroid/database/Cursor;->close()V
23751 - goto :goto_48
23752 + goto :goto_45
23754 - :catchall_57
23755 + :catchall_54
23756 move-exception v1
23758 - if-eqz v6, :cond_5d
23759 + if-eqz v6, :cond_5a
23761 invoke-interface {v6}, Landroid/database/Cursor;->close()V
23763 - :cond_5d
23764 + :cond_5a
23765 throw v1
23766 .end method
23768 diff -Npru stock-framework/smali/android/webkit/WebView$6.smali pdroid-framework/smali/android/webkit/WebView$6.smali
23769 --- stock-framework/smali/android/webkit/WebView$6.smali 2012-06-14 15:24:26.116556449 -0500
23770 +++ pdroid-framework/smali/android/webkit/WebView$6.smali 2012-06-14 15:23:35.280304356 -0500
23771 @@ -58,8 +58,8 @@
23773 invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
23774 :try_end_8
23775 - .catchall {:try_start_1 .. :try_end_8} :catchall_2c
23776 - .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_20
23777 + .catchall {:try_start_1 .. :try_end_8} :catchall_20
23778 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_8} :catch_2c
23780 :try_start_8
23781 iget-object v2, p0, Landroid/webkit/WebView$6;->val$p:Landroid/graphics/Picture;
23782 @@ -80,7 +80,7 @@
23783 :try_start_16
23784 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
23785 :try_end_19
23786 - .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_38
23787 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_19} :catch_3c
23789 :cond_19
23790 :goto_19
23791 @@ -93,7 +93,7 @@
23792 :goto_1f
23793 return-void
23795 - :catch_20
23796 + :catchall_20
23797 move-exception v2
23799 :goto_21
23800 @@ -106,13 +106,13 @@
23802 :cond_26
23803 :goto_26
23804 - iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23805 + iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23807 - invoke-virtual {v2}, Ljava/io/File;->delete()Z
23808 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
23810 - goto :goto_1f
23811 + throw v2
23813 - :catchall_2c
23814 + :catch_2c
23815 move-exception v2
23817 :goto_2d
23818 @@ -121,42 +121,42 @@
23819 :try_start_2f
23820 invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
23821 :try_end_32
23822 - .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_3c
23823 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_32} :catch_38
23825 :cond_32
23826 :goto_32
23827 - iget-object v3, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23828 + iget-object v2, p0, Landroid/webkit/WebView$6;->val$temp:Ljava/io/File;
23830 - invoke-virtual {v3}, Ljava/io/File;->delete()Z
23831 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
23833 - throw v2
23834 + goto :goto_1f
23836 :catch_38
23837 move-exception v2
23839 - goto :goto_19
23840 + goto :goto_32
23842 :catch_3a
23843 - move-exception v2
23844 + move-exception v3
23846 goto :goto_26
23848 :catch_3c
23849 - move-exception v3
23850 + move-exception v2
23852 - goto :goto_32
23853 + goto :goto_19
23855 :catchall_3e
23856 move-exception v2
23858 move-object v0, v1
23860 - goto :goto_2d
23861 + goto :goto_21
23863 :catch_41
23864 move-exception v2
23866 move-object v0, v1
23868 - goto :goto_21
23869 + goto :goto_2d
23870 .end method
23871 diff -Npru stock-framework/smali/android/webkit/WebView$7.smali pdroid-framework/smali/android/webkit/WebView$7.smali
23872 --- stock-framework/smali/android/webkit/WebView$7.smali 2012-06-14 15:24:26.116556449 -0500
23873 +++ pdroid-framework/smali/android/webkit/WebView$7.smali 2012-06-14 15:23:35.280304356 -0500
23874 @@ -72,7 +72,7 @@
23876 invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
23877 :try_end_19
23878 - .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_23
23879 + .catch Ljava/lang/Exception; {:try_start_14 .. :try_end_19} :catch_21
23881 :goto_19
23882 return-void
23883 @@ -85,18 +85,18 @@
23885 invoke-virtual {v2}, Ljava/io/FileInputStream;->close()V
23886 :try_end_20
23887 - .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_21
23888 + .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_20} :catch_23
23890 :goto_20
23891 throw v1
23893 :catch_21
23894 - move-exception v2
23895 + move-exception v1
23897 - goto :goto_20
23898 + goto :goto_19
23900 :catch_23
23901 - move-exception v1
23902 + move-exception v2
23904 - goto :goto_19
23905 + goto :goto_20
23906 .end method
23907 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali
23908 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-06-14 15:24:26.304557386 -0500
23909 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryLoader.smali 2012-06-14 15:23:35.408305008 -0500
23910 @@ -140,7 +140,7 @@
23912 throw v21
23913 :try_end_51
23914 - .catchall {:try_start_19 .. :try_end_51} :catchall_15b
23915 + .catchall {:try_start_19 .. :try_end_51} :catchall_158
23916 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_19 .. :try_end_51} :catch_51
23917 .catch Ljava/io/IOException; {:try_start_19 .. :try_end_51} :catch_ed
23919 @@ -189,7 +189,7 @@
23921 invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23922 :try_end_7c
23923 - .catchall {:try_start_52 .. :try_end_7c} :catchall_15b
23924 + .catchall {:try_start_52 .. :try_end_7c} :catchall_158
23926 if-eqz v4, :cond_3c
23928 @@ -238,7 +238,7 @@
23930 monitor-enter v22
23931 :try_end_a0
23932 - .catchall {:try_start_84 .. :try_end_a0} :catchall_15b
23933 + .catchall {:try_start_84 .. :try_end_a0} :catchall_158
23934 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_84 .. :try_end_a0} :catch_51
23935 .catch Ljava/io/IOException; {:try_start_84 .. :try_end_a0} :catch_ed
23937 @@ -267,7 +267,7 @@
23938 add-int/lit8 v9, v8, -0x1
23940 :goto_b7
23941 - if-ltz v9, :cond_162
23942 + if-ltz v9, :cond_15f
23944 invoke-interface {v7, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
23946 @@ -279,7 +279,7 @@
23948 invoke-interface {v0, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
23949 :try_end_c4
23950 - .catchall {:try_start_a0 .. :try_end_c4} :catchall_1b3
23951 + .catchall {:try_start_a0 .. :try_end_c4} :catchall_1aa
23953 add-int/lit8 v9, v9, -0x1
23955 @@ -315,7 +315,7 @@
23957 move-result v21
23959 - if-nez v21, :cond_120
23960 + if-nez v21, :cond_11d
23962 new-instance v21, Lorg/xmlpull/v1/XmlPullParserException;
23964 @@ -325,7 +325,7 @@
23966 throw v21
23967 :try_end_ed
23968 - .catchall {:try_start_d7 .. :try_end_ed} :catchall_15b
23969 + .catchall {:try_start_d7 .. :try_end_ed} :catchall_158
23970 .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_d7 .. :try_end_ed} :catch_51
23971 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_ed} :catch_ed
23973 @@ -372,26 +372,21 @@
23975 invoke-static {v0, v1, v10}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
23976 :try_end_116
23977 - .catchall {:try_start_ee .. :try_end_116} :catchall_15b
23978 + .catchall {:try_start_ee .. :try_end_116} :catchall_158
23980 if-eqz v4, :cond_3c
23982 :try_start_118
23983 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
23984 :try_end_11b
23985 - .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_11d
23986 + .catch Ljava/io/IOException; {:try_start_118 .. :try_end_11b} :catch_82
23988 goto/16 :goto_3c
23990 - :catch_11d
23991 - move-exception v21
23993 - goto/16 :goto_3c
23995 - :cond_120
23996 + :cond_11d
23997 const/16 v21, 0x0
23999 - :try_start_122
24000 + :try_start_11f
24001 const-string v22, "activity"
24003 move-object/from16 v0, v21
24004 @@ -443,29 +438,29 @@
24005 invoke-direct {v13, v3, v0, v1, v2}, Landroid/widget/ActivityChooserModel$HistoricalRecord;-><init>(Ljava/lang/String;JF)V
24007 invoke-interface {v14, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
24008 - :try_end_159
24009 - .catchall {:try_start_122 .. :try_end_159} :catchall_15b
24010 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_122 .. :try_end_159} :catch_51
24011 - .catch Ljava/io/IOException; {:try_start_122 .. :try_end_159} :catch_ed
24012 + :try_end_156
24013 + .catchall {:try_start_11f .. :try_end_156} :catchall_158
24014 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_11f .. :try_end_156} :catch_51
24015 + .catch Ljava/io/IOException; {:try_start_11f .. :try_end_156} :catch_ed
24017 goto/16 :goto_89
24019 - :catchall_15b
24020 + :catchall_158
24021 move-exception v21
24023 - if-eqz v4, :cond_161
24024 + if-eqz v4, :cond_15e
24026 - :try_start_15e
24027 + :try_start_15b
24028 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
24029 - :try_end_161
24030 - .catch Ljava/io/IOException; {:try_start_15e .. :try_end_161} :catch_1b6
24031 + :try_end_15e
24032 + .catch Ljava/io/IOException; {:try_start_15b .. :try_end_15e} :catch_1ad
24034 - :cond_161
24035 - :goto_161
24036 + :cond_15e
24037 + :goto_15e
24038 throw v21
24040 - :cond_162
24041 - :try_start_162
24042 + :cond_15f
24043 + :try_start_15f
24044 invoke-interface {v7}, Ljava/util/List;->size()I
24046 move-result v21
24047 @@ -478,28 +473,23 @@
24049 move/from16 v1, v23
24051 - if-ne v0, v1, :cond_17b
24052 + if-ne v0, v1, :cond_175
24054 monitor-exit v22
24055 - :try_end_171
24056 - .catchall {:try_start_162 .. :try_end_171} :catchall_1b3
24057 + :try_end_16e
24058 + .catchall {:try_start_15f .. :try_end_16e} :catchall_1aa
24060 if-eqz v4, :cond_3c
24062 - :try_start_173
24063 + :try_start_170
24064 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
24065 - :try_end_176
24066 - .catch Ljava/io/IOException; {:try_start_173 .. :try_end_176} :catch_178
24068 - goto/16 :goto_3c
24070 - :catch_178
24071 - move-exception v21
24072 + :try_end_173
24073 + .catch Ljava/io/IOException; {:try_start_170 .. :try_end_173} :catch_82
24075 goto/16 :goto_3c
24077 - :cond_17b
24078 - :try_start_17b
24079 + :cond_175
24080 + :try_start_175
24081 invoke-interface {v7}, Ljava/util/List;->clear()V
24083 move-object/from16 v0, v18
24084 @@ -543,40 +533,35 @@
24085 invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
24087 monitor-exit v22
24088 - :try_end_1a9
24089 - .catchall {:try_start_17b .. :try_end_1a9} :catchall_1b3
24090 + :try_end_1a3
24091 + .catchall {:try_start_175 .. :try_end_1a3} :catchall_1aa
24093 if-eqz v4, :cond_3c
24095 - :try_start_1ab
24096 + :try_start_1a5
24097 invoke-virtual {v4}, Ljava/io/FileInputStream;->close()V
24098 - :try_end_1ae
24099 - .catch Ljava/io/IOException; {:try_start_1ab .. :try_end_1ae} :catch_1b0
24100 + :try_end_1a8
24101 + .catch Ljava/io/IOException; {:try_start_1a5 .. :try_end_1a8} :catch_82
24103 goto/16 :goto_3c
24105 - :catch_1b0
24106 + :catchall_1aa
24107 move-exception v21
24109 - goto/16 :goto_3c
24111 - :catchall_1b3
24112 - move-exception v21
24114 - :try_start_1b4
24115 + :try_start_1ab
24116 monitor-exit v22
24117 - :try_end_1b5
24118 - .catchall {:try_start_1b4 .. :try_end_1b5} :catchall_1b3
24119 + :try_end_1ac
24120 + .catchall {:try_start_1ab .. :try_end_1ac} :catchall_1aa
24122 - :try_start_1b5
24123 + :try_start_1ac
24124 throw v21
24125 - :try_end_1b6
24126 - .catchall {:try_start_1b5 .. :try_end_1b6} :catchall_15b
24127 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1b5 .. :try_end_1b6} :catch_51
24128 - .catch Ljava/io/IOException; {:try_start_1b5 .. :try_end_1b6} :catch_ed
24129 + :try_end_1ad
24130 + .catchall {:try_start_1ac .. :try_end_1ad} :catchall_158
24131 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_1ac .. :try_end_1ad} :catch_51
24132 + .catch Ljava/io/IOException; {:try_start_1ac .. :try_end_1ad} :catch_ed
24134 - :catch_1b6
24135 + :catch_1ad
24136 move-exception v22
24138 - goto :goto_161
24139 + goto :goto_15e
24140 .end method
24141 diff -Npru stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali
24142 --- stock-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-06-14 15:24:26.304557386 -0500
24143 +++ pdroid-framework/smali/android/widget/ActivityChooserModel$HistoryPersister.smali 2012-06-14 15:23:35.408305008 -0500
24144 @@ -75,7 +75,7 @@
24145 :try_start_14
24146 monitor-exit v12
24147 :try_end_15
24148 - .catchall {:try_start_14 .. :try_end_15} :catchall_13d
24149 + .catchall {:try_start_14 .. :try_end_15} :catchall_136
24151 :try_start_15
24152 iget-object v11, p0, Landroid/widget/ActivityChooserModel$HistoryPersister;->this$0:Landroid/widget/ActivityChooserModel;
24153 @@ -190,10 +190,10 @@
24155 invoke-interface {v10, v11, v12}, Lorg/xmlpull/v1/XmlSerializer;->endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
24156 :try_end_7e
24157 - .catchall {:try_start_2b .. :try_end_7e} :catchall_134
24158 + .catchall {:try_start_2b .. :try_end_7e} :catchall_12d
24159 .catch Ljava/lang/IllegalArgumentException; {:try_start_2b .. :try_end_7e} :catch_b7
24160 - .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_e0
24161 - .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_109
24162 + .catch Ljava/lang/IllegalStateException; {:try_start_2b .. :try_end_7e} :catch_de
24163 + .catch Ljava/io/IOException; {:try_start_2b .. :try_end_7e} :catch_105
24165 add-int/lit8 v2, v2, 0x1
24167 @@ -258,10 +258,10 @@
24169 invoke-interface {v10}, Lorg/xmlpull/v1/XmlSerializer;->endDocument()V
24170 :try_end_af
24171 - .catchall {:try_start_a7 .. :try_end_af} :catchall_134
24172 + .catchall {:try_start_a7 .. :try_end_af} :catchall_12d
24173 .catch Ljava/lang/IllegalArgumentException; {:try_start_a7 .. :try_end_af} :catch_b7
24174 - .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_e0
24175 - .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_109
24176 + .catch Ljava/lang/IllegalStateException; {:try_start_a7 .. :try_end_af} :catch_de
24177 + .catch Ljava/io/IOException; {:try_start_a7 .. :try_end_af} :catch_105
24179 if-eqz v1, :cond_a5
24181 @@ -312,26 +312,21 @@
24183 invoke-static {v11, v12, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24184 :try_end_d8
24185 - .catchall {:try_start_b8 .. :try_end_d8} :catchall_134
24186 + .catchall {:try_start_b8 .. :try_end_d8} :catchall_12d
24188 if-eqz v1, :cond_a5
24190 :try_start_da
24191 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24192 :try_end_dd
24193 - .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_de
24194 + .catch Ljava/io/IOException; {:try_start_da .. :try_end_dd} :catch_b5
24196 goto :goto_a5
24198 :catch_de
24199 - move-exception v11
24201 - goto :goto_a5
24203 - :catch_e0
24204 move-exception v5
24206 - :try_start_e1
24207 + :try_start_df
24208 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
24210 move-result-object v11
24211 @@ -362,27 +357,22 @@
24212 move-result-object v12
24214 invoke-static {v11, v12, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24215 - :try_end_101
24216 - .catchall {:try_start_e1 .. :try_end_101} :catchall_134
24217 + :try_end_ff
24218 + .catchall {:try_start_df .. :try_end_ff} :catchall_12d
24220 if-eqz v1, :cond_a5
24222 - :try_start_103
24223 + :try_start_101
24224 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24225 - :try_end_106
24226 - .catch Ljava/io/IOException; {:try_start_103 .. :try_end_106} :catch_107
24228 - goto :goto_a5
24230 - :catch_107
24231 - move-exception v11
24232 + :try_end_104
24233 + .catch Ljava/io/IOException; {:try_start_101 .. :try_end_104} :catch_b5
24235 goto :goto_a5
24237 - :catch_109
24238 + :catch_105
24239 move-exception v4
24241 - :try_start_10a
24242 + :try_start_106
24243 invoke-static {}, Landroid/widget/ActivityChooserModel;->access$1200()Ljava/lang/String;
24245 move-result-object v11
24246 @@ -413,43 +403,38 @@
24247 move-result-object v12
24249 invoke-static {v11, v12, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24250 - :try_end_12a
24251 - .catchall {:try_start_10a .. :try_end_12a} :catchall_134
24252 + :try_end_126
24253 + .catchall {:try_start_106 .. :try_end_126} :catchall_12d
24255 if-eqz v1, :cond_a5
24257 - :try_start_12c
24258 + :try_start_128
24259 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24260 - :try_end_12f
24261 - .catch Ljava/io/IOException; {:try_start_12c .. :try_end_12f} :catch_131
24263 - goto/16 :goto_a5
24265 - :catch_131
24266 - move-exception v11
24267 + :try_end_12b
24268 + .catch Ljava/io/IOException; {:try_start_128 .. :try_end_12b} :catch_b5
24270 goto/16 :goto_a5
24272 - :catchall_134
24273 + :catchall_12d
24274 move-exception v11
24276 - if-eqz v1, :cond_13a
24277 + if-eqz v1, :cond_133
24279 - :try_start_137
24280 + :try_start_130
24281 invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
24282 - :try_end_13a
24283 - .catch Ljava/io/IOException; {:try_start_137 .. :try_end_13a} :catch_13b
24284 + :try_end_133
24285 + .catch Ljava/io/IOException; {:try_start_130 .. :try_end_133} :catch_134
24287 - :cond_13a
24288 - :goto_13a
24289 + :cond_133
24290 + :goto_133
24291 throw v11
24293 - :catch_13b
24294 + :catch_134
24295 move-exception v12
24297 - goto :goto_13a
24298 + goto :goto_133
24300 - :catchall_13d
24301 + :catchall_136
24302 move-exception v11
24304 move-object v8, v9
24305 diff -Npru stock-framework/smali/android/widget/Filter$RequestHandler.smali pdroid-framework/smali/android/widget/Filter$RequestHandler.smali
24306 --- stock-framework/smali/android/widget/Filter$RequestHandler.smali 2012-06-14 15:24:26.404557875 -0500
24307 +++ pdroid-framework/smali/android/widget/Filter$RequestHandler.smali 2012-06-14 15:23:35.484305378 -0500
24308 @@ -36,7 +36,7 @@
24310 iget v4, p1, Landroid/os/Message;->what:I
24312 - sparse-switch v4, :sswitch_data_a8
24313 + sparse-switch v4, :sswitch_data_a4
24315 :goto_5
24316 return-void
24317 @@ -57,7 +57,7 @@
24319 iput-object v5, v0, Landroid/widget/Filter$RequestArguments;->results:Landroid/widget/Filter$FilterResults;
24320 :try_end_14
24321 - .catchall {:try_start_a .. :try_end_14} :catchall_6e
24322 + .catchall {:try_start_a .. :try_end_14} :catchall_6b
24323 .catch Ljava/lang/Exception; {:try_start_a .. :try_end_14} :catch_4f
24325 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24326 @@ -73,9 +73,9 @@
24328 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
24330 + :goto_20
24331 invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
24333 - :goto_23
24334 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24336 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
24337 @@ -149,7 +149,7 @@
24339 invoke-static {v5, v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
24340 :try_end_5e
24341 - .catchall {:try_start_50 .. :try_end_5e} :catchall_6e
24342 + .catchall {:try_start_50 .. :try_end_5e} :catchall_6b
24344 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24346 @@ -164,11 +164,9 @@
24348 iput-object v0, v3, Landroid/os/Message;->obj:Ljava/lang/Object;
24350 - invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
24352 - goto :goto_23
24353 + goto :goto_20
24355 - :catchall_6e
24356 + :catchall_6b
24357 move-exception v5
24359 iget-object v6, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24360 @@ -188,7 +186,7 @@
24362 throw v5
24364 - :sswitch_7f
24365 + :sswitch_7c
24366 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24368 #getter for: Landroid/widget/Filter;->mLock:Ljava/lang/Object;
24369 @@ -198,7 +196,7 @@
24371 monitor-enter v6
24373 - :try_start_86
24374 + :try_start_83
24375 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24377 #getter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
24378 @@ -206,7 +204,7 @@
24380 move-result-object v5
24382 - if-eqz v5, :cond_a1
24383 + if-eqz v5, :cond_9e
24385 iget-object v5, p0, Landroid/widget/Filter$RequestHandler;->this$0:Landroid/widget/Filter;
24387 @@ -228,25 +226,23 @@
24388 #setter for: Landroid/widget/Filter;->mThreadHandler:Landroid/os/Handler;
24389 invoke-static {v5, v7}, Landroid/widget/Filter;->access$402(Landroid/widget/Filter;Landroid/os/Handler;)Landroid/os/Handler;
24391 - :cond_a1
24392 + :cond_9e
24393 monitor-exit v6
24395 goto/16 :goto_5
24397 - :catchall_a4
24398 + :catchall_a1
24399 move-exception v5
24401 monitor-exit v6
24402 - :try_end_a6
24403 - .catchall {:try_start_86 .. :try_end_a6} :catchall_a4
24404 + :try_end_a3
24405 + .catchall {:try_start_83 .. :try_end_a3} :catchall_a1
24407 throw v5
24409 - nop
24411 - :sswitch_data_a8
24412 + :sswitch_data_a4
24413 .sparse-switch
24414 -0x2f2f0ff3 -> :sswitch_6
24415 - -0x21524111 -> :sswitch_7f
24416 + -0x21524111 -> :sswitch_7c
24417 .end sparse-switch
24418 .end method
24419 diff -Npru stock-framework/smali/android/widget/GridView.smali pdroid-framework/smali/android/widget/GridView.smali
24420 --- stock-framework/smali/android/widget/GridView.smali 2012-06-14 15:24:26.432558018 -0500
24421 +++ pdroid-framework/smali/android/widget/GridView.smali 2012-06-14 15:23:35.512305517 -0500
24422 @@ -4243,10 +4243,11 @@
24424 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24425 :try_end_22
24426 - .catchall {:try_start_e .. :try_end_22} :catchall_1c6
24427 + .catchall {:try_start_e .. :try_end_22} :catchall_1b5
24429 if-nez v3, :cond_2c
24431 + :goto_24
24432 const/16 v19, 0x0
24434 move/from16 v0, v19
24435 @@ -4256,7 +4257,6 @@
24436 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24438 :cond_2c
24439 - :goto_2c
24440 return-void
24442 :cond_2d
24443 @@ -4317,7 +4317,7 @@
24445 move/from16 v19, v0
24447 - packed-switch v19, :pswitch_data_304
24448 + packed-switch v19, :pswitch_data_2f2
24450 move-object/from16 v0, p0
24452 @@ -4372,28 +4372,17 @@
24454 move/from16 v19, v0
24456 - if-nez v19, :cond_d9
24457 + if-nez v19, :cond_d1
24459 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->resetList()V
24461 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24462 - :try_end_9e
24463 - .catchall {:try_start_2d .. :try_end_9e} :catchall_1c6
24465 if-nez v3, :cond_2c
24467 - const/16 v19, 0x0
24469 - move/from16 v0, v19
24471 - move-object/from16 v1, p0
24473 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24475 - goto :goto_2c
24476 + goto :goto_24
24478 - :pswitch_a9
24479 - :try_start_a9
24480 + :pswitch_a1
24481 move-object/from16 v0, p0
24483 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24484 @@ -4420,7 +4409,7 @@
24486 goto :goto_87
24488 - :pswitch_c2
24489 + :pswitch_ba
24490 move-object/from16 v0, p0
24492 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24493 @@ -4445,7 +4434,7 @@
24495 goto :goto_87
24497 - :cond_d9
24498 + :cond_d1
24499 move-object/from16 v0, p0
24501 iget v0, v0, Landroid/widget/GridView;->mNextSelectedPosition:I
24502 @@ -4468,12 +4457,12 @@
24504 move-object/from16 v17, v0
24506 - if-eqz v8, :cond_109
24507 + if-eqz v8, :cond_101
24509 const/4 v11, 0x0
24511 - :goto_f3
24512 - if-ge v11, v5, :cond_10e
24513 + :goto_eb
24514 + if-ge v11, v5, :cond_106
24516 move-object/from16 v0, p0
24518 @@ -4493,14 +4482,14 @@
24520 add-int/lit8 v11, v11, 0x1
24522 - goto :goto_f3
24523 + goto :goto_eb
24525 - :cond_109
24526 + :cond_101
24527 move-object/from16 v0, v17
24529 invoke-virtual {v0, v5, v10}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
24531 - :cond_10e
24532 + :cond_106
24533 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->detachAllViewsFromParent()V
24535 move-object/from16 v0, p0
24536 @@ -4509,9 +4498,9 @@
24538 move/from16 v19, v0
24540 - packed-switch v19, :pswitch_data_314
24541 + packed-switch v19, :pswitch_data_302
24543 - if-nez v5, :cond_24d
24544 + if-nez v5, :cond_23c
24546 move-object/from16 v0, p0
24548 @@ -4519,7 +4508,7 @@
24550 move/from16 v19, v0
24552 - if-nez v19, :cond_223
24553 + if-nez v19, :cond_212
24555 move-object/from16 v0, p0
24557 @@ -4527,18 +4516,18 @@
24559 move-object/from16 v19, v0
24561 - if-eqz v19, :cond_132
24562 + if-eqz v19, :cond_12a
24564 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24566 move-result v19
24568 - if-eqz v19, :cond_21f
24569 + if-eqz v19, :cond_20e
24571 - :cond_132
24572 + :cond_12a
24573 const/16 v19, -0x1
24575 - :goto_134
24576 + :goto_12c
24577 move-object/from16 v0, p0
24579 move/from16 v1, v19
24580 @@ -4551,10 +4540,10 @@
24582 move-result-object v18
24584 - :goto_141
24585 + :goto_139
24586 invoke-virtual/range {v17 .. v17}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
24588 - if-eqz v18, :cond_2b3
24589 + if-eqz v18, :cond_2a2
24591 const/16 v19, -0x1
24593 @@ -4576,8 +4565,8 @@
24595 iput v0, v1, Landroid/widget/GridView;->mSelectedTop:I
24597 - :cond_15b
24598 - :goto_15b
24599 + :cond_153
24600 + :goto_153
24601 const/16 v19, 0x0
24603 move/from16 v0, v19
24604 @@ -4622,31 +4611,20 @@
24606 move/from16 v19, v0
24608 - if-lez v19, :cond_18e
24609 + if-lez v19, :cond_186
24611 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->checkSelectionChanged()V
24613 - :cond_18e
24614 + :cond_186
24615 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->invokeOnItemScrollListener()V
24616 - :try_end_191
24617 - .catchall {:try_start_a9 .. :try_end_191} :catchall_1c6
24619 if-nez v3, :cond_2c
24621 - const/16 v19, 0x0
24623 - move/from16 v0, v19
24624 + goto/16 :goto_24
24626 - move-object/from16 v1, p0
24627 + :pswitch_18d
24628 + if-eqz v14, :cond_19c
24630 - iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24632 - goto/16 :goto_2c
24634 - :pswitch_19d
24635 - if-eqz v14, :cond_1ac
24637 - :try_start_19f
24638 invoke-virtual {v14}, Landroid/view/View;->getTop()I
24640 move-result v19
24641 @@ -4659,18 +4637,18 @@
24643 move-result-object v18
24645 - goto :goto_141
24646 + goto :goto_139
24648 - :cond_1ac
24649 + :cond_19c
24650 move-object/from16 v0, p0
24652 invoke-direct {v0, v7, v6}, Landroid/widget/GridView;->fillSelection(II)Landroid/view/View;
24654 move-result-object v18
24656 - goto :goto_141
24657 + goto :goto_139
24659 - :pswitch_1b3
24660 + :pswitch_1a3
24661 const/16 v19, 0x0
24663 move/from16 v0, v19
24664 @@ -4686,15 +4664,15 @@
24665 move-result-object v18
24667 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24668 - :try_end_1c4
24669 - .catchall {:try_start_19f .. :try_end_1c4} :catchall_1c6
24670 + :try_end_1b4
24671 + .catchall {:try_start_2d .. :try_end_1b4} :catchall_1b5
24673 - goto/16 :goto_141
24674 + goto :goto_139
24676 - :catchall_1c6
24677 + :catchall_1b5
24678 move-exception v19
24680 - if-nez v3, :cond_1d1
24681 + if-nez v3, :cond_1c0
24683 const/16 v20, 0x0
24685 @@ -4704,11 +4682,11 @@
24687 iput-boolean v0, v1, Landroid/widget/GridView;->mBlockLayoutRequests:Z
24689 - :cond_1d1
24690 + :cond_1c0
24691 throw v19
24693 - :pswitch_1d2
24694 - :try_start_1d2
24695 + :pswitch_1c1
24696 + :try_start_1c1
24697 move-object/from16 v0, p0
24699 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24700 @@ -4727,9 +4705,9 @@
24702 invoke-direct/range {p0 .. p0}, Landroid/widget/GridView;->adjustViewsUpOrDown()V
24704 - goto/16 :goto_141
24705 + goto/16 :goto_139
24707 - :pswitch_1e7
24708 + :pswitch_1d6
24709 move-object/from16 v0, p0
24711 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24712 @@ -4752,9 +4730,9 @@
24714 move-result-object v18
24716 - goto/16 :goto_141
24717 + goto/16 :goto_139
24719 - :pswitch_1ff
24720 + :pswitch_1ee
24721 move-object/from16 v0, p0
24723 iget v0, v0, Landroid/widget/GridView;->mSyncPosition:I
24724 @@ -4777,23 +4755,23 @@
24726 move-result-object v18
24728 - goto/16 :goto_141
24729 + goto/16 :goto_139
24731 - :pswitch_217
24732 + :pswitch_206
24733 move-object/from16 v0, p0
24735 invoke-direct {v0, v9, v7, v6}, Landroid/widget/GridView;->moveSelection(III)Landroid/view/View;
24737 move-result-object v18
24739 - goto/16 :goto_141
24740 + goto/16 :goto_139
24742 - :cond_21f
24743 + :cond_20e
24744 const/16 v19, 0x0
24746 - goto/16 :goto_134
24747 + goto/16 :goto_12c
24749 - :cond_223
24750 + :cond_212
24751 move-object/from16 v0, p0
24753 iget v0, v0, Landroid/widget/GridView;->mItemCount:I
24754 @@ -4808,18 +4786,18 @@
24756 move-object/from16 v19, v0
24758 - if-eqz v19, :cond_239
24759 + if-eqz v19, :cond_228
24761 invoke-virtual/range {p0 .. p0}, Landroid/widget/GridView;->isInTouchMode()Z
24763 move-result v19
24765 - if-eqz v19, :cond_24a
24766 + if-eqz v19, :cond_239
24768 - :cond_239
24769 + :cond_228
24770 const/16 v19, -0x1
24772 - :goto_23b
24773 + :goto_22a
24774 move-object/from16 v0, p0
24776 move/from16 v1, v19
24777 @@ -4832,21 +4810,21 @@
24779 move-result-object v18
24781 - goto/16 :goto_141
24782 + goto/16 :goto_139
24784 - :cond_24a
24785 + :cond_239
24786 move/from16 v19, v13
24788 - goto :goto_23b
24789 + goto :goto_22a
24791 - :cond_24d
24792 + :cond_23c
24793 move-object/from16 v0, p0
24795 iget v0, v0, Landroid/widget/GridView;->mSelectedPosition:I
24797 move/from16 v19, v0
24799 - if-ltz v19, :cond_27e
24800 + if-ltz v19, :cond_26d
24802 move-object/from16 v0, p0
24804 @@ -4864,7 +4842,7 @@
24806 move/from16 v1, v20
24808 - if-ge v0, v1, :cond_27e
24809 + if-ge v0, v1, :cond_26d
24811 move-object/from16 v0, p0
24813 @@ -4872,9 +4850,9 @@
24815 move/from16 v19, v0
24817 - if-nez v16, :cond_279
24818 + if-nez v16, :cond_268
24820 - :goto_26f
24821 + :goto_25e
24822 move-object/from16 v0, p0
24824 move/from16 v1, v19
24825 @@ -4883,16 +4861,16 @@
24827 move-result-object v18
24829 - goto/16 :goto_141
24830 + goto/16 :goto_139
24832 - :cond_279
24833 + :cond_268
24834 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->getTop()I
24836 move-result v7
24838 - goto :goto_26f
24839 + goto :goto_25e
24841 - :cond_27e
24842 + :cond_26d
24843 move-object/from16 v0, p0
24845 iget v0, v0, Landroid/widget/GridView;->mFirstPosition:I
24846 @@ -4909,7 +4887,7 @@
24848 move/from16 v1, v20
24850 - if-ge v0, v1, :cond_2a7
24851 + if-ge v0, v1, :cond_296
24853 move-object/from16 v0, p0
24855 @@ -4917,9 +4895,9 @@
24857 move/from16 v19, v0
24859 - if-nez v15, :cond_2a2
24860 + if-nez v15, :cond_291
24862 - :goto_298
24863 + :goto_287
24864 move-object/from16 v0, p0
24866 move/from16 v1, v19
24867 @@ -4928,16 +4906,16 @@
24869 move-result-object v18
24871 - goto/16 :goto_141
24872 + goto/16 :goto_139
24874 - :cond_2a2
24875 + :cond_291
24876 invoke-virtual {v15}, Landroid/view/View;->getTop()I
24878 move-result v7
24880 - goto :goto_298
24881 + goto :goto_287
24883 - :cond_2a7
24884 + :cond_296
24885 const/16 v19, 0x0
24887 move-object/from16 v0, p0
24888 @@ -4948,16 +4926,16 @@
24890 move-result-object v18
24892 - goto/16 :goto_141
24893 + goto/16 :goto_139
24895 - :cond_2b3
24896 + :cond_2a2
24897 move-object/from16 v0, p0
24899 iget v0, v0, Landroid/widget/GridView;->mTouchMode:I
24901 move/from16 v19, v0
24903 - if-lez v19, :cond_2f0
24904 + if-lez v19, :cond_2df
24906 move-object/from16 v0, p0
24908 @@ -4971,7 +4949,7 @@
24910 move/from16 v1, v20
24912 - if-ge v0, v1, :cond_2f0
24913 + if-ge v0, v1, :cond_2df
24915 move-object/from16 v0, p0
24917 @@ -4995,7 +4973,7 @@
24919 move-result-object v4
24921 - if-eqz v4, :cond_15b
24922 + if-eqz v4, :cond_153
24924 move-object/from16 v0, p0
24926 @@ -5009,9 +4987,9 @@
24928 invoke-virtual {v0, v1, v4}, Landroid/widget/GridView;->positionSelector(ILandroid/view/View;)V
24930 - goto/16 :goto_15b
24931 + goto/16 :goto_153
24933 - :cond_2f0
24934 + :cond_2df
24935 const/16 v19, 0x0
24937 move/from16 v0, v19
24938 @@ -5027,31 +5005,29 @@
24939 move-object/from16 v19, v0
24941 invoke-virtual/range {v19 .. v19}, Landroid/graphics/Rect;->setEmpty()V
24942 - :try_end_301
24943 - .catchall {:try_start_1d2 .. :try_end_301} :catchall_1c6
24945 - goto/16 :goto_15b
24946 + :try_end_2f0
24947 + .catchall {:try_start_1c1 .. :try_end_2f0} :catchall_1b5
24949 - nop
24950 + goto/16 :goto_153
24952 - :pswitch_data_304
24953 + :pswitch_data_2f2
24954 .packed-switch 0x1
24955 :pswitch_87
24956 - :pswitch_a9
24957 + :pswitch_a1
24958 :pswitch_87
24959 :pswitch_87
24960 :pswitch_87
24961 - :pswitch_c2
24962 + :pswitch_ba
24963 .end packed-switch
24965 - :pswitch_data_314
24966 + :pswitch_data_302
24967 .packed-switch 0x1
24968 - :pswitch_1b3
24969 - :pswitch_19d
24970 - :pswitch_1d2
24971 - :pswitch_1e7
24972 - :pswitch_1ff
24973 - :pswitch_217
24974 + :pswitch_1a3
24975 + :pswitch_18d
24976 + :pswitch_1c1
24977 + :pswitch_1d6
24978 + :pswitch_1ee
24979 + :pswitch_206
24980 .end packed-switch
24981 .end method
24983 diff -Npru stock-framework/smali/android/widget/ListView.smali pdroid-framework/smali/android/widget/ListView.smali
24984 --- stock-framework/smali/android/widget/ListView.smali 2012-06-14 15:24:26.392557825 -0500
24985 +++ pdroid-framework/smali/android/widget/ListView.smali 2012-06-14 15:23:35.476305342 -0500
24986 @@ -6868,10 +6868,11 @@
24988 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
24989 :try_end_1d
24990 - .catchall {:try_start_b .. :try_end_1d} :catchall_125
24991 + .catchall {:try_start_b .. :try_end_1d} :catchall_120
24993 if-nez v8, :cond_24
24995 + :goto_1f
24996 const/4 v2, 0x0
24998 move-object/from16 v0, p0
24999 @@ -6879,7 +6880,6 @@
25000 iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
25002 :cond_24
25003 - :goto_24
25004 return-void
25006 :cond_25
25007 @@ -6936,7 +6936,7 @@
25009 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
25011 - packed-switch v2, :pswitch_data_36e
25012 + packed-switch v2, :pswitch_data_364
25014 move-object/from16 v0, p0
25016 @@ -7016,26 +7016,17 @@
25018 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25020 - if-nez v2, :cond_cc
25021 + if-nez v2, :cond_c7
25023 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->resetList()V
25025 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
25026 - :try_end_a8
25027 - .catchall {:try_start_25 .. :try_end_a8} :catchall_125
25029 if-nez v8, :cond_24
25031 - const/4 v2, 0x0
25033 - move-object/from16 v0, p0
25035 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
25037 - goto/16 :goto_24
25038 + goto/16 :goto_1f
25040 - :pswitch_b1
25041 - :try_start_b1
25042 + :pswitch_ac
25043 move-object/from16 v0, p0
25045 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
25046 @@ -7064,7 +7055,7 @@
25048 goto :goto_93
25050 - :cond_cc
25051 + :cond_c7
25052 move-object/from16 v0, p0
25054 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25055 @@ -7081,7 +7072,7 @@
25057 move/from16 v0, v24
25059 - if-eq v2, v0, :cond_131
25060 + if-eq v2, v0, :cond_12c
25062 new-instance v2, Ljava/lang/IllegalStateException;
25064 @@ -7152,13 +7143,13 @@
25065 invoke-direct {v2, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
25067 throw v2
25068 - :try_end_125
25069 - .catchall {:try_start_b1 .. :try_end_125} :catchall_125
25070 + :try_end_120
25071 + .catchall {:try_start_25 .. :try_end_120} :catchall_120
25073 - :catchall_125
25074 + :catchall_120
25075 move-exception v2
25077 - if-nez v8, :cond_130
25078 + if-nez v8, :cond_12b
25080 const/16 v24, 0x0
25082 @@ -7168,11 +7159,11 @@
25084 iput-boolean v0, v1, Landroid/widget/ListView;->mBlockLayoutRequests:Z
25086 - :cond_130
25087 + :cond_12b
25088 throw v2
25090 - :cond_131
25091 - :try_start_131
25092 + :cond_12c
25093 + :try_start_12c
25094 move-object/from16 v0, p0
25096 iget v2, v0, Landroid/widget/ListView;->mNextSelectedPosition:I
25097 @@ -7193,14 +7184,14 @@
25099 const/4 v13, 0x0
25101 - if-eqz v11, :cond_161
25102 + if-eqz v11, :cond_15c
25104 const/16 v18, 0x0
25106 - :goto_149
25107 + :goto_144
25108 move/from16 v0, v18
25110 - if-ge v0, v10, :cond_166
25111 + if-ge v0, v10, :cond_161
25113 move-object/from16 v0, p0
25115 @@ -7220,21 +7211,21 @@
25117 add-int/lit8 v18, v18, 0x1
25119 - goto :goto_149
25120 + goto :goto_144
25122 - :cond_161
25123 + :cond_15c
25124 move-object/from16 v0, v22
25126 invoke-virtual {v0, v10, v12}, Landroid/widget/AbsListView$RecycleBin;->fillActiveViews(II)V
25128 - :cond_166
25129 + :cond_161
25130 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
25132 move-result-object v17
25134 - if-eqz v17, :cond_186
25135 + if-eqz v17, :cond_181
25137 - if-eqz v11, :cond_178
25138 + if-eqz v11, :cond_173
25140 move-object/from16 v0, p0
25142 @@ -7244,38 +7235,38 @@
25144 move-result v2
25146 - if-eqz v2, :cond_183
25147 + if-eqz v2, :cond_17e
25149 - :cond_178
25150 + :cond_173
25151 move-object/from16 v13, v17
25153 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->findFocus()Landroid/view/View;
25155 move-result-object v14
25157 - if-eqz v14, :cond_183
25158 + if-eqz v14, :cond_17e
25160 invoke-virtual {v14}, Landroid/view/View;->onStartTemporaryDetach()V
25162 - :cond_183
25163 + :cond_17e
25164 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->requestFocus()Z
25166 - :cond_186
25167 + :cond_181
25168 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->detachAllViewsFromParent()V
25170 move-object/from16 v0, p0
25172 iget v2, v0, Landroid/widget/ListView;->mLayoutMode:I
25174 - packed-switch v2, :pswitch_data_37c
25175 + packed-switch v2, :pswitch_data_372
25177 - if-nez v10, :cond_2ba
25178 + if-nez v10, :cond_2b0
25180 move-object/from16 v0, p0
25182 iget-boolean v2, v0, Landroid/widget/ListView;->mStackFromBottom:Z
25184 - if-nez v2, :cond_295
25185 + if-nez v2, :cond_28b
25187 const/4 v2, 0x0
25189 @@ -7301,61 +7292,61 @@
25191 move-result-object v23
25193 - :goto_1b0
25194 + :goto_1ab
25195 invoke-virtual/range {v22 .. v22}, Landroid/widget/AbsListView$RecycleBin;->scrapActiveViews()V
25197 - if-eqz v23, :cond_327
25198 + if-eqz v23, :cond_31d
25200 move-object/from16 v0, p0
25202 iget-boolean v2, v0, Landroid/widget/ListView;->mItemsCanFocus:Z
25204 - if-eqz v2, :cond_31d
25205 + if-eqz v2, :cond_313
25207 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25209 move-result v2
25211 - if-eqz v2, :cond_31d
25212 + if-eqz v2, :cond_313
25214 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->hasFocus()Z
25216 move-result v2
25218 - if-nez v2, :cond_31d
25219 + if-nez v2, :cond_313
25221 move-object/from16 v0, v23
25223 - if-ne v0, v13, :cond_1d1
25224 + if-ne v0, v13, :cond_1cc
25226 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25228 move-result v2
25230 - if-nez v2, :cond_1d7
25231 + if-nez v2, :cond_1d2
25233 - :cond_1d1
25234 + :cond_1cc
25235 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->requestFocus()Z
25237 move-result v2
25239 - if-eqz v2, :cond_30b
25240 + if-eqz v2, :cond_301
25242 - :cond_1d7
25243 + :cond_1d2
25244 const/4 v15, 0x1
25246 - :goto_1d8
25247 - if-nez v15, :cond_30e
25248 + :goto_1d3
25249 + if-nez v15, :cond_304
25251 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->getFocusedChild()Landroid/view/View;
25253 move-result-object v16
25255 - if-eqz v16, :cond_1e3
25256 + if-eqz v16, :cond_1de
25258 invoke-virtual/range {v16 .. v16}, Landroid/view/View;->clearFocus()V
25260 - :cond_1e3
25261 + :cond_1de
25262 const/4 v2, -0x1
25264 move-object/from16 v0, p0
25265 @@ -7364,7 +7355,7 @@
25267 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25269 - :goto_1eb
25270 + :goto_1e6
25271 invoke-virtual/range {v23 .. v23}, Landroid/view/View;->getTop()I
25273 move-result v2
25274 @@ -7373,19 +7364,19 @@
25276 iput v2, v0, Landroid/widget/ListView;->mSelectedTop:I
25278 - :cond_1f3
25279 - :goto_1f3
25280 - if-eqz v14, :cond_1fe
25281 + :cond_1ee
25282 + :goto_1ee
25283 + if-eqz v14, :cond_1f9
25285 invoke-virtual {v14}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
25287 move-result-object v2
25289 - if-eqz v2, :cond_1fe
25290 + if-eqz v2, :cond_1f9
25292 invoke-virtual {v14}, Landroid/view/View;->onFinishTemporaryDetach()V
25294 - :cond_1fe
25295 + :cond_1f9
25296 const/4 v2, 0x0
25298 move-object/from16 v0, p0
25299 @@ -7418,29 +7409,20 @@
25301 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25303 - if-lez v2, :cond_222
25304 + if-lez v2, :cond_21d
25306 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->checkSelectionChanged()V
25308 - :cond_222
25309 + :cond_21d
25310 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->invokeOnItemScrollListener()V
25311 - :try_end_225
25312 - .catchall {:try_start_131 .. :try_end_225} :catchall_125
25314 if-nez v8, :cond_24
25316 - const/4 v2, 0x0
25318 - move-object/from16 v0, p0
25320 - iput-boolean v2, v0, Landroid/widget/ListView;->mBlockLayoutRequests:Z
25322 - goto/16 :goto_24
25323 + goto/16 :goto_1f
25325 - :pswitch_22e
25326 - if-eqz v4, :cond_23c
25327 + :pswitch_224
25328 + if-eqz v4, :cond_232
25330 - :try_start_230
25331 invoke-virtual {v4}, Landroid/view/View;->getTop()I
25333 move-result v2
25334 @@ -7451,18 +7433,18 @@
25336 move-result-object v23
25338 - goto/16 :goto_1b0
25339 + goto/16 :goto_1ab
25341 - :cond_23c
25342 + :cond_232
25343 move-object/from16 v0, p0
25345 invoke-direct {v0, v6, v7}, Landroid/widget/ListView;->fillFromMiddle(II)Landroid/view/View;
25347 move-result-object v23
25349 - goto/16 :goto_1b0
25350 + goto/16 :goto_1ab
25352 - :pswitch_244
25353 + :pswitch_23a
25354 move-object/from16 v0, p0
25356 iget v2, v0, Landroid/widget/ListView;->mSyncPosition:I
25357 @@ -7481,9 +7463,9 @@
25359 move-result-object v23
25361 - goto/16 :goto_1b0
25362 + goto/16 :goto_1ab
25364 - :pswitch_258
25365 + :pswitch_24e
25366 move-object/from16 v0, p0
25368 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25369 @@ -7498,9 +7480,9 @@
25371 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
25373 - goto/16 :goto_1b0
25374 + goto/16 :goto_1ab
25376 - :pswitch_269
25377 + :pswitch_25f
25378 const/4 v2, 0x0
25380 move-object/from16 v0, p0
25381 @@ -7515,9 +7497,9 @@
25383 invoke-direct/range {p0 .. p0}, Landroid/widget/ListView;->adjustViewsUpOrDown()V
25385 - goto/16 :goto_1b0
25386 + goto/16 :goto_1ab
25388 - :pswitch_279
25389 + :pswitch_26f
25390 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->reconcileSelectedPosition()I
25392 move-result v2
25393 @@ -7536,18 +7518,18 @@
25395 move-result-object v23
25397 - goto/16 :goto_1b0
25398 + goto/16 :goto_1ab
25400 - :pswitch_28d
25401 + :pswitch_283
25402 move-object/from16 v2, p0
25404 invoke-direct/range {v2 .. v7}, Landroid/widget/ListView;->moveSelection(Landroid/view/View;Landroid/view/View;III)Landroid/view/View;
25406 move-result-object v23
25408 - goto/16 :goto_1b0
25409 + goto/16 :goto_1ab
25411 - :cond_295
25412 + :cond_28b
25413 move-object/from16 v0, p0
25415 iget v2, v0, Landroid/widget/ListView;->mItemCount:I
25416 @@ -7582,14 +7564,14 @@
25418 move-result-object v23
25420 - goto/16 :goto_1b0
25421 + goto/16 :goto_1ab
25423 - :cond_2ba
25424 + :cond_2b0
25425 move-object/from16 v0, p0
25427 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
25429 - if-ltz v2, :cond_2e1
25430 + if-ltz v2, :cond_2d7
25432 move-object/from16 v0, p0
25434 @@ -7603,31 +7585,31 @@
25436 move/from16 v0, v24
25438 - if-ge v2, v0, :cond_2e1
25439 + if-ge v2, v0, :cond_2d7
25441 move-object/from16 v0, p0
25443 iget v2, v0, Landroid/widget/ListView;->mSelectedPosition:I
25445 - if-nez v3, :cond_2dc
25446 + if-nez v3, :cond_2d2
25448 - :goto_2d4
25449 + :goto_2ca
25450 move-object/from16 v0, p0
25452 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25454 move-result-object v23
25456 - goto/16 :goto_1b0
25457 + goto/16 :goto_1ab
25459 - :cond_2dc
25460 + :cond_2d2
25461 invoke-virtual {v3}, Landroid/view/View;->getTop()I
25463 move-result v6
25465 - goto :goto_2d4
25466 + goto :goto_2ca
25468 - :cond_2e1
25469 + :cond_2d7
25470 move-object/from16 v0, p0
25472 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25473 @@ -7640,31 +7622,31 @@
25475 move/from16 v0, v24
25477 - if-ge v2, v0, :cond_302
25478 + if-ge v2, v0, :cond_2f8
25480 move-object/from16 v0, p0
25482 iget v2, v0, Landroid/widget/ListView;->mFirstPosition:I
25484 - if-nez v20, :cond_2fd
25485 + if-nez v20, :cond_2f3
25487 - :goto_2f5
25488 + :goto_2eb
25489 move-object/from16 v0, p0
25491 invoke-direct {v0, v2, v6}, Landroid/widget/ListView;->fillSpecific(II)Landroid/view/View;
25493 move-result-object v23
25495 - goto/16 :goto_1b0
25496 + goto/16 :goto_1ab
25498 - :cond_2fd
25499 + :cond_2f3
25500 invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getTop()I
25502 move-result v6
25504 - goto :goto_2f5
25505 + goto :goto_2eb
25507 - :cond_302
25508 + :cond_2f8
25509 const/4 v2, 0x0
25511 move-object/from16 v0, p0
25512 @@ -7673,14 +7655,14 @@
25514 move-result-object v23
25516 - goto/16 :goto_1b0
25517 + goto/16 :goto_1ab
25519 - :cond_30b
25520 + :cond_301
25521 const/4 v15, 0x0
25523 - goto/16 :goto_1d8
25524 + goto/16 :goto_1d3
25526 - :cond_30e
25527 + :cond_304
25528 const/4 v2, 0x0
25530 move-object/from16 v0, v23
25531 @@ -7693,9 +7675,9 @@
25533 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25535 - goto/16 :goto_1eb
25536 + goto/16 :goto_1e6
25538 - :cond_31d
25539 + :cond_313
25540 const/4 v2, -0x1
25542 move-object/from16 v0, p0
25543 @@ -7704,14 +7686,14 @@
25545 invoke-virtual {v0, v2, v1}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25547 - goto/16 :goto_1eb
25548 + goto/16 :goto_1e6
25550 - :cond_327
25551 + :cond_31d
25552 move-object/from16 v0, p0
25554 iget v2, v0, Landroid/widget/ListView;->mTouchMode:I
25556 - if-lez v2, :cond_361
25557 + if-lez v2, :cond_357
25559 move-object/from16 v0, p0
25561 @@ -7721,7 +7703,7 @@
25563 move/from16 v0, v24
25565 - if-ge v2, v0, :cond_361
25566 + if-ge v2, v0, :cond_357
25568 move-object/from16 v0, p0
25570 @@ -7741,7 +7723,7 @@
25572 move-result-object v9
25574 - if-eqz v9, :cond_354
25575 + if-eqz v9, :cond_34a
25577 move-object/from16 v0, p0
25579 @@ -7751,21 +7733,21 @@
25581 invoke-virtual {v0, v2, v9}, Landroid/widget/ListView;->positionSelector(ILandroid/view/View;)V
25583 - :cond_354
25584 - :goto_354
25585 + :cond_34a
25586 + :goto_34a
25587 invoke-virtual/range {p0 .. p0}, Landroid/widget/ListView;->hasFocus()Z
25589 move-result v2
25591 - if-eqz v2, :cond_1f3
25592 + if-eqz v2, :cond_1ee
25594 - if-eqz v14, :cond_1f3
25595 + if-eqz v14, :cond_1ee
25597 invoke-virtual {v14}, Landroid/view/View;->requestFocus()Z
25599 - goto/16 :goto_1f3
25600 + goto/16 :goto_1ee
25602 - :cond_361
25603 + :cond_357
25604 const/4 v2, 0x0
25606 move-object/from16 v0, p0
25607 @@ -7777,28 +7759,28 @@
25608 iget-object v2, v0, Landroid/widget/ListView;->mSelectorRect:Landroid/graphics/Rect;
25610 invoke-virtual {v2}, Landroid/graphics/Rect;->setEmpty()V
25611 - :try_end_36d
25612 - .catchall {:try_start_230 .. :try_end_36d} :catchall_125
25613 + :try_end_363
25614 + .catchall {:try_start_12c .. :try_end_363} :catchall_120
25616 - goto :goto_354
25617 + goto :goto_34a
25619 - :pswitch_data_36e
25620 + :pswitch_data_364
25621 .packed-switch 0x1
25622 :pswitch_93
25623 - :pswitch_b1
25624 + :pswitch_ac
25625 :pswitch_93
25626 :pswitch_93
25627 :pswitch_93
25628 .end packed-switch
25630 - :pswitch_data_37c
25631 + :pswitch_data_372
25632 .packed-switch 0x1
25633 - :pswitch_269
25634 - :pswitch_22e
25635 - :pswitch_258
25636 - :pswitch_279
25637 - :pswitch_244
25638 - :pswitch_28d
25639 + :pswitch_25f
25640 + :pswitch_224
25641 + :pswitch_24e
25642 + :pswitch_26f
25643 + :pswitch_23a
25644 + :pswitch_283
25645 .end packed-switch
25646 .end method
25648 diff -Npru stock-framework/smali/android/widget/TextView.smali pdroid-framework/smali/android/widget/TextView.smali
25649 --- stock-framework/smali/android/widget/TextView.smali 2012-06-14 15:24:23.196541970 -0500
25650 +++ pdroid-framework/smali/android/widget/TextView.smali 2012-06-14 15:23:31.600286116 -0500
25651 @@ -5274,18 +5274,18 @@
25652 return v2
25654 :cond_b
25655 - sparse-switch p1, :sswitch_data_ec
25656 + sparse-switch p1, :sswitch_data_e8
25658 :cond_e
25659 iget-object v2, p0, Landroid/widget/TextView;->mInput:Landroid/text/method/KeyListener;
25661 - if-eqz v2, :cond_bb
25662 + if-eqz v2, :cond_b7
25664 invoke-virtual {p0}, Landroid/widget/TextView;->resetErrorChangedFlag()V
25666 const/4 v0, 0x1
25668 - if-eqz p3, :cond_97
25669 + if-eqz p3, :cond_9d
25671 :try_start_18
25672 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25673 @@ -5302,12 +5302,12 @@
25675 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25676 :try_end_28
25677 - .catchall {:try_start_18 .. :try_end_28} :catchall_b6
25678 - .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_b1
25679 + .catchall {:try_start_18 .. :try_end_28} :catchall_94
25680 + .catch Ljava/lang/AbstractMethodError; {:try_start_18 .. :try_end_28} :catch_99
25682 const/4 v0, 0x0
25684 - if-eqz v1, :cond_94
25685 + if-eqz v1, :cond_9a
25687 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25689 @@ -5433,12 +5433,21 @@
25691 goto/16 :goto_a
25693 - :cond_94
25694 + :catchall_94
25695 + move-exception v2
25697 + invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25699 + throw v2
25701 + :catch_99
25702 + move-exception v2
25704 + :cond_9a
25705 invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25707 - :cond_97
25708 - :goto_97
25709 - if-eqz v0, :cond_bb
25710 + :cond_9d
25711 + if-eqz v0, :cond_b7
25713 invoke-virtual {p0}, Landroid/widget/TextView;->beginBatchEdit()V
25715 @@ -5456,40 +5465,26 @@
25717 invoke-virtual {p0}, Landroid/widget/TextView;->hideErrorIfUnchanged()V
25719 - if-eqz v1, :cond_bb
25720 + if-eqz v1, :cond_b7
25722 move v2, v5
25724 goto/16 :goto_a
25726 - :catch_b1
25727 - move-exception v2
25729 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25731 - goto :goto_97
25733 - :catchall_b6
25734 - move-exception v2
25736 - invoke-virtual {p0}, Landroid/widget/TextView;->endBatchEdit()V
25738 - throw v2
25740 - :cond_bb
25741 + :cond_b7
25742 iget-object v2, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25744 - if-eqz v2, :cond_e8
25745 + if-eqz v2, :cond_e4
25747 iget-object v2, p0, Landroid/widget/TextView;->mLayout:Landroid/text/Layout;
25749 - if-eqz v2, :cond_e8
25750 + if-eqz v2, :cond_e4
25752 const/4 v0, 0x1
25754 - if-eqz p3, :cond_d7
25755 + if-eqz p3, :cond_d3
25757 - :try_start_c6
25758 + :try_start_c2
25759 iget-object v5, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25761 iget-object v2, p0, Landroid/widget/TextView;->mText:Ljava/lang/CharSequence;
25762 @@ -5497,24 +5492,24 @@
25763 check-cast v2, Landroid/text/Spannable;
25765 invoke-interface {v5, p0, v2, p3}, Landroid/text/method/MovementMethod;->onKeyOther(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
25766 - :try_end_cf
25767 - .catch Ljava/lang/AbstractMethodError; {:try_start_c6 .. :try_end_cf} :catch_d6
25768 + :try_end_cb
25769 + .catch Ljava/lang/AbstractMethodError; {:try_start_c2 .. :try_end_cb} :catch_d2
25771 move-result v1
25773 const/4 v0, 0x0
25775 - if-eqz v1, :cond_d7
25776 + if-eqz v1, :cond_d3
25778 move v2, v4
25780 goto/16 :goto_a
25782 - :catch_d6
25783 + :catch_d2
25784 move-exception v2
25786 - :cond_d7
25787 - if-eqz v0, :cond_e8
25788 + :cond_d3
25789 + if-eqz v0, :cond_e4
25791 iget-object v4, p0, Landroid/widget/TextView;->mMovement:Landroid/text/method/MovementMethod;
25793 @@ -5526,20 +5521,20 @@
25795 move-result v2
25797 - if-eqz v2, :cond_e8
25798 + if-eqz v2, :cond_e4
25800 const/4 v2, 0x2
25802 goto/16 :goto_a
25804 - :cond_e8
25805 + :cond_e4
25806 move v2, v3
25808 goto/16 :goto_a
25812 - :sswitch_data_ec
25813 + :sswitch_data_e8
25814 .sparse-switch
25815 0x4 -> :sswitch_8a
25816 0x17 -> :sswitch_68
25817 diff -Npru stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali
25818 --- stock-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-06-14 15:24:26.980560738 -0500
25819 +++ pdroid-framework/smali/com/android/internal/os/BatteryStatsImpl.smali 2012-06-14 15:23:36.636311088 -0500
25820 @@ -4343,13 +4343,14 @@
25822 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->commit()V
25823 :try_end_30
25824 - .catchall {:try_start_10 .. :try_end_30} :catchall_52
25825 + .catchall {:try_start_10 .. :try_end_30} :catchall_4f
25826 .catch Ljava/io/IOException; {:try_start_10 .. :try_end_30} :catch_3c
25828 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25830 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25832 + :goto_35
25833 invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25835 goto :goto_9
25836 @@ -4378,17 +4379,15 @@
25838 invoke-virtual {v3}, Lcom/android/internal/util/JournaledFile;->rollback()V
25839 :try_end_49
25840 - .catchall {:try_start_3d .. :try_end_49} :catchall_52
25841 + .catchall {:try_start_3d .. :try_end_49} :catchall_4f
25843 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25845 iget-object v3, p0, Lcom/android/internal/os/BatteryStatsImpl;->mWriteLock:Ljava/util/concurrent/locks/ReentrantLock;
25847 - invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
25849 - goto :goto_9
25850 + goto :goto_35
25852 - :catchall_52
25853 + :catchall_4f
25854 move-exception v3
25856 invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
25857 diff -Npru stock-framework/smali/com/android/internal/telephony/BaseCommands.smali pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali
25858 --- stock-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-06-14 15:24:27.116561409 -0500
25859 +++ pdroid-framework/smali/com/android/internal/telephony/BaseCommands.smali 2012-06-14 15:23:36.792311862 -0500
25860 @@ -555,8 +555,8 @@
25862 invoke-direct {v6, v7}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
25863 :try_end_a
25864 - .catchall {:try_start_3 .. :try_end_a} :catchall_5e
25865 - .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3d
25866 + .catchall {:try_start_3 .. :try_end_a} :catchall_5b
25867 + .catch Ljava/io/IOException; {:try_start_3 .. :try_end_a} :catch_3a
25869 const/16 v7, 0x800
25871 @@ -575,19 +575,21 @@
25873 invoke-direct {v2, v0, v7, v3}, Ljava/lang/String;-><init>([BII)V
25874 :try_end_1a
25875 - .catchall {:try_start_c .. :try_end_1a} :catchall_67
25876 - .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_6a
25877 + .catchall {:try_start_c .. :try_end_1a} :catchall_66
25878 + .catch Ljava/io/IOException; {:try_start_c .. :try_end_1a} :catch_69
25880 move-object v1, v2
25882 :cond_1b
25883 - if-eqz v6, :cond_6d
25884 + if-eqz v6, :cond_20
25886 :try_start_1d
25887 invoke-virtual {v6}, Ljava/io/FileInputStream;->close()V
25888 :try_end_20
25889 - .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_3a
25890 + .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_64
25892 + :cond_20
25893 + :goto_20
25894 move-object v5, v6
25896 :cond_21
25897 @@ -617,17 +619,10 @@
25898 return-object v1
25900 :catch_3a
25901 - move-exception v7
25903 - move-object v5, v6
25905 - goto :goto_21
25907 - :catch_3d
25908 move-exception v4
25910 - :goto_3e
25911 - :try_start_3e
25912 + :goto_3b
25913 + :try_start_3b
25914 const-string v7, "RILB"
25916 new-instance v8, Ljava/lang/StringBuilder;
25917 @@ -649,61 +644,61 @@
25918 move-result-object v8
25920 invoke-static {v7, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
25921 - :try_end_56
25922 - .catchall {:try_start_3e .. :try_end_56} :catchall_5e
25923 + :try_end_53
25924 + .catchall {:try_start_3b .. :try_end_53} :catchall_5b
25926 if-eqz v5, :cond_21
25928 - :try_start_58
25929 + :try_start_55
25930 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25931 - :try_end_5b
25932 - .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c
25933 + :try_end_58
25934 + .catch Ljava/io/IOException; {:try_start_55 .. :try_end_58} :catch_59
25936 goto :goto_21
25938 - :catch_5c
25939 + :catch_59
25940 move-exception v7
25942 goto :goto_21
25944 - :catchall_5e
25945 + :catchall_5b
25946 move-exception v7
25948 - :goto_5f
25949 - if-eqz v5, :cond_64
25950 + :goto_5c
25951 + if-eqz v5, :cond_61
25953 - :try_start_61
25954 + :try_start_5e
25955 invoke-virtual {v5}, Ljava/io/FileInputStream;->close()V
25956 - :try_end_64
25957 - .catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
25958 + :try_end_61
25959 + .catch Ljava/io/IOException; {:try_start_5e .. :try_end_61} :catch_62
25961 - :cond_64
25962 - :goto_64
25963 + :cond_61
25964 + :goto_61
25965 throw v7
25967 - :catch_65
25968 + :catch_62
25969 move-exception v8
25971 - goto :goto_64
25972 + goto :goto_61
25974 - :catchall_67
25975 + :catch_64
25976 move-exception v7
25978 - move-object v5, v6
25979 + goto :goto_20
25981 - goto :goto_5f
25983 - :catch_6a
25984 - move-exception v4
25985 + :catchall_66
25986 + move-exception v7
25988 move-object v5, v6
25990 - goto :goto_3e
25991 + goto :goto_5c
25993 + :catch_69
25994 + move-exception v4
25996 - :cond_6d
25997 move-object v5, v6
25999 - goto :goto_21
26000 + goto :goto_3b
26001 .end method
26004 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali
26005 --- stock-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-06-14 15:24:27.572563677 -0500
26006 +++ pdroid-framework/smali/com/android/internal/telephony/cdma/EriManager.smali 2012-06-14 15:23:37.412314947 -0500
26007 @@ -666,8 +666,8 @@
26009 invoke-static {v2, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
26010 :try_end_34
26011 - .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_20c
26012 - .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_207
26013 + .catch Ljava/io/FileNotFoundException; {:try_start_21 .. :try_end_34} :catch_209
26014 + .catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_21 .. :try_end_34} :catch_204
26016 move-object/from16 v15, v16
26018 @@ -872,7 +872,7 @@
26019 :try_start_f8
26020 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
26021 :try_end_fb
26022 - .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_202
26023 + .catch Ljava/io/IOException; {:try_start_f8 .. :try_end_fb} :catch_15c
26025 :cond_fb
26026 :goto_fb
26027 @@ -1058,7 +1058,7 @@
26028 :try_start_190
26029 invoke-virtual {v15}, Ljava/io/FileInputStream;->close()V
26030 :try_end_193
26031 - .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_205
26032 + .catch Ljava/io/IOException; {:try_start_190 .. :try_end_193} :catch_202
26034 :cond_193
26035 :goto_193
26036 @@ -1184,23 +1184,18 @@
26037 goto/16 :goto_96
26039 :catch_202
26040 - move-exception v2
26042 - goto/16 :goto_fb
26044 - :catch_205
26045 move-exception v18
26047 goto :goto_193
26049 - :catch_207
26050 + :catch_204
26051 move-exception v9
26053 move-object/from16 v15, v16
26055 goto/16 :goto_10a
26057 - :catch_20c
26058 + :catch_209
26059 move-exception v9
26061 move-object/from16 v15, v16
26062 diff -Npru stock-framework/smali/com/android/internal/telephony/IccRecords.smali pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali
26063 --- stock-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-06-14 15:24:27.260562121 -0500
26064 +++ pdroid-framework/smali/com/android/internal/telephony/IccRecords.smali 2012-06-14 15:23:37.096313384 -0500
26065 @@ -260,7 +260,7 @@
26067 iget v3, p1, Landroid/os/Message;->what:I
26069 - packed-switch v3, :pswitch_data_70
26070 + packed-switch v3, :pswitch_data_6c
26072 invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V
26074 @@ -327,7 +327,7 @@
26076 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
26077 :try_end_47
26078 - .catchall {:try_start_9 .. :try_end_47} :catchall_6a
26079 + .catchall {:try_start_9 .. :try_end_47} :catchall_67
26080 .catch Ljava/lang/RuntimeException; {:try_start_9 .. :try_end_47} :catch_4f
26082 :goto_47
26083 @@ -339,7 +339,7 @@
26084 :try_start_4b
26085 invoke-interface {v2, v0}, Lcom/android/internal/telephony/IccRecords$IccRecordLoaded;->onRecordLoaded(Landroid/os/AsyncResult;)V
26086 :try_end_4e
26087 - .catchall {:try_start_4b .. :try_end_4e} :catchall_6a
26088 + .catchall {:try_start_4b .. :try_end_4e} :catchall_67
26089 .catch Ljava/lang/RuntimeException; {:try_start_4b .. :try_end_4e} :catch_4f
26091 goto :goto_47
26092 @@ -368,22 +368,18 @@
26094 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/IccRecords;->loge(Ljava/lang/String;)V
26095 :try_end_66
26096 - .catchall {:try_start_50 .. :try_end_66} :catchall_6a
26097 + .catchall {:try_start_50 .. :try_end_66} :catchall_67
26099 - invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
26101 - goto :goto_8
26102 + goto :goto_47
26104 - :catchall_6a
26105 + :catchall_67
26106 move-exception v3
26108 invoke-virtual {p0}, Lcom/android/internal/telephony/IccRecords;->onRecordLoaded()V
26110 throw v3
26112 - nop
26114 - :pswitch_data_70
26115 + :pswitch_data_6c
26116 .packed-switch 0x64
26117 :pswitch_9
26118 .end packed-switch
26119 diff -Npru stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali
26120 --- stock-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-06-14 15:24:27.320562421 -0500
26121 +++ pdroid-framework/smali/com/android/internal/telephony/SMSDispatcher.smali 2012-06-14 15:23:37.164313716 -0500
26122 @@ -1777,14 +1777,15 @@
26124 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
26125 :try_end_9b
26126 - .catchall {:try_start_5 .. :try_end_9b} :catchall_1a2
26127 - .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_192
26128 + .catchall {:try_start_5 .. :try_end_9b} :catchall_19c
26129 + .catch Landroid/database/SQLException; {:try_start_5 .. :try_end_9b} :catch_18f
26131 :cond_9b
26132 const/4 v3, 0x1
26134 if-eqz v9, :cond_a1
26136 + :goto_9e
26137 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26139 :cond_a1
26140 @@ -1829,7 +1830,7 @@
26142 add-int/lit8 v3, p5, -0x1
26144 - if-eq v10, v3, :cond_130
26145 + if-eq v10, v3, :cond_12d
26147 new-instance v23, Landroid/content/ContentValues;
26149 @@ -1919,20 +1920,14 @@
26150 move-object/from16 v0, v23
26152 invoke-virtual {v3, v4, v0}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
26153 - :try_end_128
26154 - .catchall {:try_start_a2 .. :try_end_128} :catchall_1a2
26155 - .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_128} :catch_192
26157 const/4 v3, 0x1
26159 if-eqz v9, :cond_a1
26161 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26163 - goto/16 :goto_a1
26164 + goto/16 :goto_9e
26166 - :cond_130
26167 - :try_start_130
26168 + :cond_12d
26169 move/from16 v0, p5
26171 new-array v0, v0, [[B
26172 @@ -1941,8 +1936,8 @@
26174 const/4 v15, 0x0
26176 - :goto_137
26177 - if-ge v15, v10, :cond_161
26178 + :goto_134
26179 + if-ge v15, v10, :cond_15e
26181 invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
26183 @@ -1952,11 +1947,11 @@
26185 move-result v11
26187 - if-nez p9, :cond_145
26188 + if-nez p9, :cond_142
26190 add-int/lit8 v11, v11, -0x1
26192 - :cond_145
26193 + :cond_142
26194 const/4 v3, 0x0
26196 invoke-interface {v9, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
26197 @@ -1969,7 +1964,7 @@
26199 aput-object v3, v20, v11
26201 - if-nez v11, :cond_15e
26202 + if-nez v11, :cond_15b
26204 const/4 v3, 0x2
26206 @@ -1977,7 +1972,7 @@
26208 move-result v3
26210 - if-nez v3, :cond_15e
26211 + if-nez v3, :cond_15b
26213 const/4 v3, 0x2
26215 @@ -1985,17 +1980,17 @@
26217 move-result p8
26219 - :cond_15e
26220 + :cond_15b
26221 add-int/lit8 v15, v15, 0x1
26223 - goto :goto_137
26224 + goto :goto_134
26226 - :cond_161
26227 - if-eqz p9, :cond_18d
26228 + :cond_15e
26229 + if-eqz p9, :cond_18a
26231 aput-object p1, v20, p4
26233 - :goto_165
26234 + :goto_162
26235 move-object/from16 v0, p0
26237 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mResolver:Landroid/content/ContentResolver;
26238 @@ -2003,16 +1998,16 @@
26239 sget-object v4, Lcom/android/internal/telephony/SMSDispatcher;->mRawUri:Landroid/net/Uri;
26241 invoke-virtual {v3, v4, v6, v7}, Landroid/content/ContentResolver;->delete(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
26242 - :try_end_16e
26243 - .catchall {:try_start_130 .. :try_end_16e} :catchall_1a2
26244 - .catch Landroid/database/SQLException; {:try_start_130 .. :try_end_16e} :catch_192
26245 + :try_end_16b
26246 + .catchall {:try_start_a2 .. :try_end_16b} :catchall_19c
26247 + .catch Landroid/database/SQLException; {:try_start_a2 .. :try_end_16b} :catch_18f
26249 - if-eqz v9, :cond_173
26250 + if-eqz v9, :cond_170
26252 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26254 - :cond_173
26255 - if-eqz p9, :cond_1d1
26256 + :cond_170
26257 + if-eqz p9, :cond_1cb
26259 new-instance v19, Ljava/io/ByteArrayOutputStream;
26261 @@ -2020,10 +2015,10 @@
26263 const/4 v15, 0x0
26265 - :goto_17b
26266 + :goto_178
26267 move/from16 v0, p5
26269 - if-ge v15, v0, :cond_1a9
26270 + if-ge v15, v0, :cond_1a3
26272 aget-object v3, v20, v15
26274 @@ -2039,50 +2034,48 @@
26276 add-int/lit8 v15, v15, 0x1
26278 - goto :goto_17b
26279 + goto :goto_178
26281 - :cond_18d
26282 + :cond_18a
26283 add-int/lit8 v3, p4, -0x1
26285 - :try_start_18f
26286 + :try_start_18c
26287 aput-object p1, v20, v3
26288 - :try_end_191
26289 - .catchall {:try_start_18f .. :try_end_191} :catchall_1a2
26290 - .catch Landroid/database/SQLException; {:try_start_18f .. :try_end_191} :catch_192
26291 + :try_end_18e
26292 + .catchall {:try_start_18c .. :try_end_18e} :catchall_19c
26293 + .catch Landroid/database/SQLException; {:try_start_18c .. :try_end_18e} :catch_18f
26295 - goto :goto_165
26296 + goto :goto_162
26298 - :catch_192
26299 + :catch_18f
26300 move-exception v14
26302 - :try_start_193
26303 + :try_start_190
26304 const-string v3, "SMS"
26306 const-string v4, "Can\'t access multipart SMS database"
26308 invoke-static {v3, v4, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
26309 - :try_end_19a
26310 - .catchall {:try_start_193 .. :try_end_19a} :catchall_1a2
26311 + :try_end_197
26312 + .catchall {:try_start_190 .. :try_end_197} :catchall_19c
26314 const/4 v3, 0x2
26316 if-eqz v9, :cond_a1
26318 - invoke-interface {v9}, Landroid/database/Cursor;->close()V
26320 - goto/16 :goto_a1
26321 + goto/16 :goto_9e
26323 - :catchall_1a2
26324 + :catchall_19c
26325 move-exception v3
26327 - if-eqz v9, :cond_1a8
26328 + if-eqz v9, :cond_1a2
26330 invoke-interface {v9}, Landroid/database/Cursor;->close()V
26332 - :cond_1a8
26333 + :cond_1a2
26334 throw v3
26336 - :cond_1a9
26337 + :cond_1a3
26338 invoke-virtual/range {v19 .. v19}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
26340 move-result-object v13
26341 @@ -2091,7 +2084,7 @@
26343 move/from16 v0, p8
26345 - if-ne v0, v3, :cond_1bd
26346 + if-ne v0, v3, :cond_1b7
26348 move-object/from16 v0, p0
26350 @@ -2103,7 +2096,7 @@
26352 goto/16 :goto_a1
26354 - :cond_1bd
26355 + :cond_1b7
26356 const/4 v3, 0x1
26358 new-array v0, v3, [[B
26359 @@ -2126,18 +2119,18 @@
26361 goto/16 :goto_a1
26363 - :cond_1d1
26364 + :cond_1cb
26365 const/4 v3, -0x1
26367 move/from16 v0, p8
26369 - if-eq v0, v3, :cond_218
26370 + if-eq v0, v3, :cond_212
26372 const/16 v3, 0xb84
26374 move/from16 v0, p8
26376 - if-ne v0, v3, :cond_20c
26377 + if-ne v0, v3, :cond_206
26379 new-instance v19, Ljava/io/ByteArrayOutputStream;
26381 @@ -2145,10 +2138,10 @@
26383 const/4 v15, 0x0
26385 - :goto_1e2
26386 + :goto_1dc
26387 move/from16 v0, p5
26389 - if-ge v15, v0, :cond_1fe
26390 + if-ge v15, v0, :cond_1f8
26392 aget-object v3, v20, v15
26394 @@ -2174,9 +2167,9 @@
26396 add-int/lit8 v15, v15, 0x1
26398 - goto :goto_1e2
26399 + goto :goto_1dc
26401 - :cond_1fe
26402 + :cond_1f8
26403 move-object/from16 v0, p0
26405 iget-object v3, v0, Lcom/android/internal/telephony/SMSDispatcher;->mWapPush:Lcom/android/internal/telephony/WapPushOverSms;
26406 @@ -2191,7 +2184,7 @@
26408 goto/16 :goto_a1
26410 - :cond_20c
26411 + :cond_206
26412 move-object/from16 v0, p0
26414 move-object/from16 v1, v20
26415 @@ -2200,19 +2193,19 @@
26417 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPortAddressedPdus([[BI)V
26419 - :goto_215
26420 + :goto_20f
26421 const/4 v3, -0x1
26423 goto/16 :goto_a1
26425 - :cond_218
26426 + :cond_212
26427 move-object/from16 v0, p0
26429 move-object/from16 v1, v20
26431 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/SMSDispatcher;->dispatchPdus([[B)V
26433 - goto :goto_215
26434 + goto :goto_20f
26435 .end method
26437 .method protected abstract sendData(Ljava/lang/String;Ljava/lang/String;I[BLandroid/app/PendingIntent;Landroid/app/PendingIntent;)V