1. 22 Sep, 2020 1 commit
  2. 12 Sep, 2020 1 commit
  3. 26 Jun, 2020 9 commits
    • Emmanuele Bassi's avatar
      Update the NEWS file for 2.41 · 358a1736
      Emmanuele Bassi authored
      358a1736
    • Emmanuele Bassi's avatar
      Remove the libjasper-based JPEG2000 loader · 4a278c66
      Emmanuele Bassi authored
      Libjasper is not really maintained any more, and has been dropped by
      various Linux distributions over the years.
      
      GdkPixbuf has not enabled the JPEG2000 loader by default in many years,
      relying on downstream distributors to do so if they also shipped
      libjasper. This means that it's unlikely anybody has relied on GdkPixbuf
      to load a JPEG2000 image for the past 3 to 5 years, if at all.
      
      The only other option for loading JPEG2000 images is to use OpenJPEG,
      and for that there is an out of tree GdkPixbuf module available:
      
      https://notabug.org/necklace/jp2-pixbuf-loader
      
      Fixes: #152, #137
      4a278c66
    • Emmanuele Bassi's avatar
      docs: Update the option used to generate the API reference · 79798c0a
      Emmanuele Bassi authored
      We use `gtk_doc`, now.
      79798c0a
    • Jan Ziak's avatar
      pixops: Avoid division during alpha scaling · 679e9ed7
      Jan Ziak authored
      This patch significantly improves performance
      of gtksourceview-2.10.5 full-screen redraw
      on a 4K display with an alpha channel.
      
      Divisions by the common value 0xff0000 are converted into
      multiplications by an optimizing C compiler.
      For other values, 3 divisions are reduced to 1 division,
      3 multiplications and some float-to-int conversions.
      679e9ed7
    • Emmanuele Bassi's avatar
      ci: Build and deploy the API reference · c7eada6c
      Emmanuele Bassi authored
      c7eada6c
    • Emmanuele Bassi's avatar
      Add `gtk_doc` build option · 716158e6
      Emmanuele Bassi authored
      And deprecate the `docs` one.
      
      The `gtk_doc` option is shared across GNOME modules, so we should
      conform to the established practice.
      716158e6
    • Emmanuele Bassi's avatar
      docs: Move the core data section to the source file · 1479726a
      Emmanuele Bassi authored
      The relative links in the functions documentation stanza refer to the
      current section; this means that, in order to refer to an anchor
      specified in a section the symbols must be in the same section within
      the same file.
      1479726a
    • Tobias Stoeckmann's avatar
      XPM: Fix undefined behaviour · c22494b4
      Tobias Stoeckmann authored
      Pixel data in XPM files consists of color characters.
      
      XPM allows up to 31 characters per pixel (cpp). If the file defines
      a width larger than G_MAXINT / cpp, the calculated memory required
      to parse a single line (wbytes) leads to a signed integer overflow.
      
      On common systems, a signed integer overflow works as expected on
      a bit level. Properly crafted files can overflow the variable
      wbytes in a way that it is positive again, which leads to a
      "successful" parsing of the XPM file. The pixel values itself are
      not assigned by gdk-pixbuf code, therefore leaking raw memory
      returned by malloc.
      
      This might leak sensitive information through pixel values,
      depending on the actual application.
      
      Proof of Concept:
      
      /* XPM */
      static char * poc_xpm[] = {
      "138547333 1 1 31",
      "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  	c None",
      "---------------------------"};
      c22494b4
    • Tobias Stoeckmann's avatar
      XBM: Fix signed integer overflow. · 7ebedf37
      Tobias Stoeckmann authored
      Parsing an XBM file with pixel bits larger than int leads to undefined
      behavior (signed integer overflow).
      
      Since only the lowest 8 bits are used, this patched code produces the
      same images as before.
      
      Also do not increment gotone but set it to a value. If more than
      INT_MAX values are parsed, this int would overflow as well.
      
      Proof of Concept (compile with -fsanitize=undefined or -ftrapv):
      
      static unsigned char poc_bits[] = {
      0xFFFFFFFF };
      7ebedf37
  4. 24 Jun, 2020 1 commit
  5. 10 Jun, 2020 1 commit
  6. 03 May, 2020 2 commits
    • Christoph Reiter's avatar
      CI: Switch to the new win32 runners · ae582413
      Christoph Reiter authored
      powershell instead of cmd, win2016 instead of 2012r2
      ae582413
    • Ting-Wei Lan's avatar
      build: Bump _XOPEN_SOURCE to 700 · 01305271
      Ting-Wei Lan authored
      On FreeBSD, macros such as _POSIX_C_SOURCE and _XOPEN_SOURCE are used as
      a means to disable features instead of enabling features. Therefore,
      setting a macro to a value which is too small can make required features
      become unavailable.
      
      Commit f57bec33 sets _XOPEN_SOURCE to
      500 and causes compilation errors on FreeBSD because of missing C99
      support. FreeBSD libc automatically sets _POSIX_C_SOURCE to 199506 when
      _XOPEN_SOURCE is set to 500. Since 1995 < 1999, this also means all C99
      functions are disabled. To fix it, use a value matching the current
      definition of _POSIX_C_SOURCE=200809, which is _XOPEN_SOURCE=700.
      01305271
  7. 02 Apr, 2020 12 commits
  8. 01 Apr, 2020 1 commit
  9. 16 Mar, 2020 1 commit
  10. 19 Feb, 2020 1 commit
  11. 28 Jan, 2020 1 commit
  12. 27 Jan, 2020 1 commit
  13. 23 Jan, 2020 2 commits
  14. 07 Jan, 2020 6 commits