[PATCH spice-gtk 00/15] remove channels from session on disconnect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

This is the follow-up series on channel lifecycle changes, removing
channels from session on disconnection. The previous series revealed
some issues relatd to direct access to session fields. This new series
adds a lot more checks so that no session private field can be
accessed diretly anymore. This should avoid potential crashes, and
after careful review of SpiceSession accessors, the should be no
direct or shared pointer access left.

This prevents crashes as reported by Christophe during review, however
critical messages are still possible. So far, I couldn't reproduce
anymore, but we should be prepared to fix more now.

Marc-André Lureau (15):
  audio: do not access session private struct
  session: protect internal functions against NULL
  Add spice_session_is_migration_copy()
  smartcard: use spice_session_is_migration_copy()
  session: add and use internal accessors
  webdav: move initialization to session
  usb: move device manager initialization to session
  gtk: do not require glib session private fields
  session: move SpiceSessionPrivate out of headers
  session: remove channels on disconnect
  display: don't reschedule stream if disconnected from session
  channel: deprecate spice_channel_destroy()
  session: remove sticky disconnecting flag
  session: keep a reference on disconnect
  session: disconnect in idle

 doc/reference/spice-gtk-sections.txt |   1 +
 gtk/channel-display.c                |   5 +-
 gtk/channel-main.c                   |  13 +-
 gtk/channel-smartcard.c              |  20 +-
 gtk/channel-webdav.c                 |  34 +--
 gtk/desktop-integration.c            |   7 +-
 gtk/map-file                         |   1 +
 gtk/spice-audio.c                    |  50 +---
 gtk/spice-channel.c                  |  15 +-
 gtk/spice-channel.h                  |   3 +-
 gtk/spice-glib-sym-file              |   1 +
 gtk/spice-gtk-session.c              |   4 +-
 gtk/spice-session-priv.h             |  98 +------
 gtk/spice-session.c                  | 481 ++++++++++++++++++++++++++++-------
 gtk/spice-session.h                  |   1 +
 gtk/usb-device-manager.c             |  35 +--
 16 files changed, 464 insertions(+), 305 deletions(-)

-- 
2.1.0

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]