Use g_direct_hash() rather than GPOINTER_TO_INT for Canberra cancellation
Use g_direct_hash() rather than GPOINTER_TO_INT for Canberra cancellation

libcanberra allows you to supply an integer ID for cancellation
purposes. GSound instead uses GCancellables. Previously we
used GPOINTER_TO_INT to pass the address of the GCancellable as
the integer ID to libcanberra, but whilst this does work, it
feels a bit dodgy on 64-bit. I have no idea whether g_direct_hash()
does anything smarter, but it feels a bit cleaner.

GNOME/gsound,tcbrindle/gsound,GNOME/gsound,tcbrindle/gsound