xamarin/Xamarin.Forms

[iOS] App crashes with SIGSEV when tapping the "More" tab when a page from the "More" tab is already selected.

オープン

#3,358 opened on 2018/07/20

 (3 件のコメント) (1 件のリアクション) (0 人の担当者)C# (1,926 件のフォーク)batch import
e/6 :clock6:help wantedi/highinactivep/iOS 🍎t/bug :bug:up-for-grabs

Repository metrics

Stars
 (5,644 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

Description

Copied from 3 year old bugzilla bug: https://bugzilla.xamarin.com/show_bug.cgi?id=28379#c3

Confirmed this is still an issue with Forms version 3.1.0.637273

With a TabbedPage as the main page, and having enough child pages of the TabbedPage so there is a "More" tab, tapping the "More" tab when a page from the "More" tab is already selected causes a crash with the following stack trace:

critical: Stacktrace:
critical:   at <unknown> <0xffffffff>
critical:   at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) <IL 0x00095, 0xffffffff>
critical:   at UIKit.UIApplication.Main (string[],intptr,intptr) [0x00005] in /Developer/MonoTouch/Source/monotouch/src/UIKit/UIApplication.cs:62
critical:   at UIKit.UIApplication.Main (string[],string,string) [0x00038] in /Developer/MonoTouch/Source/monotouch/src/UIKit/UIApplication.cs:46
critical:   at TestTabbedPage.iOS.Application.Main (string[]) [0x00008] in /Users/apple/Downloads/TestTabbedPage/TestTabbedPage/TestTabbedPage.iOS/Main.cs:13
critical:   at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) <IL 0x00050, 0xffffffff>
critical: 
Native stacktrace:
critical: 
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

This is only when each child page of the TabbedPage is wrapped in a NavigationPage. Removing the NavigationPage wrapper for the child pages (specifically the child pages in the "More" tab) does resolve this issue.

Steps to Reproduce

  1. Load attached test project and run to an iOS simulator or device.

  2. Tap the "More" tab.

  3. Select a page from the list.

  4. Tap the "More" tab again.

Expected Behavior

The list of pages in the "More" tab will be displayed again

Actual Behavior

The app crashes with the above SIGSEV error

Basic Information

  • Version with issue: 3.1.0.637273
  • Last known good version: None. Bug initially filed against 1.4.1-Pre1
  • IDE: Visual Studio for Mac
  • Platform Target Frameworks:
    • iOS: 11.12.0.4

Reproduction Link

TabbedPageTest.zip

コントリビューターガイド