gdesktopappinfo: Gracefully handle NULL URIs when passed to expand_macro()
gdesktopappinfo: Gracefully handle NULL URIs when passed to expand_macro()

If an application calls g_app_info_launch_uris() with a GList that includes
NULL values in some of its data members, and GIO ends up internally calling
g_desktop_app_info_launch_uris_with_spawn() for whatever reason (e.g. no
D-Bus session available), expand_macro() will crash due to the invalid data.

As this is considered a programmer error, use g_return_val_if_fail() in those
situations to prevent the crash from happening, but printing a warning anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=791337

johne53/MB3Glib,johne53/MB3Glib,johne53/MB3Glib,endlessm/glib,endlessm/glib,endlessm/glib,endlessm/glib,johne53/MB3Glib,johne53/MB3Glib,johne53/MB3Glib,endlessm/glib