Skip to content

Commit 3d6dd06

Browse files
committed
Generate non-persisted iid if app_path is null
1 parent 81759fa commit 3d6dd06

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/telemetry/telemetry.zig

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,11 @@ fn TelemetryT(comptime P: type) type {
6060
}
6161

6262
fn getOrCreateId(app_dir_path_: ?[]const u8) ?[36]u8 {
63-
const app_dir_path = app_dir_path_ orelse return null;
63+
const app_dir_path = app_dir_path_ orelse {
64+
var id: [36]u8 = undefined;
65+
uuidv4(&id);
66+
return id;
67+
};
6468

6569
var buf: [37]u8 = undefined;
6670
var dir = std.fs.openDirAbsolute(app_dir_path, .{}) catch |err| {
@@ -146,6 +150,10 @@ test "telemetry: getOrCreateId" {
146150
std.fs.cwd().deleteFile("/tmp/" ++ IID_FILE) catch {};
147151
const id3 = getOrCreateId("/tmp/").?;
148152
try testing.expectEqual(false, std.mem.eql(u8, &id1, &id3));
153+
154+
const id4 = getOrCreateId(null).?;
155+
try testing.expectEqual(false, std.mem.eql(u8, &id1, &id4));
156+
try testing.expectEqual(false, std.mem.eql(u8, &id3, &id4));
149157
}
150158

151159
test "telemetry: sends event to provider" {

0 commit comments

Comments
 (0)