codebytere / codebytere/node-mac-permissions

app that was built in macOS 14.5.2(intel silicon) crashes in macOS 11.x

Đang mở
#71 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Objective-C++
Star
240
Fork
49
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

macOS 14.5.2(intel silicon)
electron@19.1.9
node-mac-permissions@2.3.0
electron-builder@23.6.0
electron-rebuild@3.2.7

when the app is built in macOS@13.2(intel silicon), it works well in all the Mac. But after I upgrade my mac version to 14.5.2, the progress of building also works well, after I install the built app and launch it, the app crashes in the macOS@11.x but works well higher macOS@11.x:
```
Process: EC [22882]
Path: /Applications/EC.app/Contents/MacOS/EC
Identifier: com.ec.ECForMac
Version: 1.4.7-alpha.0 (1.4.7-alpha.0)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: EC [22882]
User ID: 501

Date/Time: 2024-01-22 16:47:52.350 +0800
OS Version: macOS 11.5.2 (20G95)
Report Version: 12
Bridge OS Version: 5.5 (18P4759a)
Anonymous UUID: A527D034-2974-006D-4C44-6FE02F204A36

Sleep/Wake UUID: 7043F401-D60E-4A40-90C1-FBD57AA95164

Time Awake Since Boot: 1200000 seconds
Time Since Wake: 11000 seconds

System Integrity Protection: enabled

Crashed Thread: 0 CrBrowserMain Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: EXC_I386_GPFLT
Exception Note: EXC_CORPSE_NOTIFY

Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [22882]

Thread 0 Crashed:: CrBrowserMain Dispatch queue: com.apple.main-thread
0 permissions.node 0x0000000114d70000 0x114d70000 + 0
1 com.github.Electron.framework 0x00000001066e5214 v8::internal::Accessors::MakeAccessor(v8::internal::Isolate*, v8::internal::Handle, void (*)(v8::Local, v8::PropertyCallbackInfo const&), void (*)(v8::Local, v8::Local, v8::PropertyCallbackInfo const&)) + 12116
2 ??? 0x0000002537f0c038 0 + 159852314680
3 ??? 0x0000002537e8be23 0 + 159851789859
4 ??? 0x0000002537e8be23 0 + 159851789859
5 ??? 0x0000002537e8be23 0 + 159851789859
6 ??? 0x0000002537ec4212 0 + 159852020242
7 ??? 0x0000002537e8be23 0 + 159851789859
8 ??? 0x0000002537f5c956 0 + 159852644694
9 ??? 0x0000002537e898b2 0 + 159851780274
10 ??? 0x0000002537fad636 0 + 159852975670
11 ??? 0x0000002537e8be23 0 + 159851789859
12 ??? 0x0000002537e8be23 0 + 159851789859
13 ??? 0x00000025300f6c80 0 + 159720107136
14 ??? 0x0000002537ec4212 0 + 159852020242
15 ??? 0x000000253012aad7 0 + 159720319703
16 ??? 0x0000002537f5c956 0 + 159852644694
17 ??? 0x0000002537e898b2 0 + 159851780274
18 ??? 0x000000253012aea9 0 + 159720320681
19 ??? 0x00000025300f5a65 0 + 159720102501
20 ??? 0x00000025301390be 0 + 159720378558
21 ??? 0x000000253018e9e7 0 + 159720729063
22 ??? 0x0000002537e8a39c 0 + 159851783068
23 ??? 0x0000002537e8a0c7 0 + 159851782343
24 com.github.Electron.framework 0x000000010679db78 v8::internal::Execution::Call(v8::internal::Isolate*, v8::internal::Handle, v8::internal::Handle, int, v8::internal::Handle*) + 664
25 com.github.Electron.framework 0x00000001066904a7 v8::Function::Call(v8::Local, v8::Local, int, v8::Local*) + 599
26 com.github.Electron.framework 0x000000010bafaf9d node::CallbackScope::~CallbackScope() + 2877
27 com.github.Electron.framework 0x000000010bafb280 node::MakeCallback(v8::Isolate*, v8::Local, v8::Local, int, v8::Local*, node::async_context) + 192
28 com.github.Electron.framework 0x00000001056a23ed v8::CodeEvent::GetScriptName() + 171693
29 com.github.Electron.framework 0x00000001055f37cd v8::CodeEventHandler::~CodeEventHandler() + 346141
30 com.github.Electron.framework 0x00000001055e05cd v8::CodeEventHandler::~CodeEventHandler() + 267805
31 com.github.Electron.framework 0x00000001055e06a6 v8::CodeEventHandler::~CodeEventHandler() + 268022
32 com.github.Electron.framework 0x0000000105615dca v8::CodeEvent::GetCodeSize() + 4138
33 com.github.Electron.framework 0x000000010820bd41 node::AsyncResource::get_async_id() const + 6276337
34 com.github.Electron.framework 0x00000001056160cb v8::CodeEvent::GetCodeSize() + 4907
35 com.github.Electron.framework 0x0000000108770090 node::AsyncResource::get_async_id() const + 11929664
36 com.github.Electron.framework 0x00000001087743d7 node::AsyncResource::get_async_id() const + 11946887
37 com.github.Electron.framework 0x0000000108771ccd node::AsyncResource::get_async_id() const + 11936893
38 com.github.Electron.framework 0x000000010898f298 node::AsyncResource::get_async_id() const + 14154312
39 com.github.Electron.framework 0x0000000108452cbd node::AsyncResource::get_async_id() const + 8664173
40 com.github.Electron.framework 0x000000010847181b node::AsyncResource::get_async_id() const + 8789963
41 com.github.Electron.framework 0x00000001084af37c node::AsyncResource::get_async_id() const + 9042732
42 com.github.Electron.framework 0x000000010538890a 0x1051fe000 + 1616138
43 com.github.Electron.framework 0x00000001084aeadf node::AsyncResource::get_async_id() const + 9040527
44 com.apple.CoreFoundation 0x00007fff2052594c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
45 com.apple.CoreFoundation 0x00007fff205258b4 __CFRunLoopDoSource0 + 180
46 com.apple.CoreFoundation 0x00007fff20525634 __CFRunLoopDoSources0 + 242
47 com.apple.CoreFoundation 0x00007fff2052405c __CFRunLoopRun + 893
48 com.apple.CoreFoundation 0x00007fff2052361c CFRunLoopRunSpecific + 563
49 com.apple.HIToolbox 0x00007fff28769a83 RunCurrentEventLoopInMode + 292
50 com.apple.HIToolbox 0x00007fff287697e5 ReceiveNextEventCommon + 587
51 com.apple.HIToolbox 0x00007fff28769583 _BlockUntilNextEventMatchingListInModeWithFilter + 70
52 com.apple.AppKit 0x00007fff22d2b172 _DPSNextEvent + 864
53 com.apple.AppKit 0x00007fff22d29945 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1364
54 com.apple.AppKit 0x00007fff22d1bc69 -[NSApplication run] + 586
55 com.github.Electron.framework 0x00000001084afc76 node::AsyncResource::get_async_id() const + 9045030
56 com.github.Electron.framework 0x00000001084ae581 node::AsyncResource::get_async_id() const + 9039153
57 com.github.Electron.framework 0x00000001084724ca node::AsyncResource::get_async_id() const + 8793210
58 com.github.Electron.framework 0x000000010843be1f node::AsyncResource::get_async_id() const + 8570319
59 com.github.Electron.framework 0x00000001076e6182 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) + 3879890
60 com.github.Electron.framework 0x00000001076e7a62 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) + 3886258
61 com.github.Electron.framework 0x00000001076e3964 v8::internal::SetupIsolateDelegate::SetupHeap(v8::internal::Heap*) + 3869620
62 com.github.Electron.framework 0x0000000105816f51 v8::internal::compiler::BasicBlock::set_loop_header(v8::internal::compiler::BasicBlock*) + 15681
63 com.github.Electron.framework 0x000000010581808e v8::internal::compiler::BasicBlock::set_loop_header(v8::internal::compiler::BasicBlock*) + 20094
64 com.github.Electron.framework 0x0000000105817b7f v8::internal::compiler::BasicBlock::set_loop_header(v8::internal::compiler::BasicBlock*) + 18799
65 com.github.Electron.framework 0x00000001058169d4 v8::internal::compiler::BasicBlock::set_loop_header(v8::internal::compiler::BasicBlock*) + 14276
66 com.github.Electron.framework 0x0000000105816af6 v8::internal::compiler::BasicBlock::set_loop_header(v8::internal::compiler::BasicBlock*) + 14566
67 com.github.Electron.framework 0x00000001055562b8 ElectronMain + 152
68 libdyld.dylib 0x00007fff20447f3d start + 1
```

I didn't change any code. Then I find another mac that version is 13.x and build the app, everything is OK. So I think there is a
compatbility problem in the output of permissions.node in macOS@14.x

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện bản build trên macOS 14.5.2 Intel và khởi chạy nó trên macOS 11.5.2, sau đó kiểm tra native module permissions.node dựa trên crash trace được cung cấp. Công việc được xem là hoàn tất khi ứng dụng Electron đã đóng gói khởi chạy mà không bị crash trên phiên bản macOS bị ảnh hưởng, đồng thời vẫn giữ nguyên hành vi permissions của ứng dụng.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
electron, macos, node.js
Lĩnh vực
desktop, operating-systems
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.