]> granicus.if.org Git - php/commitdiff
MFH:
authorAntony Dovgal <tony2001@php.net>
Thu, 5 Feb 2004 08:30:17 +0000 (08:30 +0000)
committerAntony Dovgal <tony2001@php.net>
Thu, 5 Feb 2004 08:30:17 +0000 (08:30 +0000)
fix bug #27149

ext/oci8/oci8.c

index 0cd2ea28ab38bbed4930912b26c432f5aa732293..0717ec28da58e5d0493fdff95c6ad6554f19edf6 100644 (file)
@@ -3118,11 +3118,11 @@ PHP_FUNCTION(ocisavelob)
 
                        if (offparam == -1) {
                                offset = curloblen;
-                       } else if (offparam >= curloblen) {
+                       } else if ((ub4)offparam >= curloblen) {
                                php_error_docref(NULL TSRMLS_CC, E_WARNING, "Offset is bigger than current LOB-Size - appending");
                                offset = curloblen;
                        } else {
-                               offset = offparam;
+                               offset = (ub4)offparam;
                        }
                } else if (zend_get_parameters_ex(1, &arg) == FAILURE) {
                        WRONG_PARAM_COUNT;
@@ -3136,6 +3136,10 @@ PHP_FUNCTION(ocisavelob)
                        RETURN_FALSE;
                }
 
+               if (offset <= 0) {
+                       offset = 1;
+               }
+               
                CALL_OCI_RETURN(connection->error, OCILobWrite(
                                        connection->pServiceContext, 
                                        connection->pError,