summaryrefslogtreecommitdiffstats
path: root/gisi/iter.c
diff options
context:
space:
mode:
Diffstat (limited to 'gisi/iter.c')
-rw-r--r--gisi/iter.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gisi/iter.c b/gisi/iter.c
index a0a9b3a1..d0e534b3 100644
--- a/gisi/iter.c
+++ b/gisi/iter.c
@@ -223,3 +223,12 @@ gboolean g_isi_sb_iter_next(GIsiSubBlockIter *iter)
return TRUE;
}
+
+gboolean g_isi_sb_iter_get_struct(const GIsiSubBlockIter *restrict iter,
+ void **type, size_t len, unsigned pos)
+{
+ if (iter->start + pos + len > iter->end)
+ return FALSE;
+
+ return g_isi_sb_iter_get_data(iter, type, pos);
+}