summaryrefslogtreecommitdiff
path: root/php/src/php5/Operation.cpp
diff options
context:
space:
mode:
authorJoe George <joe@zeroc.com>2016-05-31 14:35:44 -0400
committerJoe George <joe@zeroc.com>2016-05-31 15:20:35 -0400
commit0df866715f168e512078df094a59b45bf21c4d39 (patch)
treeaa5e66b1d29b6382724ab59634a13179b513cde5 /php/src/php5/Operation.cpp
parentFixed alpha/beta version computation (diff)
downloadice-0df866715f168e512078df094a59b45bf21c4d39.tar.bz2
ice-0df866715f168e512078df094a59b45bf21c4d39.tar.xz
ice-0df866715f168e512078df094a59b45bf21c4d39.zip
Fix ICE-7163
- Printing types is more forgiving and will not throw an exception if there is bogus data. - Fix several print statements to print the correct class name.
Diffstat (limited to 'php/src/php5/Operation.cpp')
-rw-r--r--php/src/php5/Operation.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/php/src/php5/Operation.cpp b/php/src/php5/Operation.cpp
index 04533f36d7b..0117b62a9ed 100644
--- a/php/src/php5/Operation.cpp
+++ b/php/src/php5/Operation.cpp
@@ -460,7 +460,7 @@ IcePHP::TypedInvocation::TypedInvocation(const Ice::ObjectPrx& prx, const Commun
}
bool
-IcePHP::TypedInvocation::prepareRequest(int argc, zval** args, Ice::OutputStream* os,
+IcePHP::TypedInvocation::prepareRequest(int argc, zval** args, Ice::OutputStream* os,
pair<const Ice::Byte*, const Ice::Byte*>& params TSRMLS_DC)
{
//
@@ -500,7 +500,7 @@ IcePHP::TypedInvocation::prepareRequest(int argc, zval** args, Ice::OutputStream
{
ParamInfoPtr info = *p;
zval* arg = args[info->pos];
- if((!info->optional || !isUnset(arg TSRMLS_CC)) && !info->type->validate(arg TSRMLS_CC))
+ if((!info->optional || !isUnset(arg TSRMLS_CC)) && !info->type->validate(arg, false TSRMLS_CC))
{
invalidArgument("invalid value for argument %d in operation `%s'" TSRMLS_CC, info->pos + 1,
_op->name.c_str());
@@ -769,7 +769,7 @@ IcePHP::SyncTypedInvocation::invoke(INTERNAL_FUNCTION_PARAMETERS)
runtimeError("unable to get arguments" TSRMLS_CC);
return;
}
-
+
Ice::OutputStream os(_prx->ice_getCommunicator());
pair<const Ice::Byte*, const Ice::Byte*> params;
if(!prepareRequest(ZEND_NUM_ARGS(), *args, &os, params TSRMLS_CC))