Bug 26570 - [Android] Possible bug in mono runtime: runtime check missing in FindViewById<T> function
Summary: [Android] Possible bug in mono runtime: runtime check missing in FindViewById...
Alias: None
Product: Android
Classification: Xamarin
Component: Mono runtime / AOT Compiler ()
Version: 4.20.0
Hardware: PC Mac OS
: Lowest normal
Target Milestone: ---
Assignee: Jonathan Pryor
Depends on:
Reported: 2015-01-29 15:03 UTC by Dominic N [MSFT]
Modified: 2017-07-05 21:58 UTC (History)
3 users (show)

Tags: bb
Is this bug a regression?: ---
Last known good build:

Logs and test project (210.62 KB, application/zip)
2015-01-29 15:03 UTC, Dominic N [MSFT]

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Dominic N [MSFT] 2015-01-29 15:03:25 UTC
Created attachment 9566 [details]
Logs and test project

## Overview

A customer reports that they're experiencing a possible bug in the Android Mono Runtime with the following error:

monodroid-glue.c:1057: gc_cleanup_after_java_collection: assertion "!sccs [i]->is_alive" failed

They are experiencing this issue while testing their app on a Samsung Galaxy S5 (it doesn't happen on a Nexus 7 or in emulators). They indicate the crashes are likely the result of the following: they use a ListView in a Fragment's layout and expected a specialized ListView in the generic FindViewById<T> function. Everything worked correctly until the GC tried to remove that Fragment.

## Error

Part of the error is below:

> F/libc (16954): monodroid-glue.c:1037: gc_cleanup_after_java_collection: assertion "sccs [i]->is_alive" failed
> F/libc (16954): Fatal signal 6 (SIGABRT) at 0x0000423a (code=-6), thread 17324 (eam.UIPrototype)
> I/DEBUG ( 252): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
> I/DEBUG ( 252): Build fingerprint: 'samsung/kltexx/klte:4.4.2/KOT49H/G900FXXU1ANG2:user/release-keys'
> I/DEBUG ( 252): Revision: '14'
> I/DEBUG ( 252): pid: 16954, tid: 17324, name: eam.UIPrototype >>> AppName.UIPrototype <<<
> I/DEBUG ( 252): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
> I/DEBUG ( 252): Abort message: 'monodroid-glue.c:1037: gc_cleanup_after_java_collection: assertion "sccs [i]->is_alive" failed'

More information can be found here: https://forums.xamarin.com/discussion/31498/crashes-on-samsung-galaxy-s5

## Steps to reproduce

The customer has provided a sample project that was intended to reproduce the error on a small scale, but he couldn't get it to duplicate the crash. The customer is currently unable to provide access to the original project.

## Additional information

The provided sample app shows the following: https://gist.github.com/heiligerdankgesang/3ee2bd2363b9ff68565e

And the customer indicates that it shouldn't be possible to retrieve a vanilla ListView-instance as DerivedListView in the code.

Any assistance moving this forward would be greatly appreciated.
Comment 2 Dominic N [MSFT] 2015-02-02 15:59:06 UTC
Issue cannot be replicated with given information. In order to progress, a sample project exhibiting exact issue is needed.
Comment 3 Chris Hardy [MSFT] 2017-07-05 17:50:52 UTC
Because we have not received a reply to our request for more information we are closing this issue. If you are still encountering this issue, please reopen the ticket with the requested information. Thanks!