nakanotti / CocoaInput

A best way to input characters with native mac IM in Minecraft
https://minecraft.curseforge.com/projects/cocoainput
Other
53 stars 8 forks source link

1.19.3 で看板を立てると例外で落ちる #9

Closed nakanotti closed 1 year ago

nakanotti commented 1 year ago

Describe the bug 1.19.3 で看板を立てると例外で落ちる。 1.19.3用に別途対応が必要。

Describe the environment

To Reproduce Steps to reproduce the behavior:

  1. Put sign board.
  2. Push Esc
  3. Application down

Logs SignEditScreen を開いた時に例外スローするが、ここでは落ちず。

com.sun.jna.Native$1 uncaughtException
JNA: Callback jp.axer.cocoainput.arch.win.WinController$3@511e1d04 threw the following exception
java.lang.NoSuchFieldError: field_3029
    at jp.axer.cocoainput.wrapper.SignEditScreenWrapper.getRect(SignEditScreenWrapper.java:62)
    at jp.axer.cocoainput.arch.win.WinController$3.invoke(WinController.java:47)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at com.sun.jna.CallbackReference$DefaultCallbackProxy.invokeCallback(CallbackReference.java:585)
    at com.sun.jna.CallbackReference$DefaultCallbackProxy.callback(CallbackReference.java:616)
    at com.sun.jna.Native.invokeVoid(Native Method)
    at com.sun.jna.Function.invoke(Function.java:415)
    at com.sun.jna.Function.invoke(Function.java:361)
    at com.sun.jna.Library$Handler.invoke(Library.java:265)
    at jdk.proxy2/jdk.proxy2.$Proxy36.set_focus(Unknown Source)
    at jp.axer.cocoainput.arch.win.WinIMEOperator.setFocused(WinIMEOperator.java:35)
    at jp.axer.cocoainput.wrapper.SignEditScreenWrapper.<init>(SignEditScreenWrapper.java:23)
(省略)

閉じた時に NoSuchFieldError 例外発生して、アプリケーションが落ちる。

(省略)
Caused by: java.lang.NoSuchFieldError: field_3031
    at jp.axer.cocoainput.wrapper.SignEditScreenWrapper.getText(SignEditScreenWrapper.java:33)
    at jp.axer.cocoainput.plugin.IMEReceiver.insertText(IMEReceiver.java:23)
    at jp.axer.cocoainput.arch.win.WinIMEOperator.setFocused(WinIMEOperator.java:39)
    at jp.axer.cocoainput.arch.win.WinController.screenOpenNotify(WinController.java:96)
    at jp.axer.cocoainput.CocoaInput.distributeScreen(CocoaInput.java:65)
    at jp.axer.cocoainput.loader.FabricLoader.onChangeScreen(FabricLoader.java:31)
(省略)

Additional context none.

nakanotti commented 1 year ago

https://github.com/nakanotti/CocoaInput/pull/10#issue-1505694114 にて修正。 プレビューバイナリ準備中。

nakanotti commented 1 year ago

プレビューバイナリはこちら。 https://github.com/nakanotti/CocoaInput/releases/tag/4.0.6-PREVIEW1

不具合があれば、コメントください。

nakanotti commented 1 year ago

プレビューバイナリで問題は発生していないため、CLOSE。