Andrey Hristov [Thu, 28 May 2009 16:35:16 +0000 (16:35 +0000)]
Fix a problem with cursors, which did not happen with unbuffered PS for
some reason. Double free of the data, which led to valgrind warnigns.
The fix actually optimizes the code in this cases because the old code
used copy_ctor while the new one skips it because it is not needed.
Transferring data ownership and nulling works best, for PS where we
always copy the string from the result set, unlike the text protocol.
Ulf Wendel [Thu, 28 May 2009 14:11:41 +0000 (14:11 +0000)]
1) Changing EXPECT[F] sections to work with PHP 5.3 and PHP 6. 2) Merging a couple of fixes I applied to PHP 5.3 only yesterday. The changes should make it a little easier to do MFH and follow the rules in the future as we will soon have identical tests for PHP 5_3 and HEAD.
Andrey Hristov [Thu, 28 May 2009 11:47:15 +0000 (11:47 +0000)]
Fix a bug with mysqlnd_fetch_field(_direct()). With mysqlnd the optimised
function was called, which however, doesn't respect that during store the
raw data is not unpacked, to be lazy. The data is unpacked to zvals later,
during every row fetch. However, this way max_length won't be calculated
correctly. So, if a mysqlnd_fetch_field(_direct) call comes we need to
unpack everything and then calculate max_length...and that is expensive,
defies our lazy unpacking optimisation.
Andrey Hristov [Wed, 27 May 2009 19:56:47 +0000 (19:56 +0000)]
because we use int64_t we need corresponding printf modifiers. the type
can be different on 32 and 64 bit, thus we can't use ld and lld but
C helps us with inttypes.h and PRId64 and PRIu64 modifiers (without the %)
Eric Stewart [Tue, 26 May 2009 06:11:26 +0000 (06:11 +0000)]
Add tests:
DOMComment::__construct() with constructor called twice.
DOMDocumentFragment::appendXML() with unbound fragment.
DOMDocumentFragment::appendXML() with unbalanced chunks.
DOMDocumentFragment::__construct() called twice.
DOMDocumentType: basic access to all properties.
DOMDocumentType::name with invalid state.
DOMDocumentType::entities with invalid state.
DOMDocumentType::notations with invalid state.
DOMDocumentType::publicId with invalid state.
DOMDocumentType::publicId with empty value.
DOMDocumentType::systemId with invalid state.
DOMDocumentType::systemId with empty value.
DOMDocumentType::internalSubset with invalid state.
Eric Stewart [Mon, 25 May 2009 06:07:39 +0000 (06:07 +0000)]
Add the following new tests:
DOMCharacterData::appendData() with no arguments.
DOMCharacterData::deleteData() with count exceeding string size.
DOMCharacterData::deleteData() with no arguments.
DOMCharacterData::deleteData() with offset exceeding string size.
DOMCharacterData::insertData() with no arguments.
DOMCharacterData::replaceData() with no arguments.
DOMComment::__construct() with more arguments than acceptable.
DOMDocumentFragment::__construct().
DOMDocumentFragment::__construct() with too many errors.
DOMDocumentFragment::appendXML() with no arguments.
DOMDocumentFragment::appendXML() with children with properties.
Eric Stewart [Sat, 23 May 2009 01:41:27 +0000 (01:41 +0000)]
New test: DOMAttr read $name property.
New test: DOMAttr read $ownerElement with null parent.
New test: DOMAttr write non-string $value property
New test: DOMCDATASection __construct() with no arguments.
New test: DOMCharacterData - Invalid State Error when getting data out of content.