g_file_info_get_name returns NULL in contradiction to docs
Ran into a rust panic with this yesterday
https://docs.gtk.org/gio/method.FileInfo.get_name.html
This is guaranteed to always be set.
Also not marked as nullable.
But that seems to be nonsense:
#include <gio/gio.h>
#include <stdio.h>
int
main (int argc, char *argv[])
{
GFile* file;
GFileInfo* file_info;
file = g_file_new_for_path("/etc/os-release");
file_info = g_file_query_info(file, G_FILE_ATTRIBUTE_STANDARD_NAME, G_FILE_QUERY_INFO_NONE, NULL, NULL);
printf("name (G_FILE_ATTRIBUTE_STANDARD_NAME): %s\n", g_file_info_get_name(file_info));
file = g_file_new_for_path("/etc/os-release");
file_info = g_file_query_info(file, "*", G_FILE_QUERY_INFO_NONE, NULL, NULL);
printf("name (wildcard): %s\n", g_file_info_get_name(file_info));
file = g_file_new_for_path("/etc/os-release");
file_info = g_file_query_info(file, "", G_FILE_QUERY_INFO_NONE, NULL, NULL);
printf("name (nothing): %s\n", g_file_info_get_name(file_info));
return 0;
}
name (G_FILE_ATTRIBUTE_STANDARD_NAME): os-release
name (wildcard): os-release
name (nothing): (null)