1. 16 Apr, 2019 1 commit
    • Adam Duskett's avatar
      Only build tests if certain conditions are met. · e7b0d89a
      Adam Duskett authored
      Currently, there is no way to prevent tests from building using meson.
      When cross-compiling, building the tests isn't necessary.
      
      Instead, only build the tests on the following conditions:
      1) If not cross-compiling.
      2) If cross-compiling, and there is an exe wrapper.
      e7b0d89a
  2. 12 Apr, 2019 10 commits
  3. 11 Apr, 2019 1 commit
  4. 29 Mar, 2019 1 commit
  5. 27 Mar, 2019 2 commits
  6. 26 Mar, 2019 3 commits
  7. 25 Mar, 2019 1 commit
    • Stefan Sperling's avatar
      Fix use-after-free triggered by gnome-session-binary · 052ad609
      Stefan Sperling authored
      ostream_flush_cb() was calling flush_data_list_complete() with a single
      element list with an item that had already been freed. This was observed
      on OpenBSD where memory is overwritten with 0xdf during free():
      
          error=0x0) at ../glib-2.58.3/gio/gdbusprivate.c:1156
      1156          g_mutex_lock (&f->mutex);
      (gdb) p /x *f
      $74 = {mutex = {p = 0xdfdfdfdfdfdfdfdf, i = {0xdfdfdfdf, 0xdfdfdfdf}},
        cond = { p = 0xdfdfdfdfdfdfdfdf, i = {0xdfdfdfdf, 0xdfdfdfdf}},
        number_to_wait_for = 0xdfdfdfdfdfdfdfdf, error = 0x0}
      
      This happened because the thread freeing the element didn't properly wait
      for the asynchronous flush operation to finish.
      Gnome's developer docs say: "g_cond_wait() must always be used in a loop"
      https://developer.gnome.org/glib/stable/glib-Threads.html#g-cond-wait
      052ad609
  8. 22 Mar, 2019 3 commits
  9. 21 Mar, 2019 1 commit
  10. 16 Mar, 2019 2 commits
    • LRN's avatar
      GIO: Convert ENOTSOCK to G_IO_ERROR_INVALID_ARGUMENT · 5df0337f
      LRN authored
      instead of using a generic G_IO_ERROR_FAILED error code.
      This is in line with what W32 part of the code is doing with WSAENOTSOCK.
      
      This fix will break two tests in libsoup, which were written following
      the implementation and thus expect G_IO_ERROR_FAILED when attempting to
      do stuff with no-longer-valid socket descriptors.
      5df0337f
    • Emmanuele Bassi's avatar
      Revert "headers: Add various missing G_DISABLE_DEPRECATED guards" · e5ba5845
      Emmanuele Bassi authored
      This reverts commit 80fcb1bc.
      
      G_DISABLE_DEPRECATED should never be used by anybody, least of all by
      GLib. We have deprecation annotations for the compiler, these days, and
      they are much better suited than a macro that makes symbols appear and
      disappear. The fact that gtk-doc doesn't understand the deprecation
      annotations is a limitation of gtk-doc, and it's gtk-doc that ought to be
      fixed.
      
      Commit 80fcb1bc broke GStreamer, which disables old API that was
      deprecated before the introduction of the deprecation annotations, but
      still uses newly deprecated one, and relies on the deprecation
      annotations to do their thing. It also broke libsoup, as it uses
      GValueArray in its own API.
      e5ba5845
  11. 15 Mar, 2019 15 commits