diff options
author | Rémy Saissy <remy.saissy@gmail.com> | 2010-05-23 19:43:46 +0200 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2010-06-07 20:53:11 +0200 |
commit | 43ce3d5003afdc4d561cf5f83b0693db870977b2 (patch) | |
tree | 0e4d053e4a93d6931af287b446c1dfb186cc60c0 /ccode | |
parent | 2d97b4c471b45ec3cf0a7f19bc560d652a2560db (diff) | |
download | vala-43ce3d5003afdc4d561cf5f83b0693db870977b2.tar.gz |
Create destination directory when writing C files
Fixes bug 612336.
Diffstat (limited to 'ccode')
-rw-r--r-- | ccode/valaccodewriter.vala | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ccode/valaccodewriter.vala b/ccode/valaccodewriter.vala index ea10cbe82..8f2575437 100644 --- a/ccode/valaccodewriter.vala +++ b/ccode/valaccodewriter.vala @@ -77,6 +77,12 @@ public class Vala.CCodeWriter { temp_filename = "%s.valatmp".printf (filename); stream = FileStream.open (temp_filename, "w"); } else { + /* + * File doesn't exist. In case of a particular destination (-d flag), + * check and create the directory structure. + */ + var dirname = Path.get_dirname (filename); + DirUtils.create_with_parents (dirname, 0755); stream = FileStream.open (filename, "w"); } |