summaryrefslogtreecommitdiffstats
path: root/dbus
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-08-07 00:23:54 +0200
committerLennart Poettering <lennart@poettering.net>2009-10-17 00:28:29 +0200
commitdc11af9d1b7f029e6a58fd3354438032877efce4 (patch)
treeeecaa516b70b668478fcd5ad5fa4cc643b5464dd /dbus
parenta0e8a279802aa9f26a3ccf3f8ee27110a1509d19 (diff)
desktop-file: implement _dbus_desktop_file_get_section()
This allows us to iterate through the sections of a desktop file.
Diffstat (limited to 'dbus')
-rw-r--r--dbus/dbus-desktop-file.c12
-rw-r--r--dbus/dbus-desktop-file.h3
2 files changed, 15 insertions, 0 deletions
diff --git a/dbus/dbus-desktop-file.c b/dbus/dbus-desktop-file.c
index 30ca8438..6e241364 100644
--- a/dbus/dbus-desktop-file.c
+++ b/dbus/dbus-desktop-file.c
@@ -799,3 +799,15 @@ _dbus_desktop_file_get_string (DBusDesktopFile *desktop_file,
return TRUE;
}
+
+const char *
+_dbus_desktop_file_get_section (DBusDesktopFile *desktop_file,
+ unsigned i)
+{
+ DBusDesktopFileSection *section;
+
+ if (i >= desktop_file->n_sections)
+ return NULL;
+
+ return desktop_file->sections[i].section_name;
+}
diff --git a/dbus/dbus-desktop-file.h b/dbus/dbus-desktop-file.h
index 812d82f3..27f5e53c 100644
--- a/dbus/dbus-desktop-file.h
+++ b/dbus/dbus-desktop-file.h
@@ -46,4 +46,7 @@ dbus_bool_t _dbus_desktop_file_get_string (DBusDesktopFile *desktop_file,
char **val,
DBusError *error);
+const char *_dbus_desktop_file_get_section (DBusDesktopFile *desktop_file,
+ unsigned i);
+
#endif /* BUS_DESKTOP_FILE_H */