cvs: pecl(BRANCH_1_1_1) /sdo sdo_utils.cpp
| From: | Caroline Maynard | Date: | Fri, 22 Dec 2006 15:58:46 +0000 |
| Subject: | cvs: pecl(BRANCH_1_1_1) /sdo sdo_utils.cpp | ||
| Groups: | php.pecl.cvs | ||
| Request: | Send a blank email to pecl-cvs+get-6810@lists.php.net to get a copy of this message | ||
cem Fri Dec 22 15:58:46 2006 UTC
Modified files: (Branch: BRANCH_1_1_1)
/pecl/sdo sdo_utils.cpp
Log:
Guard against appending a value to a single-valued SDO
http://cvs.php.net/viewvc.cgi/pecl/sdo/sdo_utils.cpp?r1=1.8&r2=1.8.6.1&diff_format=u
Index: pecl/sdo/sdo_utils.cpp
diff -u pecl/sdo/sdo_utils.cpp:1.8 pecl/sdo/sdo_utils.cpp:1.8.6.1
--- pecl/sdo/sdo_utils.cpp:1.8 Fri Jun 30 15:21:51 2006
+++ pecl/sdo/sdo_utils.cpp Fri Dec 22 15:58:46 2006
@@ -20,7 +20,7 @@
*/
-static char rcs_id[] = "$Id: sdo_utils.cpp,v 1.8 2006/06/30 15:21:51 cem Exp $";
+static char rcs_id[] = "$Id: sdo_utils.cpp,v 1.8.6.1 2006/12/22 15:58:46 cem Exp $";
/*
* Utility functions for internal use by the SDO extension
@@ -64,6 +64,18 @@
char *class_name;
char *space;
+
+ if (!z_offset) {
+ /* get here with a statement like $sdo[] = 'some value'; */
+ if (!quiet) {
+ class_name = get_active_class_name(&space TSRMLS_CC);
+ sdo_throw_exception_ex (sdo_unsupportedoperationexception_class_entry, 0, 0 TSRMLS_CC,
+ "%s%s%s(): cannot append a value - this object is not many-valued",
+ class_name, space, get_active_function_name(TSRMLS_C));
+ }
+ return FAILURE;
+ }
+
switch(Z_TYPE_P(z_offset)) {
case IS_NULL:
if (!quiet) {