| author | |
| committer | |
| log | b85524d0c83686b7492aee78d5f766e76b59fc90 |
| tree | b980218e98e957460fc3190efdd441eae5295db9 |
| parent | 32af0f6154edb1c1434d0bb489d2abfea7da1685 |
3 files changed, 8 insertions(+), 7 deletions(-)
lib/std/Io.zig+1-1| ... | ... | @@ -2242,5 +2242,5 @@ pub fn unlockStderr(io: Io) void { |
| 2242 | 2242 | pub fn environ(io: Io, name: []const u8) ?[]const u8 { |
| 2243 | 2243 | _ = io; |
| 2244 | 2244 | _ = name; |
| 2245 | if (true) @panic("TODO"); | |
| 2245 | if (true) @panic("TODO Io.environ"); | |
| 2246 | 2246 | } |
lib/std/Io/Threaded.zig+3-3| ... | ... | @@ -12711,21 +12711,21 @@ fn scanEnviron(t: *Threaded) void { |
| 12711 | 12711 | fn processReplace(userdata: ?*anyopaque, options: std.process.ReplaceOptions) std.process.ReplaceError { |
| 12712 | 12712 | _ = userdata; |
| 12713 | 12713 | _ = options; |
| 12714 | @panic("TODO"); | |
| 12714 | @panic("TODO processReplace"); | |
| 12715 | 12715 | } |
| 12716 | 12716 | |
| 12717 | 12717 | fn processReplacePath(userdata: ?*anyopaque, dir: Dir, options: std.process.ReplaceOptions) std.process.ReplaceError { |
| 12718 | 12718 | _ = userdata; |
| 12719 | 12719 | _ = dir; |
| 12720 | 12720 | _ = options; |
| 12721 | @panic("TODO"); | |
| 12721 | @panic("TODO processReplacePath"); | |
| 12722 | 12722 | } |
| 12723 | 12723 | |
| 12724 | 12724 | fn processSpawnPath(userdata: ?*anyopaque, dir: Dir, options: process.SpawnOptions) process.SpawnError!process.Child { |
| 12725 | 12725 | _ = userdata; |
| 12726 | 12726 | _ = dir; |
| 12727 | 12727 | _ = options; |
| 12728 | @panic("TODO"); | |
| 12728 | @panic("TODO processSpawnPath"); | |
| 12729 | 12729 | } |
| 12730 | 12730 | |
| 12731 | 12731 | const processSpawn = switch (native_os) { |
lib/std/process/Environ.zig+4-3| ... | ... | @@ -150,7 +150,7 @@ pub const Map = struct { |
| 150 | 150 | } |
| 151 | 151 | |
| 152 | 152 | pub fn contains(m: *const Map, key: []const u8) bool { |
| 153 | return m.contains(key); | |
| 153 | return m.array_hash_map.contains(key); | |
| 154 | 154 | } |
| 155 | 155 | |
| 156 | 156 | /// If there is an entry with a matching key, it is deleted from the hash |
| ... | ... | @@ -579,10 +579,11 @@ pub const CreateBlockOptions = struct { |
| 579 | 579 | /// Creates a null-delimited environment variable block in the format expected |
| 580 | 580 | /// by POSIX, from a different one. |
| 581 | 581 | pub fn createBlock(existing: Environ, arena: Allocator, options: CreateBlockOptions) Allocator.Error![:null]?[*:0]u8 { |
| 582 | const existing_block: [*:null]const ?[*:0]const u8 = @ptrCast(existing.block); | |
| 582 | 583 | const existing_count, const contains_zig_progress = c: { |
| 583 | 584 | var count: usize = 0; |
| 584 | 585 | var contains = false; |
| 585 | while (existing.block[count]) |line| : (count += 1) { | |
| 586 | while (existing_block[count]) |line| : (count += 1) { | |
| 586 | 587 | contains = contains or mem.eql(u8, mem.sliceTo(line, '='), "ZIG_PROGRESS"); |
| 587 | 588 | } |
| 588 | 589 | break :c .{ count, contains }; |
| ... | ... | @@ -617,7 +618,7 @@ pub fn createBlock(existing: Environ, arena: Allocator, options: CreateBlockOpti |
| 617 | 618 | i += 1; |
| 618 | 619 | } |
| 619 | 620 | |
| 620 | while (existing.block[existing_index]) |line| : (existing_index += 1) { | |
| 621 | while (existing_block[existing_index]) |line| : (existing_index += 1) { | |
| 621 | 622 | if (mem.eql(u8, mem.sliceTo(line, '='), "ZIG_PROGRESS")) switch (zig_progress_action) { |
| 622 | 623 | .add => unreachable, |
| 623 | 624 | .delete => continue, |