Skip to content

Commit 766ff45

Browse files
committed
Merge
2 parents a0ebad3 + 86a5a83 commit 766ff45

File tree

23 files changed

+435
-361
lines changed

23 files changed

+435
-361
lines changed

make/autoconf/flags.m4

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
2+
# Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
33
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
#
55
# This code is free software; you can redistribute it and/or modify it
@@ -128,16 +128,12 @@ AC_DEFUN([FLAGS_SETUP_MACOSX_VERSION],
128128
# The expected format for <version> is either nn.n.n or nn.nn.nn. See
129129
# /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h
130130
131-
# MACOSX_VERSION_MIN specifies the lowest version of Macosx that the built
131+
# MACOSX_VERSION_MIN specifies the lowest version of macOS that the built
132132
# binaries should be compatible with, even if compiled on a newer version
133133
# of the OS. It currently has a hard coded value. Setting this also limits
134134
# exposure to API changes in header files. Bumping this is likely to
135135
# require code changes to build.
136-
if test "x$OPENJDK_TARGET_CPU_ARCH" = xaarch64; then
137-
MACOSX_VERSION_MIN=11.00.00
138-
else
139-
MACOSX_VERSION_MIN=10.12.0
140-
fi
136+
MACOSX_VERSION_MIN=11.00.00
141137
MACOSX_VERSION_MIN_NODOTS=${MACOSX_VERSION_MIN//\./}
142138
143139
AC_SUBST(MACOSX_VERSION_MIN)

make/conf/jib-profiles.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -446,7 +446,7 @@ var getJibProfilesProfiles = function (input, common, data) {
446446
target_cpu: "x64",
447447
dependencies: ["devkit", "gtest", "pandoc"],
448448
configure_args: concat(common.configure_args_64bit, "--with-zlib=system",
449-
"--with-macosx-version-max=10.12.00",
449+
"--with-macosx-version-max=11.00.00",
450450
"--enable-compatible-cds-alignment",
451451
// Use system SetFile instead of the one in the devkit as the
452452
// devkit one may not work on Catalina.

make/modules/java.desktop/lib/Awt2dLibraries.gmk

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -870,19 +870,6 @@ endif
870870

871871
################################################################################
872872

873-
# MACOSX_METAL_VERSION_MIN specifies the lowest version of Macosx
874-
# that should be used to compile Metal shaders. We support Metal
875-
# pipeline only on Macosx >=10.14. For Macosx versions <10.14 even if
876-
# we enable Metal pipeline using -Dsun.java2d.metal=true, at
877-
# runtime we force it to use OpenGL pipeline. And MACOSX_VERSION_MIN
878-
# for aarch64 has always been >10.14 so we use continue to use
879-
# MACOSX_VERSION_MIN for aarch64.
880-
ifeq ($(OPENJDK_TARGET_CPU_ARCH), xaarch64)
881-
MACOSX_METAL_VERSION_MIN=$(MACOSX_VERSION_MIN)
882-
else
883-
MACOSX_METAL_VERSION_MIN=10.14.0
884-
endif
885-
886873
ifeq ($(call isTargetOs, macosx), true)
887874
SHADERS_SRC := $(TOPDIR)/src/java.desktop/macosx/native/libawt_lwawt/java2d/metal/shaders.metal
888875
SHADERS_SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/native/java.desktop/libosxui
@@ -895,7 +882,7 @@ ifeq ($(call isTargetOs, macosx), true)
895882
OUTPUT_FILE := $(SHADERS_AIR), \
896883
SUPPORT_DIR := $(SHADERS_SUPPORT_DIR), \
897884
COMMAND := $(METAL) -c -std=osx-metal2.0 \
898-
-mmacosx-version-min=$(MACOSX_METAL_VERSION_MIN) \
885+
-mmacosx-version-min=$(MACOSX_VERSION_MIN) \
899886
-o $(SHADERS_AIR) $(SHADERS_SRC), \
900887
))
901888

src/java.desktop/share/legal/libpng.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## libpng v1.6.47
1+
## libpng v1.6.51
22

33
### libpng License
44
<pre>
@@ -9,7 +9,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE
99
PNG Reference Library License version 2
1010
---------------------------------------
1111

12-
Copyright (c) 1995-2025 The PNG Reference Library Authors.
12+
Copyright (C) 1995-2025 The PNG Reference Library Authors.
1313
Copyright (C) 2018-2025 Cosmin Truta
1414
Copyright (C) 1998-2018 Glenn Randers-Pehrson
1515
Copyright (C) 1996-1997 Andreas Dilger
@@ -173,6 +173,7 @@ Authors, for copyright and licensing purposes.
173173
* Lucas Chollet
174174
* Magnus Holmgren
175175
* Mandar Sahastrabuddhe
176+
* Manfred Schlaegl
176177
* Mans Rullgard
177178
* Matt Sarett
178179
* Mike Klein
@@ -184,6 +185,7 @@ Authors, for copyright and licensing purposes.
184185
* Samuel Williams
185186
* Simon-Pierre Cadieux
186187
* Tim Wegner
188+
* Tobias Stoeckmann
187189
* Tom Lane
188190
* Tom Tanner
189191
* Vadim Barkov
@@ -193,8 +195,9 @@ Authors, for copyright and licensing purposes.
193195
- Zixu Wang (王子旭)
194196
* Arm Holdings
195197
- Richard Townsend
196-
* Google Inc.
198+
* Google LLC
197199
- Dan Field
200+
- Dragoș Tiselice
198201
- Leon Scroggins III
199202
- Matt Sarett
200203
- Mike Klein
@@ -204,6 +207,8 @@ Authors, for copyright and licensing purposes.
204207
- GuXiWei (顾希伟)
205208
- JinBo (金波)
206209
- ZhangLixia (张利霞)
210+
* Samsung Group
211+
- Filip Wasil
207212
208213
The build projects, the build scripts, the test scripts, and other
209214
files in the "projects", "scripts" and "tests" directories, have
@@ -214,3 +219,4 @@ of the tools-generated files that are distributed with libpng, have
214219
other copyright owners, and are released under other open source
215220
licenses.
216221
```
222+

src/java.desktop/share/native/libsplashscreen/libpng/CHANGES

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6251,6 +6251,59 @@ Version 1.6.47 [February 18, 2025]
62516251
colorspace precedence rules, due to pre-existing colorspace checks.
62526252
(Reported by Bob Friesenhahn; fixed by John Bowler)
62536253

6254+
Version 1.6.48 [April 30, 2025]
6255+
Fixed the floating-point version of the mDCv setter `png_set_mDCv`.
6256+
(Reported by Mohit Bakshi; fixed by John Bowler)
6257+
Added #error directives to discourage the inclusion of private
6258+
libpng implementation header files in PNG-supporting applications.
6259+
Added the CMake build option `PNG_LIBCONF_HEADER`, to be used as an
6260+
alternative to `DFA_XTRA`.
6261+
Removed the Travis CI configuration files, with heartfelt thanks for
6262+
their generous support of our project over the past five years!
6263+
6264+
Version 1.6.49 [June 12, 2025]
6265+
Added SIMD-optimized code for the RISC-V Vector Extension (RVV).
6266+
(Contributed by Manfred Schlaegl, Dragos Tiselice and Filip Wasil)
6267+
Added various fixes and improvements to the build scripts and to
6268+
the sample code.
6269+
6270+
Version 1.6.50 [July 1, 2025]
6271+
Improved the detection of the RVV Extension on the RISC-V platform.
6272+
(Contributed by Filip Wasil)
6273+
Replaced inline ASM with C intrinsics in the RVV code.
6274+
(Contributed by Filip Wasil)
6275+
Fixed a decoder defect in which unknown chunks trailing IDAT, set
6276+
to go through the unknown chunk handler, incorrectly triggered
6277+
out-of-place IEND errors.
6278+
(Contributed by John Bowler)
6279+
Fixed the CMake file for cross-platform builds that require `libm`.
6280+
6281+
Version 1.6.51 [November 21, 2025]
6282+
Fixed CVE-2025-64505 (moderate severity):
6283+
Heap buffer overflow in `png_do_quantize` via malformed palette index.
6284+
(Reported by Samsung; analyzed by Fabio Gritti.)
6285+
Fixed CVE-2025-64506 (moderate severity):
6286+
Heap buffer over-read in `png_write_image_8bit` with 8-bit input and
6287+
`convert_to_8bit` enabled.
6288+
(Reported by Samsung and <[email protected]>;
6289+
analyzed by Fabio Gritti.)
6290+
Fixed CVE-2025-64720 (high severity):
6291+
Buffer overflow in `png_image_read_composite` via incorrect palette
6292+
premultiplication.
6293+
(Reported by Samsung; analyzed by John Bowler.)
6294+
Fixed CVE-2025-65018 (high severity):
6295+
Heap buffer overflow in `png_combine_row` triggered via
6296+
`png_image_finish_read`.
6297+
(Reported by <[email protected]>.)
6298+
Fixed a memory leak in `png_set_quantize`.
6299+
(Reported by Samsung; analyzed by Fabio Gritti.)
6300+
Removed the experimental and incomplete ERROR_NUMBERS code.
6301+
(Contributed by Tobias Stoeckmann.)
6302+
Improved the RISC-V vector extension support; required RVV 1.0 or newer.
6303+
(Contributed by Filip Wasil.)
6304+
Added GitHub Actions workflows for automated testing.
6305+
Performed various refactorings and cleanups.
6306+
62546307
Send comments/corrections/commendations to png-mng-implement at lists.sf.net.
62556308
Subscription is required; visit
62566309
https://lists.sourceforge.net/lists/listinfo/png-mng-implement

src/java.desktop/share/native/libsplashscreen/libpng/README

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
README for libpng version 1.6.47
1+
README for libpng version 1.6.51
22
================================
33

44
See the note about version numbers near the top of `png.h`.
@@ -147,6 +147,7 @@ Files included in this distribution
147147
loongarch/ => Optimized code for LoongArch LSX
148148
mips/ => Optimized code for MIPS MSA and MIPS MMI
149149
powerpc/ => Optimized code for PowerPC VSX
150+
riscv/ => Optimized code for the RISC-V platform
150151
ci/ => Scripts for continuous integration
151152
contrib/ => External contributions
152153
arm-neon/ => Optimized code for the ARM-NEON platform
@@ -162,6 +163,7 @@ Files included in this distribution
162163
programs demonstrating the use of pngusr.dfa
163164
pngminus/ => Simple pnm2png and png2pnm programs
164165
pngsuite/ => Test images
166+
riscv-rvv/ => Optimized code for the RISC-V Vector platform
165167
testpngs/ => Test images
166168
tools/ => Various tools
167169
visupng/ => VisualPng, a Windows viewer for PNG images

src/java.desktop/share/native/libsplashscreen/libpng/png.c

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
#include "pngpriv.h"
4343

4444
/* Generate a compiler error if there is an old png.h in the search path. */
45-
typedef png_libpng_version_1_6_47 Your_png_h_is_not_version_1_6_47;
45+
typedef png_libpng_version_1_6_51 Your_png_h_is_not_version_1_6_51;
4646

4747
/* Sanity check the chunks definitions - PNG_KNOWN_CHUNKS from pngpriv.h and the
4848
* corresponding macro definitions. This causes a compile time failure if
@@ -137,10 +137,16 @@ png_zalloc,(voidpf png_ptr, uInt items, uInt size),PNG_ALLOCATED)
137137
if (png_ptr == NULL)
138138
return NULL;
139139

140-
if (items >= (~(png_alloc_size_t)0)/size)
140+
/* This check against overflow is vestigial, dating back from
141+
* the old times when png_zalloc used to be an exported function.
142+
* We're still keeping it here for now, as an extra-cautious
143+
* prevention against programming errors inside zlib, although it
144+
* should rather be a debug-time assertion instead.
145+
*/
146+
if (size != 0 && items >= (~(png_alloc_size_t)0) / size)
141147
{
142-
png_warning (png_voidcast(png_structrp, png_ptr),
143-
"Potential overflow in png_zalloc()");
148+
png_warning(png_voidcast(png_structrp, png_ptr),
149+
"Potential overflow in png_zalloc()");
144150
return NULL;
145151
}
146152

@@ -267,10 +273,6 @@ png_user_version_check(png_structrp png_ptr, png_const_charp user_png_ver)
267273
png_warning(png_ptr, m);
268274
#endif
269275

270-
#ifdef PNG_ERROR_NUMBERS_SUPPORTED
271-
png_ptr->flags = 0;
272-
#endif
273-
274276
return 0;
275277
}
276278

@@ -729,7 +731,7 @@ png_get_io_ptr(png_const_structrp png_ptr)
729731
* function of your own because "FILE *" isn't necessarily available.
730732
*/
731733
void PNGAPI
732-
png_init_io(png_structrp png_ptr, png_FILE_p fp)
734+
png_init_io(png_structrp png_ptr, FILE *fp)
733735
{
734736
png_debug(1, "in png_init_io");
735737

@@ -844,7 +846,7 @@ png_get_copyright(png_const_structrp png_ptr)
844846
return PNG_STRING_COPYRIGHT
845847
#else
846848
return PNG_STRING_NEWLINE \
847-
"libpng version 1.6.47" PNG_STRING_NEWLINE \
849+
"libpng version 1.6.51" PNG_STRING_NEWLINE \
848850
"Copyright (c) 2018-2025 Cosmin Truta" PNG_STRING_NEWLINE \
849851
"Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson" \
850852
PNG_STRING_NEWLINE \
@@ -1520,7 +1522,7 @@ png_XYZ_from_xy(png_XYZ *XYZ, const png_xy *xy)
15201522
}
15211523
#endif /* COLORSPACE */
15221524

1523-
#ifdef PNG_iCCP_SUPPORTED
1525+
#ifdef PNG_READ_iCCP_SUPPORTED
15241526
/* Error message generation */
15251527
static char
15261528
png_icc_tag_char(png_uint_32 byte)
@@ -1596,9 +1598,7 @@ png_icc_profile_error(png_const_structrp png_ptr, png_const_charp name,
15961598

15971599
return 0;
15981600
}
1599-
#endif /* iCCP */
16001601

1601-
#ifdef PNG_READ_iCCP_SUPPORTED
16021602
/* Encoded value of D50 as an ICC XYZNumber. From the ICC 2010 spec the value
16031603
* is XYZ(0.9642,1.0,0.8249), which scales to:
16041604
*
@@ -3998,7 +3998,7 @@ png_image_free_function(png_voidp argument)
39983998
# ifdef PNG_STDIO_SUPPORTED
39993999
if (cp->owned_file != 0)
40004000
{
4001-
FILE *fp = png_voidcast(FILE*, cp->png_ptr->io_ptr);
4001+
FILE *fp = png_voidcast(FILE *, cp->png_ptr->io_ptr);
40024002
cp->owned_file = 0;
40034003

40044004
/* Ignore errors here. */

0 commit comments

Comments
 (0)