Commit graph

57415 commits

Author SHA1 Message Date
Bruno Lopes
2637492ef1 INSTALL: Mention requirement of GObject Introspection for Gexiv2 2026-04-02 10:53:21 -03:00
Jehan
4f69cd039c app: get rid of some unused internal API.
I noticed this yesterday, especially through gimp_image_get_active_array()
and gimp_image_get_visible_array() which are looping through
MAX_CHANNELS, hence assuming the passed components arrays are of
sufficient size. I could have just added some comment to document that
we must be careful when calling this, but this is currently completely
unused code. So I prefer to just clean it out.

If we need something like this in the future, we can just do it better.
2026-04-02 11:45:25 +02:00
Alx Sa
bfec7079f0 plug-ins: Prevent attack via APNG transparent chunk
Resolves #16150
Per Bronson Yen, it's possible to create a transparent chunk
that's larger than 256 index values. In that case, the trans[]
array will overflow since we initialize it to 256 indexes.
This patch adds a check to make sure the iterator used for the
transparency for loop does not exceed the array size even if
the chunk size does.
2026-04-02 05:34:45 +00:00
Ekaterine Papava
7c604fc722 Update Georgian translation 2026-04-02 03:48:40 +00:00
Bruno Lopes
27bb2a8721 meson: Do not enable OpenMP on clang-cl
Closes: #16145
2026-04-01 21:40:41 -03:00
Bruno Lopes
2832b15f0a gitlab-ci: Ensure recent meson on MSVC builds 2026-04-01 21:40:41 -03:00
Gabriele Barbero
8af15d525a tools: fix font size jump when using shortcuts
Previously, when using shortcuts to increase or decrease the font size of
the selected text, the size would jump to 0. This behavior occurred because,
if the text did not yet have a font tag, the initial font size was evaluated as 0.

This commit ensures that the text tool's default font size is used when
no font tag is present. This prevents the font size from jumping to 0 the
first time the shortcuts are used.
2026-04-02 00:24:26 +02:00
Bruno Lopes
d63687aefd gitlab-ci: Fix typo on issue-bot needs: 2026-04-01 18:50:03 -03:00
Bruno Lopes
e7bca20795 gitlab-ci: Run issue-bot when scheduled Clang build check fails 2026-04-01 18:35:34 -03:00
Sabri Ünal
48ecc40599 Update Turkish translation 2026-04-01 21:27:12 +00:00
Sabri Ünal
e79c142d1c Update Turkish translation 2026-04-01 21:19:38 +00:00
Jan Papež
26322f0f43 Update Czech translation 2026-04-01 20:13:33 +00:00
Jehan
b402e7d73b Revert "meson: Set -Wno-vla-cxx-extension"
This reverts commit 6f655967dc.

This should not be needed anymore.
2026-04-01 18:52:45 +02:00
Jehan
2c8d91c3cc app: further remove a variable length array.
Fixes when compiling:

> error: variable length array ‘mask_row_buf’ is used

With this and previous commit, we can now compile with C++ flags
-Werror=vla and get no build failures.
2026-04-01 18:52:45 +02:00
Jehan
9257af7570 app: do not use variable length arrays.
Fixing in the gimp-macos-inhouse: [arm64] job:

> ../app/core/gimpbrush-transform.cc:869:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]

Also adding some asserts in some places where we rely on the
MAX_CHANNELS constant so that we will quickly detect if this variable
needs to be further bumped in the future (especially as we will add
CMYK+ support as backend format).
2026-04-01 18:52:45 +02:00
Bruno Lopes
08121e09bd build/linux: Update poppler module to 26.04 2026-04-01 11:37:33 -03:00
Bruno Lopes
1dd77b6fdf plug-ins: No need to clang-specific pragma
This partially reverts 94f77bd2
2026-04-01 09:47:56 -03:00
Bruno Lopes
2e7ab376bf gitlab-ci: Fix MSYS_ROOT leaking to MSVC builds 2026-04-01 09:25:48 -03:00
Bruno Lopes
bf9e206c39 build/windows: Fail on warnings on Clang-CL builds for gimp sake 2026-04-01 08:44:37 -03:00
Bruno Lopes
9df9cf7ed1 libgimp: Fix last MSVC warning 2026-04-01 08:43:00 -03:00
Bruno Lopes
ca7da0080a libgimpwidgets: Use gdk_pixbuf_get_pixels on older gdk_pixbuf
Since our minimum version is 2.30.8.

This solves a warning from Clang-CL.
2026-04-01 08:42:48 -03:00
Bruno Lopes
eaa472158c plug-ins: Silence deprecation warning about rsvg_handle_set_size_callback 2026-04-01 08:04:56 -03:00
Bruno Lopes
d025b02823 plug-ins: Use localtime_s on Windows to fix CRT_INSECURE_DEPRECATE warns 2026-04-01 07:38:12 -03:00
Bruno Lopes
fe95ec6ecf libgimpconfig: Use strcat_s on Windows to fix CRT_INSECURE_DEPRECATE warns 2026-04-01 07:16:40 -03:00
Bruno Lopes
f4969c2f80 plug-ins: Use fopen_s on Windows to fix CRT_INSECURE_DEPRECATE warns 2026-04-01 07:16:32 -03:00
Bruno Lopes
f14f9516e2 plug-ins: Fix some problematic Windows functions
The macro should be enough but
on these source files it does not work.
2026-03-31 21:44:51 -03:00
Bruno Lopes
dae02feed3 plug-ins: Use Glib date-time functions 2026-03-31 21:44:51 -03:00
Bruno Lopes
4643f7898f plug-ins: More casting fixes 2026-03-31 21:44:51 -03:00
Bruno Lopes
3807b2f311 app, plug-ins: More sscanf_s on Windows 2026-03-31 21:44:51 -03:00
Bruno Lopes
8aeb5d6f53 app, libgimpwidgets: More strcpy_s on Windows 2026-03-31 21:44:51 -03:00
Alx Sa
a749329ab6 tools: Turn off floating selection outline when moving
When moving a floating layer or selection, we draw a solid
border around the object. However, we also let the "marching
ants" selection continue (if the user has it enabled). This slows
down performance when moving, especially on large selections.

This patch incorporates logic from the Selection tools into the
Edit Selection tool (which the Move Tool uses for translation).
It stores the user's "Show Selection" setting, sets it to FALSE
while moving the layer or selection, then restores it to its
prior value when the cursor is released.

This logic also extends to using Ctrl + Alt to drag a floating
selection out of a layer that already has a selection.
2026-03-31 23:46:05 +00:00
Bruno Lopes
e97e3d0e35 plug-ins: Forgot a macro 2026-03-31 18:58:47 -03:00
Bruno Lopes
55cf88f2c8 build/macos: Fail on warnings on Apple Clang builds for gimp sake 2026-03-31 18:58:47 -03:00
Bruno Lopes
6f655967dc meson: Set -Wno-vla-cxx-extension
As briefly discussed with @ok and @cmyk.student on IRC,
it seems reasonable, specially considering it is C++.
2026-03-31 18:58:42 -03:00
Bruno Lopes
d5d0527955 gitlab-ci: Make branches-check interruptible 2026-03-31 16:30:56 -03:00
Alx Sa
127510cd81 core: Use MAX_CHANNELS for Histogram limit
gimphistogram.c used its own custom MAX_N_COMPONENTS
define for the max value of its "n-components" property.
Since this value is the same as MAX_CHANNELS, it would be
good to use the global constant so the histogram limit automatically
updates when we added a new format with a larger number of components
such as CMYKA.
2026-03-31 19:28:05 +00:00
Bruno Lopes
657dceb3ed app: Use g_strerror 2026-03-31 16:27:25 -03:00
Bruno Lopes
d254c5684c app, libgimp*, plug-ins: Use strtok_s on Windows to fix CRT_INSECURE_DEPRECATE 2026-03-31 16:27:25 -03:00
Bruno Lopes
b5ca37f192 app: Properly fix unused eek_handled
Proper fix after 189598c3
2026-03-31 16:27:25 -03:00
Bruno Lopes
7ce3ed457e app, libgimp*, modules: More type <> casting fixes 2026-03-31 16:27:25 -03:00
Jehan
3668ee5562 NEWS: update. 2026-03-31 19:16:35 +02:00
Bruno Lopes
ed3611efa6 app, libgimp*, plug-ins: Use strncpy_s on Windows to fix CRT_INSECURE_DEPRECATE 2026-03-31 13:31:33 -03:00
Bruno Lopes
fe185577e2 libgimp: Use new datetime functions to fix CRT_INSECURE_DEPRECATE warnings 2026-03-31 13:31:33 -03:00
Bruno Lopes
3c71c42c31 app, app-tools, libgimp: Use freopen_s on Windows to fix CRT_INSECURE_DEPRECATE 2026-03-31 13:31:33 -03:00
Bruno Lopes
b9ec00c334 libgimpbase, libgimpconfig: Fix some castings 2026-03-31 13:31:33 -03:00
Bruno Lopes
84c7274c70 plug-ins: Use fscanf_s on Windows to fix CRT_INSECURE_DEPRECATE warnings 2026-03-31 13:31:33 -03:00
Ondřej Míchal
6aaefa73c2 libgimp: Sanitize path separators in menu paths
Technically not problematic but when inspecting using Plugin Browser,
the resulting hierarchy is confusing because it sometimes shows actions
to be inside "empty" directories if there are doubled path separators or
trailing ones. Let's not depend on the user to do this correctly when we
can do it for them.
2026-03-31 18:02:44 +03:00
Gabriele Barbero
2d83568bb9 tools: prioritize proxy bindings over IM context in text tool
Try proxy bindings before the IM context. On macOS and Windows,
the IM context consumes Alt+key events (Option produces special
characters on macOS; Alt triggers alt-codes on Windows), so
bindings such as Alt+Plus/Minus (size) and Alt+arrows
(baseline/kerning) would never be reached otherwise.
2026-03-31 15:31:25 +02:00
Bruno Lopes
189598c330 Revert "app: Add macro to fix unused eek_handled variable"
This reverts commit 499e18f84e.
2026-03-31 07:34:49 -03:00
Bruno Lopes
499e18f84e app: Add macro to fix unused eek_handled variable 2026-03-30 22:52:45 -03:00