summaryrefslogtreecommitdiff
path: root/framework/source/services/urltransformer.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'framework/source/services/urltransformer.cxx')
-rw-r--r--framework/source/services/urltransformer.cxx79
1 files changed, 38 insertions, 41 deletions
diff --git a/framework/source/services/urltransformer.cxx b/framework/source/services/urltransformer.cxx
index dec58037d19f..b9508629ed5d 100644
--- a/framework/source/services/urltransformer.cxx
+++ b/framework/source/services/urltransformer.cxx
@@ -61,56 +61,53 @@ public:
virtual OUString SAL_CALL getPresentation( const css::util::URL& aURL, sal_Bool bWithPassword ) override;
};
-namespace
+void lcl_ParserHelper(INetURLObject& _rParser, css::util::URL& _rURL,bool _bUseIntern)
{
- void lcl_ParserHelper(INetURLObject& _rParser, css::util::URL& _rURL,bool _bUseIntern)
+ // Get all information about this URL.
+ _rURL.Protocol = INetURLObject::GetScheme( _rParser.GetProtocol() );
+ _rURL.User = _rParser.GetUser ( INetURLObject::DecodeMechanism::WithCharset );
+ _rURL.Password = _rParser.GetPass ( INetURLObject::DecodeMechanism::WithCharset );
+ _rURL.Server = _rParser.GetHost ( INetURLObject::DecodeMechanism::WithCharset );
+ _rURL.Port = static_cast<sal_Int16>(_rParser.GetPort());
+
+ sal_Int32 nCount = _rParser.getSegmentCount( false );
+ if ( nCount > 0 )
{
- // Get all information about this URL.
- _rURL.Protocol = INetURLObject::GetScheme( _rParser.GetProtocol() );
- _rURL.User = _rParser.GetUser ( INetURLObject::DecodeMechanism::WithCharset );
- _rURL.Password = _rParser.GetPass ( INetURLObject::DecodeMechanism::WithCharset );
- _rURL.Server = _rParser.GetHost ( INetURLObject::DecodeMechanism::WithCharset );
- _rURL.Port = static_cast<sal_Int16>(_rParser.GetPort());
-
- sal_Int32 nCount = _rParser.getSegmentCount( false );
- if ( nCount > 0 )
- {
- // Don't add last segment as it is the name!
- --nCount;
-
- OUStringBuffer aPath;
- for ( sal_Int32 nIndex = 0; nIndex < nCount; nIndex++ )
- {
- aPath.append( '/');
- aPath.append( _rParser.getName( nIndex, false, INetURLObject::DecodeMechanism::NONE ));
- }
-
- if ( nCount > 0 )
- aPath.append( '/' ); // final slash!
+ // Don't add last segment as it is the name!
+ --nCount;
- _rURL.Path = aPath.makeStringAndClear();
- _rURL.Name = _rParser.getName( INetURLObject::LAST_SEGMENT, false, INetURLObject::DecodeMechanism::NONE );
- }
- else
+ OUStringBuffer aPath;
+ for ( sal_Int32 nIndex = 0; nIndex < nCount; nIndex++ )
{
- _rURL.Path = _rParser.GetURLPath( INetURLObject::DecodeMechanism::NONE );
- _rURL.Name = _rParser.GetName ( );
+ aPath.append( '/');
+ aPath.append( _rParser.getName( nIndex, false, INetURLObject::DecodeMechanism::NONE ));
}
- _rURL.Arguments = _rParser.GetParam();
- _rURL.Mark = _rParser.GetMark( INetURLObject::DecodeMechanism::WithCharset );
+ if ( nCount > 0 )
+ aPath.append( '/' ); // final slash!
+
+ _rURL.Path = aPath.makeStringAndClear();
+ _rURL.Name = _rParser.getName( INetURLObject::LAST_SEGMENT, false, INetURLObject::DecodeMechanism::NONE );
+ }
+ else
+ {
+ _rURL.Path = _rParser.GetURLPath( INetURLObject::DecodeMechanism::NONE );
+ _rURL.Name = _rParser.GetName ( );
+ }
- // INetURLObject supports only an intelligent method of parsing URL's. So write
- // back Complete to have a valid encoded URL in all cases!
- _rURL.Complete = _rParser.GetMainURL( INetURLObject::DecodeMechanism::NONE );
- if ( _bUseIntern )
- _rURL.Complete = _rURL.Complete.intern();
+ _rURL.Arguments = _rParser.GetParam();
+ _rURL.Mark = _rParser.GetMark( INetURLObject::DecodeMechanism::WithCharset );
- _rParser.SetMark ( OUString() );
- _rParser.SetParam( OUString() );
+ // INetURLObject supports only an intelligent method of parsing URL's. So write
+ // back Complete to have a valid encoded URL in all cases!
+ _rURL.Complete = _rParser.GetMainURL( INetURLObject::DecodeMechanism::NONE );
+ if ( _bUseIntern )
+ _rURL.Complete = _rURL.Complete.intern();
- _rURL.Main = _rParser.GetMainURL( INetURLObject::DecodeMechanism::NONE );
- }
+ _rParser.SetMark ( OUString() );
+ _rParser.SetParam( OUString() );
+
+ _rURL.Main = _rParser.GetMainURL( INetURLObject::DecodeMechanism::NONE );
}
// XURLTransformer