From f7e22cef15bba4736cb8af17a5017413e68f7aab Mon Sep 17 00:00:00 2001 From: AaronBenDaniel <144371000+AaronBenDaniel@users.noreply.github.com> Date: Wed, 25 Jun 2025 10:33:18 -0400 Subject: [PATCH] fix(api): Remove control characters from chapter titles --- src/api/src/create_book/generators/epub.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/api/src/create_book/generators/epub.py b/src/api/src/create_book/generators/epub.py index 9261f5b..8339c61 100644 --- a/src/api/src/create_book/generators/epub.py +++ b/src/api/src/create_book/generators/epub.py @@ -2,6 +2,7 @@ from io import BytesIO from bs4 import BeautifulSoup from ebooklib import epub +from re import sub from ..models import Story from .types import AbstractGenerator @@ -63,7 +64,7 @@ class EPUBGenerator(AbstractGenerator): for idx, (part, tree) in enumerate(zip(self.story["parts"], self.parts)): chapter = epub.EpubHtml( - title=part["title"], file_name=f"{idx}_{part['id']}.xhtml" + title=sub(r'[\x00-\x1F\x7F]', '', part["title"]), file_name=f"{idx}_{part['id']}.xhtml" # Removes control characters from chapter title ) if self.images: