diff options
author | Marc-André Lureau <marcandre.lureau@gmail.com> | 2013-01-03 17:58:06 +0100 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@gmail.com> | 2013-01-06 16:38:26 +0100 |
commit | 951c6b1bcfcc5ddc8575ffd32cb0ebed532a428b (patch) | |
tree | e70f63f512f32a97548a0dac52603759ea73396b /src/util.vala | |
parent | d43a0c5613c3c88a845fdf183ed403bd95072cf4 (diff) | |
download | msitools-951c6b1bcfcc5ddc8575ffd32cb0ebed532a428b.tar.gz msitools-951c6b1bcfcc5ddc8575ffd32cb0ebed532a428b.tar.xz msitools-951c6b1bcfcc5ddc8575ffd32cb0ebed532a428b.zip |
Populate Registry table
Diffstat (limited to 'src/util.vala')
-rw-r--r-- | src/util.vala | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/util.vala b/src/util.vala index 0dfdd36..9ad72e2 100644 --- a/src/util.vala +++ b/src/util.vala @@ -67,4 +67,22 @@ namespace Wixl { return indented; } + public string generate_id (string prefix, uint n, ...) { + var l = va_list (); + var args = new string[n]; + + for (var i = 0; n > 0; n--) { + string? val = l.arg (); + if (val == null) + continue; + args[i] = val; // FIXME: misc vala bug when += + i += 1; + } + var data = string.joinv ("|", args); + var hash = Checksum.compute_for_string (ChecksumType.MD5, data); + var str = prefix + hash[0:32].up (); + + return str; + } + } // Wixl |