gimp/libgimpbase
Jehan 042d3051c6 app, libgimpbase: do not try to open a non existing file.
Now that GimpParamSpecFile makes file validation depending on the action
set in the param spec, when trying to open a non-existing file (which
can happen through GUI, for instance when opening through the Document
History dockable or Open Recent menu), we had a quite obscure error
about a value "out of range" used "for argument 'file' (#2, type
GFile)", which is because core tried to set the GFile for a non-existing
file into the second parameter of the plug-in PDB. This is not a very
nice error for end-users.

The old error was much nicer as it used to say things like:

> Could not open '/path/not/existing.png' for reading: No such file or directory

But in fact, this string came from the plug-in, which means:

* first that the error can be different depending on the format
  (inconsistency of error message);
* depending on bugs in plug-ins, it may just crash or return no error
  messages;
* finally we were making a useless call to a load plug-in while we
  should already know from core that it won't work.

The new message is something like:

> Error when getting information for file "/path/not/existing.png: No such file or directory

This error is generated by core, so it will always be consistently the
same, is understandable too and the plug-in won't even be called.

As a side related fix, I updated the GimpParamSpecFile validation to
only validate local files, just like we do in core. Remote files can
always be set (and we let plug-ins handle them), at least for the time
being.
2025-01-23 20:04:54 +01:00
..
gimpbase-private.c Issue #8900 and #9923: reimplementing GimpUnit as a proper class. 2024-08-02 10:46:38 +02:00
gimpbase-private.h app, libgimpbase: gimp_signal_private()'s header is now made private. 2024-10-17 17:12:30 +02:00
gimpbase.def Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpbase.h app, libgimpbase: gimp_signal_private()'s header is now made private. 2024-10-17 17:12:30 +02:00
gimpbaseenums.c Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpbaseenums.h Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpbasetypes.c Fix various typos 2019-09-21 17:10:46 +00:00
gimpbasetypes.h core, pdb, plug-ins: Create GimpExportOptions class 2024-08-18 22:03:14 +02:00
gimpchecks.c plug-ins, libgimpbase, text: Port border-average... 2024-03-25 02:21:54 +00:00
gimpchecks.h libgimpbase: Replace GimpRGB in gimpchecks 2024-03-17 16:19:25 +00:00
gimpchoice.c Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpchoice.h libgimp, libgimpbase, libgimpconfig: GimpParamSpecChoise's parent should be GParamSpecString. 2024-11-02 00:27:02 +01:00
gimpcompatenums.c app, libgimp*: commit the newly generated *enums.c files. 2022-08-01 20:00:01 +02:00
gimpcompatenums.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpcpuaccel-private.h app, libgimpbase: also move gimp_cpu_accel_set_use() in a private header. 2024-10-17 16:12:04 +02:00
gimpcpuaccel.c app, libgimpbase: also move gimp_cpu_accel_set_use() in a private header. 2024-10-17 16:12:04 +02:00
gimpcpuaccel.h app, libgimpbase: also move gimp_cpu_accel_set_use() in a private header. 2024-10-17 16:12:04 +02:00
gimpenv-private.h libgimpbase: clean out trailing newline. 2024-11-02 00:27:02 +01:00
gimpenv.c app, libgimp: move gimp_env_init() to a non-shipped header. 2024-10-17 16:11:15 +02:00
gimpenv.h app, libgimp: move gimp_env_init() to a non-shipped header. 2024-10-17 16:11:15 +02:00
gimpexportoptions.c app, libgimp*, pdb, plug-ins: capabilities should not be part of GimpParamSpecExportOptions. 2024-11-02 00:27:02 +01:00
gimpexportoptions.h app, libgimp*, pdb, plug-ins: capabilities should not be part of GimpParamSpecExportOptions. 2024-11-02 00:27:02 +01:00
gimplimits.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpmemsize.c libgimpbase: Add GIR annotation for memsize deserialize 2024-05-11 14:40:38 +02:00
gimpmemsize.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpmetadata.c app, libgimpbase: add creation date/time metadata... 2025-01-15 16:54:22 -05:00
gimpmetadata.h app, libgimpbase: add creation date/time metadata... 2025-01-15 16:54:22 -05:00
gimpparamspecs.c app, libgimpbase: do not try to open a non existing file. 2025-01-23 20:04:54 +01:00
gimpparamspecs.h Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpparasite.c libgimp, libgimpbase: don't uselessly expose param spec structs when… 2024-11-02 00:27:02 +01:00
gimpparasite.h libgimp, libgimpbase: don't uselessly expose param spec structs when… 2024-11-02 00:27:02 +01:00
gimpparasiteio.c libgimpbase: always allocate GimpPixPipeParams.placement, add docs 2019-07-24 02:09:49 +02:00
gimpparasiteio.h libgimpbase: remove obsolete members from struct GimpPixPipeParams 2019-07-24 02:22:47 +02:00
gimpprotocol.c Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpprotocol.h libgimp, libgimpbase: fix passing a file spec action through the wire. 2025-01-23 00:52:18 +01:00
gimprectangle.c gir: Add more (out) tags when appropriate 2020-05-03 17:35:01 +02:00
gimprectangle.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpreloc.c libgimpbase: support multiarch folders for binary relocability on Linux. 2024-04-04 22:10:58 +02:00
gimpreloc.h libgimpbase: clean up the linux relocation code 2013-01-27 22:26:29 +01:00
gimpsignal.c app, libgimpbase: gimp_signal_private()'s header is now made private. 2024-10-17 17:12:30 +02:00
gimpsignal.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpunit.c Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpunit.h app, libgimp*, pdb: new GimpParamSpecObject abstract spec type. 2024-09-04 22:34:49 +02:00
gimputils.c Revert "Issue #7539: Opening some images lock GIMP." 2025-01-15 01:48:02 +01:00
gimputils.h Add gimp_bind_text_domain () utility function 2023-01-24 14:48:44 +00:00
gimpvaluearray.c Issue #12045: no defaults for plugin args of type File. 2025-01-22 17:53:21 +01:00
gimpvaluearray.h app, libgimp, pdb: new gimp_drawable_filter_update() public API. 2024-12-17 16:24:54 +00:00
gimpversion.h.in Meson port. 2019-09-11 16:42:04 +02:00
gimpwin32-io.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpwire.c app, libgimp*, pdb, plug-ins: remove GimpRGB support in GIMP protocol. 2024-04-19 14:34:22 +02:00
gimpwire.h app, libgimp*, pdb, plug-ins: remove GimpRGB support in GIMP protocol. 2024-04-19 14:34:22 +02:00
meson.build libgimp*, pdb, plug-ins: remove deprecated GIMP_PRECISION_*_GAMMA. 2024-11-03 20:18:52 +01:00
test-cpu-accel.c Moved the CPU detection code to libgimpbase (see bug #342860): 2006-06-02 09:58:03 +00:00