summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--synapse/storage/search.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/synapse/storage/search.py b/synapse/storage/search.py
index 7342e7bae6..3cea2011fa 100644
--- a/synapse/storage/search.py
+++ b/synapse/storage/search.py
@@ -16,6 +16,7 @@
 from twisted.internet import defer
 
 from _base import SQLBaseStore
+from synapse.api.errors import SynapseError
 from synapse.storage.engines import PostgresEngine, Sqlite3Engine
 
 import logging
@@ -130,7 +131,13 @@ class SearchStore(SQLBaseStore):
         )
 
         if pagination_token:
-            topo, stream = pagination_token.split(",")
+            try:
+                topo, stream = pagination_token.split(",")
+                topo = int(topo)
+                stream = int(stream)
+            except:
+                raise SynapseError(400, "Invalid pagination token")
+
             clauses.append(
                 "(topological_ordering < ?"
                 " OR (topological_ordering = ? AND stream_ordering < ?))"