1. 01 Oct, 2021 1 commit
    • Jehan's avatar
      plug-ins: more replacement of g_file_get_path() to g_file_peek_path(). · 4ae3687c
      Jehan authored
      While doing this cleanup, I found at least several other string leaks
      in: file-compressor, file-gegl, file-pdf-save, file-raw-data, file-xwd,
      jpeg-load, psd-save…
      So it's quite worth it!
      Note: in file-pdf-save, there is a global variable file_name which seems
      to be happily leaked without caring (didn't look in details, but looks
      so). I didn't fix this one which will require a bit more in-depth logics
  2. 26 Aug, 2021 1 commit
    • Jehan's avatar
      app, libgimp*, pdb, plug-ins: use g_memdup2() instead of g_memdup() · 49e53424
      Jehan authored
      Since it appeared with GLib 2.68.0, we could not change this until we
      bumped the dependency which has only become possible a few days ago
      (since Debian testing is our baseline for dependency bumps). Cf.
      previous commit.
      As this is a drop-in replacement (just a guint parameter changed to
      gsize to avoid integer overflow), search-and-replace with:
      > sed -i 's/g_memdup\>/g_memdup2/g' `grep -rIl 'g_memdup\>' *`
      … followed by a few manual alignment tweaks when necessary.
      This gets rid of the many deprecation warnings which we had lately when
      building with a recent GLib version.
  3. 23 Jul, 2021 2 commits
  4. 29 Jan, 2021 1 commit
    • Jehan's avatar
      plug-ins: replace gimp_parasite_data*() with gimp_parasite_get_data(). · 63d6d770
      Jehan authored
      Similarly to the previous commit, it is not only about using the new
      API. I also make sure we do not assume that parasite data is
      nul-terminated. In many places, we were just assuming so because these
      were supposed to be parasite our code set. Yet these are data input
      contained in files which can be wrong for any reason (corrupted file,
      bugs, other scripts/plug-ins editing these parasites…). So instead of
      assuming string parasites are always correctly formatted, I make sure
      they are nul-terminated by passing them through g_strndup() when
  5. 17 May, 2020 1 commit
    • Jehan's avatar
      app: support saving/exporting with multi-selection. · d3139e0f
      Jehan authored
      This commit just changes our saving API (i.e. the GimpSaveProcedure
      class) to take an array of drawables as argument instead of a single
      It actually doesn't matter much for exporting as the whole API seems
      more or less bogus there and all formats plug-ins mostly care only
      whether they will merge/flatten all visible layers (the selected ones
      don't really matter) or if the format supports layers of some sort. It
      may be worth later strengthening a bit this whole logics, and maybe
      allow partial exports for instance.
      As for saving, it was not even looking at the passed GimpDrawable either
      and was simply re-querying the active layer anyway.
      Note that I don't implement the multi-selection saving in XCF yet in
      this commit. I only updated the API. The reason is that the current
      commit won't be backportable to gimp-2-10 because it is an API break. On
      the other hand, the code to save multi-selection can still be backported
      even though the save() API wil...
  6. 20 Sep, 2019 1 commit
  7. 11 Sep, 2019 1 commit
  8. 30 Aug, 2019 1 commit
  9. 24 Aug, 2019 1 commit
  10. 19 Aug, 2019 1 commit
    • Michael Natterer's avatar
      Change the "handles uri" flag of file procedures to "handle remote" · de121374
      Michael Natterer authored
      And always pass URIs to all file procedures, the ones what didn't
      register as "handles remove" will only ever get local file:// URIs.
      Change all file plug-ins (also legacy ones) to expect URIs instead
      of filenames, and convert to local paths in the plug-in.
      The wire protocol should now be almost 100% clean of non-UTF-8 strings.
  11. 14 Aug, 2019 1 commit
  12. 03 Aug, 2019 1 commit
  13. 22 Oct, 2018 1 commit
  14. 11 Jul, 2018 1 commit
  15. 18 Apr, 2018 1 commit
  16. 21 Aug, 2017 1 commit
    • Michael Natterer's avatar
      Move the new "default_new_layer_mode" APIs to the image... · e16c8a23
      Michael Natterer authored
      ...in both the core and libgimp.
      Images now know what the default mode for new layers is:
      - NORMAL for empty images
      - NORMAL for images with any non-legacy layer
      - NORMAL_LEGAVY for images with only legacy layers
      This changes behavior when layers are created from the UI, but *also*
      when created by plug-ins (yes there is a compat issue here):
      - Most (all?) single-layer file importers now create NORMAL layers
      - Screenshot, Webpage etc also create NORMAL layers
      Scripts that create images from scratch (logos etc) should not be
      affected because they usually have NORMAL_LEGACY hardcoded.
      3rd party plug-ins and scripts will also behave old-style unless they
      get ported to gimp_image_get_default_new_layer_mode().
  17. 20 Aug, 2017 1 commit
  18. 26 Feb, 2017 1 commit
  19. 08 Jan, 2017 1 commit
  20. 31 Oct, 2016 1 commit
  21. 23 Jul, 2014 1 commit
  22. 09 Nov, 2013 1 commit
  23. 20 May, 2013 1 commit
  24. 27 Nov, 2012 1 commit
  25. 21 Nov, 2012 1 commit
  26. 12 Oct, 2011 1 commit
  27. 10 Apr, 2011 1 commit
  28. 08 Apr, 2011 1 commit
  29. 08 Mar, 2011 2 commits
  30. 07 Mar, 2011 1 commit
  31. 12 Nov, 2010 1 commit
  32. 06 Sep, 2010 1 commit
  33. 12 May, 2010 2 commits
  34. 06 May, 2010 1 commit
  35. 21 Jul, 2009 1 commit
  36. 19 Jan, 2009 1 commit
    • Michael Natterer's avatar
      plug-ins/common/*.c plug-ins/color-rotate/color-rotate.c · 4ea14376
      Michael Natterer authored
      2009-01-19  Michael Natterer  <mitch@gimp.org>
      	* plug-ins/common/*.c
      	* plug-ins/color-rotate/color-rotate.c
      	* plug-ins/file-bmp/bmp.c
      	* plug-ins/file-faxg3/faxg3.c
      	* plug-ins/file-fits/fits.c
      	* plug-ins/file-fli/fli-gimp.c
      	* plug-ins/file-ico/ico.c
      	* plug-ins/file-jpeg/jpeg.c
      	* plug-ins/file-psd/psd-save.c
      	* plug-ins/file-psd/psd.c
      	* plug-ins/file-sgi/sgi.c
      	* plug-ins/file-uri/uri.c
      	* plug-ins/file-xjt/xjt.c
      	* plug-ins/flame/flame.c
      	* plug-ins/fractal-explorer/fractal-explorer.c
      	* plug-ins/gfig/gfig.c
      	* plug-ins/gimpressionist/gimp.c
      	* plug-ins/gradient-flare/gradient-flare.c
      	* plug-ins/help-browser/help-browser.c
      	* plug-ins/ifs-compose/ifs-compose.c
      	* plug-ins/imagemap/imap_main.c
      	* plug-ins/lighting/lighting-main.c
      	* plug-ins/map-object/map-object-main.c
      	* plug-ins/maze/maze.c
      	* plug-ins/metadata/metadata.c
      	* plug-ins/pagecurl/pagecurl.c
      	* plug-ins/print/print.c
      	* plug-ins/pygimp/gimpfu.py
      	* plug-ins/script-fu/script-fu-script.c
      	* plug-ins/script-fu/script-fu.c
      	* plug-ins/selection-to-path/selection-to-path.c
      	* plug-ins/twain/twain.c
      	* plug-ins/win-snap/winsnap.c: document the "run-mode" parameter
      	as we document enums for core procedures.
      svn path=/trunk/; revision=27922
  37. 17 Jan, 2009 1 commit
    • Michael Natterer's avatar
      Change licence to GPLv3 (and to LGPLv3 for libgimp). · d9b5207a
      Michael Natterer authored
      2009-01-17  Michael Natterer  <mitch@gimp.org>
      	* all files with a GPL header and all COPYING files:
      	Change licence to GPLv3 (and to LGPLv3 for libgimp).
      	Cleaned up some copyright headers and regenerated the parsers in
      	the ImageMap plugin.
      svn path=/trunk/; revision=27913