Clean up time zone handling in MtpUtils::parseDateTime.
The intent here is supposed to be to use local time (which mktime(3) does) unless the string ends 'Z' in which case we're supposed to use UTC. The UTC equivalent of mktime(3) is timegm(3). This code has come to my attention in two ways. Externally it was pointed out that the localtime_r(3) was accessing uninitialized memory leading to unpredicatable results. Internally, this is the only caller of the non-standard mktime_tz --- ironically using it in a way that -- apart from the flakiness caused by the uninitialized variable -- would make it behave like the standard mktime(3). Bug: https://code.google.com/p/android/issues/detail?id=185159 Bug: http://b/15765976 Change-Id: I5f015727c4c08a139ef478fafba5811a9758d5df
Loading
Please register or sign in to comment