--- core/Common/3dParty/html/katana-parser/src/foundation.c.orig	2025-12-04 03:36:03 UTC
+++ core/Common/3dParty/html/katana-parser/src/foundation.c
@@ -52,6 +52,7 @@
 void katana_string_append_characters(struct KatanaInternalParser* parser,
                                      const char* str, KatanaParserString* output)
 {
+    if (NULL == str) return;
     size_t len = strlen(str);
     maybe_resize_string(parser, len, output);
     memcpy(output->data + output->length, str, len);
@@ -62,6 +63,7 @@
                                       const char* str,
                                       KatanaParserString* output)
 {
+    if (NULL == str) return;
     size_t len = strlen(str);
     size_t new_length = output->length + len;
     char* new_data = katana_parser_allocate(parser, new_length);
@@ -83,7 +85,9 @@
 
 bool katana_string_has_prefix(const char* str, const char* prefix)
 {
+    if (NULL == prefix) return false;
     size_t pre_len = strlen(prefix);
+    if (NULL == prefix) return false;
     size_t str_len = strlen(str);
     return pre_len <= str_len && strncasecmp(prefix, str, pre_len);
 }
--- core/Common/3dParty/html/katana-parser/src/parser.c.orig	2025-12-04 03:15:29 UTC
+++ core/Common/3dParty/html/katana-parser/src/parser.c
@@ -39,7 +39,7 @@
 //#define assert(x)
 
 #define breakpoint
-#define KATANA_PARSER_STRING(literal) (KatanaParserString){ literal, sizeof(literal) - 1 }
+#define KATANA_PARSER_STRING(literal) { literal, sizeof(literal) - 1 }
 
 
 typedef void (*KatanaArrayDeallocator)(KatanaParser* parser, void* e);
@@ -1275,7 +1275,7 @@
            yyloc->last_line,
            yyloc->last_column,
            error,
-           katanaget_text(parser->scanner));
+           "error");
 
     YYSTYPE * s = katanaget_lval(parser->scanner);
 
@@ -1293,7 +1293,7 @@
     e->last_line = yyloc->last_line;
     e->last_column = yyloc->last_column;
     snprintf(e->message, KATANA_ERROR_MESSAGE_SIZE, "%s at %s", error,
-             katanaget_text(parser->scanner));
+             "error");
     katana_array_add(parser, e, &(parser->output->errors));
 }
 
--- core/Common/3dParty/html/katana-parser/src/tokenizer.c.orig	2025-12-04 03:15:29 UTC
+++ core/Common/3dParty/html/katana-parser/src/tokenizer.c
@@ -288,7 +288,7 @@
 #endif // #if KATANA_FELX_DEBUG
 #endif // #ifdef KATANA_FELX_DEBUG
 
-inline bool katana_is_html_space(char c)
+static inline bool katana_is_html_space(char c)
 {
     return c <= ' ' && (c == ' ' || c == '\n' || c == '\t' || c == '\r' || c == '\f');
 }
