Skip to content

Commit

Permalink
Mock libc wcwidth.
Browse files Browse the repository at this point in the history
  • Loading branch information
antarcticrainforest committed Jul 22, 2024
1 parent b029ca6 commit d7c8ad2
Showing 1 changed file with 20 additions and 7 deletions.
27 changes: 20 additions & 7 deletions pyinstaller/pre-win.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@
try:
import ansible

ansible_cli_path = Path(ansible.__file__).parent / "cli" / "__init__.py"
ansible_cli_path = (
Path(ansible.__file__).parent / "cli" / "__init__.py"
)
finally:
sys.getfilesystemencoding = getfilesystemencoding
locale.getlocale = getlocale
Expand All @@ -27,23 +29,34 @@
if f"os.{call}" in content:
write = True
if "import os, termios" not in content:
content = content.replace("import os", "import os, termios")
content = content.replace(
"import os", "import os, termios"
)
content = content.replace(f"os.{call}", f"termios.{call}")
if "get_context('fork')" in content or 'get_context("fork")' in content:
if (
"get_context('fork')" in content
or 'get_context("fork")' in content
):
write = True
content = content.replace("get_context('fork')", "get_context('spawn')")
content = content.replace('get_context("fork")', 'get_context("spwan")')
content = content.replace(
"get_context('fork')", "get_context('spawn')"
)
content = content.replace(
'get_context("fork")', 'get_context("spwan")'
)
if write:
inp_file.write_text(content, encoding="utf-8")
display = Path(ansible.__file__) / "utils" / "display.py"
display = Path(ansible.__file__).parent / "utils" / "display.py"
content = "\n".join(
[
l
for l in display.read_text(encoding="utf-8").splitlines()
if not l.startswith("_LIBC =")
]
)
content = content.replace("import ctypes.util", "ctypes.util\nimport wcwidth")
content = content.replace(
"import ctypes.util", "ctypes.util\nimport wcwidth"
)
display.write_text(content, encoding="utf-8")
else:
import PyInstaller.depend.bindepend
Expand Down

0 comments on commit d7c8ad2

Please sign in to comment.