GLib Improvements

  • Unicode manipulation functions
  • Coding set conversion functions
  • More complete thread library
  • GMarkup: tiny XML-like parser
  • GError: good error messages on failure
    if (!g_file_get_contents (filename, &text, &length, &error))
      {
        GtkWidget = gtk_message_dialog_new (parent, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR,
    	                                GTK_BUTTONS_OK, "%s",
    	                                error->message);
        gtk_dialog_run (dialog);
        gtk_widget_destroy (dialog);
        g_clear_error (&error);
      }