Explorar el Código

Provide (semi) sensible default search dirs

Luna Stadler %!s(int64=4) %!d(string=hace) años
padre
commit
d0cc191348
Se han modificado 1 ficheros con 4 adiciones y 2 borrados
  1. 4 2
      zig/sdl/hello_sdl.zig

+ 4 - 2
zig/sdl/hello_sdl.zig

425
425
426
    var dirsList = std.ArrayList([]const u8).init(gpa);
426
    var dirsList = std.ArrayList([]const u8).init(gpa);
427
    var dirsString = std.ArrayList(u8).init(gpa);
427
    var dirsString = std.ArrayList(u8).init(gpa);
428
    const downloadsDir = try std.fs.path.join(gpa, &[_][]const u8{ std.os.getenv("HOME").?, "Downloads" });
428
    if (std.os.getenv("SEARCH_DIRS")) |dirsEnv| {
429
    if (std.os.getenv("SEARCH_DIRS")) |dirsEnv| {
429
        var dirs = std.mem.split(u8, dirsEnv, ":");
430
        var dirs = std.mem.split(u8, dirsEnv, ":");
430
        var dir = dirs.next();
431
        var dir = dirs.next();
432
            try dirsList.append(dir.?);
433
            try dirsList.append(dir.?);
433
        }
434
        }
434
    } else {
435
    } else {
435
        try dirsList.append("/home/luna/k/the-thing");
436
        try dirsList.append("/home/luna/t/zig");
436
        try dirsList.append(downloadsDir);
437
        try dirsList.append("/usr/include");
437
    }
438
    }
438
    Config.searchDirectories = dirsList.toOwnedSlice();
439
    Config.searchDirectories = dirsList.toOwnedSlice();
439
    for (Config.searchDirectories) |dir| {
440
    for (Config.searchDirectories) |dir| {
443
    Config.searchDirectoriesString = dirsString.toOwnedSlice();
444
    Config.searchDirectoriesString = dirsString.toOwnedSlice();
444
    defer gpa.free(Config.searchDirectories);
445
    defer gpa.free(Config.searchDirectories);
445
    defer gpa.free(Config.searchDirectoriesString);
446
    defer gpa.free(Config.searchDirectoriesString);
447
    defer gpa.free(downloadsDir);
446
448
447
    if (c.SDL_Init(c.SDL_INIT_VIDEO) != 0) {
449
    if (c.SDL_Init(c.SDL_INIT_VIDEO) != 0) {
448
        c.SDL_Log("Unable to initialize SDL: %s", c.SDL_GetError());
450
        c.SDL_Log("Unable to initialize SDL: %s", c.SDL_GetError());