summaryrefslogtreecommitdiff
path: root/giscanner/scannerlexer.l
diff options
context:
space:
mode:
authorJohan Dahlin <johan@gnome.org>2008-03-27 19:20:45 +0000
committerJohan Dahlin <johan@src.gnome.org>2008-03-27 19:20:45 +0000
commit8427c62f516831ffef9aa8e2b35748b856bf89ec (patch)
tree5fb3fd892c4577af55579f3dda9b57ee71e58934 /giscanner/scannerlexer.l
parent2faf92a1d87c6cd9b0d3dce20da74dc82a7e82c8 (diff)
downloadgobject-introspection-8427c62f516831ffef9aa8e2b35748b856bf89ec.tar.gz
Add simple pre-processor using subprocess and a PIPE. Change the
2008-03-27 Johan Dahlin <johan@gnome.org> * giscanner/giscannermodule.c: * giscanner/scannerlexer.l: * giscanner/sourcescanner.c: * tools/g-ir-scanner: Add simple pre-processor using subprocess and a PIPE. Change the parse_file apis to accept a file descriptor. svn path=/trunk/; revision=169
Diffstat (limited to 'giscanner/scannerlexer.l')
-rw-r--r--giscanner/scannerlexer.l10
1 files changed, 7 insertions, 3 deletions
diff --git a/giscanner/scannerlexer.l b/giscanner/scannerlexer.l
index 03455d73..9870efd7 100644
--- a/giscanner/scannerlexer.l
+++ b/giscanner/scannerlexer.l
@@ -384,9 +384,13 @@ process_directive (GISourceScanner *scanner)
if (filename_builder->len > 0) {
char *filename = g_strcompress (filename_builder->str);
- g_free (scanner->current_filename);
- scanner->current_filename = g_realpath(filename);
- g_free(filename);
+ if (g_realpath (filename))
+ {
+ g_free (scanner->current_filename);
+ scanner->current_filename = g_realpath (filename);
+ g_assert (scanner->current_filename);
+ g_free(filename);
+ }
}
g_string_free (filename_builder, TRUE);