HumbleUI / JWM

Cross-platform window management and OS integration library for Java
Apache License 2.0
561 stars 44 forks source link

Crash on macOS #107

Closed SergeevPavel closed 2 years ago

SergeevPavel commented 3 years ago

OS: macOS 11.2.3 Version: https://github.com/JetBrains/JWM/commit/56449f9f4b6c84334ee4c768cf6d4cf487660b1a Steps to reproduce:

  1. ./script/run.py
  2. Create multiple windows by cmd+n
  3. Close some windows by cmd-w hs_err_pid11437.log
tonsky commented 3 years ago
Stack: [0x000000016d438000,0x000000016dc34000],  sp=0x000000016dc2ec90,  free space=8155k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libobjc.A.dylib+0x6254]  objc_msgSend+0x34
C  [CoreVideo+0x2860]  CVDisplayLinkStop+0x10
C  [libjwm_arm64.dylib+0xb9ac]  ___ZL19displayLinkCallbackP15__CVDisplayLinkPK11CVTimeStampS3_yPyPv_block_invoke+0x3c
C  [libdispatch.dylib+0x2128]  _dispatch_call_block_and_release+0x20
C  [libdispatch.dylib+0x3ec0]  _dispatch_client_callout+0x14
C  [libdispatch.dylib+0x12314]  _dispatch_main_queue_callback_4CF+0x374
C  [CoreFoundation+0xc4cd8]  __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__+0x10
C  [CoreFoundation+0x836ec]  __CFRunLoopRun+0x9dc
C  [CoreFoundation+0x82598]  CFRunLoopRunSpecific+0x258
C  [HIToolbox+0x30280]  RunCurrentEventLoopInMode+0x124
C  [HIToolbox+0x2fff4]  ReceiveNextEventCommon+0x228
C  [HIToolbox+0x2fdb4]  _BlockUntilNextEventMatchingListInModeWithFilter+0x48
C  [AppKit+0x41660]  _DPSNextEvent+0x344
C  [AppKit+0x40000]  -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]+0x50c
C  [AppKit+0x31e4c]  -[NSApplication run]+0x254
C  [libjwm_arm64.dylib+0x80b0]  Java_org_jetbrains_jwm_App__1nStart+0x20
j  org.jetbrains.jwm.App._nStart()I+0
j  org.jetbrains.jwm.App.start()I+20
j  org.jetbrains.jwm.examples.Example.main([Ljava/lang/String;)V+58
SergeevPavel commented 3 years ago

probably it was related with missing context switches

tonsky commented 3 years ago

Some of it was, but I still have crashes, will investigate further