summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank M. Kromann <fmk@php.net>2001-06-20 22:54:51 +0000
committerFrank M. Kromann <fmk@php.net>2001-06-20 22:54:51 +0000
commitd5d7cf73902199eb15e001b7abe4fa5d5bd41e0d (patch)
tree6823494aad574c7956781aa1181144f17c305159
parent399885cddb773aad2bcf2cbf6d5d9131711fd4f9 (diff)
downloadphp-git-d5d7cf73902199eb15e001b7abe4fa5d5bd41e0d.tar.gz
Changed length of BIT string.
Changed return value of fbsql_field_length to long
-rw-r--r--ext/fbsql/php_fbsql.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/ext/fbsql/php_fbsql.c b/ext/fbsql/php_fbsql.c
index ee1f994583..5ab59cbc90 100644
--- a/ext/fbsql/php_fbsql.c
+++ b/ext/fbsql/php_fbsql.c
@@ -271,6 +271,7 @@ static void phpfbReleaseLink (zend_rsrc_list_entry *rsrc)
fbcdcClose(link->connection);
fbcdcRelease(link->connection);
}
+ if (link->execHandler) fbcehRelease(link->execHandler);
efree(link);
FB_SQL_G(linkCount)--;
}
@@ -292,6 +293,7 @@ static void phpfbReleasePLink (zend_rsrc_list_entry *rsrc)
fbcdcClose(link->connection);
fbcdcRelease(link->connection);
}
+ if (link->execHandler) fbcehRelease(link->execHandler);
free(link);
FB_SQL_G(linkCount)--;
FB_SQL_G(persistantCount)--;
@@ -2036,7 +2038,7 @@ void phpfbColumnAsString (PHPFBResult* result, int column, void* data ,int* leng
{
unsigned i;
unsigned int l = nBits / 8;
- *length = l + 5;
+ *length = l*2+3+1;
if (value)
{
char* r = emalloc(l*2+3+1);
@@ -2058,7 +2060,7 @@ void phpfbColumnAsString (PHPFBResult* result, int column, void* data ,int* leng
{
unsigned i;
unsigned int l = nBits;
- *length = l + 5;
+ *length = l*2+3+1;
if (value)
{
char* r = emalloc(l*2+3+1);
@@ -2847,10 +2849,7 @@ PHP_FUNCTION(fbsql_field_len)
}
else if (result->metaData)
{
- unsigned int length = fbcdmdLength(fbccmdDatatype(fbcmdColumnMetaDataAtIndex(result->metaData,column)));
- char buffer[50];
- sprintf(buffer,"%d",length);
- RETURN_STRING(buffer, 1);
+ RETURN_LONG(fbcdmdLength(fbccmdDatatype(fbcmdColumnMetaDataAtIndex(result->metaData,column))));
}
else
{