Вы находитесь в segfaulting, потому что смешиваете GList и устаревшие GtkList функции списка.
Старый GtkList устарел и отличается от GList . Примечание:
GList (*List) = NULL;
...
List = g_list_prepend(List, "List Item");
/* now you switch to gtk_list_... and GtkList */
gtk_container_add(GTK_CONTAINER(Vbox), ListBox);
gtk_list_prepend_items(GTK_LIST(ListBox), List);
Решение: просто используйте функции GList
и g_list...
и избегайте устаревших аналогов GtkList
и gtk_list...
. GList
и g_list...
были разработаны для замены более ранних типов и функций и будут работать без проблем при компиляции в приложении Gtk + 2.
preg_replace('/(?:(?:\r\n|\r|\n)\s*){2}/s', "\n\n", $text)
Что-то вроде
preg_replace('/(\r|\n|\r\n){2,}/', '<br/><br/>', $text);
должно работать, я думаю. Хотя я точно не помню синтаксис PHP, ему, возможно, потребуется еще немного уйти: - /