rendered paste body#include <stdio.h>#include <string.h>#include <time.h>#include <gtk/gtk.h>gboolean quitter(gpointer ptr) { gtk_main_quit(); return FALSE;}int main(int argc, char **argv) { GtkRecentManager *rec; GList *list; int i; char buf[64]; GtkRecentData data; const time_t now = time(NULL); gtk_init(&argc, &argv); rec = gtk_recent_manager_get_default(); list = gtk_recent_manager_get_items(rec); printf("The recent list has %u items. Adding 100.\n", g_list_length(list)); for (i = 0; i < 100; i++) { sprintf(buf, "file:///tmp/dummy%lu_%u", now, i); data.display_name = strdup(buf); data.description = strdup(buf); data.mime_type = strdup ("application/octet-stream"); data.app_name = strdup("killer"); data.app_exec = strdup("No such command"); data.groups = NULL; data.is_private = FALSE; if (!gtk_recent_manager_add_full(rec, buf, &data)) { puts("Failed"); return 1; } } list = gtk_recent_manager_get_items(rec); printf("The recent list now has %u items.\n", g_list_length(list)); g_timeout_add(100, quitter, NULL); gtk_main(); return 0;}