Skip to content

Instantly share code, notes, and snippets.

@chergert
Created January 27, 2015 20:16
Show Gist options
  • Save chergert/6d2909dad8a55b8da34f to your computer and use it in GitHub Desktop.
Save chergert/6d2909dad8a55b8da34f to your computer and use it in GitHub Desktop.
clear/set weak pointer helpers
#define ide_clear_weak_pointer(ptr) \
(*(ptr) ? (g_object_remove_weak_pointer((GObject*)*(ptr), (gpointer*)ptr),1) : 0)
#define ide_set_weak_pointer(ptr,obj) \
((obj!=*(ptr)) ? (ide_clear_weak_pointer(ptr),*(ptr)=obj,g_object_add_weak_pointer((GObject*)obj, (gpointer*)ptr),1) : 0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment