It is currently Wed Jul 03, 2024 10:50 pm


All times are UTC - 5 hours [ DST ]



Post new topic Reply to topic  [ 94 posts ]  Go to page Previous  1, 2, 3, 4, 5
Author Message
 Post subject: Re: CMYK Student's non-destructive Gimp build in use by me.
PostPosted: Sat Feb 17, 2024 11:49 am  (#81) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
viewtopic.php?f=9&t=20691&start=60#p288016

The bug stated in post above sometimes happens but it doesn't always happen

Attachment:
2024-02-17_11-35.png
2024-02-17_11-35.png [ 373.44 KiB | Viewed 588 times ]


Top
 Post subject: Re: CMYK Student's non-destructive Gimp build in use by me.
PostPosted: Mon Feb 19, 2024 4:12 pm  (#82) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
2.99.18 is going to be released to the public soon and it turns out a build to said download is here.

viewtopic.php?f=7&t=20769&p=288104#p288104
https://download.gimp.org/mirror/pub/gimp/v2.99/


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Tue Feb 20, 2024 10:08 am  (#83) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
This threads named changed from

CMYK Student's non-destructive Gimp build in use by me
to
CMYK Student's non-destructive dev build after 2.99.18 in use by me

because I'm going to be building the latest versions and keeping up beyond the checkpoint release.


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Wed Feb 21, 2024 3:01 pm  (#84) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
Saint GEGL (myself) is using Gimp 2.99.19 built from source while everyone else uses 2.99.18. Though I'm sure a flatpak build exist on Linux. It does master not CMYK student's build.

Attachment:
299_19.png
299_19.png [ 212.34 KiB | Viewed 504 times ]


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Wed Feb 21, 2024 3:45 pm  (#85) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
Drop Shadow and my plugin Inner Glow being applied non-destructively in 2.99.19
Their custom clors are remembered

Attachment:
299_19_works_proper.png
299_19_works_proper.png [ 233.06 KiB | Viewed 503 times ]


I've been compiling Gimp 2.99 from Jan 1st 2023 until today. Feb 21 2024. This Gimp 2.99.19 special branch may be the first release I consider usable for real world work. Though we still have ways to go such.


IMO, Four new goals should exist for CMYK Student in order to comply with professional standards


1. Make it in default where all filters are destructive until a layer is converted into an "effects" layer. Add a section in menus called "convert to effects layer" with a GEGL icon. If they de-convert it all effects are rasterized unless it is text. Perhaps we can make it where text layers are 'effect layers' by default but normal layers and layer mask are not.

2. Add non-destructive filters on Layer mask. When of course they are converted to 'effect layers'.

3. Make it where each effect layer has its own layer mask EXCEPT for effect layer of a layer mask. IMO there is no need to give channels effect layers.

4. PLEASE DO NOT MAKE ADJUSTMENT LAYER GROUPS. Instead just make normal adjustment layers like Photoshop and Pixelitor. It can work by adding a gegl graph to each layer below it. Unless a layer group on normal cancels the adjustment layer effect. We might even be able to make it where the adjustment layer goes both up and down or ignores specified layers. But historically a adjustment layer inside a normal layer group is cancelled. From a very technical view point "adjustment layers" can be thought of as "layer effects" that have clone filters on many layers below them. In default Photoshop and Pixelitor only have the ability to use adjustment layers of fast color lighting filters but Pixelitor allows ANYTHING to be an adjustment layer if users left clicks the adjustment layer icon and select a filter. I do not have the ability to test Photoshop after 2010, so its possible CC can do this now.

I am serious about Adjustment layer groups being a bad idea.

Here is a preview of adjustment layers in an open source program called Pixelitor. You have to enable experimental features to use them but trust me they are stable as I've been using them for almost two years. Pixelitor can also call GEGL from the command line bash and that too can be used as an adjustment layer, but it is very slow and syntax only (for GEGL and GMIC, not native filters, they are fast). In Pixelitor adjustment layers apply something like "gegl graphs" to every layer below them unless blocked out by a "normal layer group".

https://github.com/lbalazscs/Pixelitor

Pixelitor using its Gradient Map filter as an adjustment layer
Attachment:
adjustment_layer_native.png
adjustment_layer_native.png [ 214.42 KiB | Viewed 503 times ]


Pixelitor using GEGL syntax "command line filter" as an adjustment layer.
Attachment:
pixelitor_adjustment_layer_gegl.png
pixelitor_adjustment_layer_gegl.png [ 334.73 KiB | Viewed 503 times ]


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Wed Feb 21, 2024 5:27 pm  (#86) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
2.99.19 soft locked while quick saving an xcf file. No idea why. It already saved the .xcf on disk but the quick update save "ctrl s" caused the soft lock

Attachment:
why.png
why.png [ 946.69 KiB | Viewed 493 times ]


Other then that this is beautiful. It looks like 2.99.19 is STABLE


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Wed Feb 21, 2024 5:34 pm  (#87) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
It soft locked again while saving but this time I got a bug report crash and it looks like it has to do with my plugin SSG. An acronym for (stroke shadow glow)

https://github.com/LinuxBeaver/GEGL-SSG ... /releases/


@CMYK_Student check this bug out. Serious hindrance to a pros workflow here.

<!-- Copy-paste this whole debug data to report to developers -->


```
GNU Image Manipulation Program version 2.99.19
git-describe: unknown (unsupported)
Build: unknown rev 0 for linux
# C compiler #
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/13/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,m2,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-libstdcxx-zoneinfo=/usr/share/zoneinfo --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-13.2.1-20231011/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none --without-cuda-driver --enable-offload-defaulted --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux --with-build-config=bootstrap-lto --enable-link-serialization=1
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.2.1 20231011 (Red Hat 13.2.1-4) (GCC)

# Libraries #
using babl version 0.1.98 (compiled against version 0.1.98)
using GEGL version 0.4.49 (compiled against version 0.4.49)
using GLib version 2.76.6 (compiled against version 2.76.6)
using GdkPixbuf version 2.42.10 (compiled against version 2.42.10)
using GTK+ version 3.24.38 (compiled against version 3.24.38)
using Pango version 1.50.14 (compiled against version 1.50.14)
using Fontconfig version 2.14.2 (compiled against version 2.14.2)
using Cairo version 1.17.8 (compiled against version 1.17.8)

```
> fatal error: Segmentation fault

Stack trace:
```

# Stack traces obtained from PID 1193630 - Thread 1193630 #

[New LWP 1193633]
[New LWP 1193634]
[New LWP 1193635]
[New LWP 1193636]
[New LWP 1193637]
[New LWP 1193638]
[New LWP 1193639]
[New LWP 1193641]
[New LWP 1193642]
[New LWP 1193643]
[New LWP 1193644]
[New LWP 1193717]
[New LWP 1193932]
[New LWP 1194313]

This GDB supports auto-downloading debuginfo from the following URLs:
  <https://debuginfod.fedoraproject.org/>
Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal]
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
0x00007ff21143b0ea in read () from /lib64/libc.so.6
  Id   Target Id                                            Frame
* 1    Thread 0x7ff20f164000 (LWP 1193630) "gimp-2.99"      0x00007ff21143b0ea in read () from /lib64/libc.so.6
  2    Thread 0x7ff201af46c0 (LWP 1193633) "pool-spawner"   0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  3    Thread 0x7ff2012f36c0 (LWP 1193634) "gmain"          0x00007ff21143f34d in poll () from /lib64/libc.so.6
  4    Thread 0x7ff200af26c0 (LWP 1193635) "gdbus"          0x00007ff21143f34d in poll () from /lib64/libc.so.6
  5    Thread 0x7ff1f3f716c0 (LWP 1193636) "worker"         0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  6    Thread 0x7ff1f37706c0 (LWP 1193637) "worker"         0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  7    Thread 0x7ff1f2f6f6c0 (LWP 1193638) "worker"         0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  8    Thread 0x7ff1e8b346c0 (LWP 1193639) "async"          0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  9    Thread 0x7ff0db7fe6c0 (LWP 1193641) "gimp-2.99"      0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  10   Thread 0x7ff0db5fd6c0 (LWP 1193642) "gimp-2.99"      0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  11   Thread 0x7ff0db3fc6c0 (LWP 1193643) "gimp-2.99"      0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  12   Thread 0x7ff0db1fb6c0 (LWP 1193644) "gimp-2.99"      0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  13   Thread 0x7ff09affd6c0 (LWP 1193717) "dconf worker"   0x00007ff21143f34d in poll () from /lib64/libc.so.6
  14   Thread 0x7ff0b0e096c0 (LWP 1193932) "swap writer"    0x00007ff211444b4d in syscall () from /lib64/libc.so.6
  15   Thread 0x7ff0b1e0b6c0 (LWP 1194313) "pool-gimp-2.99" 0x00007ff211444b4d in syscall () from /lib64/libc.so.6
#0  0x00007ff21143b0ea in read () at /lib64/libc.so.6
#1  0x00007ff212e881ab in gimp_stack_trace_print (prog_name=<optimized out>, stream=stream@entry=0x4fac79a0, trace=trace@entry=0x0) at ../libgimpbase/gimputils.c:1394
        status = 310608176
        stack_printed = 0
        gtrace = 0x0
        gimp_pid = "1193630\000\300\222\355\022\362\177\000"
        buffer = "\315\003\000\000\000\000\000\000\300\024I\000\000\000\000\000hή\000\000\000\000\000@\266.J\376\177\000\000\260\251.J\376\177\000\000=N\353\022\362\177\000\000\005", '\000' <repeats 15 times>, " #\347\022\362\177\000\000\340~\350\022\362\177\000\000\302\200\264\320\000\000\000\000p\255.J\376\177\000\000\001\000\000\000\000\000\000\000\000&\231\001\000\000\000\000\340\222\261\001\000\000\000\000@\266.J\376\177\000\000\t\255\224\000\000\000\000\000\276r\353\022\362\177\000\000\240y\254O", '\000' <repeats 20 times>, "\240y\254O\000\000\000\000\220\207\251\001", '\000' <repeats 12 times>, "\001\000\000\000\000\000\000\000H\226"...
        read_n = <optimized out>
        sync_fd = {21, 22}
        out_fd = {23, 24}
        fork_pid = <optimized out>
        pid = 1193630
        eintr_count = 0
        tid = <optimized out>
#2  0x000000000066ba00 in gimp_eek (reason=reason@entry=0x94ad09 "fatal error", message=<optimized out>, use_handler=use_handler@entry=1) at ../app/errors.c:355
        fd = 0x4fac79a0
        has_backtrace = 1
        pid = "1193630\000-+\000\000\000\000\000"
        gimpdebug = 0x94ad20 "/home/contrast/Applications/gimp_nde/libexec/gimp-debug-tool-2.99"
        args = {0x94ad20 "/home/contrast/Applications/gimp_nde/libexec/gimp-debug-tool-2.99", 0x1a98790 "/home/contrast/Applications/gimp_nde//bin/gimp-2.99", 0x7ffe4a2eadc0 "1193630", 0x94ad09 "fatal error", 0x43c670fe "Segmentation fault", 0x1a96260 "/home/contrast/.config/GIMP/2.99/CrashLog/gimp-crash-1708554247.txt", 0x0, 0x7ffe4a2eadd0 "0", 0x0}
        timestamp = "0\000\306C\000\000\000\000`\021N\021\362\177\000"
        config = <optimized out>
        eek_handled = 0
        debug_policy = GIMP_DEBUG_POLICY_WARNING
        iter = <optimized out>
        num_idx = <optimized out>
        i = 0
#3  0x000000000066bff8 in gimp_fatal_error (message=<optimized out>) at ../app/errors.c:206
#4  0x000000000066e929 in gimp_sigfatal_handler (sig_num=11) at ../app/signals.c:196
#5  0x00007ff211377bb0 in <signal handler called> () at /lib64/libc.so.6
#6  0x00007ff2129ad352 in g_type_check_instance_is_fundamentally_a () at /lib64/libgobject-2.0.so.0
#7  0x00007ff21299523d in g_value_set_object () at /lib64/libgobject-2.0.so.0
#8  0x00007ff2129980d9 in g_object_get_property () at /lib64/libgobject-2.0.so.0
#9  0x000000000065cc2e in xcf_save_effect_props (error=0x7ffe4a2eb6c8, filter=0x44a03290, image=0x44a38bd0, info=0x7ffe4a2eb6d0) at ../app/xcf/xcf-save.c:874
        pspec = 0x1b192e0
        value = {g_type = , data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        filter_type = FILTER_PROP_UNKNOWN
        i = 1
        pspecs = 0x4e847040
        n_pspecs = 11
        node = 0x445708d0
        operation = 0x51e01590 "gegl:ssg"
        filter_drawable = 0x44a03290
        node = <optimized out>
        operation = 0x51225d30 "%\r\206Q"
        name = 0x4c247fb0 "7C\311K"
        icon = 0x51e01590 "gegl:ssg"
        effect_mask = <optimized out>
        offset = 26813952
        tmp_error = 0x0
        filter = 0x44a03290
        value = 1
        filters = <optimized out>
        filter_list = <optimized out>
        num_effects = <optimized out>
        list = 0x457066b0 = {0x44a03290}
        saved_pos = 1235044
        offset = 2300650
        string = 0x44c5cea0 "real_esrgan copy #1"
        tmp_error = 0x0
        layer = <optimized out>
        all_layers = 0x51538080 = {0x44e5eca0, 0x44a86f20, 0x44cd5c40, 0x452992d0, 0x44db9ff0, 0x44a090e0, 0x44ae43e0, 0x44aec6f0, 0x44b31ba0, 0x45968150, 0x449e7850}
        all_channels = <optimized out>
        all_paths = 0x0
        list = <optimized out>
        saved_pos = 494
        offset = 1234768
        value = 150
        n_layers = <optimized out>
        n_channels = <optimized out>
        n_paths = <optimized out>
        progress = 3
        max_progress = <optimized out>
        version_tag = "gimp xcf v020\000\000"
        write_paths = <optimized out>
        tmp_error = 0x0
#10 xcf_save_effect (error=<optimized out>, filter=0x44a03290, image=<optimized out>, info=0x7ffe4a2eb6d0) at ../app/xcf/xcf-save.c:2063
        filter_drawable = 0x44a03290
        node = <optimized out>
        operation = 0x51225d30 "%\r\206Q"
        name = 0x4c247fb0 "7C\311K"
        icon = 0x51e01590 "gegl:ssg"
        effect_mask = <optimized out>
        offset = 26813952
        tmp_error = 0x0
        filter = 0x44a03290
        value = 1
        filters = <optimized out>
        filter_list = <optimized out>
        num_effects = <optimized out>
        list = 0x457066b0 = {0x44a03290}
        saved_pos = 1235044
        offset = 2300650
        string = 0x44c5cea0 "real_esrgan copy #1"
        tmp_error = 0x0
        layer = <optimized out>
        all_layers = 0x51538080 = {0x44e5eca0, 0x44a86f20, 0x44cd5c40, 0x452992d0, 0x44db9ff0, 0x44a090e0, 0x44ae43e0, 0x44aec6f0, 0x44b31ba0, 0x45968150, 0x449e7850}
        all_channels = <optimized out>
        all_paths = 0x0
        list = <optimized out>
        saved_pos = 494
        offset = 1234768
        value = 150
        n_layers = <optimized out>
        n_channels = <optimized out>
        n_paths = <optimized out>
        progress = 3
        max_progress = <optimized out>
        version_tag = "gimp xcf v020\000\000"
        write_paths = <optimized out>
        tmp_error = 0x0
#11 xcf_save_layer (error=<optimized out>, layer=<optimized out>, image=<optimized out>, info=0x7ffe4a2eb6d0) at ../app/xcf/xcf-save.c:1965
        filter = 0x44a03290
        value = 1
        filters = <optimized out>
        filter_list = <optimized out>
        num_effects = <optimized out>
        list = 0x457066b0 = {0x44a03290}
        saved_pos = 1235044
        offset = 2300650
        string = 0x44c5cea0 "real_esrgan copy #1"
        tmp_error = 0x0
        layer = <optimized out>
        all_layers = 0x51538080 = {0x44e5eca0, 0x44a86f20, 0x44cd5c40, 0x452992d0, 0x44db9ff0, 0x44a090e0, 0x44ae43e0, 0x44aec6f0, 0x44b31ba0, 0x45968150, 0x449e7850}
        all_channels = <optimized out>
        all_paths = 0x0
        list = <optimized out>
        saved_pos = 494
        offset = 1234768
        value = 150
        n_layers = <optimized out>
        n_channels = <optimized out>
        n_paths = <optimized out>
        progress = 3
        max_progress = <optimized out>
        version_tag = "gimp xcf v020\000\000"
        write_paths = <optimized out>
        tmp_error = 0x0
#12 xcf_save_image (info=info@entry=0x7ffe4a2eb6d0, image=image@entry=0x44a38bd0, error=error@entry=0x7ffe4a2eb6c8) at ../app/xcf/xcf-save.c:393
        layer = <optimized out>
        all_layers = 0x51538080 = {0x44e5eca0, 0x44a86f20, 0x44cd5c40, 0x452992d0, 0x44db9ff0, 0x44a090e0, 0x44ae43e0, 0x44aec6f0, 0x44b31ba0, 0x45968150, 0x449e7850}
        all_channels = <optimized out>
        all_paths = 0x0
        list = <optimized out>
        saved_pos = 494
        offset = 1234768
        value = 150
        n_layers = <optimized out>
        n_channels = <optimized out>
        n_paths = <optimized out>
        progress = 3
        max_progress = <optimized out>
        version_tag = "gimp xcf v020\000\000"
        write_paths = <optimized out>
        tmp_error = 0x0
#13 0x000000000064de22 in xcf_save_stream (gimp=gimp@entry=0x19859c0, image=image@entry=0x44a38bd0, output=output@entry=0x49c8fbe0, output_file=output_file@entry=0x43c9e740, progress=progress@entry=0x42e206d0, error=error@entry=0x7ffe4a2ebb98) at ../app/xcf/xcf.c:381
        info = {gimp = 0x19859c0, progress = 0x42e206d0, input = 0x0, output = 0x49c8fbe0, seekable = 0x49c8fbe0, cp = 2300831, bytes_per_offset = 8, file = 0x43c9e740, tattoo_state = 0, selected_layers = 0x0, selected_channels = 0x0, selected_vectors = 0x0, linked_layers = 0x0, linked_channels = 0x0, linked_paths = 0x0, layer_sets = 0x0, channel_sets = 0x0, floating_sel_drawable = 0x0, floating_sel = 0x0, floating_sel_offset = 0, compression = COMPRESS_RLE, file_version = 20}
        filename = 0x4e7a7660 "/home/contrast/Desktop/feathery_friend_CMYK.xcf"
        success = 0
        my_error = 0x0
        cancellable = <optimized out>
        __func__ = "xcf_save_stream"
#14 0x000000000064e137 in xcf_save_invoker (procedure=0x1a27660, gimp=0x19859c0, context=<optimized out>, progress=0x42e206d0, args=<optimized out>, error=0x7ffe4a2ebb98) at ../app/xcf/xcf.c:486
        return_vals = <optimized out>
        image = <optimized out>
        file = 0x43c9e740
        output = 0x49c8fbe0
        success = 0
        my_error = 0x0
#15 0x000000000061df54 in gimp_procedure_execute (procedure=procedure@entry=0x1a27660, gimp=0x19859c0, context=0x523a6d10, context@entry=0x1a31740, progress=progress@entry=0x42e206d0, args=args@entry=0x47bdabb0, error=error@entry=0x7ffe4a2ebb98) at ../app/pdb/gimpprocedure.c:515
        return_vals = <optimized out>
        pdb_error = 0x0
        __func__ = "gimp_procedure_execute"
#16 0x000000000061aa79 in gimp_pdb_execute_procedure_by_name_args (pdb=pdb@entry=0x1a26250, context=context@entry=0x1a31740, progress=progress@entry=0x42e206d0, error=error@entry=0x7ffe4a2ebb98, name=name@entry=0x9382bf "gimp-xcf-save", args=args@entry=0x47bdabb0) at ../app/pdb/gimppdb.c:320
        procedure = 0x1a27660
        return_vals = 0x0
        list = 0x424cc5f0 = {0x1a27660}
        __func__ = "gimp_pdb_execute_procedure_by_name_args"
#17 0x000000000061afa2 in gimp_pdb_execute_procedure_by_name (pdb=<optimized out>, context=<optimized out>, progress=progress@entry=0x42e206d0, error=error@entry=0x7ffe4a2ebb98, name=name@entry=0x9382bf "gimp-xcf-save") at ../app/pdb/gimppdb.c:508
        procedure = 0x1a27660
        args = 0x47bdabb0
        return_vals = <optimized out>
        va_args = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7ffe4a2ebaa8, reg_save_area = 0x7ffe4a2eb970}}
        prev_value_type = <optimized out>
        prev_int_value = <optimized out>
        i = <optimized out>
        __func__ = "gimp_pdb_execute_procedure_by_name"
#18 0x00000000007cec30 in file_save (gimp=gimp@entry=0x19859c0, image=image@entry=0x44a38bd0, progress=progress@entry=0x42e206d0, file=file@entry=0x43c9e740, file_proc=file_proc@entry=0x1a27660, run_mode=run_mode@entry=GIMP_RUN_WITH_LAST_VALS, change_saved_state=1, export_backward=0, export_forward=0, error=0x7ffe4a2ebb98) at ../app/file/file-save.c:202
        return_vals = <optimized out>
        orig_file = 0x43c9e740
        status = GIMP_PDB_EXECUTION_ERROR
        local_file = 0x0
        mounted = 1
        my_error = 0x0
        drawables_list = <optimized out>
        drawables = 0x44d23ee0
        n_drawables = 1
        __func__ = "file_save"
#19 0x0000000000804437 in file_save_dialog_save_image (progress=progress@entry=0x42e206d0, gimp=gimp@entry=0x19859c0, image=image@entry=0x44a38bd0, file=file@entry=0x43c9e740, save_proc=save_proc@entry=0x1a27660, run_mode=run_mode@entry=GIMP_RUN_WITH_LAST_VALS, change_saved_state=1, export_backward=0, export_forward=0, xcf_compression=0, verbose_cancel=1) at ../app/dialogs/file-save-dialog.c:823
        status = <optimized out>
        error = 0x0
        list = <optimized out>
        success = 0
#20 0x00000000007e2117 in file_save_cmd_callback (action=<optimized out>, value=<optimized out>, data=<optimized out>) at ../app/actions/file-commands.c:291
        save_proc = 0x1a27660
        valid_file = <optimized out>
        gimp = 0x19859c0
        display = 0x42e206d0
        image = 0x44a38bd0
        drawables = <optimized out>
        widget = 0x43627150
        save_mode = GIMP_SAVE_MODE_SAVE
        file = 0x43c9e740
        saved = 0
#21 0x00007ff2129864ea in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#22 0x00007ff2129b4e16 in signal_emit_unlocked_R.isra.0 () at /lib64/libgobject-2.0.so.0
#23 0x00007ff2129a5cbd in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#24 0x00007ff2129a5f33 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#25 0x000000000071f6c4 in gimp_action_emit_activate (action=0x1f38fb0, value=0x4d24aef0) at ../app/widgets/gimpaction.c:252
        __func__ = "gimp_action_emit_activate"
#26 0x00000000007512f7 in gimp_enum_action_activate (action=0x1f38fb0, parameter=<optimized out>) at ../app/widgets/gimpenumaction.c:186
        enum_action = 0x1f38fb0
#27 0x00007ff211c19b34 in gtk_window_activate_key () at /lib64/libgtk-3.so.0
#28 0x000000000079a333 in gimp_window_key_press_event (widget=0x1cb14e0, event=0x512e8210) at ../app/widgets/gimpwindow.c:218
        gimp_window = 0x1cb14e0
        window = 0x1cb14e0
        focus = <optimized out>
        accel_mods = 12
        enable_mnemonics = 1
        handled = <optimized out>
        __func__ = "gimp_window_key_press_event"
#29 0x00007ff21192efe7 in _gtk_marshal_BOOLEAN__BOXEDv () at /lib64/libgtk-3.so.0
#30 0x00007ff2129a5dba in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#31 0x00007ff2129a5f33 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#32 0x00007ff211c06174 in gtk_widget_event_internal.part.0.lto_priv () at /lib64/libgtk-3.so.0
#33 0x00007ff211a9d63f in propagate_event.lto_priv () at /lib64/libgtk-3.so.0
#34 0x00007ff211a9e11a in gtk_main_do_event () at /lib64/libgtk-3.so.0
#35 0x00007ff2117d4427 in _gdk_event_emit () at /lib64/libgdk-3.so.0
#36 0x00007ff21182d82e in gdk_event_source_dispatch.lto_priv () at /lib64/libgdk-3.so.0
#37 0x00007ff2128854fc in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#38 0x00007ff2128e36b8 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#39 0x00007ff212882b83 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#40 0x00007ff2125ec01d in g_application_run () at /lib64/libgio-2.0.so.0
#41 0x000000000066b52a in app_run (full_prog_name=0x178eaf0 "/home/contrast/Applications/gimp_nde//bin/gimp-2.99", filenames=<optimized out>, alternate_system_gimprc=alternate_system_gimprc@entry=0x0, alternate_gimprc=alternate_gimprc@entry=0x0, session_name=<optimized out>, batch_interpreter=<optimized out>, batch_commands=0x0, quit=0, as_new=0, no_interface=0, no_data=<optimized out>, no_fonts=<optimized out>, no_splash=0, be_verbose=0, use_shm=1, use_cpu_accel=1, console_messages=0, use_debug_handler=0, show_playground=1, show_debug_menu=1, stack_trace_mode=GIMP_STACK_TRACE_QUERY, pdb_compat_mode=<optimized out>, backtrace_file=0x1772ef0 "/home/contrast/.config/GIMP/2.99/CrashLog/gimp-crash-1708554247.txt") at ../app/app.c:317
        gimp = 0x19859c0
        app = 0x1a5a5d0
        default_folder = 0x0
        gimpdir = 0x1962de0
        abort_message = <optimized out>
        retval = 0
        __func__ = "app_run"
#42 0x00000000004abd65 in main (argc=<optimized out>, argv=<optimized out>) at ../app/main.c:786
        context = 0x178eb70
        error = 0x0
        abort_message = <optimized out>
        basename = <optimized out>
        system_gimprc_file = 0x0
        user_gimprc_file = 0x0
        gimp_group = <optimized out>
        backtrace_file = 0x1772ef0 "/home/contrast/.config/GIMP/2.99/CrashLog/gimp-crash-1708554247.txt"
        retval = <optimized out>
        i = <optimized out>
[Inferior 1 (process 1193630) detached]

```


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Wed Feb 21, 2024 6:01 pm  (#88) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
I triggered the out of bounds bug by making a composition with text and dropshadow then moving and expanding the text layer.
Please manipulate the text layers corners in hopes of triggering the out of bounds text bug yourself.


Attachment:
out_of_bounds_clip_bug.png
out_of_bounds_clip_bug.png [ 316.86 KiB | Viewed 492 times ]


Attachment:
four_corners_to_manipulate.png
four_corners_to_manipulate.png [ 415.46 KiB | Viewed 492 times ]



We can solve this bug. I believe in your CMYK Student!


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Wed Feb 21, 2024 9:47 pm  (#89) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
@CMYK_Student I found a bug that is very easy to duplicate.

I duplicated a composition and two layers with non-destructive filters were in a "normal" layer group. After duplicating the composition all non-destructive filters were in tact except the ones inside the layer group. Let's solve this bug!


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Thu Feb 22, 2024 10:02 pm  (#90) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
Congrats for the inspiration. CMYK Student's 2.99 Gimp build inspired me to make a new unreleased plugin that remembers the original color of an image before doing an "outline only" effect. Said unreleased GEGL plugin depends on two other plugins of mine SSG and Custom Bevel. Users can now use shape brush packs in Gimp and make real time non-destructive shape outlines or easy bevel outline only text. The plugin also works in Gimp 2.10 but it won't have real time brush abilities.

The technical reason for me making this plugin is so that 2.99 users could make outline only bevels on the same 'layer effect' setting without writing GEGL syntax.

Bevel Mode
Attachment:
new_plugin_CMYK.png
new_plugin_CMYK.png [ 373.55 KiB | Viewed 460 times ]


Outline Mode
Attachment:
2024-02-22_21-59.png
2024-02-22_21-59.png [ 315.9 KiB | Viewed 460 times ]



I will make a separate thread when this plugin is released, and due to the fact that Gimp 2.99x currently crashes most of the time when using layer src=/image_here.jpg in the GUI only, This plugin will NOT contain the ability to upload an image file. This would have been a trivial addition but I don't want to make any new plugins that use that feature until that bug is fixed.


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Thu Feb 22, 2024 10:18 pm  (#91) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
@CMYK_Student

I got a new bug while dragging and dropping a color into a layer. Usually in Gimp 2.10 I have a keyboard shortcut to alpha lock an image and color fill but in 2.99.19 I don't have the same keyboard shortcuts. So I did it manual and it spit out this.

I was running my new underdeveloped unreleased plugin "Outline Deluxe" but just skimming through the error it looks like it has nothing to do with it.

<!-- Copy-paste this whole debug data to report to developers -->


```
GNU Image Manipulation Program version 2.99.19
git-describe: unknown (unsupported)
Build: unknown rev 0 for linux
# C compiler #
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/13/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,m2,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-libstdcxx-zoneinfo=/usr/share/zoneinfo --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-13.2.1-20231011/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none --without-cuda-driver --enable-offload-defaulted --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux --with-build-config=bootstrap-lto --enable-link-serialization=1
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.2.1 20231011 (Red Hat 13.2.1-4) (GCC)

# Libraries #
using babl version 0.1.98 (compiled against version 0.1.98)
using GEGL version 0.4.49 (compiled against version 0.4.49)
using GLib version 2.76.6 (compiled against version 2.76.6)
using GdkPixbuf version 2.42.10 (compiled against version 2.42.10)
using GTK+ version 3.24.38 (compiled against version 3.24.38)
using Pango version 1.50.14 (compiled against version 1.50.14)
using Fontconfig version 2.14.2 (compiled against version 2.14.2)
using Cairo version 1.17.8 (compiled against version 1.17.8)

```
> fatal error: Segmentation fault

Stack trace:
```

# Stack traces obtained from PID 1297535 - Thread 1297535 #

[New LWP 1297538]
[New LWP 1297539]
[New LWP 1297540]
[New LWP 1297541]
[New LWP 1297542]
[New LWP 1297543]
[New LWP 1297544]
[New LWP 1297546]
[New LWP 1297547]
[New LWP 1297548]
[New LWP 1297549]
[New LWP 1297610]
[New LWP 1297826]

This GDB supports auto-downloading debuginfo from the following URLs:
  <https://debuginfod.fedoraproject.org/>
Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal]
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
0x00007f00d6fe20ea in read () from /lib64/libc.so.6
  Id   Target Id                                          Frame
* 1    Thread 0x7f00d4d0b000 (LWP 1297535) "gimp-2.99"    0x00007f00d6fe20ea in read () from /lib64/libc.so.6
  2    Thread 0x7f00c769b6c0 (LWP 1297538) "pool-spawner" 0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  3    Thread 0x7f00c6e9a6c0 (LWP 1297539) "gmain"        0x00007f00d6fe634d in poll () from /lib64/libc.so.6
  4    Thread 0x7f00c66996c0 (LWP 1297540) "gdbus"        0x00007f00d6fe634d in poll () from /lib64/libc.so.6
  5    Thread 0x7f00c5b1b6c0 (LWP 1297541) "worker"       0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  6    Thread 0x7f00c531a6c0 (LWP 1297542) "worker"       0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  7    Thread 0x7f00c4b196c0 (LWP 1297543) "worker"       0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  8    Thread 0x7effa66dd6c0 (LWP 1297544) "async"        0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  9    Thread 0x7effa55656c0 (LWP 1297546) "gimp-2.99"    0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  10   Thread 0x7effa53646c0 (LWP 1297547) "gimp-2.99"    0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  11   Thread 0x7effa51636c0 (LWP 1297548) "gimp-2.99"    0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  12   Thread 0x7effa4f626c0 (LWP 1297549) "gimp-2.99"    0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
  13   Thread 0x7eff70e7b6c0 (LWP 1297610) "dconf worker" 0x00007f00d6fe634d in poll () from /lib64/libc.so.6
  14   Thread 0x7effa5edc6c0 (LWP 1297826) "swap writer"  0x00007f00d6febb4d in syscall () from /lib64/libc.so.6
#0  0x00007f00d6fe20ea in read () at /lib64/libc.so.6
#1  0x00007f00d8a2f1ab in gimp_stack_trace_print (prog_name=<optimized out>, stream=stream@entry=0x4698cb90, trace=trace@entry=0x0) at ../libgimpbase/gimputils.c:1394
        status = -667029200
        stack_printed = 0
        gtrace = 0x0
        gimp_pid = "1297535\000\300\002\250\330\000\177\000"
        buffer = "\315\003\000\000\000\000\000\000\300\024I\000\000\000\000\000hή\000\000\000\000\000\000l~E\000\000\000\000\260ڨ\033\375\177\000\000=\276\245\330\000\177\000\000\005", '\000' <repeats 15 times>, " \223\241\330\000\177\000\000\340\356\242\330\000\177\000\000\302\200\264\320\000\000\000\000pި\033\375\177\000\000\001", '\000' <repeats 24 times>, "l~E\000\000\000\000\t\255\224\000\000\000\000\000\276\342\245\330\000\177\000\000\220˘F", '\000' <repeats 20 times>, "\220˘F\000\000\000\000\300ތ\002", '\000' <repeats 12 times>, "\001\000\000\000\000\000\000\000H\006\250\330\000\177\000\000"...
        read_n = <optimized out>
        sync_fd = {18, 19}
        out_fd = {20, 21}
        fork_pid = <optimized out>
        pid = 1297535
        eintr_count = 0
        tid = <optimized out>
#2  0x000000000066ba00 in gimp_eek (reason=reason@entry=0x94ad09 "fatal error", message=<optimized out>, use_handler=use_handler@entry=1) at ../app/errors.c:355
        fd = 0x4698cb90
        has_backtrace = 1
        pid = "1297535\000:*\000\000\000\000\000"
        gimpdebug = 0x94ad20 "/home/contrast/Applications/gimp_nde/libexec/gimp-debug-tool-2.99"
        args = {0x94ad20 "/home/contrast/Applications/gimp_nde/libexec/gimp-debug-tool-2.99", 0x28cdec0 "/home/contrast/Applications/gimp_nde//bin/gimp-2.99", 0x7ffd1ba8dec0 "1297535", 0x94ad09 "fatal error", 0x4676636a "Segmentation fault", 0x28cb990 "/home/contrast/.config/GIMP/2.99/CrashLog/gimp-crash-1708657731.txt", 0x0, 0x7ffd1ba8ded0 "0", 0x0}
        timestamp = "0\000vF\000\000\000\000`\201\b\327\000\177\000"
        config = <optimized out>
        eek_handled = 0
        debug_policy = GIMP_DEBUG_POLICY_WARNING
        iter = <optimized out>
        num_idx = <optimized out>
        i = 0
#3  0x000000000066bff8 in gimp_fatal_error (message=<optimized out>) at ../app/errors.c:206
#4  0x000000000066e929 in gimp_sigfatal_handler (sig_num=11) at ../app/signals.c:196
#5  0x00007f00d6f1ebb0 in <signal handler called> () at /lib64/libc.so.6
#6  0x0000000000759f35 in gimp_item_tree_view_filters_changed (item=<optimized out>, view=0x45de3fb0) at ../app/widgets/gimpitemtreeview.c:2919
        __inst = 0x457cb9f0
        __t =
        __r = <optimized out>
        container_view = 0x45de3fb0
        tree_view = 0x45de3fb0
        iter = 0x457b07b0
        filters = 0x457e6c00
        filter_list = 0x0
        n_filters = <optimized out>
        fs_disabled = <optimized out>
#7  0x00007f00d854cdba in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#8  0x00007f00d854cf33 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#9  0x0000000000533081 in gimp_drawable_filter_add_filter (filter=0x46fe6d70) at ../app/core/gimpdrawablefilter.c:1309
        image = 0x44df19e0
        __func__ = "gimp_drawable_filter_apply"
#10 gimp_drawable_filter_apply (filter=0x46fe6d70, area=0x0) at ../app/core/gimpdrawablefilter.c:757
        __func__ = "gimp_drawable_filter_apply"
#11 0x0000000000529fbe in gimp_drawable_edit_fill (drawable=<optimized out>, options=<optimized out>, undo_desc=0x97cf84 "Drop color to layer") at ../app/core/gimpdrawable-edit.c:226
        operation = 0x45500f20
        filter = 0x46fe6d70
        opacity = 1
        mode = GIMP_LAYER_MODE_NORMAL
        composite_mode = GIMP_LAYER_COMPOSITE_UNION
        context = <optimized out>
        x = 0
        y = 0
        width = 640
        height = 633
        __func__ = "gimp_drawable_edit_fill"
#12 0x00000000008805c3 in gimp_display_shell_dnd_fill (shell=0x4445f4f0, options=0x457dc140, undo_desc=0x97cf84 "Drop color to layer") at ../app/display/gimpdisplayshell-dnd.c:404
        image = 0x44df19e0
        drawables = 0x465648c0 = {0x457e72b0}
        iter = 0x465648c0 = {0x457e72b0}
#13 0x00000000008806f0 in gimp_display_shell_drop_color (widget=<optimized out>, x=<optimized out>, y=<optimized out>, color=0x46896120, data=0x4445f4f0) at ../app/display/gimpdisplayshell-dnd.c:451
        shell = 0x4445f4f0
        options = 0x457dc140
        __func__ = "gimp_display_shell_drop_color"
#14 0x000000000074618a in gimp_dnd_set_color_data (widget=0x4446ac10, x=662, y=693, set_color_func=0x880690 <gimp_display_shell_drop_color>, set_color_data=0x4445f4f0, selection=0x7ffd1ba8f0f0) at ../app/widgets/gimpdnd.c:1446
        color = <optimized out>
        __func__ = "gimp_dnd_set_color_data"
#15 0x0000000000746b4d in gimp_dnd_data_drop_handle (widget=0x4446ac10, context=0x45248a20, x=662, y=693, selection_data=0x7ffd1ba8f0f0, info=5, time=1206107888, data=0x0) at ../app/widgets/gimpdnd.c:896
        set_data_func = <optimized out>
        set_data_data = <optimized out>
        dnd_data = <optimized out>
        data_type = <optimized out>
        __func__ = "gimp_dnd_data_drop_handle"
#16 0x00007f00d74db406 in _gtk_marshal_VOID__OBJECT_INT_INT_BOXED_UINT_UINTv () at /lib64/libgtk-3.so.0
#17 0x00007f00d854cdba in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#18 0x00007f00d854d15a in g_signal_emit_by_name () at /lib64/libgobject-2.0.so.0
#19 0x00007f00d77dc7f4 in gtk_drag_selection_received () at /lib64/libgtk-3.so.0
#20 0x00007f00d74d728b in _gtk_marshal_VOID__BOXED_UINTv () at /lib64/libgtk-3.so.0
#21 0x00007f00d854cdba in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#22 0x00007f00d854d15a in g_signal_emit_by_name () at /lib64/libgobject-2.0.so.0
#23 0x00007f00d76d8969 in gtk_selection_convert () at /lib64/libgtk-3.so.0
#24 0x00007f00d77df64d in gtk_drag_dest_drop.lto_priv () at /lib64/libgtk-3.so.0
#25 0x00007f00d76458f0 in gtk_main_do_event () at /lib64/libgtk-3.so.0
#26 0x00007f00d737b427 in _gdk_event_emit () at /lib64/libgdk-3.so.0
#27 0x00007f00d73d482e in gdk_event_source_dispatch.lto_priv () at /lib64/libgdk-3.so.0
#28 0x00007f00d842c4fc in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#29 0x00007f00d848a6b8 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#30 0x00007f00d8429b83 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#31 0x00007f00d819301d in g_application_run () at /lib64/libgio-2.0.so.0
#32 0x000000000066b52a in app_run (full_prog_name=0x25c6af0 "/home/contrast/Applications/gimp_nde//bin/gimp-2.99", filenames=<optimized out>, alternate_system_gimprc=alternate_system_gimprc@entry=0x0, alternate_gimprc=alternate_gimprc@entry=0x0, session_name=<optimized out>, batch_interpreter=<optimized out>, batch_commands=0x0, quit=0, as_new=0, no_interface=0, no_data=<optimized out>, no_fonts=<optimized out>, no_splash=0, be_verbose=0, use_shm=1, use_cpu_accel=1, console_messages=0, use_debug_handler=0, show_playground=1, show_debug_menu=1, stack_trace_mode=GIMP_STACK_TRACE_QUERY, pdb_compat_mode=<optimized out>, backtrace_file=0x25aaef0 "/home/contrast/.config/GIMP/2.99/CrashLog/gimp-crash-1708657731.txt") at ../app/app.c:317
        gimp = 0x27b6cb0
        app = 0x28f0520
        default_folder = 0x0
        gimpdir = 0x28f0930
        abort_message = <optimized out>
        retval = 0
        __func__ = "app_run"
#33 0x00000000004abd65 in main (argc=<optimized out>, argv=<optimized out>) at ../app/main.c:786
        context = 0x25c6b70
        error = 0x0
        abort_message = <optimized out>
        basename = <optimized out>
        system_gimprc_file = 0x0
        user_gimprc_file = 0x0
        gimp_group = <optimized out>
        backtrace_file = 0x25aaef0 "/home/contrast/.config/GIMP/2.99/CrashLog/gimp-crash-1708657731.txt"
        retval = <optimized out>
        i = <optimized out>
[Inferior 1 (process 1297535) detached]

```


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Thu Feb 22, 2024 11:41 pm  (#92) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
Outline Deluxe plugin is released. Download below
https://github.com/LinuxBeaver/Outline- ... n/releases

Attachment:
307221904-bd7c761c-9847-44b0-a2ae-6609b15bbf37.png
307221904-bd7c761c-9847-44b0-a2ae-6609b15bbf37.png [ 469.57 KiB | Viewed 455 times ]


Attachment:
307222574-21d83a85-8b13-4518-bb45-957277a7a756.png
307222574-21d83a85-8b13-4518-bb45-957277a7a756.png [ 574.27 KiB | Viewed 455 times ]



It has code and binaries and will work on 2.10 and 2.99 but it is specially intended for 2.99.19. Usually I do not release plugins several hours after I make them. This is a quickie exception.


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Tue Feb 27, 2024 3:20 am  (#93) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
-- Two New bugs caused by the same thing --

Anchoring a floating point with non-destructive filters creates a visual bug on layer with active effects if it is close to it. If the layer is far away enough it won't do that, but eitherway the anchor will double apply and clip the effect, and the original content in the layer will have a destructive effect. The double apply is the effect applying on a destructive layer.

Take the green and red square for example. The red square has always been there as a non-destructive layer. Green is a floating point that is being anchored in the same layer. Now the drop shadow creates a visual clip bug.

Clip bug created by anchoring a floating point on the same layer too close to alpha defined content. I incorrectly used the term "merged"
Attachment:
anchor_floating_point_dropshadow.png
anchor_floating_point_dropshadow.png [ 53.27 KiB | Viewed 388 times ]


Drop Shadow applying destructive bug by anchoring a floating point on the same layer with alpha defined content.
Attachment:
anchor_floating_point_destructive_original_dropshadow.png
anchor_floating_point_destructive_original_dropshadow.png [ 37.89 KiB | Viewed 388 times ]


The expected behaviour is for both shapes to exist on the same layer, anchoring a floating point should work without the clip or destructive anchor. I hope this bug gets solved. It appears the problem is that anchoring a floating point applies all layer effects when it shouldn't. - UPDATE I did a floating point with select all and it still failed to solve this problem.


Top
 Post subject: Re: CMYK Student's non-destructive dev build after 2.99.18 in use by m
PostPosted: Thu Apr 25, 2024 9:38 pm  (#94) 
Offline
GimpChat Member
User avatar

Joined: Oct 31, 2020
Posts: 1456
The bug above with the colored squares has been solved for a while now...


Moving onto previews of recent Gimp 2.99.19x

Attachment:
2024-04-25_22-18.png
2024-04-25_22-18.png [ 1.22 MiB | Viewed 210 times ]


The same template can be reused by merging floating points
Attachment:
non-destructive_template.png
non-destructive_template.png [ 796.04 KiB | Viewed 210 times ]


Outside of the aura plugin on the second image, both images are using the same "layer effects" for styling text and transparent images. This is called a 'non-destructive' template and I have been working like this in Pixelitor for TWO YEARS and now Gimp can finally do this type of work. The text you see was easily changed just by typing new text, but the image of the lady had to be deleted and replaced with a floating point of the greek bust statue. One could have also made a duplicate layer and then deleted and added a floating point.

For a download to the text styling plugin that works in Gimp 2.10 and 2.99.19 go here
https://github.com/LinuxBeaver/Royal_Te ... /releases/


Top
Post new topic Reply to topic  [ 94 posts ]  Go to page Previous  1, 2, 3, 4, 5

All times are UTC - 5 hours [ DST ]


   Similar Topics   Replies 
No new posts CMYK student is going to implement non-destructive filters soon

0

No new posts Attachment(s) Plugin gives non-destructive GEGL Filters in 2.99.19+ layer mask

2

No new posts Attachment(s) COLOR CONVERTED TO CMYK

12

No new posts Attachment(s) Gimp-2.99.13 nightly build for Windows 64

8

No new posts Attachment(s) A little Subroutine to build Means between two Dimensional Vectors

2



* Login  



Powered by phpBB3 © phpBB Group