From 317c05a88f79096422681a23b61aa6ae9f3f084b Mon Sep 17 00:00:00 2001 From: Yukio Siraichi Date: Thu, 16 Apr 2020 12:47:29 +0900 Subject: tdf#130924 [vcl] replace `*printf`s with `SAL_*` logging macros. Change-Id: Ie3ec1e1767478bce12eecf7bfee02ed2d45fe58c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92331 Tested-by: Jenkins Reviewed-by: Stephan Bergmann --- vcl/headless/headlessinst.cxx | 13 +- vcl/source/fontsubset/cff.cxx | 12 +- vcl/source/fontsubset/fontsubset.cxx | 3 +- vcl/source/fontsubset/sft.cxx | 37 +- vcl/source/fontsubset/ttcr.cxx | 17 +- vcl/unx/generic/app/i18n_cb.cxx | 42 ++- vcl/unx/generic/app/i18n_ic.cxx | 6 +- vcl/unx/generic/app/i18n_im.cxx | 43 ++- vcl/unx/generic/app/i18n_xkb.cxx | 15 +- vcl/unx/generic/app/randrwrapper.cxx | 12 +- vcl/unx/generic/app/saldata.cxx | 4 +- vcl/unx/generic/app/saldisp.cxx | 185 +++++----- vcl/unx/generic/app/salinst.cxx | 5 +- vcl/unx/generic/app/wmadaptor.cxx | 39 +- vcl/unx/generic/dtrans/X11_clipboard.cxx | 16 +- vcl/unx/generic/dtrans/X11_selection.cxx | 486 ++++++++++++++++--------- vcl/unx/generic/dtrans/bmp.cxx | 26 +- vcl/unx/generic/dtrans/config.cxx | 17 +- vcl/unx/generic/fontmanager/fontconfig.cxx | 6 +- vcl/unx/generic/fontmanager/fontmanager.cxx | 15 +- vcl/unx/generic/fontmanager/fontsubst.cxx | 56 ++- vcl/unx/generic/gdi/salgdi.cxx | 8 +- vcl/unx/generic/print/genprnpsp.cxx | 14 +- vcl/unx/generic/printer/printerinfomanager.cxx | 82 +++-- vcl/unx/generic/window/salframe.cxx | 38 +- vcl/unx/generic/window/salobj.cxx | 14 +- vcl/unx/gtk3/gtk3gtkframe.cxx | 26 +- vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 15 +- vcl/unx/gtk3/gtk3salprn-gtk.cxx | 4 +- 29 files changed, 770 insertions(+), 486 deletions(-) (limited to 'vcl') diff --git a/vcl/headless/headlessinst.cxx b/vcl/headless/headlessinst.cxx index c1bf1a7b7294..e1694c429d2b 100644 --- a/vcl/headless/headlessinst.cxx +++ b/vcl/headless/headlessinst.cxx @@ -31,9 +31,10 @@ public: const std::vector< OUString >& rButtons ) override { (void)rButtons; - ::fprintf(stdout, "LibreOffice - dialog '%s': '%s'", - OUStringToOString(rTitle, RTL_TEXTENCODING_ASCII_US).getStr(), - OUStringToOString(rMessage, RTL_TEXTENCODING_ASCII_US).getStr()); + SAL_INFO("vcl.headless", + "LibreOffice - dialog '" + << rTitle << "': '" + << rMessage << "'"); return 0; } }; @@ -56,10 +57,10 @@ void SalAbort( const OUString& rErrorText, bool bDumpCore ) OUString aError( rErrorText ); if( aError.isEmpty() ) aError = "Unknown application error"; - ::fprintf( stderr, "%s\n", OUStringToOString(rErrorText, osl_getThreadTextEncoding()).getStr() ); - ::fprintf( stderr, "SalAbort: '%s'", - OUStringToOString(aError, RTL_TEXTENCODING_ASCII_US).getStr()); + SAL_WARN("vcl.headless", rErrorText); + SAL_INFO("vcl.headless", "SalAbort: '" << aError << "'."); + if( bDumpCore ) abort(); else diff --git a/vcl/source/fontsubset/cff.cxx b/vcl/source/fontsubset/cff.cxx index 98f0101f047f..dd7da8d92ae7 100644 --- a/vcl/source/fontsubset/cff.cxx +++ b/vcl/source/fontsubset/cff.cxx @@ -442,7 +442,7 @@ void CffSubsetterContext::readDictOp() //TODO: if( nStackIdx > 0) int nInt = 0; switch( *pCmdName) { - default: fprintf( stderr, "unsupported DictOp.type=\'%c\'\n", *pCmdName); break; + default: SAL_WARN("vcl.fonts", "unsupported DictOp.type='" << *pCmdName << "'."); break; case 'b': // bool nInt = popInt(); switch( nOpId) { @@ -1051,7 +1051,7 @@ void CffSubsetterContext::convertOneTypeEsc() } break; default: - fprintf( stderr,"unhandled type2esc %d\n", nType2Esc); + SAL_WARN("vcl.fonts", "unhandled type2esc " << nType2Esc); assert( false); break; } @@ -1226,7 +1226,7 @@ int CffSubsetterContext::seekIndexData( int nIndexBase, int nDataIndex) mpReadPtr += 3 + (nDataOfsSz * nDataIndex); int nOfs1 = 0; switch( nDataOfsSz) { - default: fprintf( stderr, "\tINVALID nDataOfsSz=%d\n\n", nDataOfsSz); return -1; + default: SAL_WARN("vcl.fonts", "\tINVALID nDataOfsSz=" << nDataOfsSz); return -1; case 1: nOfs1 = mpReadPtr[0]; break; case 2: nOfs1 = (mpReadPtr[0]<<8) + mpReadPtr[1]; break; case 3: nOfs1 = (mpReadPtr[0]<<16) + (mpReadPtr[1]<<8) + mpReadPtr[2]; break; @@ -1262,7 +1262,7 @@ void CffSubsetterContext::seekIndexEnd( int nIndexBase) assert( mpReadPtr <= mpBaseEnd); int nEndOfs = 0; switch( nDataOfsSz) { - default: fprintf( stderr, "\tINVALID nDataOfsSz=%d\n\n", nDataOfsSz); return; + default: SAL_WARN("vcl.fonts", "\tINVALID nDataOfsSz=" << nDataOfsSz); return; case 1: nEndOfs = mpReadPtr[0]; break; case 2: nEndOfs = (mpReadPtr[0]<<8) + mpReadPtr[1]; break; case 3: nEndOfs = (mpReadPtr[0]<<16) + (mpReadPtr[1]<<8) + mpReadPtr[2];break; @@ -1485,7 +1485,7 @@ int CffSubsetterContext::getFDSelect( int nGlyphIndex) const } } break; default: // invalid FDselect format - fprintf( stderr, "invalid CFF.FdselType=%d\n", nFDSelFormat); + SAL_WARN("vcl.fonts", "invalid CFF.FdselType=" << nFDSelFormat); break; } @@ -1530,7 +1530,7 @@ int CffSubsetterContext::getGlyphSID( int nGlyphIndex) const } break; default: - fprintf( stderr, "ILLEGAL CFF-Charset format %d\n", nCSetFormat); + SAL_WARN("vcl.fonts", "ILLEGAL CFF-Charset format " << nCSetFormat); return -2; } diff --git a/vcl/source/fontsubset/fontsubset.cxx b/vcl/source/fontsubset/fontsubset.cxx index f92498e80247..8a4eeb9aa052 100644 --- a/vcl/source/fontsubset/fontsubset.cxx +++ b/vcl/source/fontsubset/fontsubset.cxx @@ -155,7 +155,8 @@ bool FontSubsetInfo::CreateFontSubsetFromSfnt( sal_Int32* pOutGlyphWidths ) // TODO: replace dummy implementation bool FontSubsetInfo::CreateFontSubsetFromType1( const sal_Int32* /*pOutGlyphWidths*/) { - fprintf(stderr,"CreateFontSubsetFromType1: replace dummy implementation\n"); + SAL_WARN("vcl.fonts", + "CreateFontSubsetFromType1: replace dummy implementation."); return false; } diff --git a/vcl/source/fontsubset/sft.cxx b/vcl/source/fontsubset/sft.cxx index cd3e6bbd2a2c..efba8ff594f3 100644 --- a/vcl/source/fontsubset/sft.cxx +++ b/vcl/source/fontsubset/sft.cxx @@ -520,14 +520,16 @@ static int GetCompoundTTOutline(TrueTypeFont *ttf, sal_uInt32 glyphID, ControlPo if( std::find( glyphlist.begin(), glyphlist.end(), index ) != glyphlist.end() ) { #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "Endless loop found in a compound glyph.\n"); - fprintf(stderr, "%d -> ", index); - fprintf(stderr," ["); + SAL_INFO("vcl.fonts", "Endless loop found in a compound glyph."); + + std::ostringstream oss; + oss << index << " -> ["; for( const auto& rGlyph : glyphlist ) { - fprintf( stderr,"%d ", (int) rGlyph ); + oss << (int) rGlyph << " "; } - fprintf(stderr,"]\n"); + oss << "]"; + SAL_INFO("vcl.fonts", oss.str()); /**/ #endif } @@ -538,7 +540,7 @@ static int GetCompoundTTOutline(TrueTypeFont *ttf, sal_uInt32 glyphID, ControlPo { /* XXX that probably indicates a corrupted font */ #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "An empty compound!\n"); + SAL_WARN("vcl.fonts", "An empty compound!"); /* assert(!"An empty compound"); */ #endif } @@ -905,7 +907,7 @@ static void GetNames(TrueTypeFont *t) if (nTableSize < 6) { #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "O_name table too small\n"); + SAL_WARN("vcl.fonts", "O_name table too small."); #endif return; } @@ -1333,7 +1335,9 @@ static void FindCmap(TrueTypeFont *ttf) default: #if OSL_DEBUG_LEVEL > 1 /*- if the cmap table is really broken */ - printf("%s: %d is not a recognized cmap format.\n", ttf->fname, GetUInt16(ttf->cmap, 0)); + SAL_WARN("vcl.fonts", ttf->fname << ": " + << GetUInt16(ttf->cmap, 0) + << " is not a recognized cmap format.."); #endif ttf->cmapType = CMAP_NOT_USABLE; ttf->cmap = nullptr; @@ -1594,8 +1598,10 @@ static SFErrCodes doOpenTTFont( sal_uInt32 facenum, TrueTypeFont* t ) if( t->tables[i] < t->ptr ) { #if OSL_DEBUG_LEVEL > 1 - if( t->tables[i] ) - fprintf( stderr, "font file %s has bad table offset %" SAL_PRI_PTRDIFFT "d (tagnum=%d)\n", t->fname, (sal_uInt8*)t->tables[i]-t->ptr, i ); + SAL_WARN_IF(t->tables[i], "vcl.fonts", "font file " << t->fname + << " has bad table offset " + << (sal_uInt8*)t->tables[i]-t->ptr + << "d (tagnum=" << i << ")."); #endif t->tlens[i] = 0; t->tables[i] = nullptr; @@ -1607,7 +1613,8 @@ static SFErrCodes doOpenTTFont( sal_uInt32 facenum, TrueTypeFont* t ) nMaxLen = 0; t->tlens[i] = nMaxLen; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "font file %s has too big table (tagnum=%d)\n", t->fname, i ); + SAL_WARN("vcl.fonts", "font file " << t->fname + << " has too big table (tagnum=" << i << ")."); #endif } } @@ -1991,11 +1998,11 @@ SFErrCodes CreateTTFromTTGlyphs(TrueTypeFont *ttf, AddTable(ttcr, cvt ); AddTable(ttcr, prep); AddTable(ttcr, fpgm); AddTable(ttcr, post); AddTable(ttcr, os2); - if ((res = StreamToFile(ttcr, fname)) != SFErrCodes::Ok) { + res = StreamToFile(ttcr, fname); #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "StreamToFile: error code: %d.\n", int(res)); + SAL_WARN_IF(res != SFErrCodes::Ok, "vcl.fonts", "StreamToFile: error code: " + << (int) res << "."); #endif - } TrueTypeCreatorDispose(ttcr); free(gID); @@ -2504,7 +2511,7 @@ int GetTTNameRecords(TrueTypeFont const *ttf, NameRecord **nr) if (nTableSize < 6) { #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "O_name table too small\n"); + SAL_WARN("vcl.fonts", "O_name table too small."); #endif return 0; } diff --git a/vcl/source/fontsubset/ttcr.cxx b/vcl/source/fontsubset/ttcr.cxx index 92ecfa9a87a6..62690a2157b2 100644 --- a/vcl/source/fontsubset/ttcr.cxx +++ b/vcl/source/fontsubset/ttcr.cxx @@ -21,8 +21,11 @@ * TrueTypeCreator method implementation */ +#include #include +#include + #include "ttcr.hxx" #include "list.h" #include @@ -460,7 +463,12 @@ static void TrueTypeTableDispose_post(TrueTypeTable *_this) if (p->format == 0x00030000) { /* do nothing */ } else { - fprintf(stderr, "Unsupported format of a 'post' table: %08X.\n", static_cast(p->format)); + SAL_WARN("vcl.fonts", "Unsupported format of a 'post' table: " + << std::setfill('0') + << std::setw(8) + << std::hex + << std::uppercase + << static_cast(p->format) << "."); } free(p); } @@ -780,7 +788,12 @@ static int GetRawData_post(TrueTypeTable *_this, sal_uInt8 **ptr, sal_uInt32 *le PutUInt16(static_cast(p->isFixedPitch), post, 12); ret = TTCR_OK; } else { - fprintf(stderr, "Unrecognized format of a post table: %08X.\n", static_cast(p->format)); + SAL_WARN("vcl.fonts", "Unrecognized format of a post table: " + << std::setfill('0') + << std::setw(8) + << std::hex + << std::uppercase + << static_cast(p->format) << "."); ret = TTCR_POSTFORMAT; } diff --git a/vcl/unx/generic/app/i18n_cb.cxx b/vcl/unx/generic/app/i18n_cb.cxx index b6c6326879fd..2944c85480cc 100644 --- a/vcl/unx/generic/app/i18n_cb.cxx +++ b/vcl/unx/generic/app/i18n_cb.cxx @@ -22,6 +22,7 @@ #include #include +#include #include @@ -97,8 +98,10 @@ Preedit_DeleteText(preedit_text_t *ptext, int from, int howmuch) else { // XXX this indicates an error, are we out of sync ? - fprintf(stderr, "Preedit_DeleteText( from=%i to=%i length=%i )\n", - from, to, ptext->nLength ); + SAL_INFO("vcl.app", "Preedit_DeleteText( from=" << from + << " to=" << to + << " length=" << ptext->nLength + << " )."); fprintf (stderr, "\t XXX internal error, out of sync XXX\n"); ptext->nLength = from; @@ -225,8 +228,9 @@ Preedit_UpdateAttributes ( preedit_text_t* ptext, XIMFeedback const * feedback, if ( (from + amount) > static_cast(ptext->nLength) ) { // XXX this indicates an error, are we out of sync ? - fprintf (stderr, "Preedit_UpdateAttributes( %i + %i > %i )\n", - from, amount, ptext->nLength ); + SAL_INFO("vcl.app", "Preedit_UpdateAttributes( " + << from << " + " << amount << " > " << ptext->nLength + << " )."); fprintf (stderr, "\t XXX internal error, out of sync XXX\n"); return; @@ -398,12 +402,7 @@ GetPreeditSpotLocation(XIC ic, XPointer client_data) void PreeditCaretCallback ( XIC ic, XPointer client_data, XIMPreeditCaretCallbackStruct *call_data ) -#else -void -PreeditCaretCallback ( XIC, XPointer,XIMPreeditCaretCallbackStruct* ) -#endif { - #if OSL_DEBUG_LEVEL > 1 // XXX PreeditCaretCallback is pure debug code for now const char *direction = "?"; const char *style = "?"; @@ -430,12 +429,20 @@ PreeditCaretCallback ( XIC, XPointer,XIMPreeditCaretCallbackStruct* ) case XIMDontChange: direction = "Don't change"; break; } - fprintf (stderr, "PreeditCaretCallback( ic=%p, client=%p,\n", - ic, client_data ); - fprintf (stderr, "\t position=%i, direction=\"%s\", style=\"%s\" )\n", - call_data->position, direction, style ); - #endif + SAL_INFO("vcl.app", "PreeditCaretCallback( ic=" << ic + << ", client=" << client_data + << ","); + SAL_INFO("vcl.app", "\t position=" << call_data->position + << ", direction=\"" << direction + << "\", style=\"" << style + << "\" )."); +} +#else +void +PreeditCaretCallback ( XIC, XPointer, XIMPreeditCaretCallbackStruct* ) +{ } +#endif // v. commit string callback: convert an extended text input (iiimp ... ) // into an ordinary key-event @@ -497,8 +504,11 @@ StatusDrawCallback (XIC, XPointer, XIMStatusDrawCallbackStruct *call_data) #if OSL_DEBUG_LEVEL > 1 else { - fprintf( stderr, "XIMStatusDataType %s not supported\n", - call_data->type == XIMBitmapType ? "XIMBitmapType" : OString::number(call_data->type).getStr() ); + SAL_WARN("vcl.app", "XIMStatusDataType " + << ((call_data->type == XIMBitmapType) ? + "XIMBitmapType" : + OString::number(call_data->type)) + << " not supported."); } #endif } diff --git a/vcl/unx/generic/app/i18n_ic.cxx b/vcl/unx/generic/app/i18n_ic.cxx index 63dbdbd9c0ab..ad42c079c379 100644 --- a/vcl/unx/generic/app/i18n_ic.cxx +++ b/vcl/unx/generic/app/i18n_ic.cxx @@ -25,6 +25,8 @@ #include #include +#include + using namespace vcl; static void sendEmptyCommit( SalFrame* pFrame ) @@ -315,7 +317,7 @@ SalI18N_InputContext::SalI18N_InputContext ( SalFrame *pFrame ) : if ( maContext == nullptr ) { #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "input context creation failed\n"); + SAL_WARN("vcl.app", "input context creation failed."); #endif mbUseable = False; @@ -508,7 +510,7 @@ SalI18N_InputContext::CommitKeyEvent(sal_Unicode const * pText, std::size_t nLen } #if OSL_DEBUG_LEVEL > 1 else - fprintf(stderr, "CommitKeyEvent without frame\n" ); + SAL_WARN("vcl.app", "CommitKeyEvent without frame."); #endif } diff --git a/vcl/unx/generic/app/i18n_im.cxx b/vcl/unx/generic/app/i18n_im.cxx index 18ad9a3f0f8a..a9e9fb42fb87 100644 --- a/vcl/unx/generic/app/i18n_im.cxx +++ b/vcl/unx/generic/app/i18n_im.cxx @@ -19,6 +19,7 @@ #include #include +#include #ifdef LINUX # ifndef __USE_XOPEN @@ -32,6 +33,7 @@ #include #include +#include #include @@ -124,13 +126,11 @@ XKeyEventOp::match (const XKeyEvent &rEvent) const static char* SetSystemLocale( const char* p_inlocale ) { - char *p_outlocale; + char *p_outlocale = setlocale(LC_ALL, p_inlocale); - if ( (p_outlocale = setlocale(LC_ALL, p_inlocale)) == nullptr ) - { - fprintf( stderr, "I18N: Operating system doesn't support locale \"%s\"\n", - p_inlocale ); - } + SAL_WARN_IF(p_outlocale == nullptr, "vcl.app", + "I18N: Operating system doesn't support locale \"" + << p_inlocale << "\"."); return p_outlocale; } @@ -170,8 +170,9 @@ IsXWindowCompatibleLocale( const char* p_locale ) if ( !XSupportsLocale() ) { - fprintf (stderr, "I18N: X Window System doesn't support locale \"%s\"\n", - p_locale ); + SAL_WARN("vcl.app", + "I18N: X Window System doesn't support locale \"" + << p_locale << "\"."); return False; } return True; @@ -215,8 +216,9 @@ SalI18N_InputMethod::SetLocale() // must not fail if mbUseable since XSupportsLocale() asserts success if ( mbUseable && XSetLocaleModifiers("") == nullptr ) { - fprintf (stderr, "I18N: Can't set X modifiers for locale \"%s\"\n", - locale); + SAL_WARN("vcl.app", + "I18N: Can't set X modifiers for locale \"" + << locale << "\"."); mbUseable = False; } } @@ -305,12 +307,14 @@ PrintInputStyle( XIMStyles *pStyle ) int nBuf = sizeof( pBuf ); if ( pStyle == NULL ) - fprintf( stderr, "no input method styles\n"); + SAL_INFO("vcl.app", "no input method styles."); else for ( int nStyle = 0; nStyle < pStyle->count_styles; nStyle++ ) { - fprintf( stderr, "style #%i = %s\n", nStyle, - GetMethodName(pStyle->supported_styles[nStyle], pBuf, nBuf) ); + SAL_INFO("vcl.app", "style #" + << nStyle + << " = " + << GetMethodName(pStyle->supported_styles[nStyle], pBuf, nBuf)); } } @@ -339,10 +343,10 @@ SalI18N_InputMethod::CreateMethod ( Display *pDisplay ) if ( XGetIMValues(maMethod, XNQueryInputStyle, &mpStyles, nullptr) != nullptr) mbUseable = False; - #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "Creating Mono-Lingual InputMethod\n" ); +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.app", "Creating Mono-Lingual InputMethod."); PrintInputStyle( mpStyles ); - #endif +#endif } else { @@ -350,10 +354,9 @@ SalI18N_InputMethod::CreateMethod ( Display *pDisplay ) } } - #if OSL_DEBUG_LEVEL > 1 - if ( !mbUseable ) - fprintf(stderr, "input method creation failed\n"); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_WARN_IF(!mbUseable, "vcl.app", "input method creation failed."); +#endif maDestroyCallback.callback = IM_IMDestroyCallback; maDestroyCallback.client_data = reinterpret_cast(this); diff --git a/vcl/unx/generic/app/i18n_xkb.cxx b/vcl/unx/generic/app/i18n_xkb.cxx index db3c83752e5d..0fc4d7933fc3 100644 --- a/vcl/unx/generic/app/i18n_xkb.cxx +++ b/vcl/unx/generic/app/i18n_xkb.cxx @@ -19,6 +19,9 @@ #include #include +#include + +#include #include #include @@ -90,11 +93,13 @@ SalI18N_KeyboardExtension::Dispatch( XEvent* pEvent ) break; default: - - #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "Got unrequested XkbAnyEvent %#x/%i\n", - static_cast(nXKBType), static_cast(nXKBType) ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_WARN("vcl.app", "Got unrequested XkbAnyEvent " + << std::hex << std::showbase + << static_cast(nXKBType) + << "/" << std::dec + << static_cast(nXKBType)); +#endif break; } } diff --git a/vcl/unx/generic/app/randrwrapper.cxx b/vcl/unx/generic/app/randrwrapper.cxx index e7e23ce6b817..cb3698365968 100644 --- a/vcl/unx/generic/app/randrwrapper.cxx +++ b/vcl/unx/generic/app/randrwrapper.cxx @@ -22,6 +22,8 @@ #include #include +#include + namespace { @@ -120,7 +122,7 @@ void SalDisplay::DeInitRandR() #ifdef USE_RANDR RandRWrapper::releaseWrapper(); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SalDisplay::DeInitRandR()\n" ); + SAL_INFO("vcl.app", "SalDisplay::DeInitRandR()."); #endif #endif } @@ -159,9 +161,11 @@ void SalDisplay::processRandREvent( XEvent* pEvent ) pWrapper->XRRFreeScreenConfigInfo( pConfig ); - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "screen %d changed to size %dx%d\n", (int)nId, (int)pTargetSize->width, (int)pTargetSize->height ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.app", "screen " << nId + << " changed to size " << (int)pTargetSize->width + << "x" << (int)pTargetSize->height); +#endif } } if( bNotify ) diff --git a/vcl/unx/generic/app/saldata.cxx b/vcl/unx/generic/app/saldata.cxx index e48e71761b60..f2fe146f515e 100644 --- a/vcl/unx/generic/app/saldata.cxx +++ b/vcl/unx/generic/app/saldata.cxx @@ -703,7 +703,7 @@ SalXLib::Yield( bool bWait, bool bHandleAllCurrentEvents ) if( nFound < 0 ) // error { #ifdef DBG_UTIL - std::fprintf( stderr, "SalXLib::Yield e=%d f=%d\n", errno, nFound ); + SAL_INFO("vcl.app", "SalXLib::Yield e=" << errno << " f=" << nFound); #endif if( EINTR == errno ) { @@ -747,7 +747,7 @@ SalXLib::Yield( bool bWait, bool bHandleAllCurrentEvents ) { if ( FD_ISSET( nFD, &ExceptionFDS ) ) { #if OSL_DEBUG_LEVEL > 1 - std::fprintf( stderr, "SalXLib::Yield exception\n" ); + SAL_WARN("vcl.app", "SalXLib::Yield exception."); #endif nFound--; } diff --git a/vcl/unx/generic/app/saldisp.cxx b/vcl/unx/generic/app/saldisp.cxx index b26fe54323bd..7e23b1046f5a 100644 --- a/vcl/unx/generic/app/saldisp.cxx +++ b/vcl/unx/generic/app/saldisp.cxx @@ -62,6 +62,7 @@ #include #include #include +#include #include #include #include @@ -282,7 +283,7 @@ SalDisplay::SalDisplay( Display *display ) : m_nLastUserEventTime( CurrentTime ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SalDisplay::SalDisplay()\n" ); + SAL_INFO("vcl.app", "SalDisplay::SalDisplay()."); #endif GenericUnixSalData *pData = GetGenericUnixSalData(); @@ -295,13 +296,13 @@ SalDisplay::SalDisplay( Display *display ) : SalDisplay::~SalDisplay() { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SalDisplay::~SalDisplay()\n" ); + SAL_INFO("vcl.app", "SalDisplay::~SalDisplay()."); #endif if( pDisp_ ) { doDestruct(); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "display %p closed\n", pDisp_ ); + SAL_INFO("vcl.app", "display " << pDisp_ << " closed."); #endif pDisp_ = nullptr; } @@ -431,7 +432,7 @@ SalX11Display::SalX11Display( Display *display ) SalX11Display::~SalX11Display() { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SalX11Display::~SalX11Display()\n" ); + SAL_INFO("vcl.app", "SalX11Display::~SalX11Display()."); #endif if( pDisp_ ) { @@ -2087,68 +2088,60 @@ void SalDisplay::DbgPrintDisplayEvent(const char *pComment, XEvent *pEvent) cons if( pEvent->type <= MappingNotify ) { - fprintf( stderr, "[%s] %s s=%d w=%ld\n", - pComment, - EventNames[pEvent->type], - pEvent->xany.send_event, - pEvent->xany.window ); + SAL_INFO("vcl.app", "[" << pComment << "] " + << EventNames[pEvent->type] + << " s=" << pEvent->xany.send_event + << " w=" << pEvent->xany.window); switch( pEvent->type ) { case KeyPress: case KeyRelease: - fprintf( stderr, "\t\ts=%d c=%d\n", - pEvent->xkey.state, - pEvent->xkey.keycode ); + SAL_INFO("vcl.app", "\t\ts=" << pEvent->xkey.state + << " c=" << pEvent->xkey.keycode); break; case ButtonPress: case ButtonRelease: - fprintf( stderr, "\t\ts=%d b=%d x=%d y=%d rx=%d ry=%d\n", - pEvent->xbutton.state, - pEvent->xbutton.button, - pEvent->xbutton.x, - pEvent->xbutton.y, - pEvent->xbutton.x_root, - pEvent->xbutton.y_root ); + SAL_INFO("vcl.app", "\t\ts=" << pEvent->xbutton.state + << " b=" << pEvent->xbutton.button + << " x=" << pEvent->xbutton.x + << " y=" << pEvent->xbutton.y + << " rx=" << pEvent->xbutton.x_root + << " ry=" << pEvent->xbutton.y_root); break; case MotionNotify: - fprintf( stderr, "\t\ts=%d x=%d y=%d\n", - pEvent->xmotion.state, - pEvent->xmotion.x, - pEvent->xmotion.y ); + SAL_INFO("vcl.app", "\t\ts=" << pEvent->xmotion.state + << " x=" << pEvent->xmotion.x + << " y=" << pEvent->xmotion.y); break; case EnterNotify: case LeaveNotify: - fprintf( stderr, "\t\tm=%d f=%d x=%d y=%d\n", - pEvent->xcrossing.mode, - pEvent->xcrossing.focus, - pEvent->xcrossing.x, - pEvent->xcrossing.y ); + SAL_INFO("vcl.app", "\t\tm=" << pEvent->xcrossing.mode + << " f=" << pEvent->xcrossing.focus + << " x=" << pEvent->xcrossing.x + << " y=" << pEvent->xcrossing.y); break; case FocusIn: case FocusOut: - fprintf( stderr, "\t\tm=%d d=%d\n", - pEvent->xfocus.mode, - pEvent->xfocus.detail ); + SAL_INFO("vcl.app", "\t\tm=" << pEvent->xfocus.mode + << " d=" << pEvent->xfocus.detail); break; case Expose: case GraphicsExpose: - fprintf( stderr, "\t\tc=%d %d*%d %d+%d\n", - pEvent->xexpose.count, - pEvent->xexpose.width, - pEvent->xexpose.height, - pEvent->xexpose.x, - pEvent->xexpose.y ); + SAL_INFO("vcl.app", "\t\tc=" << pEvent->xexpose.count + << " " << pEvent->xexpose.width + << "*" << pEvent->xexpose.height + << " " << pEvent->xexpose.x + << "+" << pEvent->xexpose.y ); break; case VisibilityNotify: - fprintf( stderr, "\t\ts=%d\n", - pEvent->xvisibility.state ); + SAL_INFO("vcl.app", "\t\ts=" << pEvent->xvisibility.state); break; case CreateNotify: @@ -2160,65 +2153,67 @@ void SalDisplay::DbgPrintDisplayEvent(const char *pComment, XEvent *pEvent) cons break; case ReparentNotify: - fprintf( stderr, "\t\tp=%d x=%d y=%d\n", - sal::static_int_cast< int >(pEvent->xreparent.parent), - pEvent->xreparent.x, - pEvent->xreparent.y ); + SAL_INFO("vcl.app", "\t\tp=" << sal::static_int_cast< int >( + pEvent->xreparent.parent) + << " x=" << pEvent->xreparent.x + << " y=" << pEvent->xreparent.y ); break; case ConfigureNotify: - fprintf( stderr, "\t\tb=%d %d*%d %d+%d\n", - pEvent->xconfigure.border_width, - pEvent->xconfigure.width, - pEvent->xconfigure.height, - pEvent->xconfigure.x, - pEvent->xconfigure.y ); + SAL_INFO("vcl.app", "\t\tb=" << pEvent->xconfigure.border_width + << " " << pEvent->xconfigure.width + << "*" << pEvent->xconfigure.height + << " " << pEvent->xconfigure.x + << "+" << pEvent->xconfigure.y); break; case PropertyNotify: - fprintf( stderr, "\t\ta=%s (0x%X)\n", - GetAtomName( pDisp_, pEvent->xproperty.atom ), - sal::static_int_cast< unsigned int >( - pEvent->xproperty.atom) ); + SAL_INFO("vcl.app", "\t\ta=" << GetAtomName( + pDisp_, pEvent->xproperty.atom) + << std::showbase << std::hex << std::uppercase + << " (" << sal::static_int_cast< unsigned int >( + pEvent->xproperty.atom) << ")."); break; case ColormapNotify: - fprintf( stderr, "\t\tc=%ld n=%d s=%d\n", - pEvent->xcolormap.colormap, - pEvent->xcolormap.c_new, - pEvent->xcolormap.state ); + SAL_INFO("vcl.app", "\t\tc=" << pEvent->xcolormap.colormap + << " n=" << pEvent->xcolormap.c_new + << " s=" << pEvent->xcolormap.state); break; case ClientMessage: - fprintf( stderr, "\t\ta=%s (0x%X) f=%i [0x%lX,0x%lX,0x%lX,0x%lX,0x%lX])\n", - GetAtomName( pDisp_, pEvent->xclient.message_type ), - sal::static_int_cast< unsigned int >( - pEvent->xclient.message_type), - pEvent->xclient.format, - pEvent->xclient.data.l[0], - pEvent->xclient.data.l[1], - pEvent->xclient.data.l[2], - pEvent->xclient.data.l[3], - pEvent->xclient.data.l[4] ); + SAL_INFO("vcl.app", "\t\ta=" << GetAtomName( + pDisp_, pEvent->xclient.message_type) + << std::showbase << std::hex << std::uppercase + << " (" << sal::static_int_cast< unsigned int >( + pEvent->xclient.message_type) << ")" + << std::dec + << " f=" << pEvent->xclient.format + << std::hex + << " [" << pEvent->xclient.data.l[0] + << "," << pEvent->xclient.data.l[1] + << "," << pEvent->xclient.data.l[2] + << "," << pEvent->xclient.data.l[3] + << "," << pEvent->xclient.data.l[4] + << "]"); break; case MappingNotify: - fprintf( stderr, "\t\tr=%sd\n", - MappingModifier == pEvent->xmapping.request - ? "MappingModifier" - : MappingKeyboard == pEvent->xmapping.request - ? "MappingKeyboard" - : "MappingPointer" ); + SAL_INFO("vcl.app", "\t\tr=" + << (MappingModifier == pEvent->xmapping.request ? + "MappingModifier" : + (MappingKeyboard == pEvent->xmapping.request ? + "MappingKeyboard" : "MappingPointer")) + << "d"); break; } } else - fprintf( stderr, "[%s] %d s=%d w=%ld\n", - pComment, - pEvent->type, - pEvent->xany.send_event, - pEvent->xany.window ); + SAL_INFO("vcl.app", "[" << pComment << "] " + << pEvent->type + << " s=" << pEvent->xany.send_event + << " w=" << pEvent->xany.window); } void SalDisplay::PrintInfo() const @@ -2321,7 +2316,11 @@ void SalDisplay::InitXinerama() if( m_bXinerama ) { for (auto const& screen : m_aXineramaScreens) - fprintf( stderr, "Xinerama screen: %ldx%ld+%ld+%ld\n", screen.GetWidth(), screen.GetHeight(), screen.Left(), screen.Top() ); + SAL_INFO("vcl.app", "Xinerama screen: " + << screen.GetWidth() + << "x" << screen.GetHeight() + << "+" << screen.Left() + << "+" << screen.Top()); } #endif } @@ -2837,9 +2836,21 @@ Pixel SalColormap::GetPixel( Color nColor ) const const_cast(this)->m_aPalette[aInversColor.pixel] = nInversColor; #ifdef DBG_UTIL else - fprintf( stderr, "SalColormap::GetPixel() 0x%06lx=%lu 0x%06lx=%lu\n", - static_cast< unsigned long >(sal_uInt32(nColor)), aColor.pixel, - static_cast< unsigned long >(sal_uInt32(nInversColor)), aInversColor.pixel); + SAL_INFO("vcl.app", "SalColormap::GetPixel() " + << std::showbase << std::setfill('0') + << std::setw(6) << std::hex + << static_cast< unsigned long >( + sal_uInt32(nColor)) + << "=" + << std::dec + << aColor.pixel << " " + << std::showbase << std::setfill('0') + << std::setw(6) << std::hex + << static_cast< unsigned long >( + sal_uInt32(nInversColor)) + << "=" + << std::dec + << aInversColor.pixel); #endif } } @@ -2848,16 +2859,18 @@ Pixel SalColormap::GetPixel( Color nColor ) const } #ifdef DBG_UTIL - fprintf( stderr, "SalColormap::GetPixel() !XAllocColor %lx\n", - static_cast< unsigned long >(sal_uInt32(nColor)) ); + SAL_INFO("vcl.app", "SalColormap::GetPixel() !XAllocColor " + << std::hex + << static_cast< unsigned long >(sal_uInt32(nColor))); #endif } if( m_aPalette.empty() ) { #ifdef DBG_UTIL - fprintf( stderr, "SalColormap::GetPixel() Palette empty %lx\n", - static_cast< unsigned long >(sal_uInt32(nColor))); + SAL_INFO("vcl.app", "SalColormap::GetPixel() Palette empty " + << std::hex + << static_cast< unsigned long >(sal_uInt32(nColor))); #endif return sal_uInt32(nColor); } diff --git a/vcl/unx/generic/app/salinst.cxx b/vcl/unx/generic/app/salinst.cxx index 20dbeb844dfb..21d878cfa612 100644 --- a/vcl/unx/generic/app/salinst.cxx +++ b/vcl/unx/generic/app/salinst.cxx @@ -172,7 +172,10 @@ bool X11SalInstance::AnyInput(VclInputFlags nType) bRet = aInput.bRet; } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "AnyInput 0x%x = %s\n", static_cast(nType), bRet ? "true" : "false" ); + SAL_INFO("vcl.app", "AnyInput " + << std::showbase << std::hex + << static_cast(nType) + << " = " << (bRet ? "true" : "false")); #endif return bRet; } diff --git a/vcl/unx/generic/app/wmadaptor.cxx b/vcl/unx/generic/app/wmadaptor.cxx index d6034ea333f6..39aaf007344e 100644 --- a/vcl/unx/generic/app/wmadaptor.cxx +++ b/vcl/unx/generic/app/wmadaptor.cxx @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -183,7 +184,7 @@ std::unique_ptr WMAdaptor::createWMAdaptor( SalDisplay* pSalDisplay ) } #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "WM supports extended WM hints\n" ); + SAL_INFO("vcl.app", "WM supports extended WM hints."); #endif // try a GnomeWM @@ -196,7 +197,7 @@ std::unique_ptr WMAdaptor::createWMAdaptor( SalDisplay* pSalDisplay ) } #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "WM supports GNOME WM hints\n" ); + SAL_INFO("vcl.app", "WM supports GNOME WM hints."); #endif } @@ -204,9 +205,9 @@ std::unique_ptr WMAdaptor::createWMAdaptor( SalDisplay* pSalDisplay ) pAdaptor.reset(new WMAdaptor( pSalDisplay )); #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "Window Manager's name is \"%s\"\n", - OUStringToOString(pAdaptor->getWindowManagerName(), - RTL_TEXTENCODING_UTF8).getStr()); + SAL_INFO("vcl.app", "Window Manager's name is \"" + << pAdaptor->getWindowManagerName() + << "\"."); #endif return pAdaptor; } @@ -386,7 +387,7 @@ NetWMAdaptor::NetWMAdaptor( SalDisplay* pSalDisplay ) : if( XGetAtomNames( m_pDisplay, pAtoms, nItems, pAtomNames ) ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "supported protocols:\n" ); + SAL_INFO("vcl.app", "supported protocols:"); #endif for( unsigned long i = 0; i < nItems; i++ ) { @@ -409,7 +410,10 @@ NetWMAdaptor::NetWMAdaptor( SalDisplay* pSalDisplay ) : m_bEnableAlwaysOnTopWorks = true; } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, " %s%s\n", pAtomNames[i], ((pMatch)&&(pMatch->nProtocol != -1)) ? "" : " (unsupported)" ); + SAL_INFO("vcl.app", " " + << pAtomNames[i] + << (((pMatch)&&(pMatch->nProtocol != -1)) ? + "" : " (unsupported)")); #endif XFree( pAtomNames[i] ); } @@ -472,12 +476,11 @@ NetWMAdaptor::NetWMAdaptor( SalDisplay* pSalDisplay ) : if( aWorkArea != m_aWMWorkAreas[0] ) m_bEqualWorkAreas = false; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "workarea %d: %ldx%ld+%ld+%ld\n", - i, - m_aWMWorkAreas[i].GetWidth(), - m_aWMWorkAreas[i].GetHeight(), - m_aWMWorkAreas[i].Left(), - m_aWMWorkAreas[i].Top() ); + SAL_INFO("vcl.app", "workarea " << i + << ": " << m_aWMWorkAreas[i].GetWidth() + << "x" << m_aWMWorkAreas[i].GetHeight() + << "+" << m_aWMWorkAreas[i].Left() + << "+" << m_aWMWorkAreas[i].Top()); #endif } XFree( pProperty ); @@ -485,7 +488,8 @@ NetWMAdaptor::NetWMAdaptor( SalDisplay* pSalDisplay ) : else { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "%ld workareas for %d desktops !\n", nItems/4, m_nDesktops ); + SAL_INFO("vcl.app", nItems/4 << " workareas for " + << m_nDesktops << " desktops !"); #endif if( pProperty ) { @@ -636,7 +640,7 @@ GnomeWMAdaptor::GnomeWMAdaptor( SalDisplay* pSalDisplay ) : if( XGetAtomNames( m_pDisplay, pAtoms, nItems, pAtomNames ) ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "supported protocols:\n" ); + SAL_INFO("vcl.app", "supported protocols:"); #endif for( unsigned long i = 0; i < nItems; i++ ) { @@ -665,7 +669,10 @@ GnomeWMAdaptor::GnomeWMAdaptor( SalDisplay* pSalDisplay ) : m_nInitWinGravity = NorthWestGravity; } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, " %s%s\n", pAtomNames[i], ((pMatch) && (pMatch->nProtocol != -1)) ? "" : " (unsupported)" ); + SAL_INFO("vcl.app", " " + << pAtomNames[i] + << (((pMatch) && (pMatch->nProtocol != -1)) ? + "" : " (unsupported)")); #endif XFree( pAtomNames[i] ); } diff --git a/vcl/unx/generic/dtrans/X11_clipboard.cxx b/vcl/unx/generic/dtrans/X11_clipboard.cxx index 8740f2418538..17104ca75eca 100644 --- a/vcl/unx/generic/dtrans/X11_clipboard.cxx +++ b/vcl/unx/generic/dtrans/X11_clipboard.cxx @@ -23,6 +23,7 @@ #include #include #include +#include #if OSL_DEBUG_LEVEL > 1 #include @@ -47,7 +48,8 @@ X11Clipboard::X11Clipboard( SelectionManager& rManager, Atom aSelection ) : m_aSelection( aSelection ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "creating instance of X11Clipboard (this=%p)\n", this ); + SAL_INFO("vcl.unx.dtrans", "creating instance of X11Clipboard (this=" + << this << ")."); #endif } @@ -72,8 +74,13 @@ X11Clipboard::~X11Clipboard() MutexGuard aGuard( *Mutex::getGlobalMutex() ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "shutting down instance of X11Clipboard (this=%p, Selection=\"%s\")\n", this, OUStringToOString( m_xSelectionManager->getString( m_aSelection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "shutting down instance of X11Clipboard (this=" + << this + << ", Selection=\"" + << m_xSelectionManager->getString( m_aSelection ) + << "\")."); #endif + if( m_aSelection != None ) m_xSelectionManager->deregisterHandler( m_aSelection ); else @@ -87,8 +94,9 @@ void X11Clipboard::fireChangedContentsEvent() { ClearableMutexGuard aGuard( m_xSelectionManager->getMutex() ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "X11Clipboard::fireChangedContentsEvent for %s (%" SAL_PRI_SIZET "u listeners)\n", - OUStringToOString( m_xSelectionManager->getString( m_aSelection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), m_aListeners.size() ); + SAL_INFO("vcl.unx.dtrans", "X11Clipboard::fireChangedContentsEvent for " + << m_xSelectionManager->getString( m_aSelection ) + << " (" << m_aListeners.size() << " listeners)."); #endif ::std::vector< Reference< XClipboardListener > > listeners( m_aListeners ); aGuard.clear(); diff --git a/vcl/unx/generic/dtrans/X11_selection.cxx b/vcl/unx/generic/dtrans/X11_selection.cxx index c98df363daec..11cc3a921bcf 100644 --- a/vcl/unx/generic/dtrans/X11_selection.cxx +++ b/vcl/unx/generic/dtrans/X11_selection.cxx @@ -199,8 +199,9 @@ rtl_TextEncoding x11::getTextPlainEncoding( const OUString& rMimeType ) } } #if OSL_DEBUG_LEVEL > 1 - if( aEncoding == RTL_TEXTENCODING_DONTKNOW ) - fprintf( stderr, "getTextPlainEncoding( %s ) failed\n", OUStringToOString( rMimeType, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_WARN_IF(aEncoding == RTL_TEXTENCODING_DONTKNOW, + "vcl.unx.dtrans", "getTextPlainEncoding( " + << rMimeType << " ) failed."); #endif return aEncoding; } @@ -438,13 +439,14 @@ void SelectionManager::initialize( const Sequence< Any >& arguments ) osl_resumeThread( m_aThread ); #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "SelectionManager::initialize: creation of dispatch thread failed !\n" ); + SAL_WARN("vcl.unx.dtrans", "SelectionManager::initialize: " + << "creation of dispatch thread failed !."); #endif if (pipe(m_EndThreadPipe) != 0) { - #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "Failed to create endThreadPipe\n"); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_WARN("vcl.unx.dtrans", "Failed to create endThreadPipe."); +#endif m_EndThreadPipe[0] = m_EndThreadPipe[1] = 0; } } @@ -455,7 +457,9 @@ void SelectionManager::initialize( const Sequence< Any >& arguments ) SelectionManager::~SelectionManager() { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SelectionManager::~SelectionManager (%s)\n", m_pDisplay ? DisplayString(m_pDisplay) : "no display" ); + SAL_INFO("vcl.unx.dtrans", "SelectionManager::~SelectionManager (" + << (m_pDisplay ? DisplayString(m_pDisplay) : "no display") + << ")."); #endif { osl::MutexGuard aGuard( *osl::Mutex::getGlobalMutex() ); @@ -484,7 +488,7 @@ SelectionManager::~SelectionManager() osl::MutexGuard aGuard(m_aMutex); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "shutting down SelectionManager\n" ); + SAL_INFO("vcl.unx.dtrans", "shutting down SelectionManager."); #endif if( m_pDisplay ) @@ -725,11 +729,14 @@ bool SelectionManager::requestOwnership( Atom selection ) XSetSelectionOwner( m_pDisplay, selection, m_aWindow, CurrentTime ); if( XGetSelectionOwner( m_pDisplay, selection ) == m_aWindow ) bSuccess = true; + #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "%s ownership for selection %s\n", - bSuccess ? "acquired" : "failed to acquire", - OUStringToOString( getString( selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", + (bSuccess ? "acquired" : "failed to acquire") + << " ownership for selection " + << getString( selection )); #endif + Selection* pSel = m_aSelections[ selection ]; pSel->m_bOwner = bSuccess; delete pSel->m_pPixmap; @@ -738,15 +745,15 @@ bool SelectionManager::requestOwnership( Atom selection ) } #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "no adaptor for selection %s\n", - OUStringToOString( getString( selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_WARN("vcl.unx.dtrans", "no adaptor for selection " + << getString( selection )); if( pAdaptor->getTransferable().is() ) { Sequence< DataFlavor > aTypes = pAdaptor->getTransferable()->getTransferDataFlavors(); for( int i = 0; i < aTypes.getLength(); i++ ) { - fprintf( stderr, " %s\n", OUStringToOString( aTypes.getConstArray()[i].MimeType, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", " " << aTypes.getConstArray()[i].MimeType); } } #endif @@ -849,12 +856,8 @@ bool SelectionManager::getPasteData( Atom selection, Atom type, Sequence< sal_In bool bSuccess = false; #if OSL_DEBUG_LEVEL > 1 - OUString aSelection( getString( selection ) ); - OUString aType( getString( type ) ); - fprintf( stderr, "getPasteData( %s, native: %s )\n", - OUStringToOString( aSelection, RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( aType, RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "getPasteData( " << getString( selection ) + << ", native: " << getString( type ) << " )."); #endif if( ! m_pDisplay ) @@ -871,7 +874,7 @@ bool SelectionManager::getPasteData( Atom selection, Atom type, Sequence< sal_In { // probably bad timing led us here #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "Innere Nabelschau\n" ); + SAL_WARN("vcl.unx.dtrans", "Innere Nabelschau."); #endif return false; } @@ -959,9 +962,10 @@ bool SelectionManager::getPasteData( Atom selection, Atom type, Sequence< sal_In } while( ! it->second->m_aDataArrived.check() && (tv_current.tv_sec - tv_last.tv_sec) < getSelectionTimeout() ); #if OSL_DEBUG_LEVEL > 1 - if( (tv_current.tv_sec - tv_last.tv_sec) > getSelectionTimeout() ) - fprintf( stderr, "timed out\n" ); + SAL_WARN_IF((tv_current.tv_sec - tv_last.tv_sec) > getSelectionTimeout(), + "vcl.unx.dtrans", "timed out."); #endif + if( it->second->m_aDataArrived.check() && it->second->m_aData.getLength() ) { @@ -970,7 +974,7 @@ bool SelectionManager::getPasteData( Atom selection, Atom type, Sequence< sal_In } #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "conversion unsuccessful\n" ); + SAL_WARN("vcl.unx.dtrans", "conversion unsuccessful."); #endif return bSuccess; } @@ -998,10 +1002,12 @@ bool SelectionManager::getPasteData( Atom selection, const OUString& rType, Sequ const Sequence< DataFlavor >& rTypes( it->second->m_aTypes ); const std::vector< Atom >& rNativeTypes( it->second->m_aNativeTypes ); + #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "getPasteData( \"%s\", \"%s\" )\n", - OUStringToOString( getString( selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( rType, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "getPasteData( \"" + << getString( selection ) + << "\", \"" + << rType << "\" )."); #endif if( rType == "text/plain;charset=utf-16" ) @@ -1043,11 +1049,13 @@ bool SelectionManager::getPasteData( Atom selection, const OUString& rType, Sequ ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "using \"%s\" instead of \"%s\"\n", - OUStringToOString( rTypes.getConstArray()[i].MimeType, RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( rType, RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "using \"" + << rTypes.getConstArray()[i].MimeType + << "\" instead of \"" + << rType + << "\"."); #endif + OString aConvert( reinterpret_cast(aData.getConstArray()), aData.getLength() ); OUString aUTF( OStringToOUString( aConvert, aEncoding ) ); rData = Sequence< sal_Int8 >( reinterpret_cast(aUTF.getStr()), (aUTF.getLength()+1)*sizeof( sal_Unicode ) ); @@ -1063,10 +1071,10 @@ bool SelectionManager::getPasteData( Atom selection, const OUString& rType, Sequ // #i83376# try if someone has the data in image/bmp already before // doing the PIXMAP stuff (e.g. the Gimp has this) bSuccess = getPasteData( selection, m_nImageBmpAtom, rData ); - #if OSL_DEBUG_LEVEL > 1 - if( bSuccess ) - fprintf( stderr, "got %d bytes of image/bmp\n", (int)rData.getLength() ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO_IF(bSuccess, "vcl.unx.dtrans", + "got " << (int) rData.getLength() << " bytes of image/bmp."); +#endif if( ! bSuccess ) { Pixmap aPixmap = None; @@ -1119,12 +1127,17 @@ bool SelectionManager::getPasteData( Atom selection, const OUString& rType, Sequ } } } - #if OSL_DEBUG_LEVEL > 1 +#if OSL_DEBUG_LEVEL > 1 else { - fprintf( stderr, "could not get PIXMAP property: type=%s, format=%d, items=%ld, bytes=%ld, ret=0x%p\n", OUStringToOString( getString( type ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), format, nItems, nBytes, pReturn ); + SAL_WARN("vcl.unx.dtrans", "could not get PIXMAP property: type=" + << getString( type ) + << ", format=" << format + << ", items=" << nItems + << ", bytes=" << nBytes + << ", ret=0x" << pReturn); } - #endif +#endif } } @@ -1180,12 +1193,14 @@ bool SelectionManager::getPasteData( Atom selection, const OUString& rType, Sequ bSuccess = getPasteData( selection, nSelectedType, rData ); } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "getPasteData for selection %s and data type %s returns %s, returned sequence has length %" SAL_PRIdINT32 "\n", - OUStringToOString( getString( selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( rType, RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - bSuccess ? "true" : "false", - rData.getLength() - ); + SAL_INFO("vcl.unx.dtrans", "getPasteData for selection " + << getString( selection ) + << " and data type " + << rType + << " returns " + << ( bSuccess ? "true" : "false") + << ", returned sequence has length " + << rData.getLength() << "."); #endif return bSuccess; } @@ -1236,7 +1251,9 @@ bool SelectionManager::getPasteDataTypes( Atom selection, Sequence< DataFlavor > XA_ATOM, &nType, &nFormat, &nItems, &nBytes, &pBytes ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "have %ld data types in XdndTypeList\n", nItems ); + SAL_INFO("vcl.unx.dtrans", "have " + << nItems + << " data types in XdndTypeList."); #endif if( nItems == atomcount && nBytes > 0 ) { @@ -1269,7 +1286,9 @@ bool SelectionManager::getPasteDataTypes( Atom selection, Sequence< DataFlavor > if( m_aDropEnterEvent.data.l[2+i] ) n++; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "have %d data types in XdndEnter\n", n ); + SAL_INFO("vcl.unx.dtrans", "have " + << n + << " data types in XdndEnter."); #endif aAtoms.realloc( sizeof(Atom)*n ); for( i = 0, n = 0; i < 3; i++ ) @@ -1382,9 +1401,12 @@ bool SelectionManager::getPasteDataTypes( Atom selection, Sequence< DataFlavor > #if OSL_DEBUG_LEVEL > 1 { - fprintf( stderr, "SelectionManager::getPasteDataTypes( %s ) = %s\n", OUStringToOString( getString( selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), bSuccess ? "true" : "false" ); + SAL_INFO("vcl.unx.dtrans", "SelectionManager::getPasteDataTypes( " + << getString( selection ) + << " ) = " + << (bSuccess ? "true" : "false")); for( int i = 0; i < rTypes.getLength(); i++ ) - fprintf( stderr, "type: %s\n", OUStringToOString( rTypes.getConstArray()[i].MimeType, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "type: " << rTypes.getConstArray()[i].MimeType); } #endif @@ -1494,7 +1516,7 @@ bool SelectionManager::sendData( SelectionAdaptor* pAdaptor, if( aData.getLength() > m_nIncrementalThreshold ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "using INCR protocol\n" ); + SAL_INFO("vcl.unx.dtrans", "using INCR protocol."); std::unordered_map< ::Window, std::unordered_map< Atom, IncrementalTransfer > >::const_iterator win_it = m_aIncrementals.find( requestor ); if( win_it != m_aIncrementals.end() ) { @@ -1502,11 +1524,13 @@ bool SelectionManager::sendData( SelectionAdaptor* pAdaptor, if( inc_it != win_it->second.end() ) { const IncrementalTransfer& rInc = inc_it->second; - fprintf( stderr, "premature end and new start for INCR transfer for window 0x%lx, property %s, type %s\n", - rInc.m_aRequestor, - OUStringToOString( getString( rInc.m_aProperty ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( getString( rInc.m_aTarget ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "premature end and new start for INCR transfer for window " + << std::showbase << std::hex + << rInc.m_aRequestor + << ", property " + << getString( rInc.m_aProperty ) + << ", type " + << getString( rInc.m_aTarget )); } } #endif @@ -1543,8 +1567,8 @@ bool SelectionManager::sendData( SelectionAdaptor* pAdaptor, } #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "convertData failed for type: %s \n", - OUStringToOString( convertTypeFromNative( target, selection, nFormat ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_WARN("vcl.unx.dtrans", "convertData failed for type: " + << convertTypeFromNative( target, selection, nFormat )); #endif return bConverted; } @@ -1552,11 +1576,12 @@ bool SelectionManager::sendData( SelectionAdaptor* pAdaptor, bool SelectionManager::handleSelectionRequest( XSelectionRequestEvent& rRequest ) { osl::ResettableMutexGuard aGuard( m_aMutex ); + #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "handleSelectionRequest for selection %s and target %s\n", - OUStringToOString( getString( rRequest.selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( getString( rRequest.target ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "handleSelectionRequest for selection " + << getString( rRequest.selection ) + << " and target " + << getString( rRequest.target )); #endif XEvent aNotify; @@ -1597,9 +1622,11 @@ bool SelectionManager::handleSelectionRequest( XSelectionRequestEvent& rRequest XA_ATOM, 32, PropModeReplace, reinterpret_cast(pTypes), nTypes ); aNotify.xselection.property = rRequest.property; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "sending type list:\n" ); + SAL_INFO("vcl.unx.dtrans", "sending type list:"); for( int k = 0; k < nTypes; k++ ) - fprintf( stderr, " %s\n", pTypes[k] ? XGetAtomName( m_pDisplay, pTypes[k] ) : "" ); + SAL_INFO("vcl.unx.dtrans", " " + << (pTypes[k] ? XGetAtomName( m_pDisplay, pTypes[k] ) : + "")); #endif } } @@ -1610,7 +1637,7 @@ bool SelectionManager::handleSelectionRequest( XSelectionRequestEvent& rRequest XA_INTEGER, 32, PropModeReplace, reinterpret_cast(&nTimeStamp), 1 ); aNotify.xselection.property = rRequest.property; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "sending timestamp: %d\n", (int)nTimeStamp ); + SAL_INFO("vcl.unx.dtrans", "sending timestamp: " << (int)nTimeStamp); #endif } else @@ -1653,7 +1680,9 @@ bool SelectionManager::handleSelectionRequest( XSelectionRequestEvent& rRequest if( pData && nItems ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "found %ld atoms in MULTIPLE request\n", nItems ); + SAL_INFO("vcl.unx.dtrans", "found " + << nItems + << " atoms in MULTIPLE request."); #endif bEventSuccess = true; bool bResetAtoms = false; @@ -1662,13 +1691,18 @@ bool SelectionManager::handleSelectionRequest( XSelectionRequestEvent& rRequest for( unsigned long i = 0; i < nItems; i += 2 ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, " %s => %s: ", - OUStringToOString( getString( pAtoms[i] ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( getString( pAtoms[i+1] ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + std::ostringstream oss; + oss << " " + << getString( pAtoms[i] ) + << " => " + << getString( pAtoms[i+1] ) + << ": "; #endif + bool bSuccess = sendData( pAdaptor, rRequest.requestor, pAtoms[i], pAtoms[i+1], rRequest.selection ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "%s\n", bSuccess ? "succeeded" : "failed" ); + oss << (bSuccess ? "succeeded" : "failed"); + SAL_INFO("vcl.unx.dtrans", oss.str()); #endif if( ! bSuccess ) { @@ -1693,19 +1727,25 @@ bool SelectionManager::handleSelectionRequest( XSelectionRequestEvent& rRequest #if OSL_DEBUG_LEVEL > 1 else { - fprintf( stderr, "could not get type list from \"%s\" of type \"%s\" on requestor 0x%lx, requestor has properties:", - OUStringToOString( getString( rRequest.property ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( getString( nType ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - rRequest.requestor ); + std::ostringstream oss; + oss << "could not get type list from \"" + << getString( rRequest.property ) + << "\" of type \"" + << getString( nType ) + << "\" on requestor " + << std::showbase << std::hex + << rRequest.requestor + << ", requestor has properties:"; + int nProps = 0; Atom* pProps = XListProperties( m_pDisplay, rRequest.requestor, &nProps ); if( pProps ) { for( int i = 0; i < nProps; i++ ) - fprintf( stderr, " \"%s\"", OUStringToOString( getString( pProps[i]), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + oss << " \"" << getString( pProps[i]) << "\""; XFree( pProps ); } - fprintf( stderr, "\n" ); + SAL_INFO("vcl.unx.dtrans", oss.str()); } #endif } @@ -1761,8 +1801,8 @@ bool SelectionManager::handleReceivePropertyNotify( XPropertyEvent const & rNoti osl::MutexGuard aGuard( m_aMutex ); // data we requested arrived #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "handleReceivePropertyNotify for property %s\n", - OUStringToOString( getString( rNotify.atom ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "handleReceivePropertyNotify for property " + << getString( rNotify.atom )); #endif bool bHandled = false; @@ -1800,10 +1840,14 @@ bool SelectionManager::handleReceivePropertyNotify( XPropertyEvent const & rNoti &nItems, &nBytes, &pData ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "found %ld bytes data of type %s and format %d, items = %ld\n", - nBytes, - OUStringToOString( getString( nType ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - nFormat, nItems ); + SAL_INFO("vcl.unx.dtrans", "found " + << nBytes + << " bytes data of type " + << getString( nType ) + << " and format " + << nFormat + << ", items = " + << nItems); #endif if( pData ) { @@ -1828,11 +1872,17 @@ bool SelectionManager::handleReceivePropertyNotify( XPropertyEvent const & rNoti &nType, &nFormat, &nItems, &nBytes, &pData ); + #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "read %ld items data of type %s and format %d, %ld bytes left in property\n", - nItems, - OUStringToOString( getString( nType ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - nFormat, nBytes ); + SAL_INFO("vcl.unx.dtrans", "read " + << nItems + << " items data of type " + << getString( nType ) + << " and format " + << nFormat + << ", " + << nBytes + << " bytes left in property."); #endif std::size_t nUnitSize = GetTrueFormatSize(nFormat); @@ -1879,10 +1929,15 @@ bool SelectionManager::handleSendPropertyNotify( XPropertyEvent const & rNotify // ready for next part of an IncrementalTransfer #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "handleSendPropertyNotify for property %s (%s)\n", - OUStringToOString( getString( rNotify.atom ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - rNotify.state == PropertyNewValue ? "new value" : ( rNotify.state == PropertyDelete ? "deleted" : "unknown") - ); + SAL_INFO("vcl.unx.dtrans", "handleSendPropertyNotify for property " + << getString( rNotify.atom ) + << " (" + << (rNotify.state == PropertyNewValue ? + "new value" : + (rNotify.state == PropertyDelete ? + "deleted" : + "unknown")) + << ")."); #endif bool bHandled = false; @@ -1903,11 +1958,14 @@ bool SelectionManager::handleSendPropertyNotify( XPropertyEvent const & rNotify aTimeouts.push_back( incrementalTransfer.first ); #if OSL_DEBUG_LEVEL > 1 const IncrementalTransfer& rInc = incrementalTransfer.second; - fprintf( stderr, "timeout on INCR transfer for window 0x%lx, property %s, type %s\n", - rInc.m_aRequestor, - OUStringToOString( getString( rInc.m_aProperty ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( getString( rInc.m_aTarget ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", + "timeout on INCR transfer for window " + << std::showbase << std::hex + << rInc.m_aRequestor + << ", property " + << getString( rInc.m_aProperty ) + << ", type " + << getString( rInc.m_aTarget )); #endif } } @@ -1930,11 +1988,14 @@ bool SelectionManager::handleSendPropertyNotify( XPropertyEvent const & rNotify if( nBytes < 0 ) // sanity check nBytes = 0; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "pushing %d bytes: \"%.*s\"...\n", - nBytes, std::min(nBytes, 32), - (const unsigned char*)rInc.m_aData.getConstArray()+rInc.m_nBufferPos ); + SAL_INFO("vcl.unx.dtrans", "pushing " + << nBytes + << " bytes: \"" + << std::setw(std::min(nBytes, 32)) + << ((const unsigned char*) + rInc.m_aData.getConstArray()+rInc.m_nBufferPos) + << "\"..."); #endif - std::size_t nUnitSize = GetTrueFormatSize(rInc.m_nFormat); XChangeProperty( m_pDisplay, @@ -1951,11 +2012,14 @@ bool SelectionManager::handleSendPropertyNotify( XPropertyEvent const & rNotify if( nBytes == 0 ) // transfer finished { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "finished INCR transfer for window 0x%lx, property %s, type %s\n", - rInc.m_aRequestor, - OUStringToOString( getString( rInc.m_aProperty ), RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( getString( rInc.m_aTarget ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "finished INCR transfer for " + << "window " + << std::showbase << std::hex + << rInc.m_aRequestor + << ", property " + << getString( rInc.m_aProperty ) + << ", type " + << getString( rInc.m_aTarget )); #endif it->second.erase( inc_it ); } @@ -1977,17 +2041,19 @@ bool SelectionManager::handleSelectionNotify( XSelectionEvent const & rNotify ) // notification about success/failure of one of our conversion requests #if OSL_DEBUG_LEVEL > 1 - OUString aSelection( getString( rNotify.selection ) ); - OUString aProperty("None"); - if( rNotify.property ) - aProperty = getString( rNotify.property ); - fprintf( stderr, "handleSelectionNotify for selection %s and property %s (0x%lx)\n", - OUStringToOString( aSelection, RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - OUStringToOString( aProperty, RTL_TEXTENCODING_ISO_8859_1 ).getStr(), - rNotify.property - ); - if( rNotify.requestor != m_aWindow && rNotify.requestor != m_aCurrentDropWindow ) - fprintf( stderr, "Warning: selection notify for unknown window 0x%lx\n", rNotify.requestor ); + SAL_INFO("vcl.unx.dtrans", "handleSelectionNotify for selection " + << getString( rNotify.selection ) + << " and property " + << (rNotify.property ? getString( rNotify.property ) : "None") + << " (" + << std::showbase << std::hex + << rNotify.property + << ")."); + SAL_WARN_IF(rNotify.requestor != m_aWindow && + rNotify.requestor != m_aCurrentDropWindow, + "vcl.unx.dtrans", "selection notify for unknown window " + << std::showbase << std::hex + << rNotify.requestor); #endif std::unordered_map< Atom, Selection* >::iterator it = m_aSelections.find( rNotify.selection ); @@ -2055,7 +2121,7 @@ bool SelectionManager::handleSelectionNotify( XSelectionEvent const & rNotify ) } #if OSL_DEBUG_LEVEL > 1 else if( it != m_aSelections.end() ) - fprintf( stderr, "Warning: selection in state %d\n", it->second->m_eState ); + SAL_WARN("vcl.unx.dtrans", "selection in state " << it->second->m_eState); #endif return bHandled; } @@ -2079,15 +2145,25 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) rMessage.message_type == m_nXdndDrop || rMessage.message_type == m_nXdndPosition ) { - fprintf( stderr, "got drop event %s, ", OUStringToOString( getString( rMessage.message_type ), RTL_TEXTENCODING_ASCII_US).getStr() ); + std::ostringstream oss; + oss << "got drop event " + << getString( rMessage.message_type ) + << ", "; + if( it == m_aDropTargets.end() ) - fprintf( stderr, "but no target found\n" ); + oss << "but no target found."; else if( ! it->second.m_pTarget->m_bActive ) - fprintf( stderr, "but target is inactive\n" ); + oss << "but target is inactive."; else if( m_aDropEnterEvent.data.l[0] != None && (::Window)m_aDropEnterEvent.data.l[0] != aSource ) - fprintf( stderr, "but source 0x%lx is unknown (expected 0x%lx or 0)\n", aSource, m_aDropEnterEvent.data.l[0] ); + oss << "but source " + << std::showbase << std::hex + << aSource + << " is unknown (expected " + << m_aDropEnterEvent.data.l[0] + << " or 0)."; else - fprintf( stderr, "processing.\n" ); + oss << "processing."; + SAL_INFO("vcl.unx.dtrans", oss.str()); } #endif @@ -2116,7 +2192,9 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) m_aCurrentDropWindow = aTarget; m_nCurrentProtocolVersion = m_aDropEnterEvent.data.l[1] >> 24; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "received XdndEnter on 0x%lx\n", aTarget ); + SAL_INFO("vcl.unx.dtrans", "received XdndEnter on " + << std::showbase << std::hex + << aTarget); #endif } else if( @@ -2135,9 +2213,16 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) rMessage.data.l[2] & 0xffff, &m_nLastX, &m_nLastY, &aChild ); - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "received XdndPosition on 0x%lx (%d, %d)\n", aTarget, m_nLastX, m_nLastY ); + SAL_INFO("vcl.unx.dtrans", "received XdndPosition on " + << std::showbase << std::hex + << aTarget + << " (" + << std::dec + << m_nLastX + << ", " + << m_nLastY + << ")."); #endif DropTargetDragEnterEvent aEvent; aEvent.Source = static_cast< XDropTarget* >(it->second.m_pTarget); @@ -2180,7 +2265,9 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) { bHandled = true; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "received XdndLeave on 0x%lx\n", aTarget ); + SAL_INFO("vcl.unx.dtrans", "received XdndLeave on " + << std::showbase << std::hex + << aTarget); #endif DropTargetEvent aEvent; aEvent.Source = static_cast< XDropTarget* >(it->second.m_pTarget); @@ -2198,9 +2285,15 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) { bHandled = true; m_nDropTime = m_nCurrentProtocolVersion > 0 ? rMessage.data.l[2] : CurrentTime; - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "received XdndDrop on 0x%lx (%d, %d)\n", aTarget, m_nLastX, m_nLastY ); + SAL_INFO("vcl.unx.dtrans", "received XdndDrop on " + << std::showbase << std::hex + << aTarget + << " (" + << m_nLastX + << ", " + << m_nLastY + << ")."); #endif if( m_bLastDropAccepted ) { @@ -2222,7 +2315,8 @@ bool SelectionManager::handleDropEvent( XClientMessageEvent const & rMessage ) else { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "XdndDrop canceled due to m_bLastDropAccepted = false\n" ); + SAL_INFO("vcl.unx.dtrans", "XdndDrop canceled due to " + << "m_bLastDropAccepted = false." ); #endif DropTargetEvent aEvent; aEvent.Source = static_cast< XDropTarget* >(it->second.m_pTarget); @@ -2282,13 +2376,11 @@ void SelectionManager::dropComplete( bool bSuccess, ::Window aDropWindow ) else if( m_nLastDropAction & DNDConstants::ACTION_LINK ) aEvent.xclient.data.l[2] = m_nXdndActionLink; } - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "Sending XdndFinished to 0x%lx\n", - m_aDropEnterEvent.data.l[0] - ); + SAL_INFO("vcl.unx.dtrans", "Sending XdndFinished to " + << std::showbase << std::hex + << m_aDropEnterEvent.data.l[0]); #endif - XSendEvent( m_pDisplay, m_aDropEnterEvent.data.l[0], False, NoEventMask, & aEvent ); @@ -2361,10 +2453,11 @@ void SelectionManager::sendDragStatus( Atom nDropAction ) aEvent.xclient.data.l[4] = m_nCurrentProtocolVersion > 1 ? nDropAction : 0; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "Sending XdndStatus to 0x%lx with action %s\n", - m_aDropEnterEvent.data.l[0], - OUStringToOString( getString( nDropAction ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "Sending XdndStatus to " + << std::showbase << std::hex + << m_aDropEnterEvent.data.l[0] + << " with action " + << getString( nDropAction )); #endif XSendEvent( m_pDisplay, m_aDropEnterEvent.data.l[0], @@ -2412,7 +2505,11 @@ bool SelectionManager::updateDragAction( int modifierState ) if( nNewDropAction != m_nUserDragAction || m_nTargetAcceptAction != DNDConstants::ACTION_DEFAULT ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "updateDragAction: %x -> %x\n", (int)m_nUserDragAction, (int)nNewDropAction ); + SAL_INFO("vcl.unx.dtrans", "updateDragAction: " + << std::hex + << (int)m_nUserDragAction + << " -> " + << (int)nNewDropAction); #endif bRet = true; m_nUserDragAction = nNewDropAction; @@ -2499,34 +2596,46 @@ bool SelectionManager::handleDragEvent( XEvent const & rMessage ) // for shortcut std::unordered_map< ::Window, DropTargetEntry >::const_iterator it = m_aDropTargets.find( m_aDropWindow ); + #if OSL_DEBUG_LEVEL > 1 switch( rMessage.type ) { case ClientMessage: - fprintf( stderr, "handleDragEvent: %s\n", OUStringToOString( getString( rMessage.xclient.message_type ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: " + << getString( rMessage.xclient.message_type )); break; case MotionNotify: break; case EnterNotify: - fprintf( stderr, "handleDragEvent: EnterNotify\n" ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: EnterNotify."); break; case LeaveNotify: - fprintf( stderr, "handleDragEvent: LeaveNotify\n" ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: LeaveNotify."); break; case ButtonPress: - fprintf( stderr, "handleDragEvent: ButtonPress %d (m_nDragButton = %d)\n", rMessage.xbutton.button, m_nDragButton ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: ButtonPress " + << rMessage.xbutton.button + << " (m_nDragButton = " + << m_nDragButton + << ")."); break; case ButtonRelease: - fprintf( stderr, "handleDragEvent: ButtonRelease %d (m_nDragButton = %d)\n", rMessage.xbutton.button, m_nDragButton ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: ButtonRelease " + << rMessage.xbutton.button + << " (m_nDragButton = " + << m_nDragButton + << ")."); break; case KeyPress: - fprintf( stderr, "handleDragEvent: KeyPress\n" ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: KeyPress."); break; case KeyRelease: - fprintf( stderr, "handleDragEvent: KeyRelease\n" ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: KeyRelease."); break; default: - fprintf( stderr, "handleDragEvent: \n", rMessage.type ); + SAL_INFO("vcl.unx.dtrans", "handleDragEvent: ."); break; } #endif @@ -2545,9 +2654,10 @@ bool SelectionManager::handleDragEvent( XEvent const & rMessage ) dsde.DropAction = DNDConstants::ACTION_NONE; m_bDropSuccess = (rMessage.xclient.data.l[1] & 1) != 0; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "status drop action: accept = %s, %s\n", - m_bDropSuccess ? "true" : "false", - OUStringToOString( getString( rMessage.xclient.data.l[4] ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "status drop action: accept = " + << (m_bDropSuccess ? "true" : "false") + << ", " + << getString( rMessage.xclient.data.l[4] )); #endif if( rMessage.xclient.data.l[1] & 1 ) { @@ -2810,7 +2920,7 @@ void SelectionManager::accept( sal_Int8 dragOperation, ::Window aDropWindow ) if( aDropWindow == m_aCurrentDropWindow ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "accept: %x\n", dragOperation ); + SAL_INFO("vcl.unx.dtrans", "accept: " << std::hex << dragOperation); #endif Atom nAction = None; dragOperation &= (DNDConstants::ACTION_MOVE | DNDConstants::ACTION_COPY | DNDConstants::ACTION_LINK); @@ -2830,7 +2940,7 @@ void SelectionManager::reject( ::Window aDropWindow ) if( aDropWindow == m_aCurrentDropWindow ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "reject\n" ); + SAL_INFO("vcl.unx.dtrans", "reject."); #endif m_bLastDropAccepted = false; sendDragStatus( None ); @@ -2993,9 +3103,20 @@ void SelectionManager::updateDragWindow( int nX, int nY, ::Window aRoot ) if( aNewCurrentWindow != m_aDropWindow ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "drag left window 0x%lx (rev. %d), entered window 0x%lx (rev %d)\n", m_aDropWindow, m_nCurrentProtocolVersion, aNewCurrentWindow, nNewProtocolVersion ); + SAL_INFO("vcl.unx.dtrans", "drag left window " + << std::showbase << std::hex + << m_aDropWindow + << std::dec + << " (rev. " + << m_nCurrentProtocolVersion + << "), entered window " + << std::showbase << std::hex + << aNewCurrentWindow + << " (rev " + << std::dec + << nNewProtocolVersion + << ")."); #endif - if( m_aDropWindow != None ) { it = m_aDropTargets.find( m_aDropWindow ); @@ -3104,9 +3225,11 @@ void SelectionManager::startDrag( ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "startDrag( sourceActions = %x )\n", (int)sourceActions ); + SAL_INFO("vcl.unx.dtrans", "startDrag( sourceActions = " + << std::hex + << (int)sourceActions + << " )."); #endif - DragSourceDropEvent aDragFailedEvent; aDragFailedEvent.Source = static_cast< OWeakObject* >(this); aDragFailedEvent.DragSource = static_cast< XDragSource* >(this); @@ -3120,11 +3243,14 @@ void SelectionManager::startDrag( listener->dragDropEnd( aDragFailedEvent ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "*** ERROR *** second drag and drop started.\n" ); + SAL_WARN("vcl.unx.dtrans", + "*** ERROR *** second drag and drop started."); if( m_xDragSourceListener.is() ) - fprintf( stderr, "*** ERROR *** drag source listener already set.\n" ); + SAL_WARN("vcl.unx.dtrans", + "*** ERROR *** drag source listener already set."); else - fprintf( stderr, "*** ERROR *** drag thread already running.\n" ); + SAL_WARN("vcl.unx.dtrans", + "*** ERROR *** drag thread already running."); #endif return; } @@ -3180,7 +3306,9 @@ void SelectionManager::startDrag( { m_aDragSourceWindow = aChild; #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "found drag source window 0x%lx\n", m_aDragSourceWindow ); + SAL_INFO("vcl.unx.dtrans", "found drag source window " + << std::showbase << std::hex + << m_aDragSourceWindow); #endif break; } @@ -3188,7 +3316,7 @@ void SelectionManager::startDrag( } while( aChild != None ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "try to grab pointer ... " ); + SAL_INFO("vcl.unx.dtrans", "try to grab pointer ..."); #endif int nPointerGrabSuccess = XGrabPointer( m_pDisplay, aRoot, True, @@ -3224,16 +3352,16 @@ void SelectionManager::startDrag( } } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "%d\n", nPointerGrabSuccess ); -#endif -#if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "try to grab keyboard ... " ); + SAL_INFO("vcl.unx.dtrans", "... grabbed pointer: " + << nPointerGrabSuccess); + SAL_INFO("vcl.unx.dtrans", "try to grab keyboard ..."); #endif int nKeyboardGrabSuccess = XGrabKeyboard( m_pDisplay, aRoot, True, GrabModeAsync, GrabModeAsync, CurrentTime ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "%d\n", nKeyboardGrabSuccess ); + SAL_INFO("vcl.unx.dtrans", "... grabbed keyboard: " + << nKeyboardGrabSuccess); #endif if( nPointerGrabSuccess != GrabSuccess || nKeyboardGrabSuccess != GrabSuccess ) { @@ -3297,7 +3425,9 @@ void SelectionManager::startDrag( m_nDragButton = Button2; } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "m_nUserDragAction = %x\n", (int)m_nUserDragAction ); + SAL_INFO("vcl.unx.dtrans", "m_nUserDragAction = " + << std::hex + << (int)m_nUserDragAction); #endif updateDragWindow( root_x, root_y, aRoot ); m_nUserDragAction = ~0; @@ -3311,7 +3441,8 @@ void SelectionManager::startDrag( else { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "osl_createSuspendedThread failed for drag execute\n" ); + SAL_INFO("vcl.unx.dtrans", "osl_createSuspendedThread failed " + << "for drag execute."); #endif m_xDragSourceListener.clear(); m_xDragSourceTransferable.clear(); @@ -3362,7 +3493,7 @@ void SelectionManager::dragDoDispatch() // do drag // m_xDragSourceListener will be cleared on finished drop #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "begin executeDrag dispatching\n" ); + SAL_INFO("vcl.unx.dtrans", "begin executeDrag dispatching."); #endif oslThread aThread = m_aDragExecuteThread; while( m_xDragSourceListener.is() && ( ! m_bDropSent || time(nullptr)-m_nDropTimeout < 5 ) && osl_scheduleThread( aThread ) ) @@ -3372,7 +3503,7 @@ void SelectionManager::dragDoDispatch() osl::Thread::wait(std::chrono::milliseconds(200)); } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "end executeDrag dispatching\n" ); + SAL_INFO("vcl.unx.dtrans", "end executeDrag dispatching."); #endif { osl::ClearableMutexGuard aGuard(m_aMutex); @@ -3522,9 +3653,8 @@ bool SelectionManager::handleXEvent( XEvent& rEvent ) { osl::ClearableMutexGuard aGuard(m_aMutex); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SelectionClear for selection %s\n", - OUStringToOString( getString( rEvent.xselectionclear.selection ), RTL_TEXTENCODING_ISO_8859_1 ).getStr() - ); + SAL_INFO("vcl.unx.dtrans", "SelectionClear for selection " + << getString( rEvent.xselectionclear.selection )); #endif SelectionAdaptor* pAdaptor = getAdaptor( rEvent.xselectionclear.selection ); std::unordered_map< Atom, Selection* >::iterator it( m_aSelections.find( rEvent.xselectionclear.selection ) ); @@ -3622,7 +3752,7 @@ void SelectionManager::dispatchEvent( int millisec ) void SelectionManager::run( void* pThis ) { #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "SelectionManager::run\n" ); + SAL_INFO("vcl.unx.dtrans", "SelectionManager::run."); #endif osl::Thread::setName("SelectionManager"); // dispatch until the cows come home @@ -3679,15 +3809,15 @@ void SelectionManager::run( void* pThis ) close(This->m_EndThreadPipe[1]); close(This->m_EndThreadPipe[0]); #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "SelectionManager::run end\n" ); + SAL_INFO("vcl.unx.dtrans", "SelectionManager::run end."); #endif } void SelectionManager::shutdown() throw() { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SelectionManager got app termination event\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.dtrans", "SelectionManager got app termination event."); +#endif osl::ResettableMutexGuard aGuard(m_aMutex); @@ -3768,9 +3898,9 @@ sal_Bool SelectionManager::handleEvent(const Any& event) } else { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "SelectionManager got downing event\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.dtrans", "SelectionManager got downing event."); +#endif shutdown(); } return true; diff --git a/vcl/unx/generic/dtrans/bmp.cxx b/vcl/unx/generic/dtrans/bmp.cxx index d7e7d4dc6c0c..7f0111a614e4 100644 --- a/vcl/unx/generic/dtrans/bmp.cxx +++ b/vcl/unx/generic/dtrans/bmp.cxx @@ -25,6 +25,7 @@ #include #include +#include #include #include "bmp.hxx" @@ -366,7 +367,7 @@ PixmapHolder::PixmapHolder( Display* pDisplay ) if( ! XMatchVisualInfo( m_pDisplay, DefaultScreen( m_pDisplay ), 24, TrueColor, &m_aInfo ) ) { #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "PixmapHolder reverting to default visual\n" ); + SAL_INFO("vcl.unx.dtrans", "PixmapHolder reverting to default visual."); #endif Visual* pVisual = DefaultVisual( m_pDisplay, DefaultScreen( m_pDisplay ) ); m_aInfo.screen = DefaultScreen( m_pDisplay ); @@ -382,12 +383,23 @@ PixmapHolder::PixmapHolder( Display* pDisplay ) #if OSL_DEBUG_LEVEL > 1 static const char* pClasses[] = { "StaticGray", "GrayScale", "StaticColor", "PseudoColor", "TrueColor", "DirectColor" }; - fprintf( stderr, "PixmapHolder visual: id = 0x%lx, class = %s (%d), depth=%d; color map = 0x%lx\n", - m_aInfo.visualid, - (m_aInfo.c_class >= 0 && unsigned(m_aInfo.c_class) < SAL_N_ELEMENTS(pClasses)) ? pClasses[m_aInfo.c_class] : "", - m_aInfo.c_class, - m_aInfo.depth, - m_aColormap ); + SAL_INFO("vcl.unx.dtrans", "PixmapHolder visual: id = " + << std::showbase << std::hex + << m_aInfo.visualid + << ", class = " + << ((m_aInfo.c_class >= 0 && + unsigned(m_aInfo.c_class) < + SAL_N_ELEMENTS(pClasses)) ? + pClasses[m_aInfo.c_class] : + "") + << " (" + << std::dec + << m_aInfo.c_class + << "), depth=" + << m_aInfo.depth + << "; color map = " + << std::showbase << std::hex + << m_aColormap); #endif if( m_aInfo.c_class == TrueColor ) { diff --git a/vcl/unx/generic/dtrans/config.cxx b/vcl/unx/generic/dtrans/config.cxx index 7ee1f18e8138..6b40fc16c5ea 100644 --- a/vcl/unx/generic/dtrans/config.cxx +++ b/vcl/unx/generic/dtrans/config.cxx @@ -18,6 +18,7 @@ */ #include +#include #include #include "X11_selection.hxx" @@ -58,7 +59,9 @@ sal_Int32 SelectionManager::getSelectionTimeout() DtransX11ConfigItem aCfg; m_nSelectionTimeout = aCfg.getSelectionTimeout(); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "initialized selection timeout to %" SAL_PRIdINT32 " seconds\n", m_nSelectionTimeout ); + SAL_INFO("vcl.unx.dtrans", "initialized selection timeout to " + << m_nSelectionTimeout + << " seconds."); #endif } return m_nSelectionTimeout; @@ -76,7 +79,10 @@ DtransX11ConfigItem::DtransX11ConfigItem() : Sequence aKeys { SELECTION_PROPERTY }; const Sequence< Any > aValues = GetProperties( aKeys ); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "found %" SAL_PRIdINT32 " properties for %s\n", aValues.getLength(), SELECTION_PROPERTY ); + SAL_INFO("vcl.unx.dtrans", "found " + << aValues.getLength() + << " properties for " + << SELECTION_PROPERTY); #endif for( Any const & value : aValues ) { @@ -89,14 +95,13 @@ DtransX11ConfigItem::DtransX11ConfigItem() : m_nSelectionTimeout = 1; } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "found SelectionTimeout \"%s\"\n", - OUStringToOString( *pLine, osl_getThreadTextEncoding() ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "found SelectionTimeout \"" << *pLine << "\"."); #endif } #if OSL_DEBUG_LEVEL > 1 else - fprintf( stderr, "found SelectionTimeout of type \"%s\"\n", - OUStringToOString( value.getValueType().getTypeName(), osl_getThreadTextEncoding() ).getStr() ); + SAL_INFO("vcl.unx.dtrans", "found SelectionTimeout of type \"" + << value.getValueType().getTypeName() << "\"."); #endif } } diff --git a/vcl/unx/generic/fontmanager/fontconfig.cxx b/vcl/unx/generic/fontmanager/fontconfig.cxx index 821d030c1d24..dea4cd548949 100644 --- a/vcl/unx/generic/fontmanager/fontconfig.cxx +++ b/vcl/unx/generic/fontmanager/fontconfig.cxx @@ -659,8 +659,10 @@ void PrintFontManager::addFontconfigDir( const OString& rDirName ) fclose( pCfgFile); bool bCfgOk = FcConfigParseAndLoad(FcConfigGetCurrent(), reinterpret_cast(aConfFileName.getStr()), FcTrue); - if( !bCfgOk ) - fprintf( stderr, "FcConfigParseAndLoad( \"%s\") => %d\n", aConfFileName.getStr(), bCfgOk ); + + SAL_INFO_IF(!bCfgOk, + "vcl.fonts", "FcConfigParseAndLoad( \"" + << aConfFileName << "\") => " << bCfgOk); } else { SAL_INFO("vcl.fonts", "cannot open " << aConfFileName); } diff --git a/vcl/unx/generic/fontmanager/fontmanager.cxx b/vcl/unx/generic/fontmanager/fontmanager.cxx index a7ed0c4e1082..d1601335a1cd 100644 --- a/vcl/unx/generic/fontmanager/fontmanager.cxx +++ b/vcl/unx/generic/fontmanager/fontmanager.cxx @@ -680,7 +680,6 @@ void PrintFontManager::initialize() m_nNextFontID = 1; m_aFonts.clear(); } - #if OSL_DEBUG_LEVEL > 1 clock_t aStart; clock_t aStep1; @@ -721,14 +720,18 @@ void PrintFontManager::initialize() #if OSL_DEBUG_LEVEL > 1 aStep1 = times( &tms ); -#endif -#if OSL_DEBUG_LEVEL > 1 aStep2 = times( &tms ); - fprintf( stderr, "PrintFontManager::initialize: collected %" SAL_PRI_SIZET "u fonts\n", m_aFonts.size() ); + SAL_INFO("vcl.fonts", "PrintFontManager::initialize: collected " + << m_aFonts.size() + << " fonts."); double fTick = (double)sysconf( _SC_CLK_TCK ); - fprintf( stderr, "Step 1 took %lf seconds\n", (double)(aStep1 - aStart)/fTick ); - fprintf( stderr, "Step 2 took %lf seconds\n", (double)(aStep2 - aStep1)/fTick ); + SAL_INFO("vcl.fonts", "Step 1 took " + << ((double)(aStep1 - aStart)/fTick) + << " seconds."); + SAL_INFO("vcl.fonts", "Step 2 took " + << ((double)(aStep2 - aStep1)/fTick) + << " seconds."); #endif #ifdef CALLGRIND_COMPILE diff --git a/vcl/unx/generic/fontmanager/fontsubst.cxx b/vcl/unx/generic/fontmanager/fontsubst.cxx index 1b8fb5807bee..7e71a96c35e9 100644 --- a/vcl/unx/generic/fontmanager/fontsubst.cxx +++ b/vcl/unx/generic/fontmanager/fontsubst.cxx @@ -132,18 +132,26 @@ bool FcPreMatchSubstitution::FindFontSubstitute(FontSelectPattern &rFontSelData) const bool bHaveSubstitute = !uselessmatch( rFontSelData, aOut ); #ifdef DEBUG - const OString aOrigName(OUStringToOString(rFontSelData.maTargetName, - RTL_TEXTENCODING_UTF8)); - const OString aSubstName(OUStringToOString(aOut.maSearchName, - RTL_TEXTENCODING_UTF8)); - printf( "FcPreMatchSubstitution \"%s\" bipw=%d%d%d%d -> ", - aOrigName.getStr(), rFontSelData.GetWeight(), rFontSelData.GetItalic(), - rFontSelData.GetPitch(), rFontSelData.GetWidthType() ); + std::ostringstream oss; + oss << "FcPreMatchSubstitution \"" + << rFontSelData.maTargetName + << "\" bipw=" + << rFontSelData.GetWeight() + << rFontSelData.GetItalic() + << rFontSelData.GetPitch() + << rFontSelData.GetWidthType() + << " -> "; if( !bHaveSubstitute ) - printf( "no substitute available\n" ); + oss << "no substitute available."; else - printf( "\"%s\" bipw=%d%d%d%d\n", aSubstName.getStr(), - aOut.GetWeight(), aOut.GetItalic(), aOut.GetPitch(), aOut.GetWidthType() ); + oss << "\"" + << aOut.maSearchName + << "\" bipw=" + << aOut.GetWeight() + << aOut.GetItalic() + << aOut.GetPitch() + << aOut.GetWidthType(); + SAL_INFO("vcl.fonts", oss.str()); #endif if( bHaveSubstitute ) @@ -182,18 +190,26 @@ bool FcGlyphFallbackSubstitution::FindFontSubstitute(FontSelectPattern& rFontSel const bool bHaveSubstitute = !uselessmatch( rFontSelData, aOut ); #ifdef DEBUG - const OString aOrigName(OUStringToOString(rFontSelData.maTargetName, - RTL_TEXTENCODING_UTF8)); - const OString aSubstName(OUStringToOString(aOut.maSearchName, - RTL_TEXTENCODING_UTF8)); - printf( "FcGFSubstitution \"%s\" bipw=%d%d%d%d ->", - aOrigName.getStr(), rFontSelData.GetWeight(), rFontSelData.GetItalic(), - rFontSelData.GetPitch(), rFontSelData.GetWidthType() ); + std::ostringstream oss; + oss << "FcGFSubstitution \"" + << rFontSelData.maTargetName + << "\" bipw=" + << rFontSelData.GetWeight() + << rFontSelData.GetItalic() + << rFontSelData.GetPitch() + << rFontSelData.GetWidthType() + << " -> "; if( !bHaveSubstitute ) - printf( "no substitute available\n" ); + oss << "no substitute available."; else - printf( "\"%s\" bipw=%d%d%d%d\n", aSubstName.getStr(), - aOut.GetWeight(), aOut.GetItalic(), aOut.GetPitch(), aOut.GetWidthType() ); + oss << "\"" + << aOut.maSearchName + << "\" bipw=" + << aOut.GetWeight() + << aOut.GetItalic() + << aOut.GetPitch() + << aOut.GetWidthType(); + SAL_INFO("vcl.fonts", oss.str()); #endif if( bHaveSubstitute ) diff --git a/vcl/unx/generic/gdi/salgdi.cxx b/vcl/unx/generic/gdi/salgdi.cxx index 16a7c40046b9..f712e366ce18 100644 --- a/vcl/unx/generic/gdi/salgdi.cxx +++ b/vcl/unx/generic/gdi/salgdi.cxx @@ -330,8 +330,12 @@ void X11SalGraphics::GetResolution( sal_Int32 &rDPIX, sal_Int32 &rDPIY ) // cons // different x- and y- resolutions are usually artifacts of // a wrongly calculated screen size. #ifdef DEBUG - printf("Forcing Resolution from %" SAL_PRIdINT32 "x%" SAL_PRIdINT32 " to %" SAL_PRIdINT32 "x%" SAL_PRIdINT32 "\n", - rDPIX,rDPIY,rDPIY,rDPIY); + SAL_INFO("vcl.gdi", "Forcing Resolution from " + << std::hex << rDPIX + << std::dec << rDPIX + << " to " + << std::hex << rDPIY + << std::dec << rDPIY); #endif rDPIX = rDPIY; // y-resolution is more trustworthy } diff --git a/vcl/unx/generic/print/genprnpsp.cxx b/vcl/unx/generic/print/genprnpsp.cxx index 012a30e1b254..49fd6be7cd7b 100644 --- a/vcl/unx/generic/print/genprnpsp.cxx +++ b/vcl/unx/generic/print/genprnpsp.cxx @@ -253,13 +253,15 @@ static bool passFileToCommandLine( const OUString& rFilename, const OUString& rC aCmdLine = aCmdLine.replaceAll("(TMP)", aFilename); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "%s commandline: \"%s\"\n", - bPipe ? "piping to" : "executing", - aCmdLine.getStr() ); + SAL_INFO("vcl.unx.print", (bPipe ? "piping to" : "executing") + << " commandline: \"" << aCmdLine << "\"."); struct stat aStat; - if( stat( aFilename.getStr(), &aStat ) ) - fprintf( stderr, "stat( %s ) failed\n", aFilename.getStr() ); - fprintf( stderr, "Tmp file %s has modes: 0%03lo\n", aFilename.getStr(), (long)aStat.st_mode ); + SAL_WARN_IF(stat( aFilename.getStr(), &aStat ), + "vcl.unx.print", "stat( " << aFilename << " ) failed."); + SAL_INFO("vcl.unx.print", "Tmp file " << aFilename + << " has modes: " + << std::showbase << std::oct + << (long)aStat.st_mode); #endif const char* argv[4]; if( ! ( argv[ 0 ] = getenv( "SHELL" ) ) ) diff --git a/vcl/unx/generic/printer/printerinfomanager.cxx b/vcl/unx/generic/printer/printerinfomanager.cxx index c866267246ae..ff4b5e691d3d 100644 --- a/vcl/unx/generic/printer/printerinfomanager.cxx +++ b/vcl/unx/generic/printer/printerinfomanager.cxx @@ -84,10 +84,11 @@ PrinterInfoManager& PrinterInfoManager::get() pSalData->m_pPIManager = CUPSManager::tryLoadCUPS(); if( ! pSalData->m_pPIManager ) pSalData->m_pPIManager = new PrinterInfoManager(); - pSalData->m_pPIManager->initialize(); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "PrinterInfoManager::get create Manager of type %d\n", pSalData->m_pPIManager->getType() ); + SAL_INFO("vcl.unx.print", "PrinterInfoManager::get " + << "create Manager of type " + << ((int) pSalData->m_pPIManager->getType())); #endif } @@ -117,9 +118,11 @@ PrinterInfoManager::PrinterInfoManager( Type eType ) : PrinterInfoManager::~PrinterInfoManager() { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "PrinterInfoManager: destroyed Manager of type %d\n", getType() ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "PrinterInfoManager: " + << "destroyed Manager of type " + << ((int) getType())); +#endif } bool PrinterInfoManager::checkPrintersChanged( bool bWait ) @@ -159,13 +162,13 @@ bool PrinterInfoManager::checkPrintersChanged( bool bWait ) if( bWait && m_pQueueInfo ) { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "syncing printer discovery thread\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "syncing printer discovery thread."); +#endif m_pQueueInfo->join(); - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "done: syncing printer discovery thread\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "done: syncing printer discovery thread."); +#endif } if( ! bChanged && m_pQueueInfo ) @@ -197,9 +200,10 @@ void PrinterInfoManager::initialize() if( ! m_aGlobalDefaults.m_pParser ) { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "Error: no default PPD file SGENPRT available, shutting down psprint...\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "Error: no default PPD file " + << "SGENPRT available, shutting down psprint..."); +#endif return; } @@ -212,9 +216,10 @@ void PrinterInfoManager::initialize() Config aConfig( aFile.PathToFileName() ); if( aConfig.HasGroup( GLOBAL_DEFAULTS_GROUP ) ) { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "found global defaults in %s\n", OUStringToOString( aFile.PathToFileName(), RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "found global defaults in " + << aFile.PathToFileName()); +#endif aConfig.SetGroup( GLOBAL_DEFAULTS_GROUP ); OString aValue( aConfig.ReadKey( "Copies" ) ); @@ -611,10 +616,10 @@ void PrinterInfoManager::setDefaultPaper( PPDContext& rContext ) const if( set ) // paper was set already, do not modify { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "not setting default paper, already set %s\n", - OUStringToOString( rContext.getValue( pPageSizeKey )->m_aOption, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_WARN("vcl.unx.print", "not setting default paper, already set " + << rContext.getValue( pPageSizeKey )->m_aOption); +#endif return; } @@ -629,14 +634,15 @@ void PrinterInfoManager::setDefaultPaper( PPDContext& rContext ) const } if( pPaperVal ) { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "setting default paper %s\n", OUStringToOString( pPaperVal->m_aOption, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "setting default paper " + << pPaperVal->m_aOption); +#endif rContext.setValue( pPageSizeKey, pPaperVal ); - #if OSL_DEBUG_LEVEL > 1 - pPaperVal = rContext.getValue( pPageSizeKey ); - fprintf( stderr, "-> got paper %s\n", OUStringToOString( pPaperVal->m_aOption, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "-> got paper " + << rContext.getValue( pPageSizeKey )->m_aOption); +#endif } } @@ -860,9 +866,11 @@ void SystemQueueInfo::run() for(const auto & rParm : aParms) { aLines.clear(); - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "trying print queue command \"%s\" ... ", rParm.pQueueCommand ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "trying print queue command \"" + << rParm.pQueueCommand + << "\" ..."); +#endif OString aCmdLine = rParm.pQueueCommand + OStringLiteral(" 2>/dev/null"); FILE *pPipe; if( (pPipe = popen( aCmdLine.getStr(), "r" )) ) @@ -877,15 +885,15 @@ void SystemQueueInfo::run() m_bChanged = true; m_aQueues = aSysPrintQueues; m_aCommand = OUString::createFromAscii( rParm.pPrintCommand ); - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "success\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "printing queue command: success."); +#endif break; } } - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "failed\n" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.unx.print", "printing queue command: failed."); +#endif } } diff --git a/vcl/unx/generic/window/salframe.cxx b/vcl/unx/generic/window/salframe.cxx index 031d610869c2..94efbcd72f53 100644 --- a/vcl/unx/generic/window/salframe.cxx +++ b/vcl/unx/generic/window/salframe.cxx @@ -1015,9 +1015,10 @@ void X11SalFrame::SetIcon( sal_uInt16 nIcon ) if ( XGetIconSizes( GetXDisplay(), GetDisplay()->GetRootWindow( m_nXScreen ), &pIconSize, &nSizes ) ) { #if OSL_DEBUG_LEVEL > 1 - fprintf(stderr, "X11SalFrame::SetIcon(): found %d IconSizes:\n", nSizes); + SAL_INFO("vcl.window", "X11SalFrame::SetIcon(): found " + << nSizes + << " IconSizes:"); #endif - int i; for( i=0; i 1 - fprintf(stderr, "min: %d, %d\nmax: %d, %d\ninc: %d, %d\n\n", - pIconSize[i].min_width, pIconSize[i].min_height, - pIconSize[i].max_width, pIconSize[i].max_height, - pIconSize[i].width_inc, pIconSize[i].height_inc); + SAL_INFO("vcl.window", "min: " + << pIconSize[i].min_width + << ", " + << pIconSize[i].min_height); + SAL_INFO("vcl.window", "max: " + << pIconSize[i].max_width + << ", " + << pIconSize[i].max_height); + SAL_INFO("vcl.window", "inc: " + << pIconSize[i].width_inc + << ", " + << pIconSize[i].height_inc); #endif } @@ -2266,8 +2275,8 @@ X11SalFrame::HandleExtTextEvent (XClientMessageEvent const *pEvent) break; default: - - fprintf(stderr, "X11SalFrame::HandleExtTextEvent: invalid extended input\n"); + SAL_WARN("vcl.window", + "X11SalFrame::HandleExtTextEvent: invalid extended input."); } } #endif /* defined(__synchronous_extinput__) */ @@ -3806,11 +3815,14 @@ bool X11SalFrame::HandleClientMessage( XClientMessageEvent *pEvent ) else if( static_cast(pEvent->data.l[0]) == rWMAdaptor.getAtom( WMAdaptor::WM_TAKE_FOCUS ) ) { // do nothing, we set the input focus in ToTop() if necessary - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "got WM_TAKE_FOCUS on %s window\n", - (nStyle_ & SalFrameStyleFlags::OWNERDRAWDECORATION) ? - "ownerdraw" : "NON OWNERDRAW" ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.window", "got WM_TAKE_FOCUS on " + << ((nStyle_ & + SalFrameStyleFlags::OWNERDRAWDECORATION) ? + "ownerdraw" : + "NON OWNERDRAW" ) + << " window."); +#endif } } } diff --git a/vcl/unx/generic/window/salobj.cxx b/vcl/unx/generic/window/salobj.cxx index b19dd61fa3de..029204481ff8 100644 --- a/vcl/unx/generic/window/salobj.cxx +++ b/vcl/unx/generic/window/salobj.cxx @@ -114,11 +114,15 @@ X11SalObject* X11SalObject::CreateObject( SalFrame* pParent, SystemWindowData* p } else { - #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "visual id of vcl %x, of visual %x\n", - static_cast (pSalDisp->GetVisual( nXScreen ).GetVisualId()), - static_cast (aVisID) ); - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO("vcl.window", "visual id of vcl " + << std::hex + << static_cast + (pSalDisp->GetVisual( nXScreen ).GetVisualId()) + << ", of visual " + << static_cast + (aVisID)); +#endif GetGenericUnixSalData()->ErrorTrapPush(); // create colormap for visual - there might not be one diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index 588081965554..0960b46354d2 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -357,20 +357,20 @@ bool GtkSalFrame::doKeyCallback( guint state, // shift-zero forces a re-draw and event is swallowed if (keyval == GDK_KEY_0) { - fprintf( stderr, "force widget_queue_draw\n"); + SAL_INFO("vcl.gtk3", "force widget_queue_draw."); gtk_widget_queue_draw(GTK_WIDGET(m_pFixedContainer)); return false; } else if (keyval == GDK_KEY_1) { - fprintf( stderr, "force repaint all\n"); + SAL_INFO("vcl.gtk3", "force repaint all."); TriggerPaintEvent(); return false; } else if (keyval == GDK_KEY_2) { dumpframes = !dumpframes; - fprintf(stderr, "toggle dump frames to %d\n", dumpframes); + SAL_INFO("vcl.gtk3", "toggle dump frames to " << dumpframes); return false; } } @@ -3314,14 +3314,18 @@ gboolean GtkSalFrame::signalWindowState( GtkWidget*, GdkEvent* pEvent, gpointer pThis->m_nState = pEvent->window_state.new_window_state; - #if OSL_DEBUG_LEVEL > 1 - if( (pEvent->window_state.changed_mask & GDK_WINDOW_STATE_FULLSCREEN) ) - { - fprintf( stderr, "window %p %s full screen state\n", - pThis, - (pEvent->window_state.new_window_state & GDK_WINDOW_STATE_FULLSCREEN) ? "enters" : "leaves"); - } - #endif +#if OSL_DEBUG_LEVEL > 1 + SAL_INFO_IF((pEvent->window_state.changed_mask & + GDK_WINDOW_STATE_FULLSCREEN), + "vcl.gtk3", "window " + << pThis + << " " + << ((pEvent->window_state.new_window_state & + GDK_WINDOW_STATE_FULLSCREEN) ? + "enters" : + "leaves") + << " full screen state."); +#endif return false; } diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx index ff81d24097f9..5a853b436609 100644 --- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx @@ -2960,16 +2960,19 @@ vcl::Font pango_to_vcl(const PangoFontDescription* font, const css::lang::Locale } #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "font name BEFORE system match: \"%s\"\n", aFamily.getStr() ); + SAL_INFO("vcl.gtk3", "font name BEFORE system match: \"" + << aFamily << "\"."); #endif // match font to e.g. resolve "Sans" psp::PrintFontManager::get().matchFont(aInfo, rLocale); #if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, "font match %s, name AFTER: \"%s\"\n", - aInfo.m_nID != 0 ? "succeeded" : "failed", - OUStringToOString( aInfo.m_aFamilyName, RTL_TEXTENCODING_ISO_8859_1 ).getStr() ); + SAL_INFO("vcl.gtk3", "font match " + << (aInfo.m_nID != 0 ? "succeeded" : "failed") + << ", name AFTER: \"" + << aInfo.m_aFamilyName + << "\"."); #endif int nPointHeight = nPangoHeight/PANGO_SCALE; @@ -3331,7 +3334,9 @@ bool GtkSalGraphics::updateSettings(AllSettings& rSettings) #if OSL_DEBUG_LEVEL > 1 gchar* pThemeName = NULL; g_object_get( pSettings, "gtk-theme-name", &pThemeName, nullptr ); - fprintf( stderr, "Theme name is \"%s\"\n", pThemeName ); + SAL_INFO("vcl.gtk3", "Theme name is \"" + << pThemeName + << "\"."); g_free(pThemeName); #endif diff --git a/vcl/unx/gtk3/gtk3salprn-gtk.cxx b/vcl/unx/gtk3/gtk3salprn-gtk.cxx index 6a3d007de73b..388d5b129f8f 100644 --- a/vcl/unx/gtk3/gtk3salprn-gtk.cxx +++ b/vcl/unx/gtk3/gtk3salprn-gtk.cxx @@ -255,7 +255,7 @@ GtkSalPrinter::EndJob() else { //To-Do, do something with this - fprintf(stderr, "error was %s\n", error->message); + SAL_WARN("vcl.gtk3", "error was " << error->message); g_error_free(error); } @@ -817,7 +817,7 @@ GtkPrintDialog::run() switch (nStatus) { case GTK_RESPONSE_HELP: - fprintf(stderr, "To-Do: Help ?\n"); + SAL_WARN("vcl.gtk3", "To-Do: Help ?"); bContinue = true; break; case GTK_RESPONSE_OK: -- cgit