In-Product Help crashes when reading storage configuration |
||||||
Issue descriptionChrome Version: 60.0.3112.7 OS: Android What steps will reproduce the problem? (1) Set up a Chrome variations configuration for In-Product Help (2) Start up Chrome using the command line representation of the config What is the expected result? Configuration would load correctly. What happens instead? Crash on startup. Crash stack for reference: I 6.208s Main Reading native crash info from stdin I 6.208s Main Reading Android symbols from: /usr/local/google/codefast/chromium/src I 6.208s Main Searching for Chrome symbols from within: /usr/local/google/codefast/chromium/src/out-android/Debug/lib.unstripped:/usr/local/google/codefast/chromium/src/out-android/Debug/lib:/usr/local/google/codefast/chromium/src/out-android/Debug I 6.208s Main Using toolchain from: /usr/local/google/codefast/chromium/src/third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi- I 6.208s Main pid: 9096, tid: 9096, name: chromium.chrome >>> org.chromium.chrome <<< I 6.208s Main signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x8 I 6.208s Main r0 3529ae28 r1 517f11cf r2 00000014 r3 517d9a23 I 6.208s Main r4 c17d8dc8 r5 00000004 r6 c17d8dc4 r7 ff92e880 I 6.208s Main r8 ff92e888 r9 c1959850 sl ff92e930 fp c17d8dc8 I 6.208s Main ip bfca4a54 sp ff92e848 lr 00000014 pc c52e9984 I 6.208s Main I 6.208s Main Stack Trace: I 6.209s Main RELADDR FUNCTION FILE:LINE I 6.209s Main v------> size /usr/local/google/codefast/chromium/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/__hash_table:710 I 6.209s Main v------> bucket_count /usr/local/google/codefast/chromium/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/__hash_table:941 I 6.209s Main 002e2984 __insert_unique /usr/local/google/codefast/chromium/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/__hash_table:1760 I 6.209s Main v------> insert /usr/local/google/codefast/chromium/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/unordered_set:495 I 6.209s Main 00b70bef InitializeEventConfig /usr/local/google/codefast/chromium/src/components/feature_engagement_tracker/internal/feature_config_storage_validator.cc:79 I 6.209s Main 00b70b8d InitializeFeatureConfig /usr/local/google/codefast/chromium/src/components/feature_engagement_tracker/internal/feature_config_storage_validator.cc:65 I 6.209s Main 002106fd InitializeFeatures /usr/local/google/codefast/chromium/src/components/feature_engagement_tracker/internal/feature_config_storage_validator.cc:54 I 6.209s Main 0020fd3b Create /usr/local/google/codefast/chromium/src/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl.cc:108 I 6.209s Main 0020fa89 BuildServiceInstanceFor /usr/local/google/codefast/chromium/src/chrome/browser/feature_engagement_tracker/feature_engagement_tracker_factory.cc:51 I 6.209s Main 0000677b BuildServiceInstanceFor /usr/local/google/codefast/chromium/src/components/keyed_service/content/browser_context_keyed_service_factory.cc:92 I 6.209s Main 00006c99 GetServiceForContext /usr/local/google/codefast/chromium/src/components/keyed_service/core/keyed_service_factory.cc:89 I 6.209s Main v------> GetFeatureEngagementTrackerForProfile /usr/local/google/codefast/chromium/src/chrome/browser/android/feature_engagement_tracker/feature_engagement_tracker_factory_android.cc:23 I 6.209s Main 0020f92f Java_org_chromium_chrome_browser_feature_1engagement_1tracker_FeatureEngagementTrackerFactory_nativeGetFeatureEngagementTrackerForProfile /usr/local/google/codefast/chromium/src/out-android/Debug/gen/chrome/browser/jni_headers/chrome/jni/FeatureEngagementTrackerFactory_jni.h:42 I 6.209s Main 0101e159 offset 0xfbb000 /data/app/org.chromium.chrome-2/oat/arm/base.odex
,
May 31 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c91b24c8f2f55e6a71a02c999fa69cfdf0745c3e commit c91b24c8f2f55e6a71a02c999fa69cfdf0745c3e Author: Tommy Nyquist <nyquist@chromium.org> Date: Wed May 31 00:00:25 2017 Fix crash when using Chrome Variations config for In-Product Help When using a valid configuration for In-Product Help, the Android build crashes on startup, because of an issue with ownership in the prod setup code. Basically, a std::unique_ptr<> is used after it has been std::move()'d. This CL moves the initialization of the configuration to be earlier in the process, avoiding the whole problem, and ensuring that the configuration is valid at any time later in the prod construction code. BUG= 727856 Change-Id: Idbee5afe4658a920dbd7070c39389a8957653c93 Reviewed-on: https://chromium-review.googlesource.com/518290 Reviewed-by: David Trainor <dtrainor@chromium.org> Commit-Queue: Tommy Nyquist <nyquist@chromium.org> Cr-Commit-Position: refs/heads/master@{#475699} [modify] https://crrev.com/c91b24c8f2f55e6a71a02c999fa69cfdf0745c3e/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl.cc
,
May 31 2017
,
May 31 2017
Your change meets the bar and is auto-approved for M60. Please go ahead and merge the CL to branch 3112 manually. Please contact milestone owner if you have questions. Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 31 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4d22a3dbfe12f311b7253b483f7c597146fe2891 commit 4d22a3dbfe12f311b7253b483f7c597146fe2891 Author: Tommy Nyquist <nyquist@chromium.org> Date: Wed May 31 00:14:33 2017 Fix crash when using Chrome Variations config for In-Product Help When using a valid configuration for In-Product Help, the Android build crashes on startup, because of an issue with ownership in the prod setup code. Basically, a std::unique_ptr<> is used after it has been std::move()'d. This CL moves the initialization of the configuration to be earlier in the process, avoiding the whole problem, and ensuring that the configuration is valid at any time later in the prod construction code. BUG= 727856 TBR=nyquist@chromium.org (cherry picked from commit c91b24c8f2f55e6a71a02c999fa69cfdf0745c3e) Change-Id: Idbee5afe4658a920dbd7070c39389a8957653c93 Reviewed-on: https://chromium-review.googlesource.com/518290 Reviewed-by: David Trainor <dtrainor@chromium.org> Commit-Queue: Tommy Nyquist <nyquist@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#475699} Reviewed-on: https://chromium-review.googlesource.com/518524 Reviewed-by: Tommy Nyquist <nyquist@chromium.org> Cr-Commit-Position: refs/branch-heads/3112@{#44} Cr-Branched-From: b6460e24cf59f429d69de255538d0fc7a425ccf9-refs/heads/master@{#474897} [modify] https://crrev.com/4d22a3dbfe12f311b7253b483f7c597146fe2891/components/feature_engagement_tracker/internal/feature_engagement_tracker_impl.cc
,
May 31 2017
,
Jun 21 2017
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by nyquist@chromium.org
, May 30 2017