Skip to content
Snippets Groups Projects
  1. Apr 10, 2025
  2. Mar 21, 2025
  3. Mar 13, 2025
  4. Mar 03, 2025
  5. Mar 02, 2025
  6. Feb 05, 2025
  7. Feb 04, 2025
  8. Jan 25, 2025
  9. Jan 23, 2025
  10. Jan 08, 2025
    • Timo Teräs's avatar
      2c44cd64
    • Timo Teräs's avatar
      compositor: render full screen after startup · 6ceffeda
      Timo Teräs authored
      
      There is a history of artifacts after startup. Commit 554e5c7a
      was applied to clear the frame buffer so that "undefined" data
      would not be used. That "undefined" data often was latest rendered
      image, and it was actually masking the underlying problem.
      
      On startup, a full paint of the screen is never scheduled for
      the frame buffer. This causes parts of the render buffer to remain
      untouched (now black). And when executing a flip, those areas are
      now black instead of "undefined" or "likely old image".
      
      The problem is clearly visible, when you have background set, and you
      execute xfwm4 --replace from a terminal. Most of the background will
      be black instead of the background image. When moving the terminal
      around it will "fix" the areas it moves over.
      
      Another visible glitch is flash of black screen when logging in
      from lightdm or other display manager which preloads the users
      background image as root tile before starting the window manager.
      
      Fix this be scheduling a full rendering of the screen once it
      becomes managed by the compositor.
      
      Signed-off-by: default avatarTimo Teräs <timo.teras@iki.fi>
      Closes: #684
      6ceffeda
  11. Jan 06, 2025
  12. Dec 30, 2024
  13. Dec 18, 2024
  14. Dec 15, 2024
  15. Dec 08, 2024
  16. Dec 02, 2024
  17. Dec 01, 2024
  18. Nov 20, 2024
  19. Nov 19, 2024
  20. Nov 17, 2024
  21. Nov 15, 2024
  22. Nov 12, 2024
    • correctmost's avatar
      hints: Fix buffer overflow in XChangeProperty · 39d31266
      correctmost authored
      Longs must be used instead of ints when calling XChangeProperty
      with a format=32 parameter.
      
      This commit fixes the following overflow detected by ASan:
      
      ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7baddb87a3a8
      READ of size 8 at 0x7baddb87a3a8 thread T0
          #0 0x7bade030095c in _XData32 libx11/src/XlibInt.c:1684
          #1 0x7bade01e0e53 in XChangeProperty libx11/src/ChProp.c:83
          #2 0x58f754bce6a8 in setWMState xfwm4/src/hints.c:91
          #3 0x58f754b48c84 in clientShowSingle xfwm4/src/client.c:2403
          #4 0x58f754b48c84 in clientShow xfwm4/src/client.c:2429
          #5 0x58f754bbcf3b in clientFocusNew xfwm4/src/focus.c:249
          #6 0x58f754b61a38 in clientFrame xfwm4/src/client.c:2017
          #7 0x58f754bb17c4 in handleMapRequest xfwm4/src/events.c:1171
          #8 0x58f754bb17c4 in handleEvent xfwm4/src/events.c:2221
          #9 0x58f754bb17c4 in xfwm4_event_filter xfwm4/src/events.c:2302
          #10 0x58f754ba422a in eventXfwmFilter xfwm4/src/event_filter.c:175
          #11 0x7bade6d5d337 in gdk_event_apply_filters gdk/x11/gdkeventsource.c:79
          #12 0x7bade6d5dc84 in gdk_event_source_translate_event gdk/x11/gdkeventsource.c:198
          #13 0x7bade6d5dc84 in _gdk_x11_display_queue_events gdk/x11/gdkeventsource.c:341
          #14 0x7bade6c9c1fc in gdk_display_get_event gdk/gdkdisplay.c:442
          #15 0x7bade6d5d492 in gdk_event_source_dispatch gdk/x11/gdkeventsource.c:363
          #16 0x7bade128ed06 in g_main_dispatch glib/gmain.c:3357
          #17 0x7bade128ed06 in g_main_context_dispatch_unlocked glib/gmain.c:4208
          #18 0x7bade129ba5a in g_main_context_iterate_unlocked glib/gmain.c:4273
          #19 0x7bade129d1be in g_main_loop_run glib/gmain.c:4475
          #20 0x7bade75f7bd6 in gtk_main gtk/gtkmain.c:1329
          #21 0x58f754be21a2 in main xfwm4/src/main.c:721
      
      Address 0x7baddb87a3a8 is located in stack of thread T0 at offset 40 in frame
          #0 0x58f754bce568 in setWMState xfwm4/src/hints.c:83
      
        This frame has 1 object(s):
          [32, 40) 'data' (line 84) <== Memory access at offset 40 overflows this variable
      39d31266
  23. Nov 01, 2024
  24. Oct 31, 2024
  25. Oct 23, 2024
  26. Oct 21, 2024
  27. Oct 10, 2024
Loading