Skip to content

Listener crashes the renderer process in Electron sometimes #14

Open
@KishanBagaria

Description

@KishanBagaria

So I can't repro this consistently but it happens when a contact is mutated:

/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper (Renderer).app/Contents/MacOS/Electron Helper (Renderer)[13409]: ../../third_party/electron_node/src/node_api.cc:1064:napi_status napi_call_threadsafe_function(napi_threadsafe_function, void *, napi_threadsafe_function_call_mode): Assertion `(func) != nullptr' failed.
 1: 0x115de2135 node::Buffer::New(v8::Isolate*, char*, unsigned long, void (*)(char*, void*), void*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 2: 0x115de1ebf node::Buffer::New(v8::Isolate*, char*, unsigned long, void (*)(char*, void*), void*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 3: 0x115dbe283 napi_call_threadsafe_function [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 4: 0x11b7e7897 invocation function for block in SetupListener(Napi::CallbackInfo const&) [/Users/kishan/Dropbox/Kishan/foo/node_modules/node-mac-contacts/build/Release/contacts.node]
 5: 0x7fff35262864 -[__NSObserver _doit:] [/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation]
 6: 0x7fff32bf09cf __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
 7: 0x7fff32bf0963 ___CFXRegistrationPost1_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
 8: 0x7fff32bf08d8 _CFXRegistrationPost1 [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
 9: 0x7fff32bf0544 ___CFXNotificationPost_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
10: 0x7fff32bc06bd -[_CFXNotificationRegistrar find:object:observer:enumerator:] [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
11: 0x7fff32bbfb69 _CFXNotificationPost [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
12: 0x7fff35236866 -[NSNotificationCenter postNotificationName:object:userInfo:] [/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation]
13: 0x7fff4564edfe -[ABAddressBookChangesNotifier nts_SendAddressBookDidSaveNotificationsWithPublicUserInfo:privateUserInfo:privateTablesChanged:] [/System/Library/PrivateFrameworks/AddressBookCore.framework/Versions/A/AddressBookCore]
14: 0x7fff455d7b68 -[ABAddressBookChangesNotifier myContextDidSave:] [/System/Library/PrivateFrameworks/AddressBookCore.framework/Versions/A/AddressBookCore]
15: 0x7fff32bf09cf __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
16: 0x7fff32bf0963 ___CFXRegistrationPost1_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
17: 0x7fff32bf08d8 _CFXRegistrationPost1 [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
18: 0x7fff32bf0544 ___CFXNotificationPost_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
19: 0x7fff32bc06bd -[_CFXNotificationRegistrar find:object:observer:enumerator:] [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
20: 0x7fff32bbfb69 _CFXNotificationPost [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
21: 0x7fff35236866 -[NSNotificationCenter postNotificationName:object:userInfo:] [/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation]
22: 0x7fff326f32b3 -[NSManagedObjectContext(_NSInternalNotificationHandling) _postContextDidSaveNotificationWithUserInfo:] [/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData]
23: 0x7fff326b161f -[NSManagedObjectContext(_NSInternalAdditions) _didSaveChanges] [/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData]
24: 0x7fff326a6d71 -[NSManagedObjectContext save:] [/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData]
25: 0x7fff455d35f3 -[ABManagedObjectContext save:] [/System/Library/PrivateFrameworks/AddressBookCore.framework/Versions/A/AddressBookCore]
26: 0x7fff31fb4126 -[CNCDSaveRequestExecutor executeSaveRequest:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
27: 0x7fff31fb3d89 __71+[CNCDSaveRequestExecutor executeSaveRequest:inPersistenceStack:error:]_block_invoke [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
28: 0x7fff49cc527d __70-[CNCDPersistenceContext performBlockAndWaitWithManagedObjectContext:]_block_invoke [/System/Library/PrivateFrameworks/ContactsPersistence.framework/Versions/A/ContactsPersistence]
29: 0x7fff326be789 developerSubmittedBlockToNSManagedObjectContextPerform [/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData]
30: 0x7fff6cae8658 _dispatch_client_callout [/usr/lib/system/libdispatch.dylib]
31: 0x7fff6caf46ec _dispatch_lane_barrier_sync_invoke_and_complete [/usr/lib/system/libdispatch.dylib]
32: 0x7fff326be675 -[NSManagedObjectContext performBlockAndWait:] [/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData]
33: 0x7fff49cc5222 -[CNCDPersistenceContext performBlockAndWaitWithManagedObjectContext:] [/System/Library/PrivateFrameworks/ContactsPersistence.framework/Versions/A/ContactsPersistence]
34: 0x7fff31fb3c15 +[CNCDSaveRequestExecutor executeSaveRequest:inPersistenceStack:error:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
35: 0x7fff31fcb084 -[CNCoreDataMapperX executeSaveRequest:response:authorizationContext:error:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
36: 0x7fff31f74ee5 __83-[CNDataMapperContactStore executeSaveRequest:response:authorizationContext:error:]_block_invoke [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
37: 0x7fff6cd62ba8 os_activity_apply_f [/usr/lib/system/libsystem_trace.dylib]
38: 0x7fff31fb6d6d -[_CNContactsLogger saving:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
39: 0x7fff31f74c68 -[CNDataMapperContactStore executeSaveRequest:response:authorizationContext:error:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
40: 0x11b7e71a8 AddNewContact(Napi::CallbackInfo const&) [/Users/kishan/Dropbox/Kishan/foo/node_modules/node-mac-contacts/build/Release/contacts.node]
41: 0x11b7e9544 Napi::details::CallbackData<Napi::Boolean (*)(Napi::CallbackInfo const&), Napi::Boolean>::Wrapper(napi_env__*, napi_callback_info__*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/node-mac-contacts/build/Release/contacts.node]
42: 0x115da121a napi_create_function [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
43: 0x110c76f1f v8::internal::Accessors::MakeAccessor(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Name>, void (*)(v8::Local<v8::Name>, v8::PropertyCallbackInfo<v8::Value> const&), void (*)(v8::Local<v8::Name>, v8::Local<v8::Value>, v8::PropertyCallbackInfo<v8::Boolean> const&)) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
44: 0x110c76441 v8::internal::Accessors::MakeAccessor(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Name>, void (*)(v8::Local<v8::Name>, v8::PropertyCallbackInfo<v8::Value> const&), void (*)(v8::Local<v8::Name>, v8::Local<v8::Value>, v8::PropertyCallbackInfo<v8::Boolean> const&)) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
45: 0x110c75ad2 v8::internal::Accessors::MakeAccessor(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Name>, void (*)(v8::Local<v8::Name>, v8::PropertyCallbackInfo<v8::Value> const&), void (*)(v8::Local<v8::Name>, v8::Local<v8::Value>, v8::PropertyCallbackInfo<v8::Boolean> const&)) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
46: 0x1116a8878 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper (Renderer).app/Contents/MacOS/Electron Helper (Renderer)[22797]: ../../third_party/electron_node/src/node_api.cc:1064:napi_status napi_call_threadsafe_function(napi_threadsafe_function, void *, napi_threadsafe_function_call_mode): Assertion `(func) != nullptr' failed.
 1: 0x114da9135 node::Buffer::New(v8::Isolate*, char*, unsigned long, void (*)(char*, void*), void*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 2: 0x114da8ebf node::Buffer::New(v8::Isolate*, char*, unsigned long, void (*)(char*, void*), void*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 3: 0x114d85283 napi_call_threadsafe_function [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 4: 0x11b32f897 invocation function for block in SetupListener(Napi::CallbackInfo const&) [/Users/kishan/Dropbox/Kishan/foo/node_modules/node-mac-contacts/build/Release/contacts.node]
 5: 0x7fff35262864 -[__NSObserver _doit:] [/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation]
 6: 0x7fff32bf09cf __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
 7: 0x7fff32bf0963 ___CFXRegistrationPost1_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
 8: 0x7fff32bf08d8 _CFXRegistrationPost1 [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
 9: 0x7fff32bf0544 ___CFXNotificationPost_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
10: 0x7fff32bc06bd -[_CFXNotificationRegistrar find:object:observer:enumerator:] [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
11: 0x7fff32bbfb69 _CFXNotificationPost [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
12: 0x7fff35236866 -[NSNotificationCenter postNotificationName:object:userInfo:] [/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation]
13: 0x7fff31f7aa8e __131-[CNChangesNotifierProxy receiveNotificationName:fromSender:saveIdentifier:userInfo:calledFromNotifierQueue:isFromExternalProcess:]_block_invoke_3 [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
14: 0x7fff6cd62ba8 os_activity_apply_f [/usr/lib/system/libsystem_trace.dylib]
15: 0x7fff31fb785d -[_CNContactsLogger postingNotification:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
16: 0x7fff31f7aa07 __131-[CNChangesNotifierProxy receiveNotificationName:fromSender:saveIdentifier:userInfo:calledFromNotifierQueue:isFromExternalProcess:]_block_invoke_2 [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
17: 0x7fff31f7a509 -[CNChangesNotifierProxy receiveNotificationName:fromSender:saveIdentifier:userInfo:calledFromNotifierQueue:isFromExternalProcess:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
18: 0x7fff31f7a231 __58-[CNChangesNotifierProxy receiveExternalNotificationName:]_block_invoke [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
19: 0x7fff49c44bba -[_CNMainThreadScheduler performBlock:qualityOfService:] [/System/Library/PrivateFrameworks/ContactsFoundation.framework/Versions/A/ContactsFoundation]
20: 0x7fff49c6b7b2 -[CNCoalescingTimer nts_letSomeoneIn] [/System/Library/PrivateFrameworks/ContactsFoundation.framework/Versions/A/ContactsFoundation]
21: 0x7fff49c3d0b0 CNRunWithLock [/System/Library/PrivateFrameworks/ContactsFoundation.framework/Versions/A/ContactsFoundation]
22: 0x7fff49c6b69e -[CNCoalescingTimer handleEvent] [/System/Library/PrivateFrameworks/ContactsFoundation.framework/Versions/A/ContactsFoundation]
23: 0x7fff31f7a17a -[CNChangesNotifierProxy receiveExternalNotificationName:] [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
24: 0x7fff31f7af75 CNChangesNotifierCFNotificationCenterCallback [/System/Library/Frameworks/Contacts.framework/Versions/A/Contacts]
25: 0x7fff32bf09cf __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
26: 0x7fff32bf0963 ___CFXRegistrationPost1_block_invoke [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
27: 0x7fff6cae76c4 _dispatch_call_block_and_release [/usr/lib/system/libdispatch.dylib]
28: 0x7fff6cae8658 _dispatch_client_callout [/usr/lib/system/libdispatch.dylib]
29: 0x7fff6caf3cab _dispatch_main_queue_callback_4CF [/usr/lib/system/libdispatch.dylib]
30: 0x7fff32c3a041 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
31: 0x7fff32bf9e47 __CFRunLoopRun [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
32: 0x7fff32bf8ffe CFRunLoopRunSpecific [/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation]
33: 0x7fff3528d2a8 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] [/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation]
34: 0x111682e51 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
35: 0x111681bb2 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
36: 0x1116324f3 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
37: 0x11160a3f3 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
38: 0x114b82a89 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
39: 0x11087c489 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
40: 0x112dfcbd8 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
41: 0x10fafd4f4 ElectronInitializeICUandStartNode [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
42: 0x10edd5794 ElectronMain [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
43: 0x10ed928a5  [/Users/kishan/Dropbox/Kishan/foo/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper (Renderer).app/Contents/MacOS/Electron Helper (Renderer)]
44: 0x7fff6cb41cc9 start [/usr/lib/system/libdyld.dylib]
45: 0x15

process.versions:

ares: "1.15.0"
brotli: "1.0.7"
chrome: "83.0.4103.24"
electron: "9.0.0-beta.19"
http_parser: "2.8.0"
icu: "65.1"
llhttp: "2.0.1"
modules: "80"
napi: "5"
nghttp2: "1.40.0"
node: "12.14.1"
openssl: "1.1.0"
unicode: "12.1"
uv: "1.33.1"
v8: "8.3.110.5-electron.0"
zlib: "1.2.11"

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions