@@ -229,6 +229,7 @@ Url::Path::_parser()
229229Url::Query::Parameter &
230230Url::Query::Parameter::operator =(const cripts::string_view str)
231231{
232+ CAssert (!_owner->_standalone );
232233 _ensure_initialized (_owner->_owner );
233234 CAssert (!_owner->_owner ->ReadOnly ()); // This can not be a read-only URL
234235 auto iter = _owner->_hashed .find (_name);
@@ -247,7 +248,9 @@ Url::Query::Parameter::operator=(const cripts::string_view str)
247248cripts::string_view
248249Url::Query::GetSV ()
249250{
250- _ensure_initialized (_owner);
251+ if (!_standalone) {
252+ _ensure_initialized (_owner);
253+ }
251254 if (_ordered.size () > 0 ) {
252255 _storage.clear ();
253256 _storage.reserve (_size);
@@ -291,6 +294,7 @@ Url::Query::GetSV()
291294Url::Query
292295Url::Query::operator =(cripts::string_view query)
293296{
297+ CAssert (!_standalone);
294298 _ensure_initialized (_owner);
295299 CAssert (!_owner->ReadOnly ()); // This can not be a read-only URL
296300 TSUrlHttpQuerySet (_owner->_bufp , _owner->_urlp , query.data (), query.size ());
@@ -318,8 +322,10 @@ Url::Query::operator+=(cripts::string_view add)
318322Url::Query::Parameter
319323Url::Query::operator [](cripts::string_view param)
320324{
321- // Make sure the hash and vector are populated
322- _ensure_initialized (_owner);
325+ // Make sure the hash and vector are populated, but only if we have an owner
326+ if (!_standalone) {
327+ _ensure_initialized (_owner);
328+ }
323329 _parser ();
324330
325331 Parameter ret;
0 commit comments