Kaydet (Commit) c76b4dd2 authored tarafından Caolán McNamara's avatar Caolán McNamara

coverity#1296216 Uncaught exception

Change-Id: Id34a655c554e78476e3bd83c87de3cbe1b557980
üst c675a2d6
...@@ -55,6 +55,8 @@ ...@@ -55,6 +55,8 @@
#include <com/sun/star/drawing/FillStyle.hpp> #include <com/sun/star/drawing/FillStyle.hpp>
#include <com/sun/star/drawing/LineJoint.hpp> #include <com/sun/star/drawing/LineJoint.hpp>
#include <com/sun/star/drawing/LineStyle.hpp> #include <com/sun/star/drawing/LineStyle.hpp>
#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
#include <cppuhelper/exc_hlp.hxx>
using namespace ::com::sun::star; using namespace ::com::sun::star;
using namespace ::chart::wrapper; using namespace ::chart::wrapper;
...@@ -640,38 +642,63 @@ beans::PropertyState SAL_CALL DataSeriesPointWrapper::getPropertyState( const OU ...@@ -640,38 +642,63 @@ beans::PropertyState SAL_CALL DataSeriesPointWrapper::getPropertyState( const OU
throw (beans::UnknownPropertyException, uno::RuntimeException, std::exception) throw (beans::UnknownPropertyException, uno::RuntimeException, std::exception)
{ {
beans::PropertyState aState( beans::PropertyState_DIRECT_VALUE ); beans::PropertyState aState( beans::PropertyState_DIRECT_VALUE );
if (rPropertyName == "SymbolBitmapURL") try
{ {
uno::Any aAny = WrappedPropertySet::getPropertyValue("SymbolType"); if (rPropertyName == "SymbolBitmapURL")
sal_Int32 nVal = com::sun::star::chart::ChartSymbolType::NONE;
if (aAny >>= nVal)
{ {
if (nVal != com::sun::star::chart::ChartSymbolType::BITMAPURL) uno::Any aAny = WrappedPropertySet::getPropertyValue("SymbolType");
return beans::PropertyState::PropertyState_DEFAULT_VALUE; sal_Int32 nVal = com::sun::star::chart::ChartSymbolType::NONE;
if (aAny >>= nVal)
{
if (nVal != com::sun::star::chart::ChartSymbolType::BITMAPURL)
return beans::PropertyState::PropertyState_DEFAULT_VALUE;
}
} }
}
if( m_eType == DATA_SERIES ) if( m_eType == DATA_SERIES )
aState = WrappedPropertySet::getPropertyState( rPropertyName ); aState = WrappedPropertySet::getPropertyState( rPropertyName );
else else
{
if( rPropertyName == "FillColor")
{ {
Reference< beans::XPropertySet > xSeriesProp( getDataSeries(), uno::UNO_QUERY ); if( rPropertyName == "FillColor")
bool bVaryColorsByPoint = false; {
if( xSeriesProp.is() && (xSeriesProp->getPropertyValue("VaryColorsByPoint") >>= bVaryColorsByPoint) Reference< beans::XPropertySet > xSeriesProp( getDataSeries(), uno::UNO_QUERY );
&& bVaryColorsByPoint ) bool bVaryColorsByPoint = false;
return beans::PropertyState_DIRECT_VALUE; if( xSeriesProp.is() && (xSeriesProp->getPropertyValue("VaryColorsByPoint") >>= bVaryColorsByPoint)
&& bVaryColorsByPoint )
return beans::PropertyState_DIRECT_VALUE;
}
else if( rPropertyName == "Lines"
|| rPropertyName == "SymbolType"
|| rPropertyName == "SymbolSize" )
return WrappedPropertySet::getPropertyState( rPropertyName );
uno::Any aDefault( getPropertyDefault( rPropertyName ) );
uno::Any aValue( getPropertyValue( rPropertyName ) );
if( aDefault==aValue )
aState = beans::PropertyState_DEFAULT_VALUE;
} }
else if( rPropertyName == "Lines" }
|| rPropertyName == "SymbolType" catch( const beans::UnknownPropertyException& )
|| rPropertyName == "SymbolSize" ) {
return WrappedPropertySet::getPropertyState( rPropertyName ); throw;
}
uno::Any aDefault( getPropertyDefault( rPropertyName ) ); catch( const uno::RuntimeException& )
uno::Any aValue( getPropertyValue( rPropertyName ) ); {
if( aDefault==aValue ) throw;
aState = beans::PropertyState_DEFAULT_VALUE; }
catch( const lang::WrappedTargetException& e )
{
css::uno::Any a(e.TargetException);
throw css::lang::WrappedTargetRuntimeException(
"wrapped Exception " + e.Message,
css::uno::Reference<css::uno::XInterface>(), a);
}
catch( const uno::Exception& e )
{
css::uno::Any a(cppu::getCaughtException());
throw css::lang::WrappedTargetRuntimeException(
"wrapped Exception " + e.Message,
css::uno::Reference<css::uno::XInterface>(), a);
} }
return aState; return aState;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment