|
|
Created:
6 years, 4 months ago by bengr Modified:
6 years, 4 months ago Reviewers:
willchan no longer on Chromium CC:
chromium-reviews, erikwright+watch_chromium.org Base URL:
https://chromium.googlesource.com/chromium/src.git@master Project:
chromium Visibility:
Public. |
DescriptionThis change preents a race on the 'TZ' environ global variable in libc.
This should prevent a crash when base::Time::LocalMidnight calls out to
Time::FromExploded() which invokes mktime(), which relies on the timezone,
which is initialized when initializing libc (bionic on Android).
BUG=390567
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=288544
Patch Set 1 #
Total comments: 2
Patch Set 2 : Addressed comments #
Total comments: 2
Patch Set 3 : Updated comment #Patch Set 4 : Remove from OS_MACOSX #Messages
Total messages: 16 (0 generated)
PTAL
https://codereview.chromium.org/444473002/diff/1/base/time/time_posix.cc File base/time/time_posix.cc (right): https://codereview.chromium.org/444473002/diff/1/base/time/time_posix.cc#newc... base/time/time_posix.cc:33: #if defined(OS_ANDROID) No need for the OS_ANDROID stuff. This bug isn't Android specific, it applies to all posix implementations doing an unsynchronized read/write on the TZ global environment variable.
https://codereview.chromium.org/444473002/diff/1/base/time/time_posix.cc File base/time/time_posix.cc (right): https://codereview.chromium.org/444473002/diff/1/base/time/time_posix.cc#newc... base/time/time_posix.cc:33: #if defined(OS_ANDROID) On 2014/08/05 23:14:48, willchan wrote: > No need for the OS_ANDROID stuff. This bug isn't Android specific, it applies to > all posix implementations doing an unsynchronized read/write on the TZ global > environment variable. Done.
LGTM, I hope this fixes the bug reports. Seems possible. https://codereview.chromium.org/444473002/diff/40001/base/time/time_posix.cc File base/time/time_posix.cc (right): https://codereview.chromium.org/444473002/diff/40001/base/time/time_posix.cc#... base/time/time_posix.cc:34: // the 'TZ' variable in libc. Please update this to reference the bug so people can understand what's going on.
https://codereview.chromium.org/444473002/diff/40001/base/time/time_posix.cc File base/time/time_posix.cc (right): https://codereview.chromium.org/444473002/diff/40001/base/time/time_posix.cc#... base/time/time_posix.cc:34: // the 'TZ' variable in libc. On 2014/08/06 20:43:24, willchan wrote: > Please update this to reference the bug so people can understand what's going > on. Done.
The CQ bit was checked by bengr@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bengr@chromium.org/444473002/60001
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: mac_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu/builds/38769) ios_dbg_simulator on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator...) ios_rel_device on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device/bu...) ios_rel_device_ninja on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device_ni...) mac_chromium_compile_dbg on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_swarming on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
On 2014/08/07 23:21:00, I haz the power (commit-bot) wrote: > FYI, CQ is re-trying this CL (attempt #1). > The failing builders are: > mac_gpu on tryserver.chromium.gpu > (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu/builds/38769) > ios_dbg_simulator on tryserver.chromium.mac > (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator...) > ios_rel_device on tryserver.chromium.mac > (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device/bu...) > ios_rel_device_ninja on tryserver.chromium.mac > (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device_ni...) > mac_chromium_compile_dbg on tryserver.chromium.mac > (http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) > mac_chromium_rel_swarming on tryserver.chromium.mac > (http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...) willchan@, do you know what's going on? We could limit this fix to Android.
I see, the compile error says the LazyInstance isn't used at all on Mac. Move that LazyInstance into the #if !defined(OS_MACOSX) block. On Thu, Aug 7, 2014 at 5:46 PM, <bengr@chromium.org> wrote: > On 2014/08/07 23:21:00, I haz the power (commit-bot) wrote: > >> FYI, CQ is re-trying this CL (attempt #1). >> The failing builders are: >> mac_gpu on tryserver.chromium.gpu >> > > (http://build.chromium.org/p/tryserver.chromium.gpu/ > builders/mac_gpu/builds/38769) > >> ios_dbg_simulator on tryserver.chromium.mac >> > > (http://build.chromium.org/p/tryserver.chromium.mac/ > builders/ios_dbg_simulator/builds/3564) > >> ios_rel_device on tryserver.chromium.mac >> > > (http://build.chromium.org/p/tryserver.chromium.mac/ > builders/ios_rel_device/builds/3568) > >> ios_rel_device_ninja on tryserver.chromium.mac >> > > (http://build.chromium.org/p/tryserver.chromium.mac/ > builders/ios_rel_device_ninja/builds/2456) > >> mac_chromium_compile_dbg on tryserver.chromium.mac >> > > (http://build.chromium.org/p/tryserver.chromium.mac/ > builders/mac_chromium_compile_dbg/builds/3840) > >> mac_chromium_rel_swarming on tryserver.chromium.mac >> > > (http://build.chromium.org/p/tryserver.chromium.mac/ > builders/mac_chromium_rel_swarming/builds/876) > > willchan@, do you know what's going on? We could limit this fix to > Android. > > https://codereview.chromium.org/444473002/ > To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: mac_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu/builds/38871) ios_dbg_simulator on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator...) ios_rel_device on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device/bu...) ios_rel_device_ninja on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device_ni...) mac_chromium_compile_dbg on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_swarming on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by bengr@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/bengr@chromium.org/444473002/80001
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: win_chromium_x64_rel on tryserver.chromium.win (http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
Message was sent while issue was closed.
Change committed as 288544 |