The backend decodes querystrings with the qstring crate. However, that decodes both a plus sign and a URL-encoded plus sign to exactly the same thing, erasing the distinction between plus signs and spaces (see algesten/qstring#3). This patch instead uses the underlying url crate, which handles plus signs correctly.
This fix should be combined with #138, which fixes the frontend piece; however, merging just this one would correct the saving in the backend.
The backend decodes querystrings with the
qstring
crate. However, that decodes both a plus sign and a URL-encoded plus sign to exactly the same thing, erasing the distinction between plus signs and spaces (see algesten/qstring#3). This patch instead uses the underlyingurl
crate, which handles plus signs correctly.This fix should be combined with #138, which fixes the frontend piece; however, merging just this one would correct the saving in the backend.