summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/wixl/builder.vala12
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 {