diff options
author | Marc-André Lureau <marcandre.lureau@gmail.com> | 2013-05-16 01:54:01 +0200 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@gmail.com> | 2013-05-16 02:38:44 +0200 |
commit | f111627a1a1fcb6b83b6cf8bdaacfa72cf3a3f6f (patch) | |
tree | 684f0eafc65850c12673f50d0cf924ff25a2329b /tools/wixl/builder.vala | |
parent | 73cf9832c693b548bd1732ab77bec9e349e3cdd6 (diff) | |
download | msitools-f111627a1a1fcb6b83b6cf8bdaacfa72cf3a3f6f.tar.gz msitools-f111627a1a1fcb6b83b6cf8bdaacfa72cf3a3f6f.tar.xz msitools-f111627a1a1fcb6b83b6cf8bdaacfa72cf3a3f6f.zip |
wixl: handle CustomAction of type DLL_BINARY
Diffstat (limited to 'tools/wixl/builder.vala')
-rw-r--r-- | tools/wixl/builder.vala | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/tools/wixl/builder.vala b/tools/wixl/builder.vala index b57cac8..0855fe5 100644 --- a/tools/wixl/builder.vala +++ b/tools/wixl/builder.vala @@ -1019,8 +1019,13 @@ namespace Wixl { } public override void visit_custom_action (WixCustomAction action) throws GLib.Error { + CustomActionType type; + // FIXME: so many missing things here... - var type = CustomActionType.EXE_PROPERTY; + if (action.DllEntry != null) + type = CustomActionType.DLL_BINARY; + else + type = CustomActionType.EXE_PROPERTY; if (action.Return == "ignore") type |= CustomActionType.CONTINUE; @@ -1029,7 +1034,10 @@ namespace Wixl { if (!parse_yesno (action.Impersonate)) type |= CustomActionType.NO_IMPERSONATE; - db.table_custom_action.add (action.Id, type, action.Property, action.ExeCommand); + string source = action.Property ?? action.BinaryKey; + string target = action.ExeCommand ?? action.DllEntry; + + db.table_custom_action.add (action.Id, type, source, target); } public override void visit_binary (WixBinary binary) throws GLib.Error { |