diff options
Diffstat (limited to 'gn3')
-rw-r--r-- | gn3/api/search.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gn3/api/search.py b/gn3/api/search.py index 588e11d..7242ac1 100644 --- a/gn3/api/search.py +++ b/gn3/api/search.py @@ -268,8 +268,10 @@ def search_results(): maximum_results_per_page = 50000 if results_per_page > maximum_results_per_page: abort(400, description="Requested too many search results") - - query = parse_query(Path(current_app.config["DATA_DIR"]) / "synteny", querystring) + try: + query = parse_query(Path(current_app.config["DATA_DIR"]) / "synteny", querystring) + except xapian.QueryParserError as err: + return jsonify({"error_type": str(err.get_type()), "error": err.get_msg()}), 400 traits = [] # pylint: disable=invalid-name with xapian_database(current_app.config["XAPIAN_DB_PATH"]) as db: |