More --disable-database-connectivity work

Michael Stahl mstahl at redhat.com
Mon Apr 28 15:03:45 PDT 2014


On 28/04/14 17:41, Tor Lillqvist wrote:
>  RepositoryModule_host.mk              |    2 
>  solenv/bin/native-code.py             |    1 
>  sw/source/core/doc/doc.cxx            |    6 ++
>  sw/source/core/doc/docfld.cxx         |   76 ++++++++++++++++++++++++++--------
>  sw/source/core/uibase/uno/unofreg.cxx |    4 +
>  sw/source/core/unocore/unofield.cxx   |    5 ++
>  6 files changed, 75 insertions(+), 19 deletions(-)
> 
> New commits:
> commit d2f9e1a165314ad9e8588b1d44b3ff0a455ef7f6
> Author: Tor Lillqvist <tml at collabora.com>
> Date:   Mon Apr 28 18:01:11 2014 +0300
> 
>     More --disable-database-connectivity work
>     
>     Bypass various database field and mail-merge functionality in the case
>     of !HAVE_FEATURE_DBCONNECTIVITY.
>     
>     Now TiledLibreOffice builds and runs.
>     

> @@ -1252,7 +1280,11 @@ void SwDoc::UpdateExpFlds( SwTxtFld* pUpdtFld, bool bUpdRefFlds )
>          const SwFieldType* pFldType;
>          // process separately:
>          for( n = mpFldTypes->size(); n; )
> -            switch( ( pFldType = (*mpFldTypes)[ --n ] )->Which() )
> +        {
> +            if( !(*mpFldTypes)[--n] )
> +                continue;

these null checks all over the place are quite ugly addition.

> @@ -1596,7 +1629,11 @@ void SwDoc::_InitFieldTypes()       // is being called by the CTOR
>      mpFldTypes->push_back( new SwPageNumberFieldType );
>      mpFldTypes->push_back( new SwAuthorFieldType );
>      mpFldTypes->push_back( new SwFileNameFieldType(this) );
> +#if HAVE_FEATURE_DBCONNECTIVITY
>      mpFldTypes->push_back( new SwDBNameFieldType(this) );
> +#else
> +    mpFldTypes->push_back( NULL );
> +#endif

with this change i guess it won't be possible to round-trip an ODF file
that contains such fields through your mobile apps losslessly, since
these fields can't be created - is that really what you want?





More information about the LibreOffice mailing list