glib.path_buf.PathBuf is a helper type that allows you to easily build paths from individual elements, using the platform specific conventions for path separators.
g_auto (GPathBuf) path; g_path_buf_init (&path); g_path_buf_push (&path, "usr"); g_path_buf_push (&path, "bin"); g_path_buf_push (&path, "echo"); g_autofree char *echo = g_path_buf_to_path (&path); g_assert_cmpstr (echo, ==, "/usr/bin/echo");
You can also load a full path and then operate on its components:
g_auto (GPathBuf) path; g_path_buf_init_from_path (&path, "/usr/bin/echo"); g_path_buf_pop (&path); g_path_buf_push (&path, "sh"); g_autofree char *sh = g_path_buf_to_path (&path); g_assert_cmpstr (sh, ==, "/usr/bin/sh");
glib.path_buf.PathBuf is a helper type that allows you to easily build paths from individual elements, using the platform specific conventions for path separators.
You can also load a full path and then operate on its components: