From 6f9dff66ee12c3cf5874fd4a33b82dbb090fe124 Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Tue, 28 Jun 2011 13:00:51 +0100 Subject: break build id into multiple lines if using g log --- cui/source/dialogs/about.cxx | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'cui/source/dialogs/about.cxx') diff --git a/cui/source/dialogs/about.cxx b/cui/source/dialogs/about.cxx index 3157a9b48fd7..863bd90312fa 100644 --- a/cui/source/dialogs/about.cxx +++ b/cui/source/dialogs/about.cxx @@ -72,13 +72,34 @@ Image SfxApplication::GetApplicationLogo() return Image( aBitmap ); } -/* intense magic to get strong version information */ +/* get good version information */ static String GetBuildId() { rtl::OUString sDefault; - String sBuildId( utl::Bootstrap::getBuildIdData( sDefault ) ); - OSL_ENSURE( sBuildId.Len() > 0, "No BUILDID in bootstrap file" ); + rtl::OUString sBuildId( utl::Bootstrap::getBuildIdData( sDefault ) ); + //strip trailing - from ./g log + if (!sBuildId.isEmpty() && sBuildId.getStr()[sBuildId.getLength()-1] == '-') + { + rtl::OUStringBuffer aBuffer; + sal_Int32 nIndex = 0; + do + { + rtl::OUString aToken = sBuildId.getToken( 0, '-', nIndex ); + if (!aToken.isEmpty()) + { + aBuffer.append(aToken); + if (nIndex % 5) + aBuffer.append(static_cast('-')); + else + aBuffer.append(static_cast('\n')); + } + } + while ( nIndex >= 0 ); + sBuildId = aBuffer.makeStringAndClear(); + } + + OSL_ENSURE( sBuildId.getLength() > 0, "No BUILDID in bootstrap file" ); return sBuildId; } -- cgit