From 0d0d2d44511565f6289bb72f49d8cf512d9e6443 Mon Sep 17 00:00:00 2001 From: Kbz-8 Date: Thu, 16 Oct 2025 10:36:31 +0200 Subject: [PATCH] fixing strings management --- macrolibpy/__init__.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/macrolibpy/__init__.py b/macrolibpy/__init__.py index 67af2ab..e0417fe 100644 --- a/macrolibpy/__init__.py +++ b/macrolibpy/__init__.py @@ -187,9 +187,11 @@ class Context: resizable: bool = True, fullscreen: bool = False, ) -> "Window": + ffi_title = ffi.new("char[]", title.encode('ascii', 'replace')) + info = ffi.new("mlx_window_create_info*") info.render_target = ffi.NULL - info.title = ffi.from_buffer(title.encode("utf-8")) + info.title = ffi_title info.width = int(width) info.height = int(height) info.is_fullscreen = bool(fullscreen) @@ -230,7 +232,8 @@ class Window: self._win = win def set_title(self, title: str) -> None: - lib.mlx_set_window_title(self._ctx._ctx, self._win, ffi.from_buffer(title.encode("utf-8"))) + ffi_title = ffi.new("char[]", title.encode('ascii', 'replace')) + lib.mlx_set_window_title(self._ctx._ctx, self._win, ffi_title) def clear(self, rgba: int) -> None: lib.mlx_clear_window(self._ctx._ctx, self._win, _rgbaToColor(rgba))