tdf#132563 - Convert parameters of type SbxEMPTY
During the construction of the parameter list of a method, convert parameters of type SbxEMPTY to their requested type, since missing parameters are handled differently in StepEMPTY, where separate parameter information (SbxMISSING) is added. Change-Id: Ie1e027cfdd652404ec29bd3d05e7daf533468936 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96088 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
This commit is contained in:
committed by
Mike Kaganski
parent
2126215fb3
commit
345cb192f0
@@ -0,0 +1,22 @@
|
||||
'
|
||||
' This file is part of the LibreOffice project.
|
||||
'
|
||||
' This Source Code Form is subject to the terms of the Mozilla Public
|
||||
' License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
' file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
'
|
||||
|
||||
Sub assignVar(v As Variant)
|
||||
v = 1
|
||||
End Sub
|
||||
|
||||
Function doUnitTest() As Integer
|
||||
' tdf#132563 - check if empty parameters are converted to their respective types
|
||||
anEmptyVar = Empty
|
||||
assignVar(anEmptyVar)
|
||||
If (anEmptyVar = 1 And TypeName(anEmptyVar) = "Integer") Then
|
||||
doUnitTest = 1
|
||||
Else
|
||||
doUnitTest = 0
|
||||
End If
|
||||
End Function
|
||||
@@ -686,7 +686,7 @@ void SbiRuntime::SetParameters( SbxArray* pParams )
|
||||
{
|
||||
bByVal |= ( p->eType & SbxBYREF ) == 0;
|
||||
// tdf#79426, tdf#125180 - don't convert missing arguments to the requested parameter type
|
||||
if ( t != SbxEMPTY && !IsMissing( v, 1 ) )
|
||||
if ( !IsMissing( v, 1 ) )
|
||||
{
|
||||
t = static_cast<SbxDataType>( p->eType & 0x0FFF );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user