[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-openjfx-dev
Subject:    Integrated: 8280369: native library cache should be platform/arch specific
From:       Glavo <duke () openjdk ! java ! net>
Date:       2022-03-29 12:43:49
Message-ID: VB5tyq_cKKDfm-pp5cK8ezCBoafTxTodsDEyVa3n7T0=.fb369e77-a468-4245-9dfc-9085f178fe01 () github ! com
[Download RAW message or body]

On Fri, 25 Mar 2022 18:12:23 GMT, Glavo <duke@openjdk.java.net> wrote:

> Currently, OpenJFX extracts the native library into a local folder and loads it \
> when it is not part of the JRE. 
> Now we have a notable problem with the fact that a platform may actually run \
> programs of multiple CPU architectures. 
> Most commonly, 32-bit x86 applications can be executed on Windows AMD64. In \
> addition to this, ARM machines may also execute AMD64 programs by transpiling. 
> For OpenJFX of different architectures on the same system, their native libraries \
> have the same file name, but their contents are different. Since they will try to \
> unpack the native library into the same folder, this will cause file conflicts. 
> A practical example is when I run the same JavaFX application with both 32-bit and \
> 64-bit Java on a Windows AMD64 platform, and the application that starts later \
> crashes because it cannot unzip the native libraries: 
> Crash logs (The length exceeds the GitHub limit): \
> https://paste.ubuntu.com/p/NZBK3pNrh7/ 
> Here I avoid the problem by adding `os.arch` to the cache path. 
> 
> I ran the tests on Ubuntu 20.04 after the modification and no tests were broken.

This pull request has now been integrated.

Changeset: a0db4730
Author:    Glavo <zjx001202@gmail.com>
Committer: Johan Vos <jvos@openjdk.org>
URL:       https://git.openjdk.java.net/jfx/commit/a0db473043167d546973e8293e3f208cb1f59f12
                
Stats:     5 lines in 1 file changed: 2 ins; 0 del; 3 mod

8280369: native library cache should be platform/arch specific

Reviewed-by: jvos

-------------

PR: https://git.openjdk.java.net/jfx/pull/762


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic