1 files changed, 4 insertions, 0 deletions
diff --git a/synapse/util/stringutils.py b/synapse/util/stringutils.py
index 11246d95e9..27a363d7e5 100644
--- a/synapse/util/stringutils.py
+++ b/synapse/util/stringutils.py
@@ -250,4 +250,8 @@ def base62_encode(num: int, minwidth: int = 1) -> str:
def non_null_str_or_none(val: Any) -> Optional[str]:
+ """Check that the arg is a string containing no null (U+0000) codepoints.
+
+ If so, returns the given string unmodified; otherwise, returns None.
+ """
return val if isinstance(val, str) and "\u0000" not in val else None
|