summaryrefslogtreecommitdiff
path: root/giscanner/sourcescanner.c
diff options
context:
space:
mode:
Diffstat (limited to 'giscanner/sourcescanner.c')
-rw-r--r--giscanner/sourcescanner.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/giscanner/sourcescanner.c b/giscanner/sourcescanner.c
index 070397b4..7de891f5 100644
--- a/giscanner/sourcescanner.c
+++ b/giscanner/sourcescanner.c
@@ -309,14 +309,28 @@ gi_source_scanner_take_comment (GISourceScanner *scanner,
comment);
}
+/**
+ * gi_source_scanner_get_symbols:
+ * @scanner: scanner instance
+ *
+ * Returns: (transfer container): List of GISourceSymbol.
+ * Free resulting list with g_slist_free().
+ */
GSList *
gi_source_scanner_get_symbols (GISourceScanner *scanner)
{
- return g_slist_reverse (scanner->symbols);
+ return g_slist_reverse (g_slist_copy (scanner->symbols));
}
+/**
+ * gi_source_scanner_get_comments:
+ * @scanner: scanner instance
+ *
+ * Returns: (transfer container): List of GISourceComment.
+ * Free resulting list with g_slist_free().
+ */
GSList *
gi_source_scanner_get_comments(GISourceScanner *scanner)
{
- return g_slist_reverse (scanner->comments);
+ return g_slist_reverse (g_slist_copy (scanner->comments));
}