Skip to content

Commit

Permalink
OAuth2 configuration: trim leading/trailing blanks from most paramete…
Browse files Browse the repository at this point in the history
…rs set from UI to avoid weird issues

I've been bitten by deadlock/crashes (in
src/auth/oauth2/core/qgsauthoauth2method.cpp, and with messages about
O2ReplyServer parent thread not being the current one), when erroneously inserting
a space character before the OAuth2 refresh token URL ('
https://something'). Removing it makes things work nicely.

So while this doesn't fix a potential more fundamental threading issue in some scenarios, this at
least avoids this weird error.
  • Loading branch information
rouault authored and github-actions[bot] committed Aug 14, 2024
1 parent 606c7e1 commit a8538d6
Showing 1 changed file with 16 additions and 17 deletions.
33 changes: 16 additions & 17 deletions src/auth/oauth2/core/qgsauthoauth2config.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -112,65 +112,64 @@ void QgsAuthOAuth2Config::setDescription( const QString &value )
void QgsAuthOAuth2Config::setRequestUrl( const QString &value )
{
const QString preval( mRequestUrl );
mRequestUrl = value;
if ( preval != value )
mRequestUrl = value.trimmed();
if ( preval != mRequestUrl )
emit requestUrlChanged( mRequestUrl );
}

void QgsAuthOAuth2Config::setTokenUrl( const QString &value )
{
const QString preval( mTokenUrl );
mTokenUrl = value;
if ( preval != value )
mTokenUrl = value.trimmed();
if ( preval != mTokenUrl )
emit tokenUrlChanged( mTokenUrl );
}

void QgsAuthOAuth2Config::setRefreshTokenUrl( const QString &value )
{
const QString preval( mRefreshTokenUrl );
mRefreshTokenUrl = value;
if ( preval != value )
mRefreshTokenUrl = value.trimmed();
if ( preval != mRefreshTokenUrl )
emit refreshTokenUrlChanged( mRefreshTokenUrl );
}

void QgsAuthOAuth2Config::setRedirectHost( const QString &host )
{
if ( mRedirectHost != host )
{
mRedirectHost = host;
const QString preval( mRedirectHost );
mRedirectHost = host.trimmed();
if ( preval != mRedirectHost )
emit redirectHostChanged( mRedirectHost );
}
}

void QgsAuthOAuth2Config::setRedirectUrl( const QString &value )
{
const QString preval( mRedirectURL );
mRedirectURL = value;
if ( preval != value )
mRedirectURL = value.trimmed();
if ( preval != mRedirectURL )
emit redirectUrlChanged( mRedirectURL );
}

void QgsAuthOAuth2Config::setRedirectPort( int value )
{
const int preval( mRedirectPort );
mRedirectPort = value;
if ( preval != value )
if ( preval != mRedirectPort )
emit redirectPortChanged( mRedirectPort );
}

void QgsAuthOAuth2Config::setClientId( const QString &value )
{
const QString preval( mClientId );
mClientId = value;
if ( preval != value )
mClientId = value.trimmed();
if ( preval != mClientId )
emit clientIdChanged( mClientId );
}

void QgsAuthOAuth2Config::setClientSecret( const QString &value )
{
const QString preval( mClientSecret );
mClientSecret = value;
if ( preval != value )
mClientSecret = value.trimmed();
if ( preval != mClientSecret )
emit clientSecretChanged( mClientSecret );
}

Expand Down

0 comments on commit a8538d6

Please sign in to comment.