fixed memory leak

This commit is contained in:
k 2025-09-26 11:18:46 -04:00
parent f9dda928b2
commit 059f672c17

View File

@ -68,13 +68,15 @@ fn uci(str: []const u8, game: *c.game, alloc: std.mem.Allocator) uciRet {
fn uciPos(str: []const u8, alloc: std.mem.Allocator) *c.game {
const pos = std.mem.indexOfAny(u8, str, " \t\n\r") orelse str.len;
const tok = str[0..pos];
var game = fenGame("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1", alloc);
//var game = fenGame("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1", alloc);
if (std.mem.eql(u8, tok, "fen")) return fenGame(str[pos..], alloc);
if (std.mem.eql(u8, tok, "startpos")) {
var game = fenGame("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1", alloc);
game = playMoves(game, str[pos..]);
}
return game;
}
return fenGame("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1", alloc); //this should be an error
}
fn fenGame(str: []const u8, alloc: std.mem.Allocator) [*c]c.game {
var pos: u8 = 0;