Skip to content

EXC_Bad_Access on GULMutableDictionnary (Google Utilities) #2439

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
ghost opened this issue Feb 25, 2019 · 3 comments
Closed

EXC_Bad_Access on GULMutableDictionnary (Google Utilities) #2439

ghost opened this issue Feb 25, 2019 · 3 comments

Comments

@ghost
Copy link

ghost commented Feb 25, 2019

[REQUIRED] Step 2: Describe your environment

  • Xcode version: XCode 10.1
  • Firebase SDK version: 5.15.0
  • Firebase Component: Auth, Core, Database, Firestore, Messaging, Storage, Performance
  • Component version: 5.15.0

[REQUIRED] Step 3: Describe the problem

When running our app in debug mode on the Simulator (tested iPhone 8), the app crashes right away due to an Exc_Bad_Access error. Based on the XCode log report the issue seems to be here in Google Utilities/ Network/ GULMutableDictionnary:

- (void)removeObjectForKey:(id)key { dispatch_async(_queue, ^{ [self->_objects removeObjectForKey:key]; }); }

I noticed a memory corruption bug in our app in production that highlighted a pointer being freed that was not allocated. Given that the above happens at launch, it could very well be the same issue (i.e., object not initiated but being deallocated).

Steps to reproduce:

Running firebase SKD v5.15.0 and launching an app on iPhone 8 simulator. Given the memory corruption issue noticed in production, I turned on the Zombie Object debugging in my debug scheme, which is the one I run. When I turn Zombie Object debugging off in my scheme, the app runs fine (but I suspect the memory corruption still happens, just undetected).

Problem only occurs when running on the Xcode simulator (tried using iPhone 8 simulator), NOT on the physical device. Only tested in debug mode.

Relevant Code:

Not particular code to reproduce the problem. The EXC_bad_Access is being triggered in the GoogleUtilities pod and highlight the following code (line 61):
- (void)removeObjectForKey:(id)key { dispatch_async(_queue, ^{ [self->_objects removeObjectForKey:key]; <== Line highlighted }); }

Thanks for the help!

@ryanwilson
Copy link
Member

Thanks for the report @fschaus - can you please share a Podfile or list of frameworks you're including with the project that causes this to happen?

A stack trace would be extremely helpful as well, giving us the full stack to see where the call to removeObjectForKey: originated from.

If you update to the latest Firebase (5.17.0 as of this writing) does it happen still?

@morganchen12
Copy link
Contributor

This is the same as the new crash reported in the comments in #1624.

@paulb777
Copy link
Member

Closing for staleness. Please open a new issue if this reoccurs in a recent release.

@firebase firebase locked and limited conversation to collaborators Oct 21, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants