Offset 13, 216 lines modifiedOffset 13, 216 lines modified
  
13 #·direct·methods13 #·direct·methods
14 .method·static·constructor·<clinit>()V14 .method·static·constructor·<clinit>()V
15 ····.locals·315 ····.locals·3
  
16 ····const-string·v0,·".*[1-9].*"16 ····const-string·v0,·".*[1-9].*"
  
17 ····.line·5217 ····.line·51
18 ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;18 ····invoke-static·{v0},·Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;
  
19 ····move-result-object·v019 ····move-result-object·v0
  
20 ····sput-object·v0,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;20 ····sput-object·v0,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;
  
21 ····.line·6021 ····.line·59
22 ····new-instance·v0,·Ljava/text/SimpleDateFormat;22 ····new-instance·v0,·Ljava/text/SimpleDateFormat;
  
23 ····const-string·v1,·"yyyy:MM:dd·HH:mm:ss"23 ····const-string·v1,·"yyyy:MM:dd·HH:mm:ss"
  
24 ····invoke-direct·{v0,·v1},·Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V24 ····invoke-direct·{v0,·v1},·Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V
  
25 ····sput-object·v0,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;25 ····sput-object·v0,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;
  
26 ····const-string·v1,·"UTC"26 ····const-string·v1,·"UTC"
  
27 ····.line·6127 ····.line·60
28 ····invoke-static·{v1},·Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;28 ····invoke-static·{v1},·Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
  
29 ····move-result-object·v229 ····move-result-object·v2
  
30 ····invoke-virtual·{v0,·v2},·Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V30 ····invoke-virtual·{v0,·v2},·Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V
  
31 ····.line·6231 ····.line·61
32 ····new-instance·v0,·Ljava/text/SimpleDateFormat;32 ····new-instance·v0,·Ljava/text/SimpleDateFormat;
  
33 ····const-string·v2,·"yyyy:MM:dd·HH:mm:ss·XXX"33 ····const-string·v2,·"yyyy:MM:dd·HH:mm:ss·XXX"
  
34 ····invoke-direct·{v0,·v2},·Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V34 ····invoke-direct·{v0,·v2},·Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V
  
35 ····sput-object·v0,·Lcom/android/providers/media/util/ExifUtils;->sFormatterTz:Ljava/text/SimpleDateFormat;35 ····sput-object·v0,·Lcom/android/providers/media/util/ExifUtils;->sFormatterTz:Ljava/text/SimpleDateFormat;
  
36 ····.line·6336 ····.line·62
37 ····invoke-static·{v1},·Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;37 ····invoke-static·{v1},·Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
  
38 ····move-result-object·v138 ····move-result-object·v1
  
39 ····invoke-virtual·{v0,·v1},·Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V39 ····invoke-virtual·{v0,·v1},·Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V
  
40 ····return-void40 ····return-void
41 .end·method41 .end·method
  
42 .method·public·constructor·<init>()V42 .method·public·constructor·<init>()V
43 ····.locals·043 ····.locals·0
  
44 ····.line·5044 ····.line·49
45 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V45 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
46 ····return-void46 ····return-void
47 .end·method47 .end·method
  
48 .method·public·static·getDateTime(Landroid/media/ExifInterface;)J48 .method·public·static·getDateTime(Landroid/media/ExifInterface;)J
49 ····.locals·349 ····.locals·3
  
50 ····const-string·v0,·"DateTime"50 ····const-string·v0,·"DateTime"
  
51 ····.line·7051 ····.line·69
52 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;52 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
53 ····move-result-object·v053 ····move-result-object·v0
  
54 ····const-string·v1,·"SubSecTime"54 ····const-string·v1,·"SubSecTime"
  
55 ····.line·7155 ····.line·70
56 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;56 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
57 ····move-result-object·v157 ····move-result-object·v1
  
58 ····const-string·v2,·"OffsetTime"58 ····const-string·v2,·"OffsetTime"
  
59 ····.line·7259 ····.line·71
60 ····invoke-virtual·{p0,·v2},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;60 ····invoke-virtual·{p0,·v2},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
61 ····move-result-object·p061 ····move-result-object·p0
  
62 ····.line·7062 ····.line·69
63 ····invoke-static·{v0,·v1,·p0},·Lcom/android/providers/media/util/ExifUtils;->parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J63 ····invoke-static·{v0,·v1,·p0},·Lcom/android/providers/media/util/ExifUtils;->parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J
  
64 ····move-result-wide·v064 ····move-result-wide·v0
  
65 ····return-wide·v065 ····return-wide·v0
66 .end·method66 .end·method
  
67 .method·public·static·getDateTimeDigitized(Landroid/media/ExifInterface;)J67 .method·public·static·getDateTimeDigitized(Landroid/media/ExifInterface;)J
68 ····.locals·368 ····.locals·3
  
69 ····const-string·v0,·"DateTimeDigitized"69 ····const-string·v0,·"DateTimeDigitized"
  
70 ····.line·8070 ····.line·79
71 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;71 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
72 ····move-result-object·v072 ····move-result-object·v0
  
73 ····const-string·v1,·"SubSecTimeDigitized"73 ····const-string·v1,·"SubSecTimeDigitized"
  
74 ····.line·8174 ····.line·80
75 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;75 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
76 ····move-result-object·v176 ····move-result-object·v1
  
77 ····const-string·v2,·"OffsetTimeDigitized"77 ····const-string·v2,·"OffsetTimeDigitized"
  
78 ····.line·8278 ····.line·81
79 ····invoke-virtual·{p0,·v2},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;79 ····invoke-virtual·{p0,·v2},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
80 ····move-result-object·p080 ····move-result-object·p0
  
81 ····.line·8081 ····.line·79
82 ····invoke-static·{v0,·v1,·p0},·Lcom/android/providers/media/util/ExifUtils;->parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J82 ····invoke-static·{v0,·v1,·p0},·Lcom/android/providers/media/util/ExifUtils;->parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J
  
83 ····move-result-wide·v083 ····move-result-wide·v0
  
84 ····return-wide·v084 ····return-wide·v0
85 .end·method85 .end·method
  
86 .method·public·static·getDateTimeOriginal(Landroid/media/ExifInterface;)J86 .method·public·static·getDateTimeOriginal(Landroid/media/ExifInterface;)J
87 ····.locals·387 ····.locals·3
  
88 ····const-string·v0,·"DateTimeOriginal"88 ····const-string·v0,·"DateTimeOriginal"
  
89 ····.line·9089 ····.line·89
90 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;90 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
91 ····move-result-object·v091 ····move-result-object·v0
  
92 ····const-string·v1,·"SubSecTimeOriginal"92 ····const-string·v1,·"SubSecTimeOriginal"
  
93 ····.line·9193 ····.line·90
94 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;94 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
95 ····move-result-object·v195 ····move-result-object·v1
  
96 ····const-string·v2,·"OffsetTimeOriginal"96 ····const-string·v2,·"OffsetTimeOriginal"
  
97 ····.line·9297 ····.line·91
98 ····invoke-virtual·{p0,·v2},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;98 ····invoke-virtual·{p0,·v2},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
99 ····move-result-object·p099 ····move-result-object·p0
  
100 ····.line·90100 ····.line·89
101 ····invoke-static·{v0,·v1,·p0},·Lcom/android/providers/media/util/ExifUtils;->parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J101 ····invoke-static·{v0,·v1,·p0},·Lcom/android/providers/media/util/ExifUtils;->parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J
  
102 ····move-result-wide·v0102 ····move-result-wide·v0
  
103 ····return-wide·v0103 ····return-wide·v0
104 .end·method104 .end·method
  
105 .method·public·static·getGpsDateTime(Landroid/media/ExifInterface;)J105 .method·public·static·getGpsDateTime(Landroid/media/ExifInterface;)J
106 ····.locals·5106 ····.locals·5
  
107 ····const-string·v0,·"GPSDateStamp"107 ····const-string·v0,·"GPSDateStamp"
  
108 ····.line·100108 ····.line·99
109 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;109 ····invoke-virtual·{p0,·v0},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
110 ····move-result-object·v0110 ····move-result-object·v0
  
111 ····const-string·v1,·"GPSTimeStamp"111 ····const-string·v1,·"GPSTimeStamp"
  
112 ····.line·101112 ····.line·100
113 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;113 ····invoke-virtual·{p0,·v1},·Landroid/media/ExifInterface;->getAttribute(Ljava/lang/String;)Ljava/lang/String;
  
114 ····move-result-object·p0114 ····move-result-object·p0
  
115 ····const-wide/16·v1,·-0x1115 ····const-wide/16·v1,·-0x1
  
116 ····if-eqz·v0,·:cond_2116 ····if-eqz·v0,·:cond_2
  
117 ····if-eqz·p0,·:cond_2117 ····if-eqz·p0,·:cond_2
  
118 ····.line·102118 ····.line·101
119 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;119 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;
  
120 ····.line·103120 ····.line·102
121 ····invoke-virtual·{v3,·v0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;121 ····invoke-virtual·{v3,·v0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
  
122 ····move-result-object·v3122 ····move-result-object·v3
  
123 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->matches()Z123 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->matches()Z
  
124 ····move-result·v3124 ····move-result·v3
  
125 ····if-nez·v3,·:cond_0125 ····if-nez·v3,·:cond_0
  
126 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;126 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;
  
127 ····.line·104127 ····.line·103
128 ····invoke-virtual·{v3,·p0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;128 ····invoke-virtual·{v3,·p0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
  
129 ····move-result-object·v3129 ····move-result-object·v3
  
130 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->matches()Z130 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->matches()Z
  
131 ····move-result·v3131 ····move-result·v3
  
132 ····if-nez·v3,·:cond_0132 ····if-nez·v3,·:cond_0
  
133 ····goto·:goto_0133 ····goto·:goto_0
  
134 ····.line·108134 ····.line·107
135 ····:cond_0135 ····:cond_0
136 ····new-instance·v3,·Ljava/lang/StringBuilder;136 ····new-instance·v3,·Ljava/lang/StringBuilder;
  
137 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V137 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V
  
138 ····invoke-virtual·{v3,·v0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;138 ····invoke-virtual·{v3,·v0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
Offset 232, 61 lines modifiedOffset 232, 61 lines modified
  
232 ····invoke-virtual·{v3,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;232 ····invoke-virtual·{v3,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
233 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;233 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
234 ····move-result-object·p0234 ····move-result-object·p0
  
235 ····.line·110235 ····.line·109
236 ····new-instance·v0,·Ljava/text/ParsePosition;236 ····new-instance·v0,·Ljava/text/ParsePosition;
  
237 ····const/4·v3,·0x0237 ····const/4·v3,·0x0
  
238 ····invoke-direct·{v0,·v3},·Ljava/text/ParsePosition;-><init>(I)V238 ····invoke-direct·{v0,·v3},·Ljava/text/ParsePosition;-><init>(I)V
  
239 ····.line·113239 ····.line·112
240 ····:try_start_0240 ····:try_start_0
241 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;241 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;
  
242 ····monitor-enter·v3242 ····monitor-enter·v3
243 ····:try_end_0243 ····:try_end_0
244 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_0·..·:try_end_0}·:catch_0244 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_0·..·:try_end_0}·:catch_0
  
245 ····.line·114245 ····.line·113
246 ····:try_start_1246 ····:try_start_1
247 ····sget-object·v4,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;247 ····sget-object·v4,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;
  
248 ····invoke-virtual·{v4,·p0,·v0},·Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;248 ····invoke-virtual·{v4,·p0,·v0},·Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;
  
249 ····move-result-object·p0249 ····move-result-object·p0
  
250 ····.line·115250 ····.line·114
251 ····monitor-exit·v3251 ····monitor-exit·v3
252 ····:try_end_1252 ····:try_end_1
253 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_0253 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_0
  
254 ····if-nez·p0,·:cond_1254 ····if-nez·p0,·:cond_1
  
255 ····return-wide·v1255 ····return-wide·v1
  
256 ····.line·117256 ····.line·116
257 ····:cond_1257 ····:cond_1
258 ····:try_start_2258 ····:try_start_2
259 ····invoke-virtual·{p0},·Ljava/util/Date;->getTime()J259 ····invoke-virtual·{p0},·Ljava/util/Date;->getTime()J
  
260 ····move-result-wide·v0260 ····move-result-wide·v0
261 ····:try_end_2261 ····:try_end_2
262 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_2·..·:try_end_2}·:catch_0262 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_2·..·:try_end_2}·:catch_0
  
263 ····return-wide·v0263 ····return-wide·v0
  
264 ····:catchall_0264 ····:catchall_0
265 ····move-exception·p0265 ····move-exception·p0
  
266 ····.line·115266 ····.line·114
267 ····:try_start_3267 ····:try_start_3
268 ····monitor-exit·v3268 ····monitor-exit·v3
269 ····:try_end_3269 ····:try_end_3
270 ····.catchall·{:try_start_3·..·:try_end_3}·:catchall_0270 ····.catchall·{:try_start_3·..·:try_end_3}·:catchall_0
  
271 ····:try_start_4271 ····:try_start_4
272 ····throw·p0272 ····throw·p0
Offset 300, 64 lines modifiedOffset 300, 64 lines modified
300 .end·method300 .end·method
  
301 .method·private·static·parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J301 .method·private·static·parseDateTime(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J
302 ····.locals·6302 ····.locals·6
  
303 ····const-wide/16·v0,·-0x1303 ····const-wide/16·v0,·-0x1
  
304 ····if-eqz·p0,·:cond_4304 ····if-eqz·p0,·:cond_5
  
305 ····.line·125305 ····.line·124
306 ····sget-object·v2,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;306 ····sget-object·v2,·Lcom/android/providers/media/util/ExifUtils;->sNonZeroTimePattern:Ljava/util/regex/Pattern;
  
307 ····.line·126307 ····.line·125
308 ····invoke-virtual·{v2,·p0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;308 ····invoke-virtual·{v2,·p0},·Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
  
309 ····move-result-object·v2309 ····move-result-object·v2
  
310 ····invoke-virtual·{v2},·Ljava/util/regex/Matcher;->matches()Z310 ····invoke-virtual·{v2},·Ljava/util/regex/Matcher;->matches()Z
  
311 ····move-result·v2311 ····move-result·v2
  
312 ····if-nez·v2,·:cond_0312 ····if-nez·v2,·:cond_0
  
313 ····goto·:goto_1313 ····goto·:goto_2
  
314 ····.line·128314 ····.line·127
315 ····:cond_0315 ····:cond_0
316 ····new-instance·v2,·Ljava/text/ParsePosition;316 ····new-instance·v2,·Ljava/text/ParsePosition;
  
317 ····const/4·v3,·0x0317 ····const/4·v3,·0x0
  
318 ····invoke-direct·{v2,·v3},·Ljava/text/ParsePosition;-><init>(I)V318 ····invoke-direct·{v2,·v3},·Ljava/text/ParsePosition;-><init>(I)V
  
319 ····.line·133319 ····.line·132
320 ····:try_start_0320 ····:try_start_0
321 ····sget-object·v4,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;321 ····sget-object·v4,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;
  
322 ····monitor-enter·v4322 ····monitor-enter·v4
323 ····:try_end_0323 ····:try_end_0
324 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_0·..·:try_end_0}·:catch_0324 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_0·..·:try_end_0}·:catch_1
  
325 ····.line·134325 ····.line·133
326 ····:try_start_1326 ····:try_start_1
327 ····sget-object·v5,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;327 ····sget-object·v5,·Lcom/android/providers/media/util/ExifUtils;->sFormatter:Ljava/text/SimpleDateFormat;
  
328 ····invoke-virtual·{v5,·p0,·v2},·Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;328 ····invoke-virtual·{v5,·p0,·v2},·Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;
  
329 ····move-result-object·v2329 ····move-result-object·v2
  
330 ····.line·135330 ····.line·134
331 ····monitor-exit·v4331 ····monitor-exit·v4
332 ····:try_end_1332 ····:try_end_1
333 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_1333 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_1
  
334 ····if-eqz·p2,·:cond_1334 ····if-eqz·p2,·:cond_1
  
335 ····.line·138335 ····.line·137
336 ····:try_start_2336 ····:try_start_2
337 ····new-instance·v2,·Ljava/lang/StringBuilder;337 ····new-instance·v2,·Ljava/lang/StringBuilder;
  
338 ····invoke-direct·{v2},·Ljava/lang/StringBuilder;-><init>()V338 ····invoke-direct·{v2},·Ljava/lang/StringBuilder;-><init>()V
  
339 ····invoke-virtual·{v2,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;339 ····invoke-virtual·{v2,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
Offset 367, 35 lines modifiedOffset 367, 35 lines modified
  
367 ····invoke-virtual·{v2,·p2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;367 ····invoke-virtual·{v2,·p2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
368 ····invoke-virtual·{v2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;368 ····invoke-virtual·{v2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
369 ····move-result-object·p0369 ····move-result-object·p0
  
370 ····.line·139370 ····.line·138
371 ····new-instance·p2,·Ljava/text/ParsePosition;371 ····new-instance·p2,·Ljava/text/ParsePosition;
  
372 ····invoke-direct·{p2,·v3},·Ljava/text/ParsePosition;-><init>(I)V372 ····invoke-direct·{p2,·v3},·Ljava/text/ParsePosition;-><init>(I)V
  
373 ····.line·140373 ····.line·139
374 ····sget-object·v2,·Lcom/android/providers/media/util/ExifUtils;->sFormatterTz:Ljava/text/SimpleDateFormat;374 ····sget-object·v2,·Lcom/android/providers/media/util/ExifUtils;->sFormatterTz:Ljava/text/SimpleDateFormat;
  
375 ····monitor-enter·v2375 ····monitor-enter·v2
376 ····:try_end_2376 ····:try_end_2
377 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_2·..·:try_end_2}·:catch_0377 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_2·..·:try_end_2}·:catch_1
  
378 ····.line·141378 ····.line·140
379 ····:try_start_3379 ····:try_start_3
380 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sFormatterTz:Ljava/text/SimpleDateFormat;380 ····sget-object·v3,·Lcom/android/providers/media/util/ExifUtils;->sFormatterTz:Ljava/text/SimpleDateFormat;
  
381 ····invoke-virtual·{v3,·p0,·p2},·Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;381 ····invoke-virtual·{v3,·p0,·p2},·Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;
  
382 ····move-result-object·p0382 ····move-result-object·p0
  
383 ····.line·142383 ····.line·141
384 ····monitor-exit·v2384 ····monitor-exit·v2
  
385 ····move-object·v2,·p0385 ····move-object·v2,·p0
  
386 ····goto·:goto_0386 ····goto·:goto_0
  
387 ····:catchall_0387 ····:catchall_0
Offset 410, 94 lines modifiedOffset 410, 66 lines modified
  
410 ····:cond_1410 ····:cond_1
411 ····:goto_0411 ····:goto_0
412 ····if-nez·v2,·:cond_2412 ····if-nez·v2,·:cond_2
  
413 ····return-wide·v0413 ····return-wide·v0
  
414 ····.line·146414 ····.line·145
415 ····:cond_2415 ····:cond_2
416 ····invoke-virtual·{v2},·Ljava/util/Date;->getTime()J416 ····invoke-virtual·{v2},·Ljava/util/Date;->getTime()J
  
417 ····move-result-wide·v2417 ····move-result-wide·v2
  
418 ····if-eqz·p1,·:cond_3 
  
419 ····.line·149 
420 ····invoke-static·{p1},·Lcom/android/providers/media/util/ExifUtils;->parseSubSeconds(Ljava/lang/String;)J 
  
421 ····move-result-wide·p0 
422 ····:try_end_4418 ····:try_end_4
423 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_4·..·:try_end_4}·:catch_0419 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_4·..·:try_end_4}·:catch_1
  
424 ····add-long/2addr·v2,·p0 
  
425 ····:cond_3 
426 ····return-wide·v2 
  
427 ····:catchall_1420 ····if-eqz·p1,·:cond_4
428 ····move-exception·p0 
  
429 ····.line·135421 ····.line·149
430 ····:try_start_5422 ····:try_start_5
431 ····monitor-exit·v4423 ····invoke-static·{p1},·Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
432 ····:try_end_5 
433 ····.catchall·{:try_start_5·..·:try_end_5}·:catchall_1 
  
434 ····:try_start_6424 ····move-result-wide·p0
435 ····throw·p0 
436 ····:try_end_6 
437 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_6·..·:try_end_6}·:catch_0 
  
438 ····:catch_0 
439 ····:cond_4 
440 ····:goto_1425 ····:goto_1
441 ····return-wide·v0426 ····const-wide/16·v4,·0x3e8
442 .end·method 
  
443 .method·static·parseSubSeconds(Ljava/lang/String;)J 
444 ····.locals·6 
  
445 ····.line·160 
446 ····:try_start_0 
447 ····invoke-virtual·{p0},·Ljava/lang/String;->length()I 
  
448 ····move-result·v0 
  
449 ····const/4·v1,·0x3 
  
450 ····invoke-static·{v0,·v1},·Ljava/lang/Math;->min(II)I 
  
451 ····move-result·v0427 ····cmp-long·p2,·p0,·v4
  
452 ····const/4·v2,·0x0428 ····if-lez·p2,·:cond_3
  
453 ····.line·161 
454 ····invoke-virtual·{p0,·v2,·v0},·Ljava/lang/String;->substring(II)Ljava/lang/String; 
  
455 ····move-result-object·p0 
  
456 ····invoke-static·{p0},·Ljava/lang/Long;->parseLong(Ljava/lang/String;)J 
  
457 ····move-result-wide·v2 
458 ····:try_end_0 
459 ····.catch·Ljava/lang/NumberFormatException;·{:try_start_0·..·:try_end_0}·:catch_0 
  
460 ····:goto_0 
461 ····if-ge·v0,·v1,·:cond_0 
  
462 ····const-wide/16·v4,·0xa429 ····const-wide/16·v4,·0xa
  
463 ····mul-long/2addr·v2,·v4430 ····.line·151
 431 ····div-long/2addr·p0,·v4
 432 ····:try_end_5
 433 ····.catch·Ljava/lang/NumberFormatException;·{:try_start_5·..·:try_end_5}·:catch_0
 434 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_5·..·:try_end_5}·:catch_1
  
464 ····add-int/lit8·v0,·v0,·0x1435 ····goto·:goto_1
  
465 ····goto·:goto_0436 ····:cond_3
 437 ····add-long/2addr·v2,·p0
  
466 ····:cond_0438 ····:catch_0
 439 ····:cond_4
467 ····return-wide·v2440 ····return-wide·v2
  
468 ····:catch_0441 ····:catchall_1
469 ····const-wide/16·v0,·0x0442 ····move-exception·p0
  
 443 ····.line·134
 444 ····:try_start_6
 445 ····monitor-exit·v4
 446 ····:try_end_6
 447 ····.catchall·{:try_start_6·..·:try_end_6}·:catchall_1
  
 448 ····:try_start_7
 449 ····throw·p0
 450 ····:try_end_7
 451 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_7·..·:try_end_7}·:catch_1
  
 452 ····:catch_1
 453 ····:cond_5
 454 ····:goto_2
470 ····return-wide·v0455 ····return-wide·v0
471 .end·method456 .end·method