summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank M. Kromann <fmk@php.net>2005-02-09 18:49:38 +0000
committerFrank M. Kromann <fmk@php.net>2005-02-09 18:49:38 +0000
commit4b0d9e23196c37b5fc4db618e36f216dcce9b78c (patch)
tree6bad86224b5096066ea885e8543169d68a260f3d
parentee0e2d0ea35f692fb0b99084c867dc226ee70176 (diff)
downloadphp-git-4b0d9e23196c37b5fc4db618e36f216dcce9b78c.tar.gz
Check for warnings and return the warning texts
-rw-r--r--ext/fbsql/php_fbsql.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/ext/fbsql/php_fbsql.c b/ext/fbsql/php_fbsql.c
index 72e447a8d1..36987b2295 100644
--- a/ext/fbsql/php_fbsql.c
+++ b/ext/fbsql/php_fbsql.c
@@ -1926,11 +1926,28 @@ int mdOk(PHPFBLink* link, FBCMetaData* md, char* sql)
php_error_docref(NULL TSRMLS_CC, E_WARNING, "No message");
}
link->errorText = strdup(emg);
- link->errorNo = fbcemdErrorCodeAtIndex(emd, 0);;
+ link->errorNo = fbcemdErrorCodeAtIndex(emd, 0);
free(emg);
fbcemdRelease(emd);
result = 0;
}
+ else if (fbcmdWarningsFound(md))
+ {
+ FBCErrorMetaData* emd = fbcdcErrorMetaData(c, md);
+ char* emg = fbcemdAllErrorMessages(emd);
+ if (FB_SQL_G(generateWarnings))
+ {
+ if (emg)
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Warning in statement: '%s' %s", sql, emg);
+ else
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "No message");
+ }
+ link->errorText = strdup(emg);
+ link->errorNo = fbcemdErrorCodeAtIndex(emd, 0);
+ free(emg);
+ fbcemdRelease(emd);
+ result = 1;
+ }
return result;
}
/* }}} */