diff --git a/ucb/source/ucp/file/bc.cxx b/ucb/source/ucp/file/bc.cxx index 4658864..b95a5bd 100644 --- a/ucb/source/ucp/file/bc.cxx +++ b/ucb/source/ucp/file/bc.cxx @@ -1024,13 +1024,13 @@ BaseContent::open( bLock ) ); } - Reference< io::XActiveDataStreamer > activeDataStreamer( aCommandArgument.Sink,UNO_QUERY ); - if( activeDataStreamer.is() ) - { - activeDataStreamer->setStream( m_pMyShell->open_rw( nMyCommandIdentifier, - m_aUncPath, - bLock ) ); - } +// Reference< io::XActiveDataStreamer > activeDataStreamer( aCommandArgument.Sink,UNO_QUERY ); +// if( activeDataStreamer.is() ) +// { +// activeDataStreamer->setStream( m_pMyShell->open_rw( nMyCommandIdentifier, +// m_aUncPath, +// bLock ) ); +// } } else if ( aCommandArgument.Mode == OpenMode::ALL || aCommandArgument.Mode == OpenMode::FOLDERS || diff --git a/ucb/source/ucp/gio/gio_content.cxx b/ucb/source/ucp/gio/gio_content.cxx index 8572ddd..cc30b20 100644 --- a/ucb/source/ucp/gio/gio_content.cxx +++ b/ucb/source/ucp/gio/gio_content.cxx @@ -157,8 +157,10 @@ uno::Any convertToException(GError *pError, const uno::Reference< uno::XInterfac gint eCode = pError->code; OUString sMessage(pError->message, strlen(pError->message), RTL_TEXTENCODING_UTF8); + fprintf(stderr, "Error message is %s for code %d\n", pError->message, eCode); g_error_free(pError); + OUString sName; OUString sHost; @@ -814,6 +816,8 @@ void Content::copyData( uno::Reference< io::XInputStream > xIn, sal_Bool Content::feedSink( uno::Reference< uno::XInterface > xSink, const uno::Reference< ucb::XCommandEnvironment >& /*xEnv*/ ) { + fprintf(stderr, "Content::feedSink\n"); + if ( !xSink.is() ) return sal_False; @@ -844,13 +848,20 @@ sal_Bool Content::feedSink( uno::Reference< uno::XInterface > xSink, { GError *pError=NULL; GFileIOStream *pStream = g_file_open_readwrite(getGFile(), NULL, &pError); - if (!pStream) - convertToException(pError, static_cast< cppu::OWeakObject * >(this)); - - uno::Reference< io::XStream > xStream(new ::gio::Stream(pStream)); - xDataStreamer->setStream( xStream ); + //Support for this type of sink is optional + if (pStream) + { + uno::Reference< io::XStream > xStream(new ::gio::Stream(pStream)); + xDataStreamer->setStream( xStream ); + } + else + { + gint eCode = pError->code; + OUString sMessage(pError->message, strlen(pError->message), RTL_TEXTENCODING_UTF8); + fprintf(stderr, "Error message is %s for code %d\n", pError->message, eCode); + g_error_free(pError); + } } - return sal_True; }