Compile and link:
gcc -Wall `pkg-config --cflags --libs gtk+-2.0` -o liststore-demo example-liststore.c
The GetInfo function does not call stat anymore since the list stores the file info in the GtkListStore, which is a good place to store a list.
All the string pointers are initially set to NULL for 2 reasons. Actually, it's the same reason: If the "changed" signal is triggered and there is no list item selected, all the labels will be cleared of text (which is nice) and it is always safe to free a NULL pointer (which is also nice).
The 4th label, which displays the path to the file, no longer resizes the window. Ellipsis are inserted when the path text is bigger than than the label.
Fun fact: This example code eventually became ArcProphet